Audit regulations ask who ran this job and who viewed this screen. SYSUSERID is Easytrieve's built-in answer in many online and batch contexts—a sixteen-byte alphanumeric system field you reference without DEFINE. Broadcom documents it prominently in screen processing because CICS programs copy SYSUSERID from the Execute Interface Block when a terminal user drives a SCREEN activity. Batch payroll and general ledger teams stamp SYSUSERID on report headers next to SYSDATE so printed output ties to a person or service account. Migration to 11.6 function mode added SYSUSERID to the reserved-word list: legacy programs that used SYSUSERID as an ordinary field name fail compile until renamed. This page explains field size, CICS versus batch behavior, TITLE and audit patterns, pairing with captured job name, security nuances with RACF and surrogate submitters, DISPLAY diagnostics, and rename strategies for colliding legacy identifiers.
SYSUSERID occupies sixteen bytes of alphanumeric storage in system-defined working storage. That width accommodates eight-character classic userids with room for longer identities or padding on some systems. When copying into report headers, use a working field of at least sixteen bytes or trim trailing spaces with documented string functions if columns are narrow. Do not truncate to eight bytes without verifying downstream audit tools still match RACF logs.
| Aspect | Detail |
|---|---|
| Length | 16 bytes alphanumeric |
| DEFINE required | No—system-defined name |
| 11.6 status | Reserved word—cannot be user field name |
| CICS source | Copied from EIB per Screen Processing docs |
| Typical use | Audit headers, screen personalization, logs |
Online inquiry programs display welcome messages with SYSUSERID—Hello SMITH—and log actions per terminal operator. SCREEN statement field lists may show SYSUSERID as output-only on admin panels. Security reviews verify users see only their authorized data; SYSUSERID helps branch logic when test terminals need different behavior from production users—guarded by proper RACF profiles, not hard-coded userid lists in source when avoidable.
12345678910111213SCREEN INQUIRY KEY F3 NAME 'Exit' EXIT BEFORE-SCREEN. PROC MSG-LINE = 'USER:' MOVE SYSUSERID TO SCR-USER-ID END-PROC AFTER-SCREEN. PROC IF KEY-PRESSED EQ F3 EXIT END-IF END-PROC
Batch SYSUSERID reflects the identity Easytrieve associates with the execution environment— often the TSO userid that submitted the job or a started task identity depending on how JCL was invoked. Scheduler surrogate accounts may show a service id rather than a human name. Document your shop standard: auditors may require both submitter from JES and SYSUSERID from Easytrieve when they differ. When identity must come strictly from JCL, complement SYSUSERID with &SYSUID passed on PARM similar to job name patterns.
Combine SYSUSERID with SYSDATE, SYSTIME, and a captured job name field for SOX-style banners. Place on TITLE 02 or FOOTING so every page carries identity without repeating logic on each LINE. For extract files, MOVE SYSUSERID to OUT-USER-ID on header records written once in START procedure.
123456REPORT AUDIT-RPT TITLE 01 'GENERAL LEDGER EXTRACT' TITLE 02 'RUN BY:' COL 1 SYSUSERID COL 20 SYSDATE COL 35 SYSTIME JOB INPUT GLFILE LINE ACCT-NO AMOUNT
Pre-11.6 programs sometimes defined a field literally named SYSUSERID storing business data—a dangerous name even before reservation. New Reserved Words documentation lists SYSUSERID among terms that break compile in function mode. Rename to WS-USER-ID or AUDIT-USER-ID and recompile all impacted members. Global search source libraries before mass migration weekend.
Screen processing also documents TERM-NAME for terminal identification. User id answers who; terminal id answers which device. Security forensics may need both on violation logs. Do not substitute one for the other on audit designs requiring dual capture.
DISPLAY SYSUSERID to SYSPRINT on every input record may expose personal identifiers in logs retained years—align with data privacy policy. Prefer header-level stamp. Mask or hash when exporting logs to unsecured ticket systems.
SYSUSERID is your name tag the computer reads when you use a screen program. For batch jobs it is like writing who started the homework machine on the cover page. The name tag is already made—you do not sew your own field called SYSUSERID in 11.6 because that name is reserved for the real tag.
1. SYSUSERID in Easytrieve is:
2. In CICS screen processing SYSUSERID is copied from:
3. SYSUSERID became a reserved word in:
4. Batch audit headers use SYSUSERID to show:
5. You reference SYSUSERID without: