home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #3 / amigamamagazinepolishissue1998.iso / bazy / adm / arexx / adm-arexxmakros.lha / ImExport / TrapFax-Export.adm < prev    next >
Text File  |  1996-03-04  |  2KB  |  124 lines

  1. /* $VER: TrapFax-Export.adm 1.1 (26.3.95)
  2.  
  3.    von Kai Bolay.
  4.  
  5.  
  6.    Erzeugt eine Telefonbuchdatei für das Programm "TrapFax" mit allen
  7.    Einträgen, die eine Faxnummer enthalten.
  8.  
  9.    Öffnet dazu einen Filerequester, in dem die zu schreibende TrapFax-
  10.    Datei ausgewählt werden muß.
  11.  
  12.  
  13.    1.0  [kaib]           - erstes Release
  14.    1.1  [jan]  26.3.95   - RexxReqTools-Filerequester zur Eingabe
  15.                            der Zieldatei
  16.                          - Berücksichtigung des Firmennamens
  17.                            bei entspr. Sortierung in ADM
  18.                          - Warnrequester bei schon vorhandener
  19.                            Datei.
  20.  
  21. */
  22.  
  23. OPTIONS RESULTS
  24.  
  25. SIGNAL ON BREAK_C
  26. SIGNAL ON BREAK_D
  27. SIGNAL ON BREAK_E
  28. SIGNAL ON BREAK_F
  29. SIGNAL ON ERROR
  30. SIGNAL ON HALT
  31. SIGNAL ON IOERR
  32. SIGNAL ON SYNTAX
  33.  
  34.  
  35. /* RexxReqTools-Library öffnen */
  36.  
  37. reqname = "rexxreqtools.library"
  38. if ~show("L", reqname) then
  39.   if ~addlib(reqname, 0, -30, 0) then do
  40.      say reqname "not found!"
  41.      EXIT
  42.   end
  43.  
  44.  
  45. /* Filename-Filerequester */
  46.  
  47. dir   = "work:TrapFax/"
  48. file  = "TrapFax.phone"
  49. title = "TrapFax-Telefonbuch speichern"
  50. ok    = "Speichern"
  51. rqflags   = "rtfi_flags=freqf_save"
  52.  
  53. filename = rtfilerequest(dir,file,title,ok,rqflags,)
  54. if filename = "" then do
  55.   call rtezrequest("Keine Datei ausgewählt", "Abbruch")
  56.   EXIT
  57. end
  58.  
  59. IF EXISTS(filename) then do
  60.    if rtezrequest("Die Datei" filename "0A"x "existiert schon!",
  61.                ,"_Überschreiben|Abbru_ch") = 0 THEN EXIT
  62. end
  63.  
  64. /* Ausgabedatei öffnen     */
  65.  
  66.  
  67. IF ~OPEN(file,filename,"W") THEN DO
  68.    SAY "Kann Ausgabedatei nicht öffnen!"
  69.    EXIT
  70. END
  71.  
  72.  
  73. LOCKGUI
  74. ADDRINMEM
  75. numadr = RESULT
  76.  
  77. IF numadr<1 THEN DO
  78.    SAY "Keine Adressen im Speicher"
  79.    EXIT
  80. END
  81.  
  82. ACTIVATEFIRST
  83.  
  84. DO FOR numAdr UNTIL RESULT=-1
  85.  
  86.    GETADDRESS ADR
  87.  
  88.    IF RESULT=0 THEN DO
  89.       IF ADR.FAX ~= "" then do
  90.  
  91.         /* Name generieren nach Sortierung */
  92.         line = ""
  93.         IF ADR.SORT = "COMPANY" THEN
  94.            line = ADR.COMPANY || " "
  95.         ELSE line = STRIP(ADR.FIRSTNAME ADR.LASTNAME) || " "
  96.         line = line || "," || ADR.FAX
  97.  
  98.         ok = WriteLn(file,line)
  99.       END
  100.  
  101.       ACTIVATENEXT                   /* Akt. naechsten Eintrag */
  102.    END
  103. END
  104. ok = Close(file)
  105.  
  106. RC = 0
  107.  
  108. BREAK_C:
  109. BREAK_D:
  110. BREAK_E:
  111. BREAK_F:
  112. ERROR:
  113. HALT:
  114. IOERR:
  115. SYNTAX:
  116.  
  117. UNLOCKGUI
  118.  
  119. IF RC ~= 0 THEN DO
  120.   SAY "Error: " rc errortext(rc) "Line" sigl
  121. END
  122.  
  123. exit
  124.