home *** CD-ROM | disk | FTP | other *** search
/ Magazyn Amiga 3 / MA_Cover_3.iso / bazy / intuidex / rexxdemos / findclub.rexx < prev    next >
Encoding:
OS/2 REXX Batch file  |  1995-07-26  |  1.8 KB  |  75 lines

  1. /*
  2. ** THIS IS A DEMO SCRIPT FOR INTUIDEX 2.2 AND ITS REXX PORT
  3. **
  4. ** IT JUST DOES SOME SILLY THINGS WITH A LARGE DATABASE THAT I'VE INCLUDED
  5. ** WITH THIS VERSION OF INTUIDEX.
  6. **
  7. ** I THINK I'M GOING TO HAVE TO GET PERMISSION TO REALLY DISTRIBUTE THAT
  8. ** USER GROUP LIST, AS IT CAME FROM A/C'S GUIDE, AS WELL AS THE NOW-DEFUNCT
  9. ** AMIGAWHIRLED
  10. */
  11.  
  12. options results
  13.  
  14. say "Opening user group database!"
  15. address IDEX1 'OPEN INTUIDEX:DATA/usergroups.dex'
  16.  
  17. do while((state~="QUIT") & (state~="quit"))
  18.     say
  19.     say "Enter a state to find clubs in:"
  20.     parse pull state
  21.  
  22.     /*
  23.     ** SEE IF THE USER WANTED TO QUIT.  WE CHECK BOTH ALL CAPS AND
  24.     ** ALL LOWER CASE
  25.     */
  26.     if(state~="QUIT") then do
  27.         if(state~="quit") then do
  28.  
  29.             /*
  30.             ** NOW WE LOOK FOR THE STATE IN THE USER GROUP DATABASE,
  31.             ** AND GET BACK AS A RESULT THE NUMBER OF MATCHES
  32.             */
  33.             address IDEX1 "FIND 8" STATE
  34.  
  35.             /*
  36.             ** CONVERT THE STRING IN result INTO A NUMBER IN num
  37.             */
  38.             a=length(result)
  39.             num=0
  40.  
  41.             do while(a>1)
  42.                 num= 10*num+c2d(left(right(result,a),1))-48
  43.                 a= a-1
  44.             end
  45.  
  46.  
  47.             /*
  48.             ** NOW PRINT THE FOUND MATCHES
  49.             */
  50.             say "Found" num "matches:"
  51.             say
  52.  
  53.             if(num > 0) then do
  54.                 a=0
  55.                 do while(a < num)
  56.                     address IDEX1 'GET 2'
  57.                     fn= result
  58.  
  59.                     address IDEX1 'GET 3'
  60.                     ln= result
  61.  
  62.                     address IDEX1 'GET 4'
  63.                     name= result
  64.  
  65.                     say "Contact:" fn ln "        Club:" name
  66.  
  67.                     address IDEX1 'NEXT'
  68.                     a=a+1
  69.                 end
  70.             end
  71.         end
  72.     end
  73. end
  74.  
  75. say "Exiting FindClub.rexx!"