When using PeopleSoft analyzer version 5.1.0 , 5.1.1 and 5.1.2 the following error is seen in the file Metric Assistant log
Failed to parse xml file: (input ended before all started tags were ended; last tag started is 'METRIC_LIST' - C:\ProgramData\CAST\CAST\Extensions\com.castsoftware.peoplesoft.5.1.2-funcrel\configuration\Languages\PeopleSoft\PeopleSoftCastMetrics.xml (line=608, col=1))
Issue affects versions 5.1.0 , 5.1.1 and 5.1.2 of PeopleSoft extension.
Last correct MAv2 configuration file was 5.0.4.
Version 5.1.3 fixes the issue, see PeopleSoft 5.1.3 - funcrel
So users of previous 5.1.x versions are encouraged to upgrade to 5.1.3.
This does not require to extract and deliver source code again.
A new snapshot (full analysis) of both Vanilla and Project applications is required to take into account this fix.
Following is the list of the affected Quality Rules.
| 1600106||PeopleSoft: Avoid using the SQLExec statements in the PeopleCode|
PeopleSoft: Avoid PeopleCode Event with High Cyclomatic
PeopleSoft: Avoid PeopleCode Functions with High Cyclomatic
PeopleSoft: Avoid PeopleCode Methods with High Cyclomatic
PeopleSoft: Avoid PeopleCode Classes with High Cyclomatic
PeopleSoft: Write UNION ALL instead of UNION statement
PeopleSoft: Avoid using comments in SQL queries
PeopleSoft: Avoid use the Hints to force Oracle to use a specific access method
PeopleSoft: Avoid using count(*) syntax
PeopleSoft: In an INSERT statement define explicitly the values for all the table columns
PeopleSoft: Using DISTINCT, GROUP BY or UNION clause in a View implies that no join using an index can be done on this View.
PeopleSoft: All select statement must list each field specifically
PeopleSoft: Always prefer joining tables to subqueries
PeopleSoft: Use the DISTINCT clause only when we are sure that the query will return duplicate results
PeopleSoft: Prefer using UNION to the OR operator.
PeopleSoft: SELECT ... FROM ... WHERE alias.col LIKE '%xxx'
PeopleSoft: Prefer boolean operators (EXISTS, NOT EXISTS) and non-negative predicates
PeopleSoft: IN vs EXIST Use IN when the subquery is the most selective
PeopleSoft: Use TRUNCATE statement to clean a whole table
PeopleSoft: For complex query, always prefer the subqueries to retrieve display fields not used as joins search criterias
PeopleSoft: Avoid SQL with queries on more than 4 Tables
PeopleSoft: Avoid SQL using GROUP BY
PeopleSoft: Avoid SQL using HAVING
PeopleSoft: Avoid PeopleCode using HAVING
PeopleSoft: Avoid Methods with too many parameters