000100IDENTIFICATIONDIVISION. OBIC24.2 000200PROGRAM-ID. OBIC24.2 000300 OBIC2A. OBIC24.2 000400**************************************************************** OBIC24.2 000500* * OBIC24.2 000600* VALIDATION FOR:- * OBIC24.2 000700* * OBIC24.2 000800* "ON-SITE VALIDATION, NATIONAL INSTITUTE OF STD & TECH. ".OBIC24.2 000900* * OBIC24.2 001000* "COBOL 85 VERSION 4.2, Apr 1993 SSVG ".OBIC24.2 001100* * OBIC24.2 001200**************************************************************** OBIC24.2 001300* * OBIC24.2 001400* X-CARDS USED BY THIS PROGRAM ARE :- * OBIC24.2 001500* * OBIC24.2 001600* X-55 - SYSTEM PRINTER NAME. * OBIC24.2 001700* X-82 - SOURCE COMPUTER NAME. * OBIC24.2 001800* X-83 - OBJECT COMPUTER NAME. * OBIC24.2 001900* * OBIC24.2 002000**************************************************************** OBIC24.2 002100* OBIC24.2 002200* THE SUBPROGRAM IC219 TESTS THE USE OF A SORT STATEMENT OBIC24.2 002300* IN A SEGMENTED SUBPROGRAM. THE FIRST NON-DECLARATIVE SECTIONOBIC24.2 002400* OF THE SUBPROGRAM CONSISTS OF A SORT STATEMENT AND A STOP RUNOBIC24.2 002500* STATEMENT IN A FIXED PERMANENT SEGMENT. THE SORT INPUT OBIC24.2 002600* PROCEDURE AND THE SORT OUTPUT PROCEDURE ARE CONTAINED IN TWO OBIC24.2 002700* INDEPENDENT SEGMENTS. THE MAIN PROGRAM IC218 CALLS THIS OBIC24.2 002800* SUBPROGRAM AND THE SUBPROGRAM IC220 IS CALLED FROM THE OBIC24.2 002900* OUTPUT PROCEDURE SECTION TO PRINT THE OUTPUT REPORT. OBIC24.2 003000* OBIC24.2 003100******************************************************************OBIC24.2 003200ENVIRONMENTDIVISION. OBIC24.2 003300CONFIGURATIONSECTION. OBIC24.2 003400SOURCE-COMPUTER. OBIC24.2 003500 Card0130. OBIC24.2 003600OBJECT-COMPUTER. OBIC24.2 003700 Card0131. OBIC24.2 003800INPUT-OUTPUTSECTION. OBIC24.2 003900FILE-CONTROL. OBIC24.2 004000SELECT ST-FS1 ASSIGNTO OBIC24.2 004100"C0039" . OBIC24.2 004200DATADIVISION. OBIC24.2 004300FILESECTION. OBIC24.2 004400SD ST-FS1 OBIC24.2 004500DATARECORDIS ST-FS1R1-F-G-126. OBIC24.2 00460001 ST-FS1R1-F-G-126. OBIC24.2 00470002 ST-FS1-1-120. OBIC24.2 00480003FILLERPICTURE X(34). OBIC24.2 00490003 ST-FS1-REC-NO PICTURE9(6). OBIC24.2 00500003FILLERPICTURE X(80). OBIC24.2 00510002 ST-FS1-121-124 PICTURE X(4). OBIC24.2 00520002 ST-FS1-125-126 PICTURE99. OBIC24.2 005300WORKING-STORAGESECTION. OBIC24.2 00540001 TEMP1 PICTURE X(4). OBIC24.2 00550001 TEMP2 PICTURE999. OBIC24.2 00560001 TEMP3 PICTURE999. OBIC24.2 00570001 TEMP4 PICTURE9(6). OBIC24.2 00580001 FAIL-COUNT PICTURE999VALUEZERO. OBIC24.2 00590001 EOF-FLAG PICTURE9VALUEZERO. OBIC24.2 00600001 PRINT-LINE-VALUES. OBIC24.2 00610002 PASS-OR-FAIL PICTURE X(5). OBIC24.2 00620002 R-COUNT PICTURE99. OBIC24.2 00630002 FEATURE-TESTED PICTURE X(20). OBIC24.2 00640002 COMPUTED-SORT-KEY. OBIC24.2 00650003 COMPUTED-1-4 PICTURE X(4). OBIC24.2 00660003 COMPUTED-5-6 PICTURE99. OBIC24.2 00670003 COMPUTED-7-12 PICTURE9(6). OBIC24.2 00680003FILLERPICTURE X(8) VALUESPACE. OBIC24.2 00690002 CORRECT-SORT-KEY. OBIC24.2 00700003 CORRECT-1-4 PICTURE X(4). OBIC24.2 00710003 CORRECT-5-6 PICTURE99. OBIC24.2 00720003 CORRECT-7-12 PICTURE9(6). OBIC24.2 00730003FILLERPICTURE X(8) VALUESPACE. OBIC24.2 00740002 PARAGRAPH-NAME PICTURE X(12). OBIC24.2 00750001 PRINT-FLAG PICTURE9. OBIC24.2 00760001 FILE-RECORD-INFORMATION-REC. OBIC24.2 00770003 FILE-RECORD-INFO-SKELETON. OBIC24.2 00780005FILLERPICTURE X(48) VALUE OBIC24.2 007900"FILE= ,RECORD= /0,RECNO=000000,UPDT=00". OBIC24.2 00800005FILLERPICTURE X(46) VALUE OBIC24.2 008100",ODO=0000,PGM= ,LRECL=000000,BLKSIZ =0000". OBIC24.2 00820005FILLERPICTURE X(26) VALUE OBIC24.2 008300",LFIL=000000,ORG= ,LBLR= ". OBIC24.2 00840005FILLERPICTURE X(37) VALUE OBIC24.2 008500",RECKEY= ". OBIC24.2 00860005FILLERPICTURE X(38) VALUE OBIC24.2 008700",ALTKEY1= ". OBIC24.2 00880005FILLERPICTURE X(38) VALUE OBIC24.2 008900",ALTKEY2= ". OBIC24.2 00900005FILLERPICTURE X(7) VALUESPACE.OBIC24.2 00910003 FILE-RECORD-INFO OCCURS10 TIMES. OBIC24.2 00920005 FILE-RECORD-INFO-P1-120. OBIC24.2 00930007FILLERPIC X(5). OBIC24.2 00940007 XFILE-NAME PIC X(6). OBIC24.2 00950007FILLERPIC X(8). OBIC24.2 00960007 XRECORD-NAME PIC X(6). OBIC24.2 00970007FILLERPIC X(1). OBIC24.2 00980007 REELUNIT-NUMBER PIC9(1). OBIC24.2 00990007FILLERPIC X(7). OBIC24.2 01000007 XRECORD-NUMBER PIC9(6). OBIC24.2 01010007FILLERPIC X(6). OBIC24.2 01020007 UPDATE-NUMBER PIC9(2). OBIC24.2 01030007FILLERPIC X(5). OBIC24.2 01040007 ODO-NUMBER PIC9(4). OBIC24.2 01050007FILLERPIC X(5). OBIC24.2 01060007 XPROGRAM-NAME PIC X(5). OBIC24.2 01070007FILLERPIC X(7). OBIC24.2 01080007 XRECORD-LENGTH PIC9(6). OBIC24.2 01090007FILLERPIC X(7). OBIC24.2 01100007 CHARS-OR-RECORDS PIC X(2). OBIC24.2 01110007FILLERPIC X(1). OBIC24.2 01120007 XBLOCK-SIZE PIC9(4). OBIC24.2 01130007FILLERPIC X(6). OBIC24.2 01140007 RECORDS-IN-FILE PIC9(6). OBIC24.2 01150007FILLERPIC X(5). OBIC24.2 01160007 XFILE-ORGANIZATION PIC X(2). OBIC24.2 01170007FILLERPIC X(6). OBIC24.2 01180007 XLABEL-TYPE PIC X(1). OBIC24.2 01190005 FILE-RECORD-INFO-P121-240. OBIC24.2 01200007FILLERPIC X(8). OBIC24.2 01210007 XRECORD-KEY PIC X(29). OBIC24.2 01220007FILLERPIC X(9). OBIC24.2 01230007 ALTERNATE-KEY1 PIC X(29). OBIC24.2 01240007FILLERPIC X(9). OBIC24.2 01250007 ALTERNATE-KEY2 PIC X(29). OBIC24.2 01260007FILLERPIC X(7). OBIC24.2 012700LINKAGESECTION. OBIC24.2 01280001 SORT-LINK PICTURE9. OBIC24.2 012900PROCEDUREDIVISIONUSING SORT-LINK. OBIC24.2 013000 SECT-IC219-0001 SECTION30. OBIC24.2 013100* OBIC24.2 013200* THIS SECTION CONTAINS A SORT STATEMENT AND A STOP RUN OBIC24.2 013300* STATEMENT, THE ONLY STATEMENTS PERMITTED IN THE FIRST NON- OBIC24.2 013400* DECLARATIVE PORTION OF THE PROCEDURE DIVISION IN SORT LEVEL 1OBIC24.2 013500* OBIC24.2 013600 SORT-PARAGRAPH. OBIC24.2 013700SORT ST-FS1 OBIC24.2 013800ASCENDINGKEY ST-FS1-121-124 OBIC24.2 013900ASCENDINGKEY ST-FS1-125-126 OBIC24.2 014000ASCENDINGKEY ST-FS1-REC-NO OBIC24.2 014100INPUTPROCEDUREIS SECT-IC219-0002 OBIC24.2 014200OUTPUTPROCEDUREIS SECT-IC219-0003. OBIC24.2 014300STOPRUN. OBIC24.2 014400 SECT-IC219-0002 SECTION60. OBIC24.2 014500* OBIC24.2 014600* THE SORT INPUT PROCEDURE RELEASES 500 SORT RECORDS OF OBIC24.2 014700* LENGTH 126 CHARACTERS. THREE ITEMS ARE USED AS THE SORT KEY,OBIC24.2 014800* THEY ARE CHARACTERS 121-124 PICX(4), CHARACTERS 125-126 OBIC24.2 014900* PIC 99, AND THE RECORD NUMBER FIELD CHARACTERS 35-40 PIC 9(6)OBIC24.2 015000* THE RECORDS ARE WRITTEN WITH THE SORT KEY ITEMS CONTAINING OBIC24.2 015100* THE FOLLOWING CHARACTERS OBIC24.2 015200* OBIC24.2 015300* FIRST 100 RECORDS ABCD 00 THRU 99 000001 THRU 000100 OBIC24.2 015400* SECOND 100 RECORDS AAAA 00 THRU 99 000101 THRU 000200 OBIC24.2 015500* THIRD 100 RECORDS ABCD 00 THRU 99 000201 THRU 00300 OBIC24.2 015600* FOURTH 100 RECORDS UVWY 00 THRU 99 000301 THRU 000400 OBIC24.2 015700* FIFTH 100 RECORDS UVWX 00 THRU 99 000401 THRU 000500 OBIC24.2 015800* OBIC24.2 015900 SORT-INPUT-PROCEDURE. OBIC24.2 016000MOVE1TO SORT-LINK. OBIC24.2 016100MOVE FILE-RECORD-INFO-SKELETON TO FILE-RECORD-INFO (1). OBIC24.2 016200PERFORM RECORD-AREA-INIT. OBIC24.2 016300MOVE"ABCD"TO TEMP1. OBIC24.2 016400MOVE0TO TEMP2. OBIC24.2 016500PERFORM RELEASE-RECORD 100 TIMES. OBIC24.2 016600MOVE"AAAA"TO TEMP1. OBIC24.2 016700MOVE0TO TEMP2. OBIC24.2 016800PERFORM RELEASE-RECORD 100 TIMES. OBIC24.2 016900MOVE"ABCD"TO TEMP1. OBIC24.2 017000MOVE0TO TEMP2. OBIC24.2 017100PERFORM RELEASE-RECORD 100 TIMES. OBIC24.2 017200MOVE"UVWY"TO TEMP1. OBIC24.2 017300MOVE0TO TEMP2. OBIC24.2 017400PERFORM RELEASE-RECORD 100 TIMES. OBIC24.2 017500MOVE"UVWX"TO TEMP1. OBIC24.2 017600MOVE0TO TEMP2. OBIC24.2 017700PERFORM RELEASE-RECORD 100 TIMES. OBIC24.2 017800GOTO SECT-IC219-0002-EXIT. OBIC24.2 017900 RECORD-AREA-INIT. OBIC24.2 018000MOVE"ST-FS1"TO XFILE-NAME (1). OBIC24.2 018100MOVE"R1-F-G"TO XRECORD-NAME (1). OBIC24.2 018200MOVE"IC219"TO XPROGRAM-NAME (1). OBIC24.2 018300MOVE126TO XRECORD-LENGTH (1). OBIC24.2 018400MOVE"RC"TO CHARS-OR-RECORDS (1). OBIC24.2 018500MOVE0001TO XBLOCK-SIZE (1). OBIC24.2 018600MOVE500TO RECORDS-IN-FILE (1). OBIC24.2 018700MOVE"NA"TO XFILE-ORGANIZATION (1). OBIC24.2 018800MOVE"N"TO XLABEL-TYPE (1). OBIC24.2 018900MOVE1TO XRECORD-NUMBER (1). OBIC24.2 019000 RELEASE-RECORD. OBIC24.2 019100MOVE FILE-RECORD-INFO-P1-120 (1) TO ST-FS1-1-120. OBIC24.2 019200MOVE TEMP1 TO ST-FS1-121-124. OBIC24.2 019300MOVE TEMP2 TO ST-FS1-125-126. OBIC24.2 019400RELEASE ST-FS1R1-F-G-126. OBIC24.2 019500ADD1TO XRECORD-NUMBER (1). OBIC24.2 019600ADD1TO TEMP2. OBIC24.2 019700 SECT-IC219-0002-EXIT. OBIC24.2 019800EXIT. OBIC24.2 019900 SECT-IC219-0003 SECTION80. OBIC24.2 020000* OBIC24.2 020100* THE SORT OUTPUT PROCEDURE RETURNS 500 SORT RECORDS. THE OBIC24.2 020200* DATA ITEMS COMPRISING THE SORT KEY ARE CHECKED TO ENSURE THE OBIC24.2 020300* RECORDS ARE RETURNED IN THE EXPECTED SORT ORDER. THE SUBPRO-OBIC24.2 020400* GRAM IC220 IS CALLED TO PRODUCE THE OUTPUT REPORT FOR THE OBIC24.2 020500* TEST RESULTS. OBIC24.2 020600* OBIC24.2 020700* THE RECORDS SHOULD BE RETURNED WITH THE SORT KEY ITEMS OBIC24.2 020800* CONTAINING THE FOLLOWING CHARACTERS OBIC24.2 020900* OBIC24.2 021000* FIRST 100 RECORDS AAAA 00 THRU 99 000101 THRU 000200 OBIC24.2 021100* ABCD 00 000001 OBIC24.2 021200* NEXT ABCD 00 000201 OBIC24.2 021300* 200 ABCD 01 000002 OBIC24.2 021400* RECORDS ABCD 01 000202 OBIC24.2 021500* . . . . . . OBIC24.2 021600* ABCD 99 000100 OBIC24.2 021700* ABCD 99 000300 OBIC24.2 021800* FOURTH 100 RECORDS UVWX 00 THRU 99 000401 THRU 000500 OBIC24.2 021900* FIFTH 100 RECORDS UVWY 00 THRU 99 000301 THRU 000400 OBIC24.2 022000* OBIC24.2 022100 SORT-OUTPUT-INIT. OBIC24.2 022200MOVE2TO SORT-LINK. OBIC24.2 022300MOVE1TO PRINT-FLAG. OBIC24.2 022400CALL"OBIC3A"USING PRINT-LINE-VALUES PRINT-FLAG. OBIC24.2 022500MOVE"SORT IN SUBPROGRAM"TO FEATURE-TESTED. OBIC24.2 022600MOVE"IC-SORT-TEST"TO PARAGRAPH-NAME. OBIC24.2 022700MOVE0TO R-COUNT. OBIC24.2 022800 CHECK-OUTPUT-FROM-SORT. OBIC24.2 022900MOVE"AAAA"TO TEMP1. OBIC24.2 023000MOVE0TO TEMP3. OBIC24.2 023100MOVE100TO TEMP4. OBIC24.2 023200PERFORM CHECK-RECORD 100 TIMES. OBIC24.2 023300MOVE"ABCD"TO TEMP1. OBIC24.2 023400MOVE0TO TEMP3. OBIC24.2 023500MOVE0TO TEMP4. OBIC24.2 023600PERFORM CHECK-ABCD-RECORDS 100 TIMES. OBIC24.2 023700MOVE"UVWX"TO TEMP1. OBIC24.2 023800MOVE0TO TEMP3. OBIC24.2 023900MOVE400TO TEMP4. OBIC24.2 024000PERFORM CHECK-RECORD 100 TIMES. OBIC24.2 024100MOVE"UVWY"TO TEMP1. OBIC24.2 024200MOVE0TO TEMP3. OBIC24.2 024300MOVE300TO TEMP4. OBIC24.2 024400PERFORM CHECK-RECORD 100 TIMES. OBIC24.2 024500 CHECK-RESULTS. OBIC24.2 024600IF EOF-FLAG EQUALTO1 OBIC24.2 024700MOVE"PREMATURE EOF"TO COMPUTED-SORT-KEY OBIC24.2 024800MOVE"DATA RECORD EXPECTED"TO CORRECT-SORT-KEY OBIC24.2 024900GOTO FAIL-WRITE. OBIC24.2 025000RETURN ST-FS1 ATENDGOTO CHECK-FAIL-COUNT. OBIC24.2 025100MOVE"NO EOF - 500 READ"TO COMPUTED-SORT-KEY. OBIC24.2 025200MOVE"EOF EXPECTED"TO CORRECT-SORT-KEY. OBIC24.2 025300GOTO FAIL-WRITE. OBIC24.2 025400 CHECK-FAIL-COUNT. OBIC24.2 025500IF FAIL-COUNT EQUALTOZERO OBIC24.2 025600MOVE"PASS "TO PASS-OR-FAIL OBIC24.2 025700GOTO WRITE-RESULTS. OBIC24.2 025800MOVE"SORT ERRORS"TO COMPUTED-SORT-KEY. OBIC24.2 025900MOVESPACETO CORRECT-SORT-KEY. OBIC24.2 026000 FAIL-WRITE. OBIC24.2 026100MOVE"FAIL "TO PASS-OR-FAIL. OBIC24.2 026200 WRITE-RESULTS. OBIC24.2 026300MOVE0TO R-COUNT. OBIC24.2 026400MOVE2TO PRINT-FLAG. OBIC24.2 026500CALL"OBIC3A"USING PRINT-LINE-VALUES PRINT-FLAG. OBIC24.2 026600 WRAPUP-OUTPUT-PROC. OBIC24.2 026700MOVE3TO PRINT-FLAG. OBIC24.2 026800CALL"OBIC3A"USING PRINT-LINE-VALUES PRINT-FLAG. OBIC24.2 026900GOTO SECT-IC219-0003-EXIT. OBIC24.2 027000 CHECK-RECORD. OBIC24.2 027100PERFORM RETURN-RECORD THROUGH RETURN-EXIT. OBIC24.2 027200ADD1TO TEMP4. OBIC24.2 027300PERFORM COMPARE-VALUES THROUGH COMPARE-EXIT. OBIC24.2 027400ADD1TO TEMP3. OBIC24.2 027500 RETURN-RECORD. OBIC24.2 027600IF EOF-FLAG EQUALTO1 OBIC24.2 027700GOTO RETURN-EXIT. OBIC24.2 027800RETURN ST-FS1 ATENDMOVE1TO EOF-FLAG. OBIC24.2 027900 RETURN-EXIT. OBIC24.2 028000EXIT. OBIC24.2 028100 CHECK-ABCD-RECORDS. OBIC24.2 028200PERFORM CHECK-RECORD. OBIC24.2 028300SUBTRACT1FROM TEMP3. OBIC24.2 028400ADD199TO TEMP4. OBIC24.2 028500PERFORM CHECK-RECORD. OBIC24.2 028600SUBTRACT200FROM TEMP4. OBIC24.2 028700 COMPARE-VALUES. OBIC24.2 028800IF TEMP1 NOTEQUALTO ST-FS1-121-124 OBIC24.2 028900GOTO SORT-FAIL. OBIC24.2 029000IF TEMP3 NOTEQUALTO ST-FS1-125-126 OBIC24.2 029100GOTO SORT-FAIL. OBIC24.2 029200IF TEMP4 NOTEQUALTO ST-FS1-REC-NO OBIC24.2 029300GOTO SORT-FAIL. OBIC24.2 029400GOTO COMPARE-EXIT. OBIC24.2 029500 SORT-FAIL. OBIC24.2 029600MOVE"FAIL "TO PASS-OR-FAIL. OBIC24.2 029700ADD1TO R-COUNT. OBIC24.2 029800MOVE TEMP1 TO CORRECT-1-4. OBIC24.2 029900MOVE TEMP3 TO CORRECT-5-6. OBIC24.2 030000MOVE TEMP4 TO CORRECT-7-12. OBIC24.2 030100MOVE ST-FS1-121-124 TO COMPUTED-1-4. OBIC24.2 030200MOVE ST-FS1-125-126 TO COMPUTED-5-6. OBIC24.2 030300MOVE ST-FS1-REC-NO TO COMPUTED-7-12. OBIC24.2 030400MOVE2TO PRINT-FLAG. OBIC24.2 030500CALL"OBIC3A"USING PRINT-LINE-VALUES PRINT-FLAG. OBIC24.2 030600ADD1TO FAIL-COUNT. OBIC24.2 030700 COMPARE-EXIT. OBIC24.2 030800EXIT. OBIC24.2 030900 SECT-IC219-0003-EXIT. OBIC24.2 031000EXIT. OBIC24.2
Messung V0.5 in Prozent
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.42Bemerkung:
(vorverarbeitet am 2026-06-08)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.