DUTAS re-platformed to Raincode - Initial Source Code
This commit is contained in:
99
CICS/DTSCU012.cob
Normal file
99
CICS/DTSCU012.cob
Normal file
@ -0,0 +1,99 @@
|
||||
00001 IDENTIFICATION DIVISION. 09/11/98
|
||||
00002 PROGRAM-ID. DTSCU012 DTSCU012
|
||||
00003 AUTHOR. TRICOASTAL CONSULTING LTD. LV003
|
||||
00004 DATE-WRITTEN SEPTEMBER 1998. CL**3
|
||||
00005 DATE-COMPILED. DTSCU012
|
||||
00006 SKIP3 DTSCU012
|
||||
00007 ***** DTSCU012
|
||||
00008 * DTSCU012
|
||||
00009 * FUNCTION: EDIT AND FORMAT RATES FROM SCREEN DTSCU012
|
||||
00010 * DTSCU012
|
||||
00011 * DTSCU012
|
||||
00012 * MODIFICATION LOG: DTSCU012
|
||||
00013 * DTSCU012
|
||||
00014 * 08/07/1998 INITIAL DEVELOPMENT. MODIFIED FROM MACCU012. CL**2
|
||||
00015 * WORK ORDER: PROGRAMMER: GD CL**2
|
||||
00016 * DTSCU012
|
||||
00017 * XX/XX/XX XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSCU012
|
||||
00018 * XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX DTSCU012
|
||||
00019 * WORK ORDER: PROGRAMMER: DTSCU012
|
||||
00020 * DTSCU012
|
||||
00021 * DTSCU012
|
||||
00022 * DTSCU012
|
||||
00023 ***** DTSCU012
|
||||
00024 SKIP3 DTSCU012
|
||||
00025 ENVIRONMENT DIVISION. DTSCU012
|
||||
00026 DATA DIVISION. DTSCU012
|
||||
00027 SKIP3 DTSCU012
|
||||
00028 WORKING-STORAGE SECTION. DTSCU012
|
||||
000285 77 PAN-VALET PICTURE X(24) VALUE '003DTSCU012 09/11/98'. DTSCU012
|
||||
00029 01 WRK-AREA. DTSCU012
|
||||
00030 05 TO-RIGHT-CNT PIC S9(04) COMP. DTSCU012
|
||||
00031 05 WS-SUB PIC S9(04) COMP. DTSCU012
|
||||
00032 05 IN-SUB PIC S9(04) COMP. DTSCU012
|
||||
00033 05 DECIMAL-FOUND-IND PIC X(01). DTSCU012
|
||||
00034 05 WS-OUTPUT-AREA PIC 9(04). CL**3
|
||||
00035 LINKAGE SECTION. DTSCU012
|
||||
00036 01 DFHCOMMAREA. DTSCU012
|
||||
00037 ++INCLUDE DTSIL012 CL**2
|
||||
00038 PROCEDURE DIVISION. DTSCU012
|
||||
00039 SKIP2 DTSCU012
|
||||
00040 DTSCU012-MAIN. CL**2
|
||||
00041 INSPECT L012-S-RATE CONVERTING LOW-VALUE TO SPACE. DTSCU012
|
||||
00042 IF L012-S-RATE = SPACE DTSCU012
|
||||
00043 SET L012-NO-ENTRY TO TRUE CL**2
|
||||
00044 MOVE ZERO TO L012-RATE DTSCU012
|
||||
00045 GO TO DTSCU012-RETURN. CL**2
|
||||
00046 SET L012-VALID TO TRUE. CL**2
|
||||
00047 MOVE +0 TO L012-RATE. DTSCU012
|
||||
00048 MOVE 0 TO WS-OUTPUT-AREA. DTSCU012
|
||||
00049 MOVE 'N' TO DECIMAL-FOUND-IND. DTSCU012
|
||||
00050 MOVE +0 TO TO-RIGHT-CNT. DTSCU012
|
||||
00051 MOVE +5 TO WS-SUB. CL**3
|
||||
00052 PERFORM P1000-LOOP THRU P1000-EXIT DTSCU012
|
||||
00053 VARYING IN-SUB FROM 4 BY -1 CL**3
|
||||
00054 UNTIL IN-SUB < 1. DTSCU012
|
||||
00055 IF L012-NOT-VALID DTSCU012
|
||||
00056 GO TO DTSCU012-RETURN. CL**2
|
||||
00057 IF DECIMAL-FOUND-IND = 'N' DTSCU012
|
||||
00058 MOVE +1 TO TO-RIGHT-CNT. DTSCU012
|
||||
00059 SKIP1 DTSCU012
|
||||
00060 IF TO-RIGHT-CNT = 0 DTSCU012
|
||||
00061 SET L012-NOT-VALID TO TRUE CL**2
|
||||
00062 GO TO DTSCU012-RETURN. CL**2
|
||||
00063 IF TO-RIGHT-CNT = +1 DTSCU012
|
||||
00064 COMPUTE L012-RATE = WS-OUTPUT-AREA / 1000 DTSCU012
|
||||
00065 ELSE DTSCU012
|
||||
00066 IF TO-RIGHT-CNT = +2 DTSCU012
|
||||
00067 COMPUTE L012-RATE = WS-OUTPUT-AREA / 10000 DTSCU012
|
||||
00068 ELSE DTSCU012
|
||||
00069 SET L012-NOT-VALID TO TRUE. CL**2
|
||||
00070 DTSCU012-RETURN. CL**2
|
||||
00071 EXEC CICS DTSCU012
|
||||
00072 RETURN DTSCU012
|
||||
00073 END-EXEC. DTSCU012
|
||||
00074 GOBACK. DTSCU012
|
||||
00075 P1000-LOOP. DTSCU012
|
||||
00076 IF L012-S-RATE (IN-SUB : 1) = SPACE DTSCU012
|
||||
00077 GO TO P1000-EXIT. DTSCU012
|
||||
00078 SKIP1 DTSCU012
|
||||
00079 IF L012-S-RATE (IN-SUB : 1) = '.' DTSCU012
|
||||
00080 IF DECIMAL-FOUND-IND = 'Y' DTSCU012
|
||||
00081 SET L012-NOT-VALID TO TRUE CL**2
|
||||
00082 GO TO P1000-EXIT DTSCU012
|
||||
00083 ELSE DTSCU012
|
||||
00084 MOVE 'Y' TO DECIMAL-FOUND-IND DTSCU012
|
||||
00085 GO TO P1000-EXIT. DTSCU012
|
||||
00086 SKIP1 DTSCU012
|
||||
00087 IF L012-S-RATE (IN-SUB : 1) NUMERIC DTSCU012
|
||||
00088 SUBTRACT 1 FROM WS-SUB DTSCU012
|
||||
00089 MOVE L012-S-RATE (IN-SUB : 1) DTSCU012
|
||||
00090 TO WS-OUTPUT-AREA (WS-SUB : 1) DTSCU012
|
||||
00091 IF DECIMAL-FOUND-IND = 'N' DTSCU012
|
||||
00092 ADD +1 TO TO-RIGHT-CNT DTSCU012
|
||||
00093 ELSE DTSCU012
|
||||
00094 NEXT SENTENCE DTSCU012
|
||||
00095 ELSE DTSCU012
|
||||
00096 SET L012-NOT-VALID TO TRUE. CL**2
|
||||
00097 P1000-EXIT. DTSCU012
|
||||
00098 EXIT. DTSCU012
|
||||
Reference in New Issue
Block a user