home *** CD-ROM | disk | FTP | other *** search
-
- /* $VER: ASCII-Import.adm 1.0 (29.3.95)
-
- von Jan Geißler.
-
- Importiert eine ASCII-Datei in ADM, die im Format
- index;anrede;vorname;nachname;straße;plz ort;tel
- vorliegen muß.
-
- Andernfalls muß in Zeile 75ff das Skript angepaßt
- werden.
-
-
- 1.0 [jan] 29.3.95 - erstes Release
-
- */
-
- OPTIONS RESULTS
-
-
- /* --- RexxReqTools-Library öffnen */
-
- reqname = "rexxreqtools.library"
- if ~show("L", reqname) then
- if ~addlib(reqname, 0, -30, 0) then do
- say reqname "not found!"
- EXIT
- end
-
-
- /* --- Datei per Filerequester öffnen */
-
- filename = rtfilerequest("","","ASCII-Datei laden","Importieren!")
- if filename = "" then do
- call rtezrequest("Keine Datei ausgewählt", "Abbruch")
- EXIT
- end
-
- IF ~OPEN(datei,filename,"R") THEN DO /* Adreßdatei öffnen */
- SAY "Kann Adreßdatei nicht öffnen!"
- EXIT
- END
-
-
- /* --- Nachfragen, ob Datei im gewünschten Format vorliegt */
-
- line = READLN(datei) /* Definitionszeile überspringen */
-
- NL = "0a"x
- text = "Dieses Makro setzt voraus, daß diese Datei im Format" NL ||,
- " index;anrede;vorname;nachname;straße;plz ort;tel" NL ||,
- "vorliegt. Die erste Zeile der Datei lautet" NL ||,
- " " line NL NL ||,
- "Soll importiert werden?"
- gads = "Ja, importieren!|Nein, Makro anpassen|Abbruch"
-
- ans = rtezrequest(text,gads)
-
-
- IF ans = 0 THEN EXIT /* --- Abbruch */
-
- ELSE IF ans = 2 THEN DO /* --- Makro ändern */
-
- skript = "ARexx/ASCII-Import.adm"
- ADDRESS COMMAND "SYS:C/ED" skript
- EXIT
- END
-
- /* --- Sonst Importieren */
-
- DO WHILE ~EOF(datei)
- ADM.postcode = ""
- IF line ~= "" THEN DO
-
- /* --- ASCII-Format
-
- Die folgende Zeile teilt die Zeile der Quelldatei in die
- verschiedenen Komponenten. Hier wird vom oben angegebenen
- Aufbau ausgegangen, wobei "plz ort" für ADM noch aufgeteilt
- werden muß.
-
- Diese Zeile ist bei anderem Aufbau entsprechend anzupassen!
-
- (In ARexx können überlange Zeilen durch ein Komma am Zeilen-
- ende in mehrere Zeilen aufgeteilt werden!)
-
- */
-
- PARSE VAR line ADM.id ";" ADM.salutation ";" ADM.firstname ";",
- ADM.lastname ";" ADM.address1 ";" ort ";",
- ADM.telephone
-
-
- /* --- Postleitzahl und Ort trennen */
-
- IF LENGTH(ort)>0 THEN DO
- x = POS(" ",ort)
- IF x>1 THEN DO
- ADM.postcode = LEFT(ort,x-1)
- ort = DELSTR(ort,1,x)
- END
- END
- ADM.city = ort
-
-
- /* --- Adresse in ADM übernehmen */
-
- NEWADDRESS ADM
-
- END
-
- /* --- Nächste Zeile lesen */
-
- line = READLN(datei)
-
- END
- ok = CLOSE(datei)
- call rtezrequest("Fertig.", "OK")
-