Guest User

Untitled

a guest
Jan 20th, 2025
30
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.60 KB | None | 0 0
  1.  
  2. IDENTIFICATION DIVISION.
  3. PROGRAM-ID. CHANGE-LIGHT-BULB.
  4. AUTHOR. MAINFRAME-VETERAN.
  5. DATE-WRITTEN. 1972-01-01.
  6. DATE-COMPILED. 2023-12-14.
  7. *
  8. ENVIRONMENT DIVISION.
  9. CONFIGURATION SECTION.
  10. SOURCE-COMPUTER. IBM-370.
  11. OBJECT-COMPUTER. IBM-370.
  12. *
  13. INPUT-OUTPUT SECTION.
  14. FILE-CONTROL.
  15. SELECT BULB-MASTER-FILE
  16. ASSIGN TO 'BULBMAST'
  17. ORGANIZATION IS INDEXED
  18. ACCESS MODE IS RANDOM
  19. RECORD KEY IS BULB-ID
  20. FILE STATUS IS WS-FILE-STATUS.
  21. *
  22. DATA DIVISION.
  23. FILE SECTION.
  24. FD BULB-MASTER-FILE
  25. LABEL RECORDS ARE STANDARD
  26. BLOCK CONTAINS 0 RECORDS.
  27. 01 BULB-RECORD.
  28. 05 BULB-ID PIC X(6).
  29. 05 BULB-STATUS PIC X(1).
  30. 05 BULB-WATTAGE PIC 9(3).
  31. 05 BULB-INSTALL-DATE PIC 9(8).
  32. 05 BULB-CHANGE-COUNT PIC 9(4).
  33. 05 FILLER PIC X(58).
  34. *
  35. WORKING-STORAGE SECTION.
  36. 01 WS-FILE-STATUS PIC XX.
  37. 01 WS-CURRENT-DATE.
  38. 05 WS-YEAR PIC 9(4).
  39. 05 WS-MONTH PIC 99.
  40. 05 WS-DAY PIC 99.
  41. *
  42. PROCEDURE DIVISION.
  43. MAIN-LOGIC.
  44. PERFORM 100-INITIALIZE
  45. PERFORM 200-PROCESS-BULB
  46. PERFORM 900-TERMINATE
  47. GOBACK.
  48. *
  49. 100-INITIALIZE.
  50. OPEN I-O BULB-MASTER-FILE
  51. IF WS-FILE-STATUS NOT = "00"
  52. DISPLAY "ERROR OPENING FILE: " WS-FILE-STATUS
  53. PERFORM 900-TERMINATE
  54. STOP RUN
  55. END-IF.
  56. *
  57. 200-PROCESS-BULB.
  58. MOVE "000001" TO BULB-ID
  59. READ BULB-MASTER-FILE
  60. INVALID KEY
  61. DISPLAY "BULB NOT FOUND IN MASTER FILE"
  62. PERFORM 900-TERMINATE
  63. STOP RUN
  64. END-READ
  65. *
  66. IF BULB-STATUS = "W"
  67. PERFORM 300-CHANGE-BULB
  68. ELSE
  69. DISPLAY "BULB STATUS IS NOT WARRANTING CHANGE"
  70. END-IF.
  71. *
  72. 300-CHANGE-BULB.
  73. ACCEPT WS-CURRENT-DATE FROM DATE YYYYMMDD
  74. MOVE "A" TO BULB-STATUS
  75. ADD 1 TO BULB-CHANGE-COUNT
  76. MOVE WS-CURRENT-DATE TO BULB-INSTALL-DATE
  77. REWRITE BULB-RECORD
  78. INVALID KEY
  79. DISPLAY "ERROR UPDATING BULB RECORD"
  80. END-REWRITE.
  81. *
  82. 900-TERMINATE.
  83. CLOSE BULB-MASTER-FILE.
Advertisement
Add Comment
Please, Sign In to add comment