Description

This page explain the case when there is one object violated, by one violation of quality rule in the frame "FRAME_PORTAL_INVESTIGATION_VIEW" of Dashboard, but there is no bookmark / the source code causing the violation is not highlighted. Either the entire source file is grayed out or the highlight is in an incorrect place.


Observed in CAST AIP
Release
Yes/No
8.3.x(tick) 
Observed on RDBMS
RDBMS
Yes/No
CSS (tick)

Step by Step scenario

  1. Run analysis and take snapshot.
  2. Open CAST Engineering Dashboard.
  3. In Dashboard locate the violation without bookmarks / highlights or with wrong bookmarks

Action Plan

Perform the below actions:

  1. Check if the quality rule is designed to show bookmarks. If it is not designed then it explains you why you are not getting bookmarks.
  2. If it is designed to show bookmarks and still you are not getting bookmarks then please contact CAST Technical Support with Relevant input 

Relevant input

  1. Screenshot  with URL visible, showing the violated quality rule, the violated object and "Violation Details" of the violated object.

  2. CAST Support Tool (CST) - alias Sherlock with Export CAST Databases , Export Logs, Export Configuration Files , Export Source code checked

Check if the quality rule is designed to show bookmarks

 Depending on technology, there is no bookmark computed for some quality rules.

  • For Siebel and PeopleSoft technologies bookmarks are not computed for any quality rule.
  • There is no bookmark computed for the quality rule "Avoid artifacts with complex select clause" for mainframe technology.
  • MONMSG command must be formated (CL400) highlights the whole code even if there is one MONMSG without MSGID since this QR is not designed to show bookmark
  • For ABAP, these quality rules do not currently show bookmarks:
    • 7090 Avoid Functions recursive calls
      7518 Avoid missing WHEN OTHERS in CASE statements
      7522 Avoid using literals in assignments (hardcoded values)
      7524 Avoid using BREAK or BREAK-POINT statement
      7528 Never use the ON CHANGE OF statement
      7530 Avoid SELECT * or SELECT SINGLE * queries
      7532 Avoid nested SELECT ... ENDSELECT statements
      7536 Avoid using AT events in combination of LOOP AT .... WHERE constructs
      7538 Avoid using SELECT ... INTO CORRESPONDING FIELDS OF
      7542 Avoid using FOR ALL ENTRIES IN without emptiness check
      7544 Avoid using SELECT ... ENDSELECT statement
      7592 Avoid using "ORDER BY" in SELECTS
      7594 Avoid using "SELECT DISTINCT", use DELETE-ADJACENT
      7664 Avoid using FOR ALL ENTRIES IN without emptiness check on XXL Tables
      7666 Avoid using SELECT ... ENDSELECT statement on XXL tables
      7672 Avoid using EXIT statement in Include
      7788 Avoid empty catch blocks
      7806 Avoid Artifacts with Group By
      7808 Avoid Artifacts with SQL statement including subqueries
      7810 Avoid Artifacts with a Complex SELECT Clause
      7820 Never use SQL queries with a cartesian product
      7822 Avoid Artifacts with queries on more than 4 Tables
      7884 Avoid disabling source code inspection
      7882 Avoid using Native SQL

For other Quality rules you can check the description of the rule if you do not find the relevant information then please contact CAST Technical Support with the name of the quality rule.

 For CAST Technical Support only - To check if the diag provides bookmark or not go to the particular rule in the DIAG project in JIRA and check the Metric Tree tab. If the value of the With Bookmark field is Yes, then the diag is designed to provide bookmarks else the diag is not designed to provide bookmarks. If the quality rule is designed to show bookmarks, but still it is showing improper bookmarks/missing bookmarks then reproduce the issue after getting the Relevant input

Please note that this methodology of checking the DIAG project does not work in every case.  The DIAG project shows what was designed, but sometimes the implementation does not follow the design for technical reasons.

Notes/comments

 Ticket  # 5359, 8746

Related Pages