Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

FOOTER on Last Page only

17 views
Skip to first unread message

KimD...@gmail.com

unread,
Apr 6, 2006, 11:32:56 PM4/6/06
to
Hi All,

I want to print footer on last page only. I handcoded to print invoice.
It seems like I have to use group-break and tried without help. I
included source code.
I searched this group but no handcode related.
Any comments welcome...

Thanks,
Richard

Print_Laser ROUTINE
DATA
InvoiceRpt
REPORT,AT(50,3300,8450,6200),PAPER(PAPER:LETTER),PRE(RPT),THOUS

HEADER,AT(250,850,8000,600),USE(?Header1),FONT('Arial',10,,FONT:Regular)
STRING(@S10),AT(5200,0730,600,150),USE(INV:INVNUM)
STRING(@D01),AT(6500,0730,700,150),USE(INV:INVDATE)

STRING(@N3),AT(7600,0730,150,150),PAGENO,USE(?PageCount,,?PageCount:2),RIGHT

STRING(@S30),AT(1200,1100,2700,150),USE(INV:BCOMPANY)

STRING(@S30),AT(5000,1100,3000,150),USE(INV:SCOMPANY)

STRING(@S50),AT(1200,1250,3000,150),USE(INV:BADDRESS1)

STRING(@S50),AT(5000,1250,3000,150),USE(INV:SADDRESS1)
STRING(@S50),AT(1200,1400,3000,150),USE(LOC:ADDR2A)
STRING(@S50),AT(5000,1400,3000,150),USE(LOC:ADDR2B)
STRING(@S50),AT(1200,1550,3000,150),USE(LOC:ADDR3A)
STRING(@S50),AT(5000,1550,3000,150),USE(LOC:ADDR3B)
STRING(@S50),AT(1200,1700,3000,150),USE(LOC:ADDR4A)
STRING(@S50),AT(5000,1700,3000,150),USE(LOC:ADDR4B)
END

Detail1
DETAIL,AT(200,,8000,130),USE(?Detail1),FONT('Arial',10,,FONT:Regular)
STRING(@N5),AT(100,70,450,140),USE(Q_QTY),RIGHT
STRING(@S10),AT(1150,70,1000,140),USE(Q_ITEMNUM)
STRING(@S30),AT(2400,70,2500,140),USE(Q_DESC)

STRING(@N-10.2),AT(5900,70,700,140),USE(Q_PRICE),RIGHT

STRING(@N-10.2),AT(6850,70,900,140),USE(Q_EXTAMT),RIGHT
END

FOOTER,AT(250,8700,8000,250),USE(?Footer)

STRING(@N-12.2),AT(6850,1050,900,140),USE(LOC:OTOTAL),RIGHT

STRING(@N-12.2),AT(6850,1210,900,140),USE(INV:MISC),RIGHT

STRING(@N-12.2),AT(6850,1370,900,140),USE(INV:CREDIT),RIGHT

STRING(@N-12.2),AT(6850,1530,900,140),USE(INV:UPS),RIGHT

STRING(@N-12.2),AT(6850,1720,900,140),USE(LOC:TTLAMT),RIGHT
END

FORM,AT(250,250,8400,11000)
END
END

CODE

SETCURSOR(CURSOR:Wait)

LOC:TTLAMT = 0

Open(InvoiceRpt)
SetTarget(InvoiceRpt)

LOC:CITYNAME1 = CLIP(INV:BCITY) & ', ' & INV:BSTATE & ' ' & INV:BZIP
LOC:CITYNAME2 = CLIP(INV:SCITY) & ', ' & INV:SSTATE & ' ' & INV:SZIP
LOC:NATION1 = INV:BNATION
LOC:NATION2 = INV:SNATION

IF CLIP(INV:BADDRESS2) > ' ' OR CLIP(INV:SADDRESS2) > ' '
LOC:ADDR2A = INV:BADDRESS2
LOC:ADDR2B = INV:SADDRESS2
LOC:ADDR3A = LOC:CITYNAME1
LOC:ADDR3B = LOC:CITYNAME2
LOC:ADDR4A = LOC:NATION1
LOC:ADDR4B = LOC:NATION2
ELSE
LOC:ADDR2A = LOC:CITYNAME1
LOC:ADDR2B = LOC:CITYNAME2
LOC:ADDR3A = LOC:NATION1
LOC:ADDR3B = LOC:NATION2
LOC:ADDR4A = ''
LOC:ADDR4B = ''
END

LOC:TTLAMT = LOC:OTOTAL - INV:CREDIT + INV:MISC + INV:UPS

LOC:IDX = 0
LOOP
LOC:IDX = LOC:IDX + 1
GET(Q_PRINT, LOC:IDX)
IF ERRORCODE()
BREAK
END
PRINT(RPT:Detail1)
END ! OF LOOP

ENDPAGE(InvoiceRpt)
Close(InvoiceRpt)
SetTarget()

SETCURSOR(CURSOR:None)

EXIT

sand...@yahoo.com

unread,
Apr 7, 2006, 4:39:07 AM4/7/06
to
Try to add another detail (Detail2), fill it in with desired content.
Add PRINT(RPT:Detail2) after your loop.

KimD...@gmail.com

unread,
Apr 10, 2006, 11:03:18 PM4/10/06
to
Thank you. It works !!!!!
I replaced the FOOTER by DETAIL (Detail2) with ABSOLUTE,WITHNEXT
options.
Then added PRINT(RPT:Detail2) after loop.

sand...@yahoo.com

unread,
Apr 11, 2006, 6:27:18 AM4/11/06
to
You are welcome.
Do you know how to solve this problem:
"How can I print vertical line which height would be equal with height
of the TEXT field? Text field is set to be RESIZED - doesn't have fixed
height."
Google topic was: Height of the resized text field.
Best wishes from Zoran

0 new messages