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.
As an Amazon Associate we earn from qualifying purchases.