Hi, Brian,
OK. I found the problem.
It was in the ORDER of the output field specs in my printer file.
The UNDERLINE/HIGHLIGHT/COLOR was placed after a literal field, which is
itself optioned by an indicator, rather than after the data field it should
have been.
So, here's what it was...
NewRcA R NEWRCD1 SPACEA(1)
NewFlA N11 N1HID 2A 59
NewFlb 11 59'++'
NewFRA 51 COLOR(RED)
NewFlA N12 N1HORD 8S00 65EDTCDE(J )
NewFlb 12 65'++++++++'
NewFRA 52 COLOR(RED)
Here's what it should be...
NewRcA R NEWRCD1 SPACEA(1)
NewFlA N11 N1HID 2A 59
NewFRA 51 COLOR(RED)
NewFlb 11 59'++'
NewFlA N12 N1HORD 8S00 65EDTCDE(J )
NewFRA 52 COLOR(RED)
NewFlb 12 65'++++++++'
Now, I have to figure out why the UNDERLINE works (at least in the pdf
output) for a field, but HIGHLIGHT or COLOR does not show.
I apologize for taking your time on this boneheaded oversight. But I greatly
appreciate it.
-----Original Message-----
From: RPG400-L <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of
tgarvey@xxxxxxxxxx
Sent: Thursday, April 3, 2025 5:30 PM
To: 'RPG programming on IBM i' <rpg400-l@xxxxxxxxxxxxxxxxxx>
Subject: RE: print attributes in pdf document
Thanks, Brian.
I tried method 2.
I've put this thin in debug and I know the indicators are on when the record
is being written to the printer file, but the underline just isn't showing
up in the pdf.
I'm going to try removing the indicators on these fields in the printer
file.
-----Original Message-----
From: RPG400-L <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx> On Behalf Of Brian
Parkins
Sent: Thursday, April 3, 2025 3:24 PM
To: RPG programming on the IBM i (AS/400 and iSeries)
<rpg400-l@xxxxxxxxxxxxxxxxxx>
Subject: Re: print attributes in pdf document
It appears two completely DIFFERENT techniques for handling Indicators have
been mixed together. Highly likely then that the Indicator conditioning
UNDERLINE will never be set. (We don't have enough code to
judge.)
I hope this helps to explain. Personally, I would avoid INDDS/INDARA and
apply method 2). but others may feel differently.
METHOD 1). Renaming Indicators
A INDARA
** RPG IV program MUST use INDDS
A R HEADER
A 1'Reporting software''
A SKIPB(1)
A 54 UNDERLINE
Dcl-F E071155310 Printer Oflind(*in10)
IndDs(Indicators);
// The *INxx and *IN(xx) variables are no longer mapped to Indicators 01-99
// *In54 is no longer mapped on Indicator 54
Dcl-DS Indicators Len(99);
UnderlineInd Ind Pos(54); // MUST use UNDERLINEIND - not *IN54 End-DS;
// to set UNDERLINE attribute in PRTF
METHOD 2). Alias names for Indicators
** RPG IV program CANNOT use INDDS
A R HEADER
A 1'Reporting software''
A SKIPB(1)
A 54 UNDERLINE
Dcl-F E071155310 Printer Oflind(*in10);
Dcl-S IndicatorP Pointer Inz(%addr(*in));
Dcl-DS Indicators Len(99) Based (IndicatorP);
UnderlineInd Ind Pos(54); // Can use both UNDERLINEIND and *IN54 End-DS;
// to set UNDERLINE attribute in PRTF
Brian.
On 03/04/2025 20:30, tgarvey@xxxxxxxxxx wrote:
Nope.
Just checked.
The printer file has the indds option, pointing to the data structure
with the indicators. And the printer file has the indara keyword at
the file level.
Printer DDS file specs (beginning)
A INDARA
A R HEADER
A 1'Reporting software''
A SKIPB(1)
A 53'Multi-File Audit Analysis'
A 114DATE(*YY)
A EDTCDE(Y)
A 125TIME
A EDTWRD(' : : 0')
A SPACEA(1)
A*---
Printer file spec in RPGLE program...
0017.00 fE071155310o e printer oflind(*in10)
indds(indicators)
0018.00 d IndicatorP s * inz(%addr(*in))
0019.00 dIndicators ds based(IndicatorP)
--
This is the RPG programming on IBM i (RPG400-L) mailing list To post a
message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe, or
change list options,
visit:
https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.
Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related
questions.
--
This is the RPG programming on IBM i (RPG400-L) mailing list To post a
message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe, or
change list options,
visit:
https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.
Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related
questions.
As an Amazon Associate we earn from qualifying purchases.