The Retrieve Source Change command retrieves the number of source
statements that have been changed in a source member since a
specified date. The most current change date and the oldest change
date are also returned.
A typical command would be:
DCL &CHGSTM *DEC LEN(7 0)
.
RTVSRCCHG SRCFILE(xxx) MBR(yyy) CHGDATE(nnnnnn)
CHGSTM(&CHGSTM)
The number of source statements that have changed since the change
date entered would be returned.
A source statement is considered one record in a source member.
If all statements statements have zeros in the change date field, no
statements are considered changed. The CURCHGD and OLDCHGD return
values will have zeros.
Considerations
--------------
** Every source statement has a source change date in YYMMDD
format in positions 7 - 12 of a source record. The date is
updated by the SEU function. The date may also be changed by
a HLL program.
** The system updates member level information for the last time
a member was changed and also has a special field for the last
time SEU made a change. For example, the last SEU date would
be changed if you ended an SEU session without making any
changes, but requested to change the member on the Exit
display. The member change date is changed by any data base
update operation (including SEU) and also by functions such as
a restore.
Neither member level change information is used by RTVSRCCHG
(the last SEU change date/time is returned). Therefore, if
you used SEU to delete a statement (and this is the only
change you made), the record would be deleted and RTVSRCCHG
would not recognize the actual last change date.
** In some cases the change date of source statements is all
zeros. This can happen for a variety of reasons. These
statements are summarized into a count.
** If invalid data exists in a source record (such as 851301),
the data is used for the comparison. No checking for a valid
date occurs.
You can check and fix invalid source dates with the TAA Tool
FIXSRCDAT. The default finds any invalid dates.
** RTVSRCCHG only considers source records that are changed. If
a language statement spans several source records, each source
record is considered individually.
** Language unique comments are not given special consideration.
They are considered changed based on the source date.
RTVSRCCHG escape messages you can monitor for
---------------------------------------------
None. Escape messages from based on functions will be re-sent.
Command parameters *CMD
------------------
SRCFILE The source file containing the member to be
retrieved from. The library value defaults to
*LIBL. *CURLIB may also be used.
MBR The member to be retrieved from.
CHGDATE The change date to be used to determine the changed
statements. The date must be entered in job format.
The special value *NONE may be entered in which case
the return value for CHGSTM will be 0.
TOTSTM The total number of statements found in the source
member. This is an optional return variable that if
used must be specified as *DEC LEN(7 0).
CHGSTM The number of changed statements found in the source
member based on the CHGDATE entered. A source
statement is considered one record in a source
member. This is an optional return variable that if
used must be specified as *DEC LEN(7 0).
CURCHGD The most current date that a source statement was
changed. The date will be returned in a CYYMMDD
format. If no statements exist, or all of the
source statements have zeros in the change date
field, zeros will be returned. This is an optional
return variable that if used must be specified as
*CHAR LEN(7).
OLDCHGD The oldest date that a source statement was changed.
The date will be returned in a CYYMMDD format. If
no statements exist, or all of the source statements
have zeros in the change date field, zeros will be
returned. This is an optional return variable that
if used must be specified as *CHAR LEN(7).
MBRCRTD The date the member was created. The date will be
returned in a CYYMMDD format. This is an optional
return variable that if used must be specified as
*CHAR LEN(7).
ZEROCHGD The number of statements that have zeros for the
change date field. This is an optional return
variable that if used must be specified as *DEC
LEN(7 0).
MBRSRCCHGD The date of the last source change at the member
level. The date will be returned in a CYYMMDD
format.
In addition to the source change date kept with each
source record, there is a member level change
date/time field kept for SEU functions. If the
member is changed using SEU, the date/time is
updated. In some cases a member may be changed
without any source statement appearing to be
changed. This could occur if only a delete of a
source statement occurred, a text or source type
change occurred, or SEU was ended and an update was
forced even though no changes occurred.
MBRSRCCHGD is an optional return variable that if
used must be specified as *CHAR LEN(7).
MBRSRCCHGT The time of the last source change at the member
level. The date will be returned in HHMMSS format.
See the comments for the MBRSRCCHGD parameters.
MBRSRCCHGT is an optional return variable that if
used must be specified as *CHAR LEN(6).
Restrictions
------------
None.
Prerequisites
-------------
The following TAA Tools must be on your system:
HLRMVMSG HLL Remove message
RSNLSTMSG Resend last message
RTVDBFA Retrieve data base attributes
SNDESCINF Send escape information
SNDESCMSG Send escape message
Implementation
--------------
None, the tool is ready to use.
Objects used by the tool
------------------------
Object Type Attribute Src member Src file
------ ---- --------- ---------- ----------
RTVSRCCHG *CMD TAASREP QATTCMD
TAASREPC *PGM CLP TAASREPC QATTCL
TAASREPR *PGM RPG TAASREPR QATTRPG
|