SYSTIME supplies the time of day when Easytrieve begins executing your program. Together with SYSDATE it forms the operational timestamp operators expect on batch logs and diagnostic output. Broadcom defines SYSTIME as read-only general-purpose system storage—no Library DEFINE required. Format normally uses colons between hours, minutes, and seconds, controlled by the TIMESEP installation option. Night-shift operations rely on SYSTIME in SYSPRINT banners to distinguish reruns submitted minutes apart on the same calendar date. Performance teams pair start time with FINISH time in custom logging when investigating long jobs. Beginners confuse SYSTIME with per-record timestamps or CPU timers—it is neither. This tutorial explains syntax, Options Table effects, DISPLAY and TITLE usage, copying into working storage, pairing with SYSDATE-LONG for audit trails, daylight-saving considerations, and patterns for elapsed-time measurement when SYSTIME alone is insufficient.
SYSTIME belongs to the same general-purpose system field family as SYSDATE. Easytrieve initializes it once when execution starts from the LPAR clock. Reference SYSTIME in MOVE and assignment targets on the right side, in DISPLAY lists, and in report output where supported. Do not attempt to assign into SYSTIME directly—the product maintains it as read-only context information analogous to an immutable job-start timestamp.
| Aspect | Behavior |
|---|---|
| When set | System time at start of Easytrieve execution |
| Writable | Read-only |
| DEFINE required | No |
| Typical format | HH:MM:SS with colon separators (TIMESEP) |
| Related field | SYSDATE for calendar date at same moment |
TIMESEP in the Options Table specifies the character separating hour, minute, and second components in compiler listing time and in SYSTIME. Colon is conventional. If your shop changes TIMESEP during migration testing, re-verify DISPLAY width in working storage fields—eight bytes fit HH:MM:SS but not longer localized patterns. KANJI-TIME appears in reserved-word lists for international deployments; consult international options when operating outside default US English formats.
Compliance and operations standards often require both date and time on job start banners. DISPLAY both system fields in a START procedure before heavy I/O begins. Finishing procedures can DISPLAY again with elapsed commentary when RETURN-CODE is set—comparing FINISH clock to captured START-TIME requires additional logic beyond raw SYSTIME because SYSTIME does not tick forward during the run.
12345678910111213START-LOG. PROC START-DATE = SYSDATE START-TIME = SYSTIME DISPLAY 'JOB START ' START-DATE ' AT ' START-TIME END-PROC JOB INPUT PAYFILE START START-LOG * processing ... FINISH-LOG. PROC DISPLAY 'JOB END ' SYSDATE ' AT ' SYSTIME DISPLAY 'START WAS ' START-DATE ' AT ' START-TIME END-PROC
Define RUN-TIME or START-TIME as alphabetic working storage wide enough for formatted output—typically eight bytes minimum for HH:MM:SS. Assign once at initialization when the stamp must remain the job-start time. Output files that need a literal start time on every detail line should copy the working field inside the loop rather than referencing SYSTIME repeatedly—functionally identical but documents intent that the value is frozen at start.
SYSTIME is not a stopwatch. Measuring how long a sort or million-record pass takes requires reading the clock at two points. Easytrieve Plus documentation describes time-related system functions with names varying by release. Report Generator shops often use DISPLAY timestamps at milestones or external SMF records for duration. Do not subtract SYSTIME from a later reread of SYSTIME expecting meaningful elapsed seconds—SYSTIME value does not update. Log milestone wall-clock via documented functions or store TOD snapshots in working fields at procedure entry and exit.
Less common than SYSDATE on printed titles because run time on every page clutters narrow listings. Exception: intraday trading or hourly operational reports where time of run matters as much as date. When used, place SYSTIME on TITLE 02 or FOOTING lines with COL positioning parallel to date stamps. Verify report writer accepts system fields in TITLE on your release—DISPLAY to SYSPRINT remains the universal fallback.
LPAR clock adjustments during spring and fall transitions affect the time stored at execution start like any batch program. Jobs spanning the transition may show start times that confuse elapsed calculations if external tools assume continuous clock. Document timezone and DST policy for audit teams. SYSTIME reflects system local time per z/OS configuration—not UTC unless your sysprog team configured otherwise.
JCL symbolic parameter &SYSTIME supplies time at JES interpretation—related but not identical to Easytrieve SYSTIME at program start. Steps between JCL scan and Easytrieve execution add delay. For dataset naming in JCL use &SYSTIME; for program logic and report headers inside Easytrieve use SYSTIME. Mixing the two without understanding timing gap causes rare mismatches on heavily loaded systems.
SYSTIME is the clock time written on your worksheet when the teacher hands it out at the start of class. It does not tick forward on the paper while you work—you would need to look at the wall clock again for a new time. SYSDATE is the calendar day on the same worksheet. Together they tell you when you started the assignment.
1. SYSTIME contains:
2. Default SYSTIME formatting often uses:
3. SYSTIME pairs with SYSDATE when:
4. For elapsed time during a long JOB loop you typically:
5. SYSTIME is invalid as a user DEFINE name because: