Informix Error -4486: TEXT or BYTE variables and wordwrap fields cannot be printed in report headers or trailers.
Cause and resolution
TEXT or BYTE variables and wordwrap fields cannot be printed in report headers or trailers.
4GL has to be able to predict how many lines will be used in a report header or trailer. Because the size of a TEXT variable is unpredictable, you cannot display one in these contexts.
Oninit® Troubleshooting Guidance
Reasons / Common Causes
-4486 fires when a TEXT/BYTE variable or a wordwrap field is printed inside a report
header/trailer — per the official guidance, 4GL needs to predict header/trailer line counts in
advance, and a TEXT variable's size is unpredictable.
- A
TEXT/BYTEvariable or wordwrap field printed inside a header/trailer, per the official guidance — the direct, only cause.
Solutions / Resolution
- Remove the
TEXT/BYTEvariable or wordwrap field from the header/trailer, printing it in the detail (ON EVERY ROW) section instead, where its line count doesn't need to be predicted.
Examples
A TEXT variable printed in a page header
PAGE HEADER
PRINT notes_text
-- -4486: notes_text is TEXT, whose size is unpredictable
Corrected
ON EVERY ROW
PRINT notes_text
Diagnostic Checks
- Check every header/trailer section for
TEXT/BYTEvariables or wordwrap fields, and move them to the detail section.
Related Errors / Related Topics
- -4309 — "Printing cannot be done within a loop or CASE statement contained in report
headers or trailers." A related header/trailer restriction, about loops/
CASErather than unpredictable-length content. - -4310 — "Files cannot be printed within report headers or trailers." A related
header/trailer restriction, about
PRINT FILEspecifically rather thanTEXT/BYTEvariables.
A TEXT/BYTE variable or wordwrap field is printed in a header/trailer — move it to the
detail section instead.