/* AREXX-Script zum Faxen von GoldED3 aus: Es muß ein Block markiert sein (nur der Block wird in ein Fax umgewandelt) Das Programm list die Faxnummern aus dem "Telefonbuch" (Datei GPFax:GPFax_pho und zeigt sie in einem Listview-Requester an. */ options results if ~ show("L","rexxsupport.library") then do if ~ addlib("rexxsupport.library",0,-30,0) then exit end address "GOLDED.1" 'LOCK CURRENT' 'QUERY MARKED' m=result if m='FALSE' then do 'REQUEST TITLE "FAX" BODY "Es muß ein Block markiert sein!" BUTTON "ABBRUCH" HIDE=FALSE' signal ende end 'REQUEST TITLE "FAX" BODY "Name für die Fax-Datei:" BUTTON "WEITER|ABBRUCH" STRING' datei=result if datei="" | rc>0 then signal ende datei="T:"||datei 'SAVE BLOCK NAME '||d2c(34)||datei||d2c(34) address command if ~ show("P","REXX_GPFAX") then do "c:run >nil: GPFAX:GPFAX -Z -Q -F5" do while ~ show("P","REXX_GPFAX") "c:wait 1" end end address "REXX_GPFAX" 'CONVERT '||datei r=rc;na=result tx="Faxdatei|"||na||"|anzeigen?" /* --- Fax anzeigen und ev. senden --- */ if r=0 then do address "GOLDED.1" 'REQUEST TITLE "FAX" BODY '||d2c(34)||tx||d2c(34) BUTTON "JA|NEIN" r=result if r~=0 then do address "REXX_GPFAX" 'VIEWFAX '||na end address command "C:DELETE "||datei||" quiet" address "GOLDED.1" e=open("phonebook","GPFAX:gpfax_pho",READ) if e=0 then signal ende nr.="" na.="" ko.="" i=1 do while eof("phonebook")=0 eintrag=readch("phonebook",526) eintrag=right(eintrag,518) na.i=compress(left(eintrag,40),d2c(0)||" ") eintrag=right(eintrag,478) nr.i=compress(left(eintrag,21),d2c(0)) i=i+1 end anzahl=i-2 e=open("out","T:faxlist.rexx",WRITE) if e=0 then signal ende e=writeln("out","/* */") e=writeln("out","address 'GOLDED.1'") e=writeln("out","options results") e=writeln("out","'REQLIST TITLE Liste_der_Faxnummern ENTRY ',") do i=1 to anzahl-1 e=writeln("out",d2c(34)||na.i||d2c(34)||",") end e=writeln("out",d2c(34)||na.anzahl||d2c(34)) e=writeln("out","if rc=0 then do") tx='wahl=result'||d2c(10)||"wahl=wahl+1"||d2c(10) tx=tx||'e=open("tmp","T:faxnummer",WRITE)'||d2c(10) tx=tx||'e=writeln("tmp",wahl)'||d2c(10) tx=tx||'e=close("tmp")'||d2c(10) tx=tx||'end' e=writeln("out",tx) e=close("out") e=close("phonebook") address command 'c:RX T:faxlist.rexx' address "GOLDED.1" e=open("in","T:Faxnummer",READ) if e=0 then signal ende0 nn=readln("in") faxnr=nr.nn /* hier die Fax-Nummer aus der Liste! */ e=close("in") if faxnr~="" then do tx=d2c(34)||"Senden an "||na.nn||"|(Fax-Nummer: "||faxnr||")?"||d2c(34) 'REQUEST TITLE "FAX" BODY '||tx BUTTON "SENDEN|ABBRECHEN" r=result if r~=0 then do address "REXX_GPFAX" 'SENDFAX' na 'TO' faxnr if rc=0 then do 'REPORTLOG T 5' zeit=result 'REPORTLOG T 7' seiten=result 'REPORTLOG T 6' dauer=result tx="FAX erfolgreich gesendet!|Empfänger: "||na.nn tx=tx||"|Zeit: "||zeit tx=tx||"|Übertragene Seiten: "||seiten tx=tx||"|Übertragungsdauer: "||dauer||" s" /* --- Dateilänge berechnen --- */ bytes=0 do i=1 to seiten fxnr=right(i,2,"0") fx=statef(na||".p"||fxnr) faxlen=subword(fx,2,1) bytes=bytes+faxlen end tx=tx||"|Fax-Datei(en): "||bytes||" bytes" tx=d2c(34)||tx||d2c(34) address "GOLDED.1" 'REQUEST TITLE "FAX" BODY '||tx BUTTON "OK" end /* --- Fehler beim Senden --------------------- */ else do address "GOLDED.1" 'REQUEST TITLE "FAX" BODY "Beim FAX-Versand|ist ein Fehler aufgetreten!" BUTTON "OK"' signal ende end end end end /* --- Fehler beim Konvertieren in eine Fax-Datei --- */ else do address "GOLDED.1" 'REQUEST TITLE "FAX" BODY "Fehler beim Erzeugen der FAX-Datei"' signal ende end /* --- Fertig! --- */ ende0: 'REQUEST TITLE "FAX" BODY "FAX erstellen/senden|abgeschlossen!" BUTTON "OK"' ende: address "GOLDED.1" 'UNLOCK' if exists("T:Faxlist.rexx") then do 'FILE NAME "T:Faxlist.rexx" DELETE FORCE' end if exists("T:Faxnummer") then do 'FILE NAME "T:Faxnummer" DELETE FORCE' end if show("P","REXX_GPFAX") then do address "REXX_GPFAX" 'QUITFAX' end exit