User Tools

Site Tools


plato:source:plaopl:asm1

Table of Contents

ASM1

Table Of Contents

Source Code

ASM1.txt
  1. ASM1
  2. PROGRAM ASM1(RPAD,TAPE1=RPAD,BC,TAPE10=BC)
  3. C
  4. C ** ROUTINE TO SORT/MERGE RAW PLATO ACCOUNTING DATA
  5. C ** WHICH WAS CREATED BY RAFPBC AND IS ON FILE RPAD
  6. C ** THIS ROUTINE CREATES A FILE BC WHICH IS THE
  7. C ** BILLING CYCLE DATA FOR THE PERIOD
  8. C
  9. EXTERNAL UPDATE
  10. C
  11. REWIND 1
  12. REWIND 10
  13. C
  14. C ** SORT BY
  15. C USER ACCOUNT
  16. C USER COURSE
  17. C USER TYPE
  18. C USER NAME
  19. C LESSON NAME
  20. C LESSON ACCOUNT
  21. C
  22. REWIND 1
  23. REWIND 10
  24. CALL SM5SORT(0)
  25. CALL SM5FROM("RPAD")
  26. CALL SM5TO("BC")
  27. CALL SM5KEY(1,7,"DISPLAY","A")
  28. CALL SM5KEY(9,8,"DISPLAY","A")
  29. CALL SM5KEY(8,1,"DISPLAY","A")
  30. CALL SM5KEY(17,18,"DISPLAY","A")
  31. CALL SM5KEY(35,10,"DISPLAY","A")
  32. CALL SM5KEY(45,7,"DISPLAY","A")
  33. CALL SM5OWN5(UPDATE)
  34. CALL SM5END
  35. REWIND 10
  36. C
  37. C
  38. END
  39. SUBROUTINE UPDATE(IRC,L1,LR1,L2,LR2)
  40. C
  41. C --- SUBROUTINE TO ADD THE TIMES OF TWO RECORDS WITH THE
  42. C --- SAME SORTING KEYS. CALLING SUBROUTINE MUST HAVE AN
  43. C --- *EXTERNAL UPDATE* STATEMENT FOR THIS TO WORK.
  44. C
  45. DIMENSION L1(8), L2(8), NBTWN(6)
  46. C
  47. DECODE (80,10,L1) NBTWN, TIMEA1, TIMEB1
  48. 10 FORMAT(5A10,A1,2F10.3)
  49. DECODE (80,11,L2) TIMEA2, TIMEB2
  50. 11 FORMAT(51X,2F10.3)
  51. C
  52. TIMEA1 = TIMEA1 + TIMEA2
  53. TIMEB1 = TIMEB1 + TIMEB2
  54. C
  55. ENCODE (80,10,L1) NBTWN, TIMEA1, TIMEB1
  56. C
  57. C SET FLAG TO REPLACE RECORD.
  58. C
  59. IRC = 1
  60. C
  61. RETURN
  62. END
plato/source/plaopl/asm1.txt ยท Last modified: 2023/08/05 18:54 by Site Administrator