home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 6 / AACD06.ISO / AACD / Utilities / amiCheck / Macros / ac2finaldata.rexx next >
OS/2 REXX Batch file  |  1996-11-03  |  2KB  |  90 lines

  1. /* amiCheck to Final Data EXPORT macro                           */
  2. /* start amicheck, start final data.  Create a database in       */
  3. /* final data with the following fields:                         */
  4. /* text, text, text, text, amount (with TWO decimal places!)     */
  5. /* Then open an account and run the macro!                       */
  6.  
  7. OPTIONS RESULTS
  8.  
  9. /* load arexx library for functions */
  10. IF ( ADDLIB("rexxsupport.library", 0, -30, 0) = FALSE) THEN EXIT 20
  11.  
  12. /* grab the ports */
  13. ACPort = ADDRESS()
  14.  
  15. /* find final data */
  16. FDPortBase = "FINALD."
  17. found = 0
  18. DO p = 1 TO 50
  19.    IF ( SHOWLIST('P', FDPortBase || p) ) THEN DO
  20.       FDPort = FDPortBase || p
  21.       found = 1
  22.       LEAVE
  23.    END
  24. END
  25.  
  26. /* did we nab it? */
  27. if ( ~ found) THEN DO
  28.     EXIT
  29. END
  30.  
  31. /* number of records */
  32. address VALUE ACPort
  33. AC_GETINFO ENTRIES
  34. entries = Result
  35.  
  36. /* lock amicheck */
  37. address VALUE ACPort
  38. AC_Lock
  39.  
  40. /* now for each record... */
  41. IF (entries > 0) THEN DO
  42.     DO i=1 TO entries
  43.         address VALUE ACPort
  44.             AC_GETRECORD i TYPE
  45.             Record.Type = Result
  46.  
  47.             AC_GETRECORD i NAME
  48.             Record.Name = Result
  49.  
  50.             AC_GETRECORD i MEMO
  51.             Record.Memo = Result
  52.  
  53.             AC_GETRECORD i DATE
  54.             Record.Date = Result
  55.             
  56.             AC_GETRECORD i AMOUNT
  57.             Record.Amount = Result
  58.             
  59.             AC_GETRECORD i CHECKNUMBER
  60.             Record.Check = Result
  61.  
  62.             /* is this + or -? */
  63.             if (Record.Type ~= 2 ) then Record.Amount = Record.Amount * -1
  64.         
  65.  
  66.         address VALUE FDPort
  67.             NewRow
  68.             IF (Record.Type = 0) THEN Insert DATA Record.Check
  69.             IF (Record.Type = 1) THEN Insert DATA "Withdrawal"
  70.             IF (Record.Type = 2) THEN Insert DATA "Deposit"
  71.                 
  72.             NextCell
  73.             Insert DATA Record.Name
  74.  
  75.             NextCell
  76.         ›    Insert DATA Record.Memo 
  77.  
  78.             NextCell
  79.             Insert DATA Record.Date
  80.  
  81.         ›    NextCell
  82.             Insert DATA Record.Amount
  83.     
  84.     END
  85. END
  86.  
  87. /* unlock amicheck */
  88. address VALUE ACPort
  89. AC_Unlock
  90.