home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD1.iso / Database / ADM144.lha / ADM / ARexx / TimeSys.adm < prev    next >
Encoding:
Text File  |  1994-12-19  |  2.6 KB  |  106 lines

  1. /* $VER: Timesys.adm 0.1 10.10.94
  2.  
  3.    Usage: Aufruf vom ADM-ARexx-Menü.
  4.  
  5.    Dieses Skript schreibt eine Adressliste auf einen HP Deskjet
  6.    in DIN A5. Gibt die Daten auf PRT: aus
  7.  
  8.    Written by Werner Braun. All rights reserved.
  9.  
  10.       0.1  10.10.94  [Werner Braun]  - Erste Version
  11.  
  12.    Basiert auf TelListe von Jan Geißler
  13.  
  14.    */
  15.  
  16. /* R|ckgabewerte zulassen   */
  17. OPTIONS RESULTS
  18.  
  19. /* Drucker oeffnen (zum test mit ram:adm.out arbeiten, spart Papier) */
  20. outfile="prt:";
  21.  
  22. /* Anzahl Adressen holen    */
  23. ADDRINMEM
  24. numadr = RESULT
  25.  
  26. /* Fehler ausgeben, falls Adre_speicher leer  */
  27. IF numadr<1 THEN DO
  28.    SAY "Keine Adressen im Speicher"
  29.    EXIT
  30. END
  31.  
  32. /* Ausgabedatei vffnen     */
  33. IF ~OPEN(datei,outfile,"W") THEN EXIT
  34.  
  35.  
  36. /* Ersten Eintr. aktivieren */
  37. ACTIVATEFIRST
  38.  
  39.  
  40. /* 24cpi LGothic 6Punkt Hvhe, 12 lpi  einstellen mit esc-Sequenz durch prt: durchreichen*/
  41. ok = WriteLn(datei,"1b"x"[18""r" || "1b"x || "(s24h6v6T" || "0a1b"x || "&l12D"||"0a00"x);
  42.  
  43. /* Datum bereitstellen */
  44. Datum=Date(European)
  45. Datum=Overlay(".",Datum,3,1)
  46. Datum=Overlay(".",Datum,6,1)
  47.  
  48. S=1
  49. Header="                 Privat - Adressliste vom " || Datum
  50. Header=insert(Header," ",0,110," ")|| "Seite: "||S
  51.  
  52. Z=1
  53. ok = WriteLn(datei,Header);
  54. ok = WriteLn(datei," ");
  55.  
  56.  
  57. DO FOR numAdr UNTIL RESULT=-1  /* alle Adressen abarbeiten */
  58.  
  59.   GETADDRESS ADM                    /* Adresse -> Stemvar ADM   */
  60.  
  61.   IF RESULT=0 THEN DO
  62.     /* Ausgabe ... */
  63.     IF Z>=84 then DO
  64.       ok=writech(datei,"0C"x)      /* neue Seite */
  65.       Z=1
  66.       S=S+1
  67.       Header="                 Privat - Adressliste vom " || Datum
  68.       Header=insert(Header," ",0,110," ")|| "Seite: "||S
  69.       ok = WriteLn(datei,Header);
  70.       ok = WriteLn(datei," ");
  71.     END
  72.  
  73.     Zeile1 = "                 " || ADM.LASTNAME
  74.     if WORDS(ADM.FIRSTNAME)>0 THEN Zeile1 = Zeile1 || ", " || ADM.FIRSTNAME
  75.     Zeile1 = insert(Zeile1," ",0,55," ")||ADM.TELEPHONE
  76.     ok = WriteLn(datei,Zeile1)
  77.  
  78.     Zeile2 = "                 " || ADM.ADDRESS1
  79.     IF WORDS(ADM.ADDRESS2)>0 THEN Zeile2 = Zeile2 || " " || ADM.ADDRESS2
  80.     IF WORDS(ADM.FAX)>0 THEN Zeile2 = insert(Zeile2," ",0,55," ")||"Fax: " || ADM.FAX
  81.     ok = WriteLN(datei,Zeile2)
  82.  
  83.     Zeile3 = "                 " || ADM.POSTCODE || " " || ADM.CITY
  84.     OK = WRITELN(DATEI,Zeile3)
  85.  
  86.     Zeile4 = "                 " || ADM.REMARK1 ||" "|| ADM.REMARK2
  87.     IF WORDS(Zeile4)>0 THEN
  88.       DO
  89.         ok=WriteLn(datei,Zeile4)
  90.         z=z+1
  91.       END
  92.  
  93.     OK = WRITELN(DATEI," ")
  94.  
  95.     z=z+4 /* Zeilenzahl um 4 erhvhen */
  96.  
  97.     ACTIVATENEXT                   /* Akt. naechsten Eintrag */
  98.   END
  99.  
  100. END
  101. /* letzte Seite auswerfen */
  102. ok=writech(datei,"0C"x)
  103. ok = CLOSE(datei)
  104.  
  105.  
  106.