Sequence numbers are the quiet right margin on every Easytrieve source line—columns seventy-three through eighty on a standard eighty-character record. They do not change how IF statements evaluate or how reports format. They matter when auditors ask which source version compiled into production, when you insert ten lines and need unique identifiers, and when compile listings must match change-control records. Punch-card heritage lives on in those eight columns. This page explains what sequence numbers do, how ISPF maintains them, and how they interact with SCANCOLS when your site mirrors COBOL column-one-through-six conventions.
Sequence numbers identify individual records in a source member. Operations and compliance teams trace compile listings back to dataset members using these values alongside member name and library. Developers use them when discussing patches: change sequence 001450 on line forty-five rather than the third IF below the FILE statement. Unlike line numbers in error messages—which reflect current file order—sequence numbers can stay stable when you reformat indentation if you choose not to renumber.
When SCANCOLS is 1 and SCANCOLE is 72, columns seventy-three through eighty are outside the scanned statement area. Six-digit numbers like 001000 are typical, right-aligned or left-aligned per shop standard within the eight columns. The compiler ignores this region for syntax but prints it on the statement listing—so blank sequence columns appear as spaces on listings while populated columns aid cross-reference.
12345Col 1 10 20 30 40 50 60 70 73 80 JOB INPUT PERSNL 001000 IF GROSS GT 0 001010 PRINT PAY-RPT 001020 END-IF 001030
Mainframe shops traditionally increment sequence numbers by ten for each new line. Starting at 001000, the next line is 001010, then 001020. When you insert a line between 001010 and 001020, assign 001015 without renumbering the entire program—a practice dating to physical card decks where re-sorting thousands of cards was expensive. Modern ISPF editing makes full renumber easier, but increment-by-ten persists in standards documents and audit expectations.
| Practice | Benefit | Risk if skipped |
|---|---|---|
| Increment by 10 | Room for insertions | Renumber entire member on each insert |
| Start at 001000 | Consistent width | Collision with other members in docs |
| Match listing on compile | Audit trail | Cannot trace listing to source |
| ISPF NUM ON | Auto-maintain on insert/delete | Duplicate or gap numbers if manual edit fights NUM |
ISPF edit option NUM controls automatic sequence numbering. With NUM ON, inserting a line generates the next sequence in columns seventy-three through eighty according to your profile increment. NUM OFF leaves sequence columns unchanged when you add lines—useful during mass reformat but dangerous under strict change control. Coordinate NUM settings with team standards before bulk edits. Command RENUM resequences an entire member when gaps become unmanageable.
Installations with SCANCOLS 7 treat columns one through six like COBOL sequence area. Sequence numbers move left; code starts at column seven. The right margin seventy-three through eighty may still hold change markers or remain blank. Know your site layout before copying textbook examples that assume column-one code start. A sequence number in columns one through six at SCANCOLS 1 sites is still ignored for parsing if it falls outside SCANCOLS—but visually confuses reviewers expecting code at column one.
Broadcom documents that the complete eighty-character record prints on the statement listing. Auditors compare listing sequence to archived source. Mismatch triggers investigation: wrong member compiled, partial upload, or post-compile source edit. Save listing output with compile JCL per release management policy. Sequence numbers bridge human process and compiler output even though the linker never sees them.
Compiler error messages cite source line sequence in file order—line 42 means the forty-second record in the member. ISPF line numbers in browse are the same ordering. Sequence numbers in seventy-three through eighty are data on each record; they usually increase with line order but can have gaps or duplicates if edited carelessly. Do not equate sequence 001420 with line 42 unless your member started at 001000 with increment ten and no gaps—a common but not guaranteed relationship.
Teams using Git for Easytrieve source may strip or regenerate sequence numbers on commit. Pre-commit hooks sometimes normalize columns seventy-three through eighty to avoid noisy diffs. Before promoting to mainframe libraries governed by ISPF NUM rules, run a renumbering script or ISPF batch edit to restore compliant sequence columns. Mismatch between Git view and mainframe view causes promote rejections at change boards.
Sequence numbers are page numbers written in the margin of your notebook. The teacher copies your answers and keeps the page numbers on the photocopy so everyone knows which page a note came from. The page numbers are not part of your math homework—they just help people find the right page later. Counting by tens (10, 20, 30) leaves empty numbers (15, 25) when you add a new page in the middle without rewriting every page number.
1. Sequence numbers typically occupy columns:
2. Sequence numbers are ignored by the compiler for:
3. A common sequence increment in mainframe shops is:
4. ISPF NUM ON typically maintains numbers in:
5. When SCANCOLS is 7, columns 1-6 may hold: