This page helps to troubleshoot issues where the Violation displayed on ED is wrong violation or there is an object for which you are expecting a quality rule to be violating but it is not.
Release | Yes/No |
---|---|
8.3.x |
RDBMS | Yes/No |
---|---|
CSS |
- As a temporary workaround, you can always exclude the violation from the dashboard results while an investigation of the false violations is done by support.
- Select the section you are interested in.
Check if the violation is present in the Central Database by executing the below query on the central database - SQL Queries - CAST Central Base - Queries on Objects - How to check if an object is violated by a quality rule
If the query returns false -
In case of no violation follow the page CAST Engineering Dashboard - Violations - False violation or no violation
In case of false violation report your problem to CAST Technical Support and provide the below Relevant input
If the query returns true -
in case of no violation , this is a display issue on AED report your problem to CAST Technical Support and provide the below Relevant input
In case of false violation follow the page CAST Engineering Dashboard - Violations - False violation or no violation
- If the problem you are facing does not match any case listed in this page, report your problem to CAST Technical Support and provide the below Relevant input:
For CAST Technical Support Only - Engineering Dashboard - ED - Information - How to reproduce ED issues
Relevant input
To confirm the violation/no violation
- A screenshot of ED showing the Quality Rule and the faulty (or missing) object's full name. The url should be visible.
For Example - For Quality rules like Avoid indirect String concatenation inside loops, locate the line of code where the String concatenation is happening by looking at the functional calls -
Though the object in violation is CreateContext. The user may feel that this is a false positive since there is no string concatenation happening inside the object.
But the string concatenation is happening in the method getUserPropertyName that is indirectly called by CreateContext. - For the Quality Rules with customized Parameters and in case the false/no violation is reported in another Frame than Investigation - Quality Model Drilldown & Investigation - Application Drilldown screenshot(s) of all parameters from CAST Management Studio, a screenshot
- Explanation on why the object should/should not be seen as a violation with screenshots in Enlighten:
- A screenshot showing the object's links. To do this,
- Drag the object on a view
- Right click and choose Add Linked objects
- A screenshot showing the object source code, highlighting evidence of the violation/no violation.
- A screenshot showing the object's links. To do this,
To find out the root cause of the issue
CAST Support Tool (CST) - alias Sherlock export with options CAST Databases, CAST Logs , CAST DB Checker, CAST Configuration Files.
The source code of faulty (or missing) object and other utilitarian files. See below
Technology
Utilitarian files
C++
The include files used in the environment profiles is also necessary
J2EE
XML and Jar files used in the environment profiles
Jar files referenced in the include pathsCOBOL
In addition to COBOL files, its associated copy book is also necessary
.NET
.sln or the .csproj
Please note For ABAP technology, if the faulty object is part of a Class Pool or a Function Pool, we need the code source of the Class Pool/ Function Pool which is usually split in many source file starting with same part. For example, the following list of files are the code source of the Class Pool ZCL_IM__FETCH_STORAGE_CAT:
ZCL_IM__FETCH_STORAGE_CAT=====CM001.abap
ZCL_IM__FETCH_STORAGE_CAT=====CM002.abap
ZCL_IM__FETCH_STORAGE_CAT=====CM003.abap
ZCL_IM__FETCH_STORAGE_CAT=====CM004.abap
ZCL_IM__FETCH_STORAGE_CAT=====CM005.abap
ZCL_IM__FETCH_STORAGE_CAT=====CM006.abap
ZCL_IM__FETCH_STORAGE_CAT=====CM007.abap
Also, note that if objects other than the faulty object are involved in the violation, you will also need to get the source code of these objects. For instance, for diagnostics based on client/server links, you will need the participating base.