KPG1_RGNDF

Gets a group of existing NDFs

Description:

The supplied parameter is used to get a GRP group expression (see SUN/150 ) holding a list of existing NDFs (the syntax of the group expression is defined by the current default GRP control characters). If the group expression is flagged, then the current parameter value is cancelled, the string supplied in TEXT is displayed (if it is not blank) and another group expression is obtained. The NDFs specified by the second group expression are added to the group holding the NDFs specified by the first group expression. The group continues to be expanded in this way until a group expression is obtained which is not flagged, or a null value is given, or the limit on the number of NDFs (MAXSIZ) is reached. If any of the specified NDFs does not exist, the user is warned, and re-prompted. If the final group contains more than MAXSIZ NDFs, then all but the first MAXSIZ NDFs are removed from the group. The user is warned if this happens. If MAXSIZ is supplied with the value zero no limit is imposed on the number of NDFs within the group. If the final group contains fewer than the minimum number of NDFs specified by argument MINSIZ, then the user is asked to supply more NDFs. All messages issued by this routine have a priority level of MSG__NORM.

Invocation

CALL KPG1_RGNDF( PARAM, MAXSIZ, MINSIZ, TEXT, IGRP, SIZE, STATUS )

Arguments

PARAM = CHARACTER ( ) (Given)
The parameter (of type LITERAL).
MAXSIZ = INTEGER (Given)
The maximum number of NDFs which can be allowed in the returned group. If zero is supplied, no limit is imposed.
MINSIZ = INTEGER (Given)
The minimum number of NDFs which can be allowed in the returned group. If zero is supplied, then the returned group may contain no NDFs.
TEXT = CHARACTER ( ) (Given)
The text to display between issuing prompts for successive group expressions. If blank then no text is displayed.
IGRP = INTEGER (Returned)
The GRP identifier for the returned group holding all the specified NDFs. The group should be deleted using GRP_DELET when it is no longer needed. If an error occurs, the value GRP__NOID is returned.
SIZE = INTEGER (Returned)
The number of files in the output group. SIZE is returned equal to 1 if STATUS is returned not equal to SAI__OK.
STATUS = INTEGER (Given and Returned)
The global status.