IDENTIFICATION DIVISION.
PROGRAM-ID. EBIL.
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT EBIL ASSIGN TO DISK.
DATA DIVISION.
FILE SECTION.
FD EBIL
VALUE OF FILE-ID "EBIL.TXT"
LABEL RECORDS ARE STANDARD.
01 RECO.
02 NAME PIC A(30).
02 TYPE PIC X.
02 CNUM PIC X(4).
02 CITY PIC A(12).
02 COSP PIC 9(7).
WORKING-STORAGE SECTION.
01 CH PIC 9.
01 J PIC X.
01 EOF PIC A VALUE IS "N".
PROCEDURE DIVISION.
START-PROG.
PERFORM MMENU.
STOP RUN.
MMENU.
DISPLAY (1, 1) ERASE.
DISPLAY (1, 24) "************************************".
DISPLAY (2, 24) "²² ELECTRICITY BILL ²²".
DISPLAY (3, 24) "************************************".
DISPLAY (5, 35) "²² MAIN MENU ²²".
DISPLAY (7, 24) "|----------------------------------|".
DISPLAY (8, 24) "| |".
DISPLAY (9, 24) "| PRESS 1 TO MAKE NEW FILE. |".
DISPLAY (10, 24) "| |".
DISPLAY (11, 24) "| PRESS 2 TO VIEW LIST. |".
DISPLAY (12, 24) "| |".
DISPLAY (13, 24) "| PRESS 3 TO VIEW DETAILED BILL. |".
DISPLAY (14, 24) "| |".
DISPLAY (15, 24) "| PRESS 4 TO APPEND DATA. |".
DISPLAY (16, 24) "| |".
DISPLAY (17, 24) "| PRESS 5 TO EXIT THE PROGRAM. |".
DISPLAY (18, 24) "| |".
DISPLAY (19, 24) "|----------------------------------|".
DISPLAY (21, 24) "ENTER YOUR CHOICE: ", ACCEPT (21, 45) CH.
IF CH = 1
PERFORM ADDDATA
GO TO MMENU
ELSE IF CH = 2
PERFORM MVIEW
ELSE IF CH = 3
PERFORM DSHOW
ELSE IF CH = 4
PERFORM APPDATA
ELSE IF CH = 5
PERFORM MEXIT
ELSE
DISPLAY (1, 1) ERASE
DISPLAY (15, 20) "YOUR ENTERED CHOICE IS NOT VALID"
ACCEPT J.
GO TO MMENU.
ADDDATA.
DISPLAY (1, 1) ERASE.
DISPLAY (2, 27) "²² ADD DATA TO NEW FILE ²²".
OPEN OUTPUT EBIL.
DISPLAY (6, 2) "CUSTOMER'S NAME : ".
ACCEPT (6, 35) NAME.
DISPLAY (8, 2) "CUSTOMER TYPE : ".
DISPLAY (9, 3) "TYPE 1 - INDUSTRIAL".
DISPLAY (10, 3) "TYPE 2 - EDUCATIONAL".
DISPLAY (11, 3) "TYPE 3 - GOVERNMENT".
DISPLAY (12, 3) "TYPE 4 - HOUSHOLD".
ACCEPT (8, 35) TYPE.
DISPLAY (14, 2) "CUSTOMER NUMBER : ".
ACCEPT (14, 35) CNUM.
DISPLAY (16, 2) "CUSTOMER'S CITY : ".
ACCEPT (16, 35) CITY.
DISPLAY (18, 2) "CONSUMPTION (UNITS) : ".
ACCEPT (18, 35) COSP.
WRITE RECO.
CLOSE EBIL.
MVIEW.
DISPLAY (1, 1) ERASE.
DISPLAY (2, 27) "²² TYPEWISE VIEW ²²".
DISPLAY (4, 2) "==========================================";
"====================================".
DISPLAY (5, 2) "NAME".
DISPLAY (5, 25) "TYPE".
DISPLAY (5, 40) "NO.".
DISPLAY (5, 45) "CITY".
DISPLAY (5, 60) "CONSUMPTION".
DISPLAY (6, 2) "------------------------------------------";
"------------------------------------".
MOVE "N" TO EOF.
OPEN INPUT EBIL.
MOVE 7 TO LIN.
PERFORM MSHOW UNTIL EOF = "Y".
CLOSE EBIL.
ACCEPT J.
MSHOW.
READ EBIL RECORDS AT END MOVE "Y" TO EOF.
IF EOF = "N"
DISPLAY (LIN, 2) NAME
PERFORM MVS
DISPLAY (LIN, 40) CNUM
DISPLAY (LIN, 45) CITY
DISPLAY (LIN, 60) COSP
ADD 1 TO LIN.
MVS.
IF TYPE = "1"
DISPLAY (LIN, 25) "INDUSTRIAL"
ELSE IF TYPE = "2"
DISPLAY (LIN, 25) "EDUCATIONAL"
ELSE IF TYPE = "3"
DISPLAY (LIN, 25) "GOVERNMENTAL"
ELSE IF TYPE = "4"
DISPLAY (LIN, 25) "HOUSEHOLD" .
APPDATA.
DISPLAY (1, 1) ERASE.
DISPLAY (2, 27) "²² ADD DATA TO OLD FILE ²²".
OPEN EXTEND EBIL.
DISPLAY (6, 2) "CUSTOMER'S NAME : ".
ACCEPT (6, 35) NAME.
DISPLAY (8, 2) "CUSTOMER TYPE : ".
DISPLAY (9, 3) "TYPE 1 - INDUSTRIAL".
DISPLAY (10, 3) "TYPE 2 - EDUCATIONAL".
DISPLAY (11, 3) "TYPE 3 - GOVERNMENT".
DISPLAY (12, 3) "TYPE 4 - HOUSHOLD".
ACCEPT (8, 35) TYPE.
DISPLAY (14, 2) "CUSTOMER NUMBER : ".
ACCEPT (14, 35) CNUM.
DISPLAY (16, 2) "CUSTOMER'S CITY : ".
ACCEPT (16, 35) CITY.
DISPLAY (18, 2) "CONSUMPTION (UNITS) : ".
ACCEPT (18, 35) COSP.
WRITE RECO.
CLOSE EBIL.
DSHOW.
DISPLAY (1, 1) ERASE.
DISPLAY (2, 27) "²² DETAILED VIEW ²²".
MEXIT.
DISPLAY (1, 1) ERASE.
DISPLAY (12, 22) "²²²² THANKS FOR USING THE PROGRAM ²²²²".
STOP RUN.
No comments:
Post a Comment