home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
o22516d1.zip
/
DSDEMO.@IP
/
DSFRONT.CBL
< prev
next >
Wrap
Text File
|
1992-07-29
|
6KB
|
147 lines
$SET MF
IDENTIFICATION DIVISION.
ENVIRONMENT DIVISION.
DATA DIVISION.
WORKING-STORAGE SECTION.
77 DIALOG-SYSTEM PIC X(8) VALUE 'DSRUN'.
77 DISPLAY-ERROR-NO PIC 9(8).
77 ARRAY-IND PIC 9(4) COMP.
COPY "DS-CNTRL.MF".
COPY "DSCCIECI.cpb".
COPY COMMAREA.
PROCEDURE DIVISION.
PERFORM PROGRAM-INITIALIZE
PERFORM PROGRAM-BODY UNTIL EXIT-FLG-TRUE
PERFORM PROGRAM-TERMINATE
.
*---------------------------------------------------------------*
PROGRAM-INITIALIZE SECTION.
INITIALIZE DS-CONTROL-BLOCK
DATA-BLOCK
COMM-AREA
*
* MAKING A CALL AT THE BEGINNING OF THE EXECUTION TO MAKE SURE
* THAT THE CCI PART OF THE APPLICATION IS FUNCTIONAL
*
MOVE 1 TO COMM-REQUEST
PERFORM CALL-CCI
MOVE DATA-BLOCK-VERSION-NO
TO DS-DATA-BLOCK-VERSION-NO
MOVE VERSION-NO TO DS-VERSION-NO
MOVE DS-NEW-SET TO DS-CONTROL
MOVE 'DSCCIECI' TO DS-SET-NAME
PERFORM CALL-DIALOG-SYSTEM
.
*---------------------------------------------------------------*
PROGRAM-BODY SECTION.
MOVE 2 TO COMM-REQUEST
EVALUATE TRUE
WHEN DS-EXIT-FIELD-TRUE
PERFORM DERIVATIONS
WHEN CLR-FLG-TRUE
INITIALIZE DATA-BLOCK
WHEN LOAD-FLG-TRUE
MOVE 1 TO COMM-LOAD-FLAG
MOVE C-CODE TO FILE-C-CODE
PERFORM CALL-CCI
PERFORM FILL-SCREEN-FROM-RECORD
PERFORM DERIVATIONS
WHEN SAVE-FLG-TRUE
MOVE 1 TO COMM-SAVE-FLAG
PERFORM FILL-RECORD-FROM-SCREEN
PERFORM DERIVATIONS
PERFORM CALL-CCI
WHEN DEL-FLG-TRUE
MOVE 1 TO COMM-DELETE-FLAG
PERFORM CALL-CCI
END-EVALUATE
INITIALIZE GROUP-002
COMM-FLAGS
PERFORM CALL-DIALOG-SYSTEM
.
*---------------------------------------------------------------*
CALL-DIALOG-SYSTEM SECTION.
CALL DIALOG-SYSTEM USING DS-CONTROL-BLOCK
DATA-BLOCK
IF DS-NO-ERROR
NEXT SENTENCE
ELSE
MOVE DS-ERROR-CODE TO DISPLAY-ERROR-NO
DISPLAY 'DS ERROR NO: ' DISPLAY-ERROR-NO
PERFORM PROGRAM-TERMINATE
END-IF
.
*---------------------------------------------------------------*
CALL-CCI SECTION.
CALL 'DSCLIENT' USING COMM-AREA
EVALUATE COMM-RETURN
WHEN 0
CONTINUE
WHEN 1
MOVE 'CRITICAL-ERROR' TO DS-PROCEDURE
MOVE COMM-MESSAGE TO ERR-MSG
WHEN 2
MOVE 'FILE-MESSAGE' TO DS-PROCEDURE
MOVE COMM-MESSAGE TO ERR-MSG
END-EVALUATE
.
PROGRAM-TERMINATE SECTION.
MOVE 3 TO COMM-REQUEST
PERFORM CALL-CCI
GOBACK
.
FILL-SCREEN-FROM-RECORD SECTION.
MOVE FILE-C-CODE TO C-CODE
MOVE FILE-C-NAME TO C-NAME
MOVE FILE-C-ADDR1 TO C-ADDR1
MOVE FILE-C-ADDR2 TO C-ADDR2
MOVE FILE-C-ADDR3 TO C-ADDR3
MOVE FILE-C-ADDR4 TO C-ADDR4
MOVE FILE-C-LIMIT TO C-LIMIT
MOVE FILE-C-AREA TO C-AREA
PERFORM VARYING ARRAY-IND FROM 1 BY 1
UNTIL ARRAY-IND > 10
MOVE FILE-ORD-NO(ARRAY-IND) TO ORD-NO(ARRAY-IND)
MOVE FILE-ORD-DATE(ARRAY-IND) TO
ORD-DATE(ARRAY-IND)
MOVE FILE-ORD-VAL(ARRAY-IND) TO
ORD-VAL(ARRAY-IND)
MOVE FILE-PAY-VAL(ARRAY-IND) TO
PAY-VAL(ARRAY-IND)
END-PERFORM
.
FILL-RECORD-FROM-SCREEN SECTION.
MOVE C-CODE TO FILE-C-CODE
MOVE C-NAME TO FILE-C-NAME
MOVE C-ADDR1 TO FILE-C-ADDR1
MOVE C-ADDR2 TO FILE-C-ADDR2
MOVE C-ADDR3 TO FILE-C-ADDR3
MOVE C-ADDR4 TO FILE-C-ADDR4
MOVE C-LIMIT TO FILE-C-LIMIT
MOVE C-AREA TO FILE-C-AREA
PERFORM VARYING ARRAY-IND FROM 1 BY 1
UNTIL ARRAY-IND > 10
MOVE ORD-NO(ARRAY-IND) TO FILE-ORD-NO(ARRAY-IND)
MOVE ORD-DATE(ARRAY-IND) TO
FILE-ORD-DATE(ARRAY-IND)
MOVE ORD-VAL(ARRAY-IND) TO
FILE-ORD-VAL(ARRAY-IND)
MOVE PAY-VAL(ARRAY-IND) TO
FILE-PAY-VAL(ARRAY-IND)
END-PERFORM
.
DERIVATIONS SECTION.
MOVE 0 TO C-BAL
PERFORM VARYING ARRAY-IND
FROM 1 BY 1 UNTIL ARRAY-IND > 10
COMPUTE ORD-BAL(ARRAY-IND) =
ORD-VAL(ARRAY-IND) -
PAY-VAL(ARRAY-IND)
ADD ORD-BAL(ARRAY-IND) TO C-BAL
END-PERFORM
.