Larry: Very nice expansion of the original idea; this approach allows to run the report without external code and hence...less future maintenance... Javier,
Javier Valencia, PE President Valencia Technology Group, L.L.C. 14315 S. Twilight Ln, Suite #14 Olathe, Kansas 66062-4578 Office (913)829-0888 Fax (913)649-2904 Cell (913)915-3137 ================================================ Attention: The information contained in this message and or attachments is intended only for the person or entity to which it is addressed and may contain confidential and/or privileged material. Any review, retransmission, dissemination or other use of, or taking of any action in reliance upon, this information by persons or entities other than the intended recipient is prohibited. If you received this in error, please contact the sender and delete the material from all system and destroy all copies. ====================================================== -----Original Message----- From: [email protected] [mailto:[EMAIL PROTECTED] Behalf Of Lawrence Lustig Sent: Thursday, February 10, 2005 2:09 PM To: RBG7-L Mailing List Subject: [RBG7-L] - Re: Generating Extra pages in a report > Do not use the report page numbering variable, use your own page number > variable and increment it at each page break (just like the old DOS days); > in between reports, you can adjust the page number variable so it always > starts on an odd page number. This suggests a possible single-pass solution to the problem. The idea is that put something in your break footer (the break that you want to force an odd or even page) that will expand to push the report to a new page, but only when you have an odd or even (whichever you want) page number. You could do this as follows: 1. In the report header, create a variable rvLotsOLines = (SFIL(CHAR(10), 75)) 2. Set up manual control of the page variable as described by Javier so that the page number is in the variable rvPageNo 3. In the break footer, create a variable rvSlug = (IFEQ(MOD(.rvPageNo, 2), 0, NULL, .rvLotsOLines)) (a slug, by the way, is a piece of lead used to space lines of text when manually setting type -- which is exactly what this variable is going to do for us). 4. In the break footer, place a Variable Memo control. Set it to STRETCH and the variable should be rvSlug. Now, when a break footer is evaluated, if the page number is even, enough space will be emitted in the footer to force the next break header to be on an odd page. (If you want the headers to be on even pages, not odd, just change the second term of the IFEQ function from 0 to 1). You may need to play around with just how big the slug is (you want enough space to always force the break footer to go onto the next page, even if you are still at the top of the page when the break footer start, but NOT so much space that you run the risk of flowing on to two pages). You can do this by raising and lowering the number 75 in the rvLotsOLines variable, or by changing the font size of the memo control. -- Larry
