Errors in the interface specification

These are the common errors you may make when coding the interface specification for your report procedure:
  • The interface syntax used in your program does not conform to the interface specification.
  • Invalid parameter names are used for the parameter specification.
  • The rightclick specification calls a routine that does not exist in the \right_click folder.
  • The print statements to STDOUT are in a different order from that defined by the fields specification.

You can identify errors in the interface specification easily by using the testing script, ifaces.prl. This script checks customized report procedures that have been written in ccperl. It is available with the T0046 package.

To start the testing script, use a command of this form:

ccperl ifaces.prl <path-to-script-or-directory-tree>

Test your report procedures before you check them in to the shared directory tree that you have configured.

If you do not run the testing script before using your report in Report Builder and a parsing error occurs in processing the interface specification, the new report is not displayed in the list of reports in the reports pane. There is no feedback; you see the report description in the reports pane or you see nothing. If you do not see a description, the parsing error is serious. If you do see a description, the interface specification is somewhat correct, but you may still be using an invalid parameter, referring to a nonexistent right-click routine, or sending output in the wrong order to STDOUT.

The Report Builder does not check for valid parameters. For example, consider the interface specification for a new report procedure, my_custom_report.prl, with the following interface specification:

description : "This test report asks for a three known parameters and 
two unknown parameters"

id : 2500

parameters : LOOKIN UNKNOWN_1 STREAMS FOO PROJECT

rightclick :

fields : "field 1"(string)

The second and fourth parameters of this interface specification are invalid. At run time, the description for this report appears in the Report Builder reports pane, but the second and fourth parameters are displayed as blank lines in the parameter pane.

However, the testing script detects these errors because these parameter names are not supplied with DevOps Code ClearCase® Reports:

my_custom_report.prl:

desc: this test report asks for a three known parameter and two unknown 
parameters

id: 2500

parm: LOOKIN

***********************

ERROR: illegal parameter: UNKNOWN_1

***********************

continue? (y/n) >  y
UNKNOWN_1 STREAMS

***********************

ERROR: illegal parameter: FOOBAR

***********************

continue? (y/n) > y