home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 2: PC / frozenfish_august_1995.bin / bbs / d09xx / d0970.lha / ADM / ARexx / HoleAdresse.tpl < prev    next >
Text File  |  1993-06-23  |  3KB  |  77 lines

  1. /* $VER: Hole_Adresse.tpl V0.6 (23.6.93)
  2.  
  3.    Makro fuer TextPlusProfessional.
  4.  
  5.    Fragt in einem Requester nach dem zu suchenden Nachnamen und fuegt
  6.    wenn vorhanden die komplette Adresse in der aktuellen Zeile ein.
  7.    Wenn diese nicht gewuenscht wird, wird die naechste zutreffende Ad-
  8.    resse gesucht.
  9.    Es koennten auch Patterns benutzt werden, wie z.B. #? oder *
  10.  
  11.    Written by Carsten Fulde  Fido: 2:2402/340.0
  12.           and Jan Gei▀ler    Fido: 2:2407/106.5
  13.  
  14.    V0.5:  [cf]   Initial Release
  15.    V0.6:  [jan]  RESULT fix.
  16.  
  17.                                                                     */
  18. ADDRESS 'TextPlus'
  19. OPTIONS RESULTS
  20.  
  21. frage      = 'Bitte den Nachnamen eingeben:'
  22. RequestString frage
  23.  
  24. if RESULT~="" then
  25.    WORT = RESULT
  26. else
  27.    EXIT
  28. fst = 1                      /* Anfangsposition = 1 (= erste Adresse) */
  29. res = 0
  30.  
  31. ADM.LASTNAME = WORT
  32. DO FOREVER                   /* Endlosschleife */
  33.    ADDRESS 'ADM.1'
  34.  
  35.    SEARCH fst ADM            /* Eintrag suchen */
  36.    res = RESULT
  37.  
  38.    IF res >-1 THEN DO        /* Rueckgabewert = Nummer der gefundenen
  39.                                 Adresse */
  40.       GETADDRESS RESAD       /* Adresse holen in Stemvariable RESAD   */
  41.       ADDRESS 'TextPlus'
  42.       frage   = 'Diesen hier Einfuegen - OK ?'
  43.       default = RESAD.FIRSTNAME RESAD.LASTNAME '-' RESAD.CITY
  44.       RequestString frage'\\'default
  45.       antwort = RESULT
  46.       IF antwort~='' THEN DO
  47.          InsertMode on
  48.          Type RESAD.FIRSTNAME RESAD.LASTNAME     /* Name einfuegen    */
  49.          CR
  50.          Type RESAD.ADDRESS1                     /* Adressfeld 1     */
  51.          CR
  52.          IF RESAD.ADDRESS2~="" THEN DO
  53.             Type RESAD.ADDRESS2
  54.             CR                                   /* Adressfeld 2     */
  55.          END;
  56.          Type RESAD.POSTCODE RESAD.CITY          /* PLZ Ort          */
  57.          EXIT                   /* ... und Programm verlassen         */
  58.          END
  59.       ELSE
  60.          fst = res + 1
  61.       END /* IF */
  62.    ELSE DO                   /* Fehler aufgetreten */
  63.       ADDRESS 'TextPlus'
  64.       frage = 'Folgender Fehler'
  65.       IF res=-1 THEN msg='        - Keiner mehr da -'
  66.       IF res=-2 THEN msg='      - AdressSpeicher leer -'
  67.       IF res=-3 THEN msg='     - Nicht genug Speicher -'
  68.       IF res=-4 THEN msg='    - Aufruf v.SEARCH falsch -'
  69.       IF res=-5 THEN msg='  - Interner Fehler in Search -'
  70.       IF res=-6 THEN msg='   - Kein Suchparam.in Stem -'
  71.       IF res=-7 THEN msg='     - SearchPos ungueltig -'
  72.       RequestString frage'\\'msg
  73.       EXIT
  74.       END
  75.    END  /* IF */
  76. END /* DO */
  77.