Document Templates : DGL Statements : Output Statements : Include Reports Statement

Include Reports Statement

Statement Syntax:

stm_rpt_report_name ( report_parameters ) ;

This statement generates and writes a Rational Statemate predefined report such as a Tree, Structure, Interface etc. into the output file. It activates the Reports Tool, generating the specified report with the given parameters.

For example, the statement:

stm_rpt_tree(list,5);

produces a Tree Report for the items in a list represented by the variable list to a depth of 5 in the hierarchy. The report is included in the output file.

The output from the Reports Tool contains formatting commands applicable to the format processor attached to the template. If no formatter is specified, the Reports Tool cannot be invoked and an error message is issued.

Each of the predefined reports is invoked for a list of elements. The input parameter that represents this list is denoted by a variable name that must be of type list of one of the Rational Statemate element types. This variable, along with all other identifier names used in the calling sequence, must be declared in an appropriate declaration section. For example:

VARIABLE
LIST OF ACTIVITY ac_list;

The identifier ac_list may be assigned a list of activities and then be included in a statement that generates a Dictionary Report, like this:

stm_rpt_dictionary(ac_list,. . . );

The report is generated for each item in the list represented by the ac_list variable.

A number of arguments are used to define the parameters for each report. Some are called single character string arguments. These are used to indicate restricted parameter choices. For example, in the Interface Report statement

stm_rpt_interface(elist, ’A’, ...);

the value of the second argument ’A’ indicates that the Interface Report should be of type activities; specifying an ’M’ for this parameter would indicate that the report should be generated for modules.

The single character string arguments can be more than one character, but only the first character of the string is actually passed to the Reports Tool. If a non-valid character is passed to the Reports Tool, the report is not generated, and an error status code is returned.

Some of the arguments are Boolean and are evaluated as true or false to indicate whether or not some parameter is set. For example, in the Dictionary Report statement stm_rpt_dictionary (elist, true, ...); the Boolean constant true indicates that the long description will be included in the report.

The following a list of the Rational Statemate reports that can be invoked, together with their calling name, and required parameters.

stm_rpt_dictionary(elist,ldes,attr,attr_title) ;

elist is a list expression of Rational Statemate elements for which the report is produced.

ldes is a Boolean expression indicating whether or not the long description of each element should be included in the report.

attr is a Boolean expression indicating whether the attributes of an element are included in the report.

attr_title is a string indicating the attribute names whose value will precede the element name in the report.

stm_rpt_tree(elist, depth) ;

elist is a list expression of Rational Statemate elements for which the report is produced.

depth is an integer argument indicating to what hierarchical level the report should be generated. For all levels, enter the number “99”.

stm_rpt_protocol(elist, attr_title) ;

elist is a list expression of Rational Statemate elements for which the report is produced.

attr_title is a string indicating the attribute name whose value will precede the element name in the report.

stm_rpt_list(elist) ;

elist is a list expression of Rational Statemate elements for which the report is produced.

stm_rpt_structure(elist, width) ;

elist is a list expression of Statemate elements for which the report is produced.

width is an integer argument indicating the page width (in characters) to be used for the report.

stm_rpt_attribute(elist, attrs, attr_title) ;

elist is a list expression of Rational Statemate elements for which the report is produced.

attrs is a list of strings that contains the specific attribute names for which the report should be generated. If this list is empty, then the report retrieves all the attributes for each element.

attr_title is a string indicating that the attribute value will precede its element name in the report.

Interface Report

stm_rpt_interface(elist, rtype, chart, lact
lmod, ftype, dis, names) ;

elist is a list expression, that must be of the type list of modules, for which the report is produced.

rtype is a single character string argument indicating the report type:

A indicates activity interface report.
M indicates module interface report.
I indicates information interface report.

chart is a single character string argument indicating which arrows are taken into account when the report is generated:

A indicates activity-chart arrows.
M indicates the module-chart arrows.

lact is an argument of type list of activities indicating which activities are taken into account when the report is generated. If lact is an empty list, the default is all activities implemented by the center module.

Note:
If chart is M, then this parameter has no function. lact must still be supplied here. For simplicity, the null list (null) may be used.

lmod is an argument of type list of modules indicating the side modules that interface with the central module for which the report is to be generated. If lmod is empty, the default is all modules except the center module’s own ancestors and descendants.

ftype is a single character string argument indicating the kind of information flow to appear in the report:

D indicates data-flows.
C indicates control-flows.
B indicates both.

dis is a single character string argument indicating the kind of information to appear in the report:

I’ indicates flow labels.
P indicates parent information items.
B indicates basic information items.

names is a single character string argument:

N indicates that the name appears for elements that flow between the boxes.
S indicates that the synonym appears for elements that flow between the boxes.

stm_rpt_n2chart(elist, names, level, env, chart,
dis, ftype)

elist is a list expression, which must be of the type list of modules or list of activities, specifying the elements in the diagonal.

names is a single character string argument:

N indicates that names of the elements appear on the diagonal of the matrix.
S indicates that synonyms of the elements appear on the diagonal of the matrix.

level is a single character string argument indicating what appears on the diagonal when both parent box and sub-box are in the list.

B indicates that sub-box is placed on the diagonal of the matrix.
P indicates that the parent box is placed on the diagonal of the matrix.

env is a Boolean expression; if true then the environment is added to the matrix.

chart is a single character string argument indicating which arrows are taken into account when the report is generated:

‘A’ indicates activity-chart arrows.
‘M’ indicates the module-chart arrows.

dis is a single character string argument indicating the kind of information to appear in the report:

‘I’ indicates flow labels.
‘P’ indicates information items.
‘B’ indicates basic information items.

ftype is a single character string argument indicating the kind of information flow to appear in the report:

‘D’ indicates data-flows.
‘C’ indicates control-flows.
‘B’ indicates both.
Resolution Report

stm_rpt_resolution(clist,type)

clist is a list of charts. It determines the scope of the report.

type is stm_type of elements to include in the report. The type may be one of the following:

stm_textual, stm_graphical, stm_mixed, stm_state, stm_module, stm_activity, or stm_data_store.