SRC entry (distribution and target zone)
- Installing a SYSMOD that contains the source. SRC entries are created the first time you install a SYSMOD that contains a ++SRC statement for source that does not yet have a SRC entry.
- Processing JCLIN. SRC entries can be built during JCLIN
processing when SMP/E scans the assembler step and determines that
the assembler input is a member of a partitioned data set.
SRC entries can also be built when SMP/E scans copy steps and finds a SELECT statement that specifies TYPE=SRC.
SMP/E records the function and service level of the source in the SRC entry, as well as information about how that source affects the structure of the distribution or target libraries and modules. Once a SRC entry exists for source, it is updated as subsequent SYSMODs that affect the source are installed.
Subentries
- name
- is the name of the source represented by the SRC entry.
The name can contain from 1 to 8 alphanumeric characters and $, #, @, or hex C0.
- DISTLIB
- specifies the ddname of the distribution library for the source.
The UCL operand is DISTLIB(ddname).
The ddname can contain from 1 to 8 alphanumeric characters.
- FMID
- identifies the functional owner of this source. The functional
owner is the last function SYSMOD that replaced this module.
The UCL operand is FMID(sysmod_id).
The SYSMOD ID must contain 7 alphanumeric characters.
- LASTUPD
- identifies the cause of the last change to this SRC entry. The UCL operand is LASTUPD(value). This subentry can contain one of the following values:
- JCLIN
- indicates that the change was made during JCLIN command processing.
- UCLIN
- indicates that the change was made as a result of UCLIN processing.
- sysmod_id
- indicates that the change was made during the installation of
the indicated SYSMOD.
The SYSMOD ID must contain 7 alphanumeric characters.
- LASTUPD TYPE
- indicates how the entry was last changed. The UCL operand is LASTUPDTYPE(value). This subentry can contain one of the following values:
- ADD
- The entry was added.
- MOV
- The entry was moved.
- UPD
- The entry was updated.
- RMID
- identifies the last SYSMOD that replaced this source. Any
subsequent SYSMOD that modifies this module must have a defined relationship
(such as PRE or SUP) with this SYSMOD. The UCL operand is RMID(sysmod_id).
- The SYSMOD ID must contain 7 alphanumeric characters.
- If RMID is not specified, but FMID is, SMP/E sets the RMID value to the specified FMID.
- SYSLIB
- specifies the ddname of the target library for the source. The UCL operand is SYSLIB(ddname).
- Only one SYSLIB value can be specified.
- The ddname can contain from 1 to 8 alphanumeric characters.
- UMID
- identifies all the SYSMODs that have updated this source
since it was last replaced. Any subsequent SYSMOD that modifies this
module must have a defined relationship (such as PRE or SUP) with
all these SYSMODs.
The UCL operand is UMID(sysmod_id…).
The SYSMOD ID must contain 7 alphanumeric characters.
LIST Examples
SET BDY(TGT1) /* Set to requested zone. */.
LIST SRC /* List all SRC entries. */.
SET BDY(TGT1) /* Set to requested zone. */.
LIST SRC(SRC01 /* List only these two */
SRC02) /* entries. */.
PAGE nnnn - NOW SET TO zzzzzz ZONE nnnnnnn DATE mm/dd/yy TIME hh:mm:ss SMP/E 36.nn SMPLIST OUTPUT
TGT1 SOURCE ENTRIES
NAME
SRC01 LASTUPD = JXY1102 TYPE=ADD
LIBRARIES = DISTLIB=ASRCLIB SYSLIB=SRCLIB
FMID = JXY1102
RMID = JXY1102
SRC02 LASTUPD = JXY1000 TYPE=UPD
LIBRARIES = DISTLIB=ASRCLIB SYSLIB=SRCLIB
FMID = JXY1121
RMID = UZ00010
UMID = UZ00014 UZ00015
SET BDY(TGT1) /* Set to target zone. */.
LIST SRC /* List all source entries */
FORFMID(TP /* for the TP FMIDSET */
JXY1102) /* and FMID JXY1102. */.
SET BDY(TGT1) /* Set to requested zone. */.
LIST SRC /* List all source entries */
XREF /* and related SYSMODs. */.
- XREF can be used either in mass mode or in select mode.
- SMP/E obtains the data included for the XREF operand by checking for SRC and SRCUPD entries for this module in all the SYSMOD entries. Because this data is not contained in the SRC entry itself, you cannot use UCLIN to change it in the SRC entry.
PAGE nnnn - NOW SET TO zzzzzz ZONE nnnnnnn DATE mm/dd/yy TIME hh:mm:ss SMP/E 36.nn SMPLIST OUTPUT
TGT1 SOURCE ENTRIES
NAME
SRC01 LASTUPD = JXY1102 TYPE=ADD
LIBRARIES = DISTLIB=ASRCLIB SYSLIB=SRCLIB
FMID = JXY1102
RMID = JXY1102
SYSMOD HISTORY = SYSMOD TYPE DATE MCS --STATUS--
JXY1102 FUNCTION 07.100 SRC APP ACC
SRC02 LASTUPD = JXY1000 TYPE=UPD
LIBRARIES = DISTLIB=ASRCLIB SYSLIB=SRCLIB
FMID = JXY1121
RMID = UZ00010
UMID = UZ00014 UZ00015
SYSMOD HISTORY = SYSMOD TYPE DATE MCS --STATUS--
JXY1102 FUNCTION 07.100 SRC APP ACC
JXY1121 FUNCTION 07.150 SRC APP ACC
UZ00010 PTF 07.150 SRC APP
UZ00014 PTF 07.160 SRCUPD APP
UZ00015 PTF 07.161 SRCUPD APP
UNLOAD Examples
SET BDY(TGT1) /* Set to requested zone. */.
UNLOAD SRC /* Unload all SRC entries. */.
SET BDY(TGT1) /* Set to requested zone. */.
UNLOAD SRC(SRC01 /* Unload only these two */
SRC02) /* entries. */.
UCLIN .
REP SRC ( SRC01 )
LASTUPD ( JXY1102 )
LASTUPDTYPE ( ADD )
DISTLIB ( ASRCLIB )
SYSLIB ( SRCLIB )
FMID ( JXY1102 )
RMID ( JXY1102 )
.
REP SRC ( SRC02 )
LASTUPD ( JXY1121 )
LASTUPDTYPE ( UPD )
DISTLIB ( ASRCLIB )
SYSLIB ( SRCLIB )
FMID ( JXY1121 )
RMID ( UZ00010 )
UMID ( UZ00014 UZ00015 )
.
ENDUCL.
SET BDY(TGT1) /* Set to target zone. */.
UNLOAD SRC /* Unload all source entries*/
FORFMID(TP /* for the TP FMIDSET */
JXY1102) /* and FMID JXY1102. */.
UCLIN Examples
- DISTLIB
- FMID
- RMID
Otherwise, there is not enough information in the entry to process the macro. If any of these subentries are missing, SMP/E does not make the requested UCL updates to the entry, and the entry remains as it was before the UCL command.
The following examples are provided to help you use the SRC entry.