` Printing large memos (Jeff Berlinghoff ) - Icetips Article
Icetips - Templates, Tools & Utilities for Clarion Developers

Templates, Tools and Utilities
for Clarion Developers

Icetips Article

Back to article list   Search Articles     Add Comment     Printer friendly     Direct link  

Par2: Printing large memos
1998-03-23 -- Jeff Berlinghoff
 
The only way I've found to do this is with two report controls on different detail bands. Make a text control on a band that you never print. Make it the correct width, etc, then on another detail (RPT:MemoLine), make a variable string (?String1) as wide as the memo. Assign the value to the memo. (In a rather complicated report I have done, I have several memo fields for one report, so you need to ?TextControl{prop:use}=fil:memofld) Then make a loop: LOOP Line# = 1 TO ?TextControl{prop:LineCount} ?String{prop:text}=?TextControl{prop:Line,Line#} !get one line of text DO CheckEndOfPage PRINT(RPT:MemoLine) END The last thing to do, of course, is to write the CheckEndOfPage Routine. I'm going from memory on this one, don't have that source right here, but basically need to check to see if the current YPos on the page is greater than the YPos of your page footer, if it is, call EndPage(), and reset the XPos to just below the Header. If you only have one Memo to do, you can just put the code inside the loop, but I recall doing all kinds of things where I needed to be able to check for the end of the page, so I made it into a routine.


Today is April 27, 2024, 11:06 pm
This article has been viewed 35115 times.



Back to article list   Search Articles   Add Comment   Printer friendly

Login

User Name:

Password: