/* ** $VER: printaddress.mac(rexx) 01.21 (13.09.95) © Aris Basic ** ** ** PROGRAMNAME: ** printaddress.mac(rexx) ** ** FUNKTION: ** Prints Address On Letter Cover ** ** This Macro can be started from ABook or from any other ** Program or Shell (CLI) ** ** This Programm need ABook or ABook-Server in Background ** ** Address Book (ABook) and Address Book Server (ABook-Server) are ** Copyright from Jörg Krause (© 1994-95) ** ** $HISTORY: ** ** 08.02.95 : 01.00 : initial release ** 02.03.95 : 01.10 : shorter,some improvments ** 06.09.95 : 01.20 : addapted to ABook 01.00 ** 13.09.95 : 01.21 : dummy bug removed :) ** ** */ OPTIONS RESULTS CR=D2C(13) blanks.1=' ' blanks.0=' ' /* First we Check is There ABook in Background */ IF ~Show('P','ADDRESS_BOOK.1') THEN DO /* Then we Check is There ABook Server Running */ IF ~Show('P','ABOOK_SERVER') THEN DO SAY 'Diese Skript benoetigt Address-Book, oder\nden ABook-Server im Hintergrund!' EXIT 10 END server: ADDRESS 'ABOOK_SERVER' 'SELECT STEM='VAR. lok = VAR.1 IF lok="VAR.1" THEN call ende() CALL part_2() END ADDRESS 'ADDRESS_BOOK.1' 'LOCKGUI' 'FIRST SELECTED' lok=RESULT 'UNLOCKGUI' IF lok=0 THEN DO IF Show('P','ABOOK_SERVER') THEN Call server() 'REQUESTRESPONSE PROMPT="Kein Eintrag selektiert!" TITLE="FEHLER" BUTTON="_OK"' EXIT 10 END part_2: 'LOCK ENTRY='lok IF RC=10 THEN DO 'REQUESTRESPONSE PROMPT="Ungültiger Lock" TITLE="FEHLER"' call ende() END 'QUERY STEM=DATA.' Open(tmp,'T:addpr.tmp','W') 'REQUESTRESPONSE PROMPT="Auf welche Seite des Blattes soll sich die Anschrift orientieren" TITLE="ANFRAGE" BUTTON="_Linke|_Rechte"' button=RESULT 'REQUESTRESPONSE PROMPT="Was soll zusätzlich gedruckt werden?" TITLE="ANFRAGE" BUTTON="_Staat|_Land|_Beides|_Nichts"' button2=RESULT Writeln(tmp,CR||CR) Writeln(tmp,blanks.button||DATA.TITLE||CR) Writeln(tmp,blanks.button||DATA.LAST||' '||DATA.FIRST||CR) Writeln(tmp,blanks.button||DATA.ADDRESSES.1.STREET||CR) Writeln(tmp,blanks.button||DATA.ADDRESSES.1.PC||' '||DATA.ADDRESSES.1.TOWN||CR) IF ((button2=2)|(button2=3)) THEN WriteLn(tmp,blanks.button||DATA.ADDRESSES.1.COUNTRY||CR) IF ((button2=1)|(button2=3)) THEN WriteLn(tmp,blanks.button||DATA.ADDRESSES.1.STATE||CR) Close(tmp) ADDRESS COMMAND 'c:Copy t:addpr.tmp TO PRT:' 'UNLOCK 'lok EXIT 0 ende: 'UNLOCK 'lok EXIT 10