home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #3 / amigamamagazinepolishissue1998.iso / bazy / adm / arexx / adm-arexxmakros.lha / Ausdruck / DruckeIDList.adm < prev    next >
Text File  |  1996-08-08  |  2KB  |  73 lines

  1. /* $VER: Drucke_IDListe.adm 1.3 (8.8.96)
  2.  
  3.    Copyright 1996 Jan Geissler und Daniel Wicke
  4.  
  5.    Druckt Adressliste, sortiert nach Index.
  6.    
  7.    1.3 - 8.8.96: Neu geschrieben, basierend auf Version 1.2 von
  8.                  Daniel Wicke, wicke@wpts0.physik.uni-wuppertal.de.
  9.                  Verarbeitet nun auch nicht-numerische Indizes
  10.                  und braucht keine DATUM()-Funktion mehr.
  11.    
  12. */
  13.  
  14. options results
  15.  
  16. getdocname
  17. Kopfzeile='Indexverzeichnis der Adressdatei' result 'am' date() || ''
  18.  
  19. InitDrucker='#1p"zwwq'
  20. ExitDrucker=' '
  21.  
  22. activatefirst
  23.  
  24. if ~open(tempfile,'t:.listtemp','w') then do
  25.    say "Kann Ausgabedatei t:.listtemp nicht öffnen!"
  26.    exit
  27. end
  28.  
  29. do forever
  30.    getaddress Adresse
  31.    if RESULT=-1 then leave
  32.  
  33.    zeile=left(adresse.id,10)
  34.    zeile=overlay(adresse.lastname||", "adresse.firstname,zeile,12)
  35.    zeile=overlay(" "||adresse.address1,zeile,40)
  36.    zeile=overlay(" "||adresse.postcode,zeile,68)
  37.    zeile=overlay(" "||adresse.city,zeile,76)
  38.    zeile=overlay(" "||adresse.telephone,zeile,93)
  39.  
  40.    call writeln(tempfile,Zeile)
  41.  
  42.    activatenext
  43.    if RESULT=-1 then leave
  44. end
  45.  
  46. call close(tempfile)
  47. address command "c:sort from t:.listtemp TO t:.listtemp2"
  48.  
  49. if ~open(tempfile,'t:.listtemp2','r') then do
  50.    say "Kann Eingabedatei t:.listtemp2 nicht öffnen!"
  51.    exit
  52. end
  53.  
  54. if ~open(drucker,'prt:',W) then do
  55.    say "Kann Drucker nicht öffnen!"
  56.    call close(tempfile)
  57.    exit
  58. end
  59. else do
  60.    call writeln(drucker,InitDrucker)    
  61.    call writeln(drucker,kopfzeile)    
  62.    call writeln(drucker,"")    
  63.    do while ~eof(tempfile)
  64.       zeile = ""
  65.       zeile = readln(tempfile)  
  66.       if zeile ~= "" then do
  67.          call writeln(drucker,zeile)    
  68.       end
  69.    end
  70.    call close(tempfile)
  71.    call close(drucker)
  72. end
  73.