Easytrieve Column Positioning

A readable Easytrieve report depends on columns lining up: department codes under the department heading, dollar amounts decimal-aligned, and title banners sitting where managers expect them on green-bar paper or PDF output. Column positioning is the set of REPORT, TITLE, and LINE controls that place each literal and field on the horizontal axis. Beginners often assume Easytrieve auto-aligns everything because default reports look neat when fields are similar widths—but the moment you add a long street address beside a short sex code, or print on a preprinted tax form, you need explicit spacing rules. This tutorial explains the coordinate system defined by LINESIZE, the baseline gap from SPACE, fine tuning with plus and minus offsets, absolute placement with COL, left justification with NOADJUST, how TITLE positioning differs from LINE positioning, when POS is the better tool, and how HEADING width affects perceived column alignment. Every technique here comes from Broadcom Easytrieve Report Generator 11.6 report-processing and statement reference material.

Progress0 of 0 lessons

The Horizontal Layout Model

Think of each TITLE line and each LINE row as a ruler whose length is LINESIZE on the REPORT statement. Printable columns are numbered from 1 at the left edge through LINESIZE at the right boundary. A field defined as twenty characters wide occupies twenty contiguous columns starting wherever Easytrieve places it. Masked numeric fields still consume their defined print width. The report writer never wraps a single line item mid-field; if the cumulative width of items, spaces, and offsets exceeds LINESIZE, you get truncation, overlay on extended printers, or compile-time analysis errors depending on the situation. Before tuning individual columns, choose LINESIZE to match your spool printer, PDF capture width, or preprinted form—eighty and one hundred thirty-two are common batch values, while wide analytical listings may use 165 or more.

By default Easytrieve centers the logical content of each title line and each LINE 01 group within that LINESIZE ruler. Centering is convenient for short management summaries but fights you when column one must always start at the physical left margin—for example W-2 boxes or mainframe job log columns copied into audit files. REPORT NOADJUST disables centering and left-justifies titles and the report body. SPREAD, which maximizes gaps between items, cannot combine with NOADJUST. Understanding whether your report is centered or NOADJUST is the first diagnostic step when column numbers disagree with the listing you eyeball in SDSF.

REPORT SPACE — The Baseline Gap

REPORT SPACE number-of-spaces sets how many blank characters separate consecutive items on TITLE statements and consecutive items on LINE statements within a line group. Broadcom's default is three. SPACE applies uniformly unless a plus offset, minus offset, or COL parameter overrides placement for a specific item boundary. The same SPACE value governs both title banners and detail rows, which helps keep title literals roughly above related detail columns when you use relative spacing instead of COL. SPACE does not add trailing blanks at end of line; it only inserts gaps between items you explicitly list.

text
1
2
3
REPORT SALES-RPT LINESIZE 80 SPACE 3 TITLE 01 'REGIONAL SALES' 'Q4 SUMMARY' LINE 01 REGION BRANCH DEPT REVENUE

In the skeleton above, three blanks sit between REGION and BRANCH, three between BRANCH and DEPT, and three between DEPT and REVENUE on every detail line. The two title literals are likewise separated by three blanks before centering wraps the whole title list. Changing to REPORT SPACE 1 tightens the entire report—titles and details together—without touching individual LINE statements. That global knob is powerful for dense listings but dangerous for wide masked fields where a single space might make SSN digits touch employee names.

Plus Offset and Minus Offset

Plus offset and minus offset adjust the gap before the next title item or line item relative to SPACE. The effective gap equals SPACE plus offset for a plus value, or SPACE minus offset for a minus value. Broadcom allows the computed absolute space to fall to zero if the full line still fits inside LINESIZE. Offsets appear immediately before the item they influence; they do not move the prior item. Multiple offsets can appear on one TITLE or LINE statement, each applying to the following literal or field.

SPACE 3 with different offsets before the next item
ModifierBlanks insertedTypical use
(none)3Default comfortable gap
+23 + 2 = 5Extra air before a wide amount field
+103 + 10 = 13Push a label toward mid-line
-23 − 2 = 1Tighten city/state/zip clusters
-33 − 3 = 0Adjacent items with no added gap
text
1
2
3
4
5
REPORT ADDR-RPT LINESIZE 65 SPACE 3 TITLE 01 'EMPLOYEE ADDRESS LIST' LINE 01 EMPNAME SSN LINE 02 POS 2 ADDR-STREET LINE 03 POS 2 ADDR-CITY -3 ',' + -2 ADDR-STATE +5 ADDR-ZIP

Broadcom's Standard Reports chapter uses a minus offset cluster on LINE 03 to pull a comma literal closer to the city field while still separating state and zip with a plus offset after the default POS 2 alignment under the SSN column from LINE 01. POS handles vertical stacking within the line group; offsets fine-tune horizontal gaps once the item is anchored. When POS alone leaves decimal points unaligned between LINE 01 and LINE 02 numeric fields of different widths, add a plus offset after POS—as in POS 2 +3 on the shorter packed-decimal field—to nudge it under the decimal point of the longer LINE 01 field.

When Offsets Beat COL

Offsets preserve Easytrieve's automatic centering on standard reports. If you only need slightly more air between name and department, +5 on LINE 01 is simpler than calculating absolute column numbers for every field. Offsets also keep HEADING centering logic intact because HEADING text stays centered over each LINE 01 item whose width includes heading length. Reach for COL when the business mandates a fixed print column regardless of prior item widths—tax form boxes, mainframe column 72 markers, or aligning a title literal with a detail field defined on LINE 01 COL 40.

COL — Absolute Column Placement

COL column-number tells Easytrieve to begin the next title item or line item at that absolute print column. Valid values start at 1 and cannot place an item so its trailing characters extend past LINESIZE. COL overrides the automatic gap from SPACE and any pending offset for that boundary—the next item starts exactly at the column you specify, not after SPACE blanks from the previous item's end. Extended reporting printers raise errors if COL causes fields or literals to overlap physically on the page.

text
1
2
3
4
5
REPORT W2-FORM LINESIZE 80 NOADJUST NOHEADING SPACE 1 LINE 01 COL 7 'YOUR COMPANY NAME' COL 33 '903' COL 39 '12-3456789' LINE 02 COL 7 'YOUR COMPANY STREET' LINE 10 COL 7 SSN COL 23 YTD-FEDTAX COL 39 YTD-WAGES COL 54 YTD-FICA LINE 12 COL 7 EMP-NAME COL 39 YTD-WAGES

The preprinted form pattern from Broadcom places every literal and field at explicit columns on a NOADJUST report with SPACE 1 so incidental gaps do not shift boxes on the physical form. COL 7 anchors employer and employee blocks at the left box edge; COL 39 aligns dollar fields in the wage column. Without NOADJUST, those COL values would still be interpreted, but the entire line group would center as a block, sliding form data away from preprinted boxes. NOHEADING suppresses automatic headings because the form itself provides labels.

COL on TITLE Versus COL on LINE

Broadcom 11.6 differences between TITLE COL and LINE COL
AspectTITLE COLLINE COL
NOADJUST requirementOptional; works with centered or left-justified titlesRequired; COL on LINE is rejected without REPORT NOADJUST
Typical purposeBanner text, dates, page labels aligned to detailDetail fields, form boxes, machine-readable columns
Interaction with auto date/pageOn TITLE 01, system date and PAGE may overlay left columns unless NODATE, NOPAGE, or reserved COLNot applicable
Centering behaviorEach title line still centers as a whole unless NOADJUSTLINE 01 group centers as a whole unless NOADJUST; LINE 02+ follow POS/offset rules

TITLE COL is documented as usable with either default centering or NOADJUST. LINE COL is stricter: the LINE statement reference states you must specify NOADJUST on REPORT to use COL on LINE. Beginners frequently copy a TITLE COL pattern onto LINE, see unexpected compile or runtime behavior, and wonder why absolute columns fail. The fix is almost always adding NOADJUST and verifying LINESIZE matches the target printer.

NOADJUST and Automatic Title Items

REPORT NOADJUST left-justifies title lines and the report body on the page instead of centering them within LINESIZE. That is mandatory for COL on LINE and recommended for preprinted forms. A side effect appears on TITLE 01: Easytrieve still inserts the system date and page count at the ends of the first title line unless NODATE or NOPAGE suppress them. With NOADJUST, the automatic date can overlay the leftmost columns you intended for your first COL item. Broadcom documents three remedies: code NODATE to remove the date, reserve space with COL 10 for SHORTDATE or COL 12 for LONGDATE before your first visible title item, or plan literals so they begin right of the date field.

text
1
2
3
4
5
6
REPORT RPT1 LINESIZE 60 NOADJUST NODATE NOPAGE TITLE 01 COL 20 SSN TITLE 02 SYSDATE COL 20 NAME TITLE 03 COL 20 ADDR-STREET TITLE 04 COL 20 ADDR-CITY -3 ',' + -2 ADDR-STATE +5 ADDR-ZIP LINE 01 ' '

This Standard Reports example stacks employee identifiers in column 20 while using offsets on TITLE 04 for punctuation between city, state, and zip—demonstrating that TITLE accepts the same offset vocabulary as LINE. SYSDATE on TITLE 02 prints the run date starting at column 20 beside the name field area. NODATE on REPORT removes the automatic TITLE 01 date that would otherwise collide with NOADJUST left margin placement.

LINE and TITLE Positioning in Standard Reports

LINE 01 defines the primary detail columns and drives automatic HEADING text unless HEADING statements or DEFINE HEADING parameters override labels. Easytrieve centers each LINE 01 item together with its heading stack based on the longer of data width or heading width—that computed width is called item length in Broadcom documentation. LINE 02 through LINE 99 data is left-justified under the corresponding LINE 01 item when you use POS, or flows with offsets when you build multi-line addresses and annotations. TITLE lines follow parallel spacing rules but do not print HEADING rows; they occupy the title area above TITLESKIP blank lines and column headings.

text
1
2
3
4
5
6
7
8
9
10
FILE PERSNL FB(150) SSN 4 5 P MASK '999-99-9999' HEADING('SOCIAL' 'SECURITY' 'NUMBER') EMPNAME 17 20 A HEADING 'EMPLOYEE NAME' PAY-NET 90 4 P 2 JOB INPUT PERSNL PRINT PAY-RPT REPORT PAY-RPT LINESIZE 65 SPACE 3 TITLE 01 'PAYROLL DETAIL' COL 55 'CONFIDENTIAL' HEADING PAY-NET ('NET' 'PAY') LINE 01 EMPNAME +2 SSN +4 '* NO OT *' +3 PAY-NET

The TITLE uses COL 55 to pin a confidential label near the right margin on an otherwise centered title line while LINE 01 uses relative +2 and +4 offsets to separate name, SSN, literal flag, and net pay under automatic headings. MIXING techniques is normal: COL for fixed markers, offsets for flexible standard listings. Compare output with and without NOADJUST in test JCL before promoting changes—centered LINE 01 groups shift visually even when COL appears only on TITLE.

POS Versus COL — Choosing a Strategy

POS position-number applies to LINE 02 through LINE 99 and means place this item under the nth item on LINE 01, using the item length calculation for that anchor column. POS does not replace COL: POS is relative to the line group structure; COL is absolute on the print line. Use POS when a secondary line continues data belonging to a primary column—street address under SSN, net pay annotation under gross pay. Use COL when every item must land at a form-defined coordinate independent of LINE 01 ordering. You may combine POS with offsets; you may combine COL with literals and fields in any order on the statement.

  • POS under item 1 keeps auxiliary text aligned with the leftmost LINE 01 field.
  • POS under item 4 with +3 corrects decimal misalignment between packed fields.
  • COL 39 on multiple LINE rows stacks dollars in the same absolute column for tax forms.
  • COL on TITLE 01 COL 10 reserves date space while NOADJUST remains off for centered banners.

SPREAD, HEADING Width, and Perceived Columns

REPORT SPREAD overrides SPACE by inserting the maximum possible blanks between LINE items while still fitting LINESIZE, which turns a detail line into a worksheet with wide gaps. SPREAD cannot accompany NOADJUST, so you cannot pair maximum spread with absolute COL form printing. HEADING text wider than the field below widens the item length for centering, which shifts apparent column boundaries on LINE 01 even when SPACE stays at three. Multi-line HEADING values from DEFINE or HEADING statements are common culprits when beginners believe columns drift without reason—check heading strings before adding COL everywhere.

Debugging Misaligned Output

  1. Confirm REPORT options: NOADJUST, SPREAD, SPACE, LINESIZE, NODATE, NOPAGE.
  2. Print a ruler line with COL literals every ten columns on a test NOADJUST report.
  3. Compare TITLE spacing separately from LINE 01; they share SPACE but follow different centering rules.
  4. Verify POS item numbers match LINE 01 item order after you add or remove fields.
  5. Check masked field print sizes; masks do not shrink the column Easytrieve reserves.
  6. Review extended printer overlap errors when COL places packed decimals too close.
text
1
2
3
REPORT DEBUG-RPT LINESIZE 80 NOADJUST NODATE NOPAGE SPACE 1 TITLE 01 COL 1 '|' COL 10 '|' COL 20 '|' COL 30 '|' COL 40 '|' LINE 01 COL 1 'C1' COL 15 'C15' COL 30 'C30' COL 45 'C45' COL 60 'C60'

A debug ruler report like this one prints pipe markers at known TITLE columns and short literals on LINE at fifteen-column intervals. Run it once when migrating from centered defaults to NOADJUST form printing; the listing becomes a visual map you can compare against preprinted paper held to the screen.

Common Column Positioning Mistakes

  • Using LINE COL without REPORT NOADJUST and expecting compile success.
  • Forgetting automatic TITLE 01 date overlays left columns on NOADJUST reports.
  • Mixing SPREAD with NOADJUST on the same REPORT statement.
  • Applying large negative offsets until headings touch detail on the next row.
  • Assuming POS column-number is the same as COL column-number—they solve different problems.
  • Setting LINESIZE narrower than the rightmost COL plus field width.
  • Ignoring XML report mode, where most LINE positioning parameters except field names and literals are ignored.

Explain It Like I'm Five

Imagine you are typing on a piece of ruled paper with numbered squares. SPACE is how many empty squares you skip between words when you let the computer decide spacing—usually three. Plus offset means skip a few extra squares; minus offset means skip fewer, maybe zero. COL is like pointing at square twenty and saying the next word starts right there, no matter what came before. NOADJUST means stop centering the whole line in the middle of the paper and start from the left edge instead, which you need when filling in a form that already has boxes printed on it. TITLE is the banner at the top; LINE is the rows of facts underneath. POS is stacking a second row so a word sits under an earlier word in the row above, like writing the street address directly under the social security number column.

Exercises

  1. Build a SPACE 3 report and change only REPORT SPACE to 1; document which gaps tightened.
  2. Recreate the Broadcom W-2 COL example with NOADJUST and explain each COL value.
  3. Add POS 2 and POS 2 +3 on LINE 02 to fix decimal alignment between two packed fields.
  4. Write TITLE 01 with COL 10 for a literal and COL 50 for a second literal on LINESIZE 80.
  5. Produce a debug ruler report and mark where automatic TITLE 01 date appears with and without NODATE.
  6. Convert a centered LINE 01 listing to NOADJUST with explicit COL for every column.

Quiz

Test Your Knowledge

1. What does REPORT SPACE control by default?

  • Blank characters between consecutive items on TITLE and LINE
  • Vertical lines per page only
  • Sort sequence for input files
  • Compiler optimization level

2. When must you code REPORT NOADJUST before using COL on LINE?

  • Always for LINE COL; TITLE COL may work with or without NOADJUST
  • Never; COL works on centered reports
  • Only for XML reports
  • Only when PAGESIZE exceeds 60

3. A +5 offset after an item means:

  • Five spaces beyond the current SPACE value before the next item
  • Move five columns left
  • Skip five detail records
  • Print item five times

4. SPREAD and NOADJUST on the same REPORT are:

  • Mutually exclusive
  • Required together
  • Identical options
  • Valid only for LABEL reports

5. POS 3 on LINE 02 aligns the next item:

  • Under the third item on LINE 01
  • At absolute print column 3
  • After the third control break
  • On page three only
Published
Read time18 min
AuthorMainframeMaster
Reviewed by MainframeMaster teamVerified: Broadcom Easytrieve Report Generator 11.6 Standard Reports, LINE Statement, TITLE Statement, REPORT StatementSources: Broadcom Easytrieve 11.6 Processing of Reports, Standard Reports, LINE Statement, TITLE Statement (Reports), REPORT StatementApplies to: Easytrieve report column positioning on TITLE and LINE