YDSPMDLUSG (Display Model Usages) Command

This command allows a user to display usages of a list of model objects. Usages can be displayed, printed or converted to a model object list.
ca2e87
This command allows a user to display usages of a list of model objects. Usages can be displayed, printed or converted to a model object list.
Contents
Optional
YDSPMDLUSG-Optional (164) YDSPMDLUSG-Optional (165) YDSPMDLUSG-Optional (166) YDSPMDLUSG-Optional (167) YDSPMDLUSG-Optional (168) YDSPMDLUSG-Optional (169) YDSPMDLUSG-Optional (170) YDSPMDLUSGv-Optional (171) YDSPMDLUSG-Optional (172) YDSPMDLUSG-Optional (173) YDSPMDLUSG-Optional (174) YDSPMDLUSG-Required (59)
Parameters
The following are parameters for the YDSPMDLUSG command.
MDLLST
The qualified name of the model object list containing the objects whose usages are displayed. Values for these parameters are as follows:
  • *USER
    -- (default) Special value meaning that the model object list name is the same as the name of the current user.
  • *MDLPRF
    -- Special value meaning that the model object list name is retrieved from the user defaults for the current user in the specified model library.
  • list name
    -- The model object list name.
  • *MDLLIB
    -- (default) Special value meaning that the first model library found in the user's current library list is used as the model library.
  • library name
    -- The model library name for the list.
OUTPUT
This parameter determines how the usages are presented. Values for these parameters are as follows:
  • *
    -- (default) References are displayed.
  • *MDLLST
    -- Usages are directed to a model object list. This option enables users to perform further list operations on the list entries.
  • *PRINT
    -- Usages are printed.
OUTMDLLST
The name of the model object list that receives output from the command. Values for these parameters are as follows:
  • *MDLLST
    -- (default) Special value meaning that the output should be placed in the input list.
  • *USER
    -- Special value meaning that the model object list name is the same as the name of the current user.
  • *MDLPRF
    -- Special value meaning that the model object list name is retrieved from the user defaults for the current user in the specified model library.
  • list name
    -- The target model object list name.
OUTLSTOPT
This parameter specifies the action taken if the output list already exists. Values for these parameters are as follows:
  • *REPLACE
    -- (default) The existing model object list should be replaced with the output from this command.
  • *ADD
    -- The existing model object list should be augmented with the output from this command.
EDIT
This parameter specifies whether the resulting output list is edited as part of processing. Values for these parameters are as follows:
  • *NO
    -- (default) Editing of the list is not performed.
  • *YES
    -- Editing of the list is performed.
JOBLST
Qualified name of job list that contains the names of source members to be generated and/or compiled. If the nominated job list does not already exist, it will be created. Values for these parameters are as follows:
  • *MDLPRF
    -- (default) Retrieve the job list name from the model profile details of the current user.
  • *USER
    -- The job list name is the same name as the current user.
  • *WORKSTN
    -- Use device name of current work station as list name.
  • SELECT
    -- Display a list of existing job lists, one of which may be selected. The name of the job list may be entered.
  • *MDLLIB/
    -- The job list library is the first model library found in the library list.
  • *GENLIB/
    -- Use the generation library specified in the first model found in the library list.
  • *SRCLIB
    / -- Use the source library specified on the model profile of the current user.
  • *LIBL/
    -- The job list library is the first model found in the library list.
  • *CURLIB
    / -- The model library is found in the current library for the current job. The job list library can be entered.
SSNLST
This parameter specifies the session list to use while editing the model. Values for these parameters are as follows:
  • *MDLPRF
    -- (default) The session list is retrieved from the model profile details for the current user.
  • *USER
    -- The session list has the same name as the current user.
  • *SELECT
    -- An interactive display is used to select a model object list used as the session list. The name of the list can be entered.
For more information on the purpose of SSNLST, see the Change Model Profile command (YCHGMDLPRF).
SCOPE
This parameter allows the user to control the extent to which usages are traced. Values for these parameters are as follows:
  • *NOMAX
    -- (default) No maximum level of expansion.
  • *NEXT
    -- Expansion proceeds to the next level only.
  • *GENFUN
    -- Expand objects up to and including the first generatable function.
  • *GENOBJ
    -- Expand objects up to and including the first generatable object.
  • *INTFUN
    -- Expand objects until the first internal function is encountered.
  • *EXTFUN
    -- Expand objects until the first generatable function.
  • object type
    -- The object type when expansion is to stop. Allowed object types are: *ACP, *APP, *ARR, *CND, *FIL, *FLD, *FUN, and *MSG.
FILTER
This parameter allows the user to specify filtering on the objects displayed. Values for these parameters are as follows:
  • *ANY
    -- (default) No filtering of objects is performed.
  • *DBFFUN
    -- Only database functions are displayed.
  • *ERR
    -- Only error usages are displayed; namely, usages by deleted objects.
  • *EXTFUN
    -- Only external functions are displayed.
  • *GENFUN
    -- Only generatable functions are displayed.
  • *GENOBJ
    -- Only generatable objects are displayed.
  • *INTFUN
    -- Only internal functions are displayed.
  • object type
    -- A specific object type may be entered for filtering purposes. They are: *ACP, *ARR, *APP, *CND, *FIL, *FLD, *FUN, and *MSG.
CMTCDE
This parameter allows the inclusion of inactive AD code in the analysis:
  • *YES --
    Inactive code is included.
  • *NO
    -- Inactive code is not included.
  • *IGN
    -- Code is not examined for active/inactive status. The WRN field will not be populated. Processing of *IGN is typically much faster.
  • *MDLVAL
    -- Retrieve the value from the
    CA 2E
    model value (YCMTCDE).
EXCSYS
This parameter allows the exclusion of system objects from the analysis. System objects are the internal objects used by
CA 2E
such as the *Standard Header/Footer internal file. Values for these parameters are as follows:
  • *YES
    -- (default) System objects are excluded.
  • *NO
    -- Include system objects.
CUROBJ
This parameter allows the exclusion of non-current versions from the analysis. Currency only applies to objects that are supported for versioning. Values for these parameters are as follows:
  • *YES
    -- (default) Only current objects are included.
  • *NO
    -- Include system objects.
REASON
This parameter allows the reason for the dependency between objects to be part of the filtering process. Values for these parameters are as follows:
  • *FIRST
    -- (default) The processing program will note the first reason when an object is encountered.
  • *ALL
    -- All subsequent encounters with a given object are included.
  • REASON
    -- A specific reason may be entered. The processing program will search for dependencies of the specified reason.
FLAGVAL
This parameter allows the input list entries to be filtered according to the value of the object selected indicator for each entry. Values for these parameters are as follows:
  • *ANY
    -- No selection processing is performed.
  • *ERROR
    -- Only process entries flagged in error are considered.
  • *SELECTED
    -- Only process selected entries are considered.
Notes
The model library specified must be a valid model library.
A value other than *MDLLIB for MDLLST may result in the library list being changed. If the user is currently editing a model, the switching of the library list will not occur and the command will fail. If changed during processing, the library list is not changed back after execution.
If the output model list does not exist prior to running the command, it is created.
If the list is to be printed, the display model object references panel is used. This panel is described below.
If the resulting list is to be printed, the Document Model Object list command (YDOCMDLLST) is called.
The edit parameters are ignored if the running job is a batch job.
The scope parameter will limit the expansion. This will normally be useful to prevent unnecessary objects from being included in the analysis. Note that a scoped expansion means that an expansion will need to be repeated if additional objects are to be included.
The filtering parameter is applied to the expanded details. Thus, if the output is to display, the filtering may be adjusted without having to rebuild the expansion. If output is to a model list, the filtering is performed when the entries are written to the list.
An indented output format is used for the *PRINT option whenever this is appropriate. If the default of *FIRST is used for the REASON filter, the objects are sorted in a keyed sequence. It would be inappropriate to indent this sequence because the relationships between the objects are purely arbitrary. However, any other value for REASON will cause the processing program to examine objects strictly in the order of expansion; the indented format here clearly shows the hierarchy of dependencies to assist developers.
The reason code *DSLDBF signifies that the function object is used or referred as a default database Function. But the option was not selected in the Function options of the referring Function. For example, Create record, Change record, or Delete Record were set to 'N'. You can control the display of this reason code by changing the data area named "YDSLDBFRFA" in the model library. The command to change the data area is as follows:
CHGDTAARA DTAARA(model-library/YDSLDBFRFA *ALL) VALUE(N)
Usage Table
The Usg level value refers to the level of usage of a given object to the original object that is displayed on the subfile control. This value may be changed by the user and will control the data shown in the subfile. By manipulating the range of levels available, all possible usage levels can be viewed individually or in combination.
The Usg type column in the subfile refers to the reason for the usage. The following table shows the possible reasons for usages between model objects. Actual usages to a given model object depend upon the model object type.
Obj Type
Used byObject Type
UsageCode
Reason
Note
All
 
*ENTRY
Displayed only on the first panel when you access the YDSPMDLUSG panel for a model object list rather than for a single list entry; for example, by using the YDSPMDLUSG command or F20 from the YEDTMDLLST panel. It indicates that each list entry displayed has simply been updated to reflect its current state in the model; no usages have been expanded. Your original list is not changed. You can now perform impact analysis on single list entries using the selection options. See also the online Help for the panel and the Impact Analysis topic in article 1 of Generating and Implementing Applications.
 
ACP
ACP
*ACPENT
For joining access path.
 
 
ACP
*ASSACP
For associated access path.
 
 
ACP
*REFACP
For referring access path. Subject access path is used as referenced access path due to file-to-file relation.
 
 
ARR
*ARRDTL
For array detail definition.
 
 
FUN
*BASED
Function based on access path.
 
 
FUN
*FUNPAR
For function/message parameter definition.
 
 
FUN
*RELFUN
For functions using related access path. That is, access path is present as a *REFACP and FUN uses access path, such as for validation.
1
APP
FIL
*APPFIL
For association in application area.
 
ARR
FUN
*BASED
Function based-on array.
 
 
FUN
*FUNPAR
For function/message parameter definition.
 
CND
ACP
*ACPCND
For access path condition.
 
 
CND
*LSTCND
Member of list condition.
 
 
FIL
*MAPFLD
For field mapping (user-defined field types).
 
 
FLD
*DFTFLD
Default field condition.
 
 
FLD
*FLDCND
Field condition.
 
 
FUN
*ABOCND
Action bar condition.
 
 
FUN
*ACTCND
Action diagram condition.
 
 
FUN
*DEVCND
Device entry condition.
 
 
FUN
*DFTDEV
Default device entry condition.
 
 
FUN
*INPOVR
Device input override condition.
 
 
FUN
*OUTOVR
Device output override condition.
 
 
FUN
*PARAM
Action diagram parameter.
 
 
FUN
*SCRMAP
For screen field mapping (user-defined field types).
 
FIL
ACP
*REFFIL
For owning file.
 
 
APP
*APPARA
For application area.
2
FLD
ACP
*ACPCND
For access path condition.
3
 
ARR
*ARRENT
For array entry.
 
 
FIL
*ENTAUX
For entry redirection.
 
 
FIL
*FILENT
For key/attribute entry.
 
 
FIL
*MAPFLD
For field mapping (user-defined field types).
 
 
FIL
*VRTENT
For virtual entry.
 
 
FLD
*REFFLD
For domain definition.
 
 
FLD
*RNMFLD
For rename by entry.
 
 
FUN
*ACTION
For action diagram action.
 
 
FUN
*ACTCND
Action diagram condition.
 
 
FUN
*ACTCMP
Action diagram compare.
 
 
FUN
*DEVCND
For device conditioning.
 
 
FUN
*DEVENT
For device entry.
 
 
FUN
*FUNPAR
For function/message parameter definition.
 
 
FUN
*FUNPDT
For function/message parameter detail definition.
 
 
FUN
*PARAM
For action diagram parameter.
 
 
FUN
*SCRMAP
For screen field mapping (user-defined field types).
 
FUN
ACP
*SELRCD
For select record override function.
 
 
ACP
*ACPFUN
For access path function.
 
 
FLD
*EXTINT
For external/internal conversion function (user-defined field type).
 
 
FLD
*FLDUSR
Field-attached user source function (enabled)
 
 
FLD
*INTEXT
For internal/external conversion function (user-defined field type).
 
 
FUN
*ARCVSN
For archived version.
1
 
FUN
*ACTION
For action diagram function.
 
 
FUN
*DFTDBF
Default database function.
 
 
FUN
*DSLDBF
Deselected database function.
 
 
FUN
*DEVSTR
For device structure usage.
 
 
FUN
*DEVUSR
Device-attached user source function
 
 
FUN
*ENTUSR
Entry-attached user source function
 
 
FUN
*FLDUSR
Field-attached user source function (disabled)
 
 
FUN
*FMTUSR
Format-attached user source function
 
 
FUN
*RPTUSR
Report-attached user source function
 
 
FUN
*SCRUSR
Screen-attached user source function
 
 
FUN
*SELRCD
For select record override function.
 
MSG
FIL
*RCDEXS
For record exists message.
 
 
FIL
*RCDNFD
For record not found message.
 
 
FUN
*ACTION
For action diagram function.
 
 
MSG
*ARCVSN
For archived version.
1
The Note column indicates whether or not there is a reciprocal entry in the reference table by the using object. The numbers in the column refer to the following explanations as to why there will not be a corresponding reference entry:
The using object is not required by the used object as part of its definition. Thus, it is not shown in the reference table.
FIL objects are not included as defining an application area because this would make the scope of APP references too large. For this reason there is no corresponding entry for the APP object type in the reference table.
The reference of ACP to FLD is accomplished through the Access Path Condition (*ACPCND on the reference table).
Developers will note from the table that there is no direct relationship between objects of type FLD and ACP. That is, a change to a FLD has no direct effect on the ACP objects that use it. The change is propagated through the FIL objects on which the FLD appears as a file entry. This is a valuable feature in the product, where it provides the capacity to accommodate changes to the data model. When an ACP is required for DDS source generation, or for the construction of a device design, the structure is determined dynamically, incorporating any changes that may have occurred since the last time the structure was required. The dynamic nature of ACP objects means, however, that there is no database representation available for interrogation by impact analysis. The result is that changes to a FLD impact the FILs which use it and are propagated to all ACP objects, even if the FLD is not used by each individual ACP.
Example
To print usages of objects present on model object list WRKLST in library UUMDL, including usages up to the first external function:
YDSPMDLUSG MDLLST( UUMDL/WRKLST ) + OUTPUT( *PRINT ) SCOPE( *EXTFUN )