public interface Macro extends AbstractRadicalElement
The purpose of a Macro is to standardize functions that are common to several programs, or to several procedures of the same program. A called Macro is a complement to the generation possibilities of the system. A Macro is usually displayed in a program description as if its lines had been directly entered by a programmer.
A Macro is not a subprogram because, unlike a subprogram, a Macro can contain non-consecutive statements.
However, a Macro can call a subprogram.
There are six basic types of Macros:
A 'general program outline type'. It gives a program a standard structure which takes into account all the development standard followed on your site. This type of Macro is also used to describe a body of technical (system-oriented) procedures that are linked to the use of a TP monitor or a DBMS;
A 'technical (system-oriented) function type' used to standardize specific commands, such as the input/output procedures of a DBMS (read, modify, delete, and so on);
A 'complex technical functions type'. It resolves all the complicated procedures involved in a DBMS, whether in an online environment, such as: validation management, the sequential read of a file, the technical procedures for database updates, the particular access path used in a database... This type is generally a combination of elementary technical functions that you must rewrite in order to minimize the task of connecting elementary Macros to one another;
A 'general function type'. It resolves certain procedures that are common to a set of applications, such as: date validation, date transformation, or standards for online error message handling. You must keep in mind that this type of Macro is independent of the operating system, the TP monitor, and the DBMS used;
A 'specific function type' used to 'harmonize' the development of programs that make up a system. For example, to standardize the presentation of certain reports or screens by using common procedures defined in a Macro.
A type used to create cross-references; for example, if a Macro calls a subprogram, you can automatically find out which programs use that subprogram.
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
copyright |
Modifier and Type | Method and Description |
---|---|
java.util.List<CommentsParameters> |
getComments() |
java.util.List<GLine> |
getGELines() |
MacroMergePriorityValues |
getMergePriority() |
java.lang.String |
getProgramId() |
java.lang.String |
getSource() |
getGCLines
getCalledEntities, getDescriptionTypes, getDesignId, getKeywords, getLabel, getName, getPackage, getProject, isResolved
static final java.lang.String copyright
java.util.List<CommentsParameters> getComments()
Document the Macro parameters.
It is meant to help developers when calling a Macro in the -CP Lines tab of a Program, a Screen or a Server to know the exact meaning of each parameter.
java.util.List<GLine> getGELines()
Lists of the user label errors.
MacroMergePriorityValues getMergePriority()
java.lang.String getProgramId()
COBOL program ID of the Macro.
java.lang.String getSource()
Returns the source code of the macro.