|
I call this little function each time before I write. I have this function
in a copy block so only need to include copy.
Note that I would have one of these functions per print file 01, 02, etc.
I never use overflow. Always use the INFDS. Big advantage, you can group
lines together.
For example, assuming a detail record with three lines, CpyPrtOvrF01(3)
would only print on the current page if enough room is left for to print all
three lines.
Hope this helps.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Included in program. Can be a copy block.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*--------------------------------------------------------------
* File information data structure for print file 01.
d dsPrtFile01 ds
d ssOvrFlw01 188 189b 0
d ssCurLin01 367 368b 0
c
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Copy block.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
/if defined (DSPECS)
d ChkPrtOvrF01 pr like(StdChr)
d InLinesRequir 5p 0 value
/elseif defined(CSPECS)
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* ChkPrtOvrF01 - Check for Print File OverFlow on Print File 01.
* In - Number of Lines Required.
* In/Out - None
* Out - None.
* Returns - Yes(Y) or No(N).
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
p ChkPrtOvrF01 b
d pi like(StdChr)
d InLinesRequir 5p 0 value
*- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* If line number greater than overflow set for this file.
c if (ssCurLin01 + InLinesRequir)
c > ssOvrFlw01
c return Yes
c else
c return No
c endif
p ChkPrtOvrF01 e
/endif
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Example code.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
c select
c when oltxt1 <> *blanks
c eval comment = oltxt1
c exsr srCheckOvrFlow
c write rp01_03
c when oltxt2 <> *blanks
c eval comment = oltxt2
c exsr srCheckOvrFlow
c write rp01_03
c when oltxt3 <> *blanks
c eval comment = oltxt3
c exsr srCheckOvrFlow
c write rp01_03
c endsl
*****************************************************************
* srCheckOvrFlow - Check Overflow
*****************************************************************
c srCheckOvrFlowbegsr
* Check Overflow
c if ChkPrtOvrF01(cOverflowLimit) = Yes
c write rp01_06
c write rp01_07
c exsr srPrintHeader
c endif
c endsr
-----Original Message-----
From: grace.cruz@americas.paribas.com
[mailto:grace.cruz@americas.paribas.com]
Sent: Wednesday, December 08, 1999 1:44 PM
To: RPG400-L@midrange.com
Subject: Re: PRTF Overflow
I think you can use an INFDS on the printer file to keep track of the
current
line of the page so you don't have to count each WRITE.
Grace
Internet
From: Rginbg@aol.com on 12/08/99 06:04 PM GMT
To: RPG400-L
cc:
bcc: Grace CRUZ
Subject: PRTF Overflow
Is there a way in ILE to determine if the overflow indicator should be
turned
on without having to count each WRITE.
TIA
Randy Gevedon
Programmer / Analyst
Kelly Software
rginbg@aol.com
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator:
david@midrange.com
+---
----------------------------------------------------------------------------
-
This message is confidential; its contents do not constitute a
commitment by Paribas except where provided for in a written agreement
between you and Paribas. Any unauthorised disclosure, use or
dissemination, either whole or partial, is prohibited. If you are not
the intended recipient of the message, please notify the sender
immediately.
Ce message est confidentiel ; son contenu ne représente en aucun cas un
engagement de la part de Paribas sous réserve de tout accord conclu par
écrit entre vous et Paribas. Toute publication, utilisation ou
diffusion, même partielle, doit être autorisée préalablement. Si vous
n'êtes pas destinataire de ce message, merci d'en avertir immédiatement
l'expéditeur.
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator:
david@midrange.com
+---
+---
| This is the RPG/400 Mailing List!
| To submit a new message, send your mail to RPG400-L@midrange.com.
| To subscribe to this list send email to RPG400-L-SUB@midrange.com.
| To unsubscribe from this list send email to RPG400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner/operator: david@midrange.com
+---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.