000100 IDENTIFICATIONDIVISION. IX2074.2
000200 PROGRAM-ID. IX2074.2
000300 IX207A. IX2074.2 000400**************************************************************** IX2074.2 000500* * IX2074.2 000600* VALIDATION FOR:- * IX2074.2 000700* * IX2074.2 000800* "ON-SITE VALIDATION, NATIONAL INSTITUTE OF STD & TECH. ".IX2074.2 000900* * IX2074.2 001000* "COBOL 85 VERSION 4.2, Apr 1993 SSVG ".IX2074.2 001100* * IX2074.2 001200**************************************************************** IX2074.2 001300*IX207A IX2074.2 001400******************************************************************IX2074.2 001500*GENERAL: THE FUNCTION OF THIS PROGRAM IS TO TEST THE PERMISSIBLEIX2074.2 001600* SYNTACTICAL CONSTRUCTS OF COBOL ELEMENTS ASSOCIATED WITH IX2074.2 001700* LEVEL 2 OF INDEXED I-O. THE ELEMENTS TESTED IN THIS IX2074.2 001800* ROUTINE ARE: IX2074.2 001900* IX2074.2 002000* (1) ORDERING OF CLAUSES IN FILE-CONTROL-ENTRY; IX2074.2 002100* (2) ALTERNATE RECORD KEY WITH THE DUPLICATES OPTION; IX2074.2 002200* (3) USE AFTER STANDARD EXCEPTION FILE-NAME-1, FILE-NAME-2; IX2074.2 002300* (4) FILE STATUS. IX2074.2 002400* IX2074.2 002500* EACH ELEMENT TESTED WILL BE EXERCISED SEMANTICALLY BY THIS IX2074.2 002600* ROUTINE. FILES ARE CREATED AND ACCESSED IN THE SEQUENTIAL IX2074.2 002700* ACCESS MODE. IX2074.2 002800* IX2074.2 002900* IX2074.2 003000* X-CARDS WHICH MUST BE REPLACED FOR THIS PROGRAM ARE IX2074.2 003100* IX2074.2 003200* X-24 INDEXED FILE IMPLEMENTOR-NAME IN ASSGN TO IX2074.2 003300* CLAUSE FOR DATA FILE IX-FS1 IX2074.2 003400* X-25 INDEXED FILE IMPLEMENTOR-NAME IN ASSIGN TO IX2074.2 003500* CLAUSE FOR DATA FILE IX-FD2 IX2074.2 003600* X-44 INDEXED FILE IMPLEMENTOR-NAME IN ASSGN TO IX2074.2 003700* CLAUSE FOR INDEX FILE IX-FS1 IX2074.2 003800* X-45 INDEXED FILE IMPLEMENTOR-NAME IN ASSIGN TO IX2074.2 003900* CLAUSE FOR INDEX FILE IX-FD2 IX2074.2 004000* X-55 IMPLEMENTOR-NAME FOR SYSTEM PRINTER IX2074.2 004100* X-62 FOR RAW-DATA IX2074.2 004200* X-82 IMPLEMENTOR-NAME FOR SOURCE-COMPUTER IX2074.2 004300* X-83 IMPLEMENTOR-NAME FOR OBJECT-COMPUTER IX2074.2 004400* X-84 LABEL RECORDS FOR PRINT-FILE IX2074.2 004500* IX2074.2 004600* NOTE: X-CARDS 44, 45, 62 AND 84 ARE OPTIONAL IX2074.2 004700* AND NEED ONLY TO BE PRESENT IF THE COMPILER RE- IX2074.2 004800* QUIRES THIS CODE BE AVAILABLE FOR PROPER PROGRAM IX2074.2 004900* COMPILATION AND EXECUTION. IF THE VP-ROUTINE IS IX2074.2 005000* USED THE X-CARDS MAY BE AUTOMATICALLY SELECTED IX2074.2 005100* FOR INCLUSION IN THE PROGRAM BY SPECIFYING THE IX2074.2 005200* APPROPRIATE LETTER IN THE "*OPT" VP-ROUTINE IX2074.2 005300* CONTROL CARD. THE LETTER CORRESPONDS TO A IX2074.2 005400* CHARACTER IN POSITION 7 OF THE SOURCE LINE AND IX2074.2 005500* THEY ARE AS FOLLOWS IX2074.2 005600* IX2074.2 005700* P SELECTS X-CARDS 62 IX2074.2 005800* C SELECTS X-CARDS 84 IX2074.2 005900* IX2074.2 006000* NOTE: THERE IS OPTIONAL SOURCE CODE IN THIS PROGRAM IX2074.2 006100* FOR THE CONVENIENCE OF THE USER. THIS OPTIONAL IX2074.2 006200* CODE IS IDENTIFIED BY THE LETTER T,U OR X IN IX2074.2 006300* POSITION 7 OF THE SOURCE LINE. USE OF IX2074.2 006400* SOURCE CODE WITH LETTER X WILL PRINT THE CONTENTS IX2074.2 006500* OF THE FILES AFTER THE TEST REPORT. FOR CODE IX2074.2 006600* WITH LETTERS T OR U ONLY ONE SHOULD BE SELECTED. IX2074.2 006700* EITHER THE T"S OR THE U"S SHOULD BE USED EXCLU- IX2074.2 006800* SIVELY, NOT BOTH. THE T"S PROVIDE A 29 CHARACTER IX2074.2 006900* INDEXED KEY SIZE FOR THE FILE AND THE U"S PROVIDE IX2074.2 007000* AN INDEXED KEY NO GREATER THAN 8 CHARACTERS. IX2074.2 007100* IF THE VP-ROUTINE IS USED THE APPROPRIATE IX2074.2 007200* SOURCE CODE MAY BE SELECTED BY SPECIFYING THE IX2074.2 007300* RESPECTIVE LETTER IN THE "*OPT" VP-ROUTINE CONTROLIX2074.2 007400* CARD. IX2074.2 007500* IX2074.2 007600****************************************************** IX2074.2
007700 ENVIRONMENTDIVISION. IX2074.2
007800 CONFIGURATIONSECTION. IX2074.2
007900 SOURCE-COMPUTER. IX2074.2
008000 Card0130. IX2074.2
008100 OBJECT-COMPUTER. IX2074.2
008200 Card0131. IX2074.2
008300 INPUT-OUTPUTSECTION. IX2074.2
008400 FILE-CONTROL. IX2074.2
008500 SELECT RAW-DATA ASSIGNTO IX2074.2
008600 "C0098" IX2074.2
008700 ORGANIZATIONISINDEXED IX2074.2
008800 ACCESSMODEISRANDOM IX2074.2
008900 RECORDKEYIS RAW-DATA-KEY. IX2074.2
009000 SELECT PRINT-FILE ASSIGNTO IX2074.2
009100 "C0085" . IX2074.2
009200 IX2074.2
009300 SELECT IX-FS1 IX2074.2
009400 ACCESSMODEISSEQUENTIAL IX2074.2
009500 ALTERNATERECORD IX-FS1-ALTKEY1 IX2074.2
009600 WITHDUPLICATES IX2074.2
009700 FILESTATUS FS1-STATUS IX2074.2
009800 RECORDKEYIS IX-FS1-KEY IX2074.2
009900 ORGANIZATIONISINDEXED IX2074.2
010000 ASSIGNTO IX2074.2
010100 "C0068" IX2074.2
010200 "C0036" . IX2074.2
010300 IX2074.2
010400 SELECT IX-FS2 IX2074.2
010500 ASSIGNTO IX2074.2
010600 "C0037" IX2074.2
010700 "C0069" IX2074.2
010800 ORGANIZATIONISINDEXED IX2074.2
010900 ALTERNATERECORDKEY IX-FS2-ALTKEY1 IX2074.2
011000 DUPLICATES IX2074.2
011100 RECORDKEYIS IX-FS2-KEY. IX2074.2
011200 IX2074.2
011300 DATADIVISION. IX2074.2
011400 FILESECTION. IX2074.2
011500 IX2074.2
011600 FD RAW-DATA. IX2074.2
011700 IX2074.2
011800 01 RAW-DATA-SATZ. IX2074.2
011900 05 RAW-DATA-KEY PIC X(6). IX2074.2
012000 05 C-DATE PIC 9(6). IX2074.2
012100 05 C-TIME PIC 9(8). IX2074.2
012200 05 C-NO-OF-TESTS PIC 99. IX2074.2
012300 05 C-OK PIC 999. IX2074.2
012400 05 C-ALL PIC 999. IX2074.2
012500 05 C-FAIL PIC 999. IX2074.2
012600 05 C-DELETED PIC 999. IX2074.2
012700 05 C-INSPECT PIC 999. IX2074.2
012800 05 C-NOTE PIC X(13). IX2074.2
012900 05 C-INDENT PIC X. IX2074.2
013000 05 C-ABORT PIC X(8). IX2074.2
013100 FD PRINT-FILE. IX2074.2
013200 01 PRINT-REC PICTURE X(120). IX2074.2
013300 01 DUMMY-RECORD PICTURE X(120). IX2074.2
013400 FD IX-FS1 IX2074.2
013500 LABELRECORDISSTANDARD IX2074.2
013600 DATARECORDIS IX-FS1R1-F-G-240 IX2074.2
013700 RECORDCONTAINS 240 CHARACTERS. IX2074.2
013800 01 IX-FS1R1-F-G-240. IX2074.2
013900 05 IX-FS1-REC-120 PIC X(120). IX2074.2
014000 05 IX-FS1-REC-121-240. IX2074.2
014100 10 FILLERPIC X(8). IX2074.2
014200 10 IX-FS1-KEY. IX2074.2
014300 15 IX-FS1-KEYNUM PIC 9(5). IX2074.2
014400 15 FILLERPIC X(24). IX2074.2
014500 10 FILLERPIC X(24). IX2074.2
014600 10 FILLERPIC X(9). IX2074.2
014700 10 IX-FS1-ALTKEY1. IX2074.2
014800 15 FILLERPIC X(24). IX2074.2
014900 15 IX-FS1-ALTKEY1NUM PIC 9(5). IX2074.2
015000 10 FILLERPIC X(24). IX2074.2
015100 10 FILLERPIC X(45). IX2074.2
015200 FD IX-FS2 IX2074.2
015300 LABEL RECORDS ARESTANDARD IX2074.2
015400 DATARECORDIS IX-FS2R1-F-G-240 IX2074.2
015500 RECORDCONTAINS 240 CHARACTERS. IX2074.2
015600 01 IX-FS2R1-F-G-240. IX2074.2
015700 05 IX-FS2-REC-120 PIC X(120). IX2074.2
015800 05 IX-FS2-REC-121-240. IX2074.2
015900 10 FILLERPIC X(8). IX2074.2
016000 10 IX-FS2-KEY. IX2074.2
016100 15 IX-FS2-KEYNUM PIC 9(5). IX2074.2
016200 15 FILLERPIC A(24). IX2074.2
016300 10 FILLERPIC X(24). IX2074.2
016400 10 FILLERPIC X(9). IX2074.2
016500 10 IX-FS2-ALTKEY1. IX2074.2
016600 15 FILLERPIC X(24). IX2074.2
016700 15 IX-FS2-ALTKEY1NUM PIC 9(5). IX2074.2
016800 10 FILLERPIC X(24). IX2074.2
016900 10 FILLERPIC X(45). IX2074.2
017000 WORKING-STORAGESECTION. IX2074.2
017100 01 IX-FS1-FILESIZE PIC 9(6) VALUE 300. IX2074.2
017200 01 IX-FS2-FILESIZE PIC 9(6) VALUE 300. IX2074.2
017300 01 WRK-FS1-RECKEY. IX2074.2
017400 03 WRK-DU-05V00-001 PIC 9(5) VALUEZERO. IX2074.2
017500 03 WRK-XN-24V00-001 PIC X(24) VALUE IX2074.2
017600 "123456789009876543211234". IX2074.2
017700 01 WRK-FS2-RECKEY. IX2074.2
017800 03 WRK-DU-05V00-002 PIC 9(5) VALUEZERO. IX2074.2
017900 03 WRK-XN-24V00-002 PIC A(24) VALUE IX2074.2
018000 "ABCDEFGHIJKLMNOPQRSTUVWX". IX2074.2
018100 01 WRK-FS1-ALTKEY. IX2074.2
018200 03 WRK-XN-24V00-003 PIC X(24) VALUE IX2074.2
018300 "+-*/=$,;.(()><""<>()).;,$". IX2074.2 018400* IX2074.2 018500* THE ALPHNUMERIC POSITIONS OF THE DATA ITEM ABOVE CONTAINS A IX2074.2 018600* LITERAL VALUE WITH INBEDDED QUOTES. IX2074.2 018700* IX2074.2
018800 03 WRK-DU-05V00-003 PIC 9(5) VALUEZERO. IX2074.2
018900 01 WRK-FS2-ALTKEY. IX2074.2
019000 03 WRK-XN-24V00-003 PIC X(24) VALUE IX2074.2
019100 "AB12CD34EF56GH78IJ90KL*,". IX2074.2
019200 03 WRK-DU-05V00-004 PIC 9(5) VALUEZERO. IX2074.2
019300 01 WRK-DS-05V00-005 PIC S9(5) VALUEZERO. IX2074.2
019400 01 WRK-DS-05V00-006 PIC S9(5) VALUEZERO. IX2074.2
019500 01 WRK-DS-05V00-007 PIC S9(5) VALUEZERO. IX2074.2
019600 01 WRK-DS-05V00-008 PIC S9(5) VALUEZERO. IX2074.2
019700 01 WRK-DS-04V00-001 PIC S9(4) VALUEZERO. IX2074.2
019800 01 WRK-DS-04V00-002 PIC S9(4) VALUEZERO. IX2074.2
019900 01 FS1-STATUS PIC XX VALUESPACE. IX2074.2
020000 01 FILE-RECORD-INFORMATION-REC. IX2074.2
020100 03 FILE-RECORD-INFO-SKELETON. IX2074.2
020200 05 FILLERPICTURE X(48) VALUE IX2074.2
020300 "FILE= ,RECORD= /0,RECNO=000000,UPDT=00". IX2074.2
020400 05 FILLERPICTURE X(46) VALUE IX2074.2
020500 ",ODO=0000,PGM= ,LRECL=000000,BLKSIZ =0000". IX2074.2
020600 05 FILLERPICTURE X(26) VALUE IX2074.2
020700 ",LFIL=000000,ORG= ,LBLR= ". IX2074.2
020800 05 FILLERPICTURE X(37) VALUE IX2074.2
020900 ",RECKEY= ". IX2074.2
021000 05 FILLERPICTURE X(38) VALUE IX2074.2
021100 ",ALTKEY1= ". IX2074.2
021200 05 FILLERPICTURE X(38) VALUE IX2074.2
021300 ",ALTKEY2= ". IX2074.2
021400 05 FILLERPICTURE X(7) VALUESPACE.IX2074.2
021500 03 FILE-RECORD-INFO OCCURS 10 TIMES. IX2074.2
021600 05 FILE-RECORD-INFO-P1-120. IX2074.2
021700 07 FILLERPIC X(5). IX2074.2
021800 07 XFILE-NAME PIC X(6). IX2074.2
021900 07 FILLERPIC X(8). IX2074.2
022000 07 XRECORD-NAME PIC X(6). IX2074.2
022100 07 FILLERPIC X(1). IX2074.2
022200 07 REELUNIT-NUMBER PIC 9(1). IX2074.2
022300 07 FILLERPIC X(7). IX2074.2
022400 07 XRECORD-NUMBER PIC 9(6). IX2074.2
022500 07 FILLERPIC X(6). IX2074.2
022600 07 UPDATE-NUMBER PIC 9(2). IX2074.2
022700 07 FILLERPIC X(5). IX2074.2
022800 07 ODO-NUMBER PIC 9(4). IX2074.2
022900 07 FILLERPIC X(5). IX2074.2
023000 07 XPROGRAM-NAME PIC X(5). IX2074.2
023100 07 FILLERPIC X(7). IX2074.2
023200 07 XRECORD-LENGTH PIC 9(6). IX2074.2
023300 07 FILLERPIC X(7). IX2074.2
023400 07 CHARS-OR-RECORDS PIC X(2). IX2074.2
023500 07 FILLERPIC X(1). IX2074.2
023600 07 XBLOCK-SIZE PIC 9(4). IX2074.2
023700 07 FILLERPIC X(6). IX2074.2
023800 07 RECORDS-IN-FILE PIC 9(6). IX2074.2
023900 07 FILLERPIC X(5). IX2074.2
024000 07 XFILE-ORGANIZATION PIC X(2). IX2074.2
024100 07 FILLERPIC X(6). IX2074.2
024200 07 XLABEL-TYPE PIC X(1). IX2074.2
024300 05 FILE-RECORD-INFO-P121-240. IX2074.2
024400 07 FILLERPIC X(8). IX2074.2
024500 07 XRECORD-KEY PIC X(29). IX2074.2
024600 07 FILLERPIC X(9). IX2074.2
024700 07 ALTERNATE-KEY1 PIC X(29). IX2074.2
024800 07 FILLERPIC X(9). IX2074.2
024900 07 ALTERNATE-KEY2 PIC X(29). IX2074.2
025000 07 FILLERPIC X(7). IX2074.2
025100 01 TEST-RESULTS. IX2074.2
025200 02 FILLERPIC X VALUESPACE. IX2074.2
025300 02 FEATURE PIC X(20) VALUESPACE. IX2074.2
025400 02 FILLERPIC X VALUESPACE. IX2074.2
025500 02 P-OR-F PIC X(5) VALUESPACE. IX2074.2
025600 02 FILLERPIC X VALUESPACE. IX2074.2
025700 02 PAR-NAME. IX2074.2
025800 03 FILLERPIC X(19) VALUESPACE. IX2074.2
025900 03 PARDOT-X PIC X VALUESPACE. IX2074.2
026000 03 DOTVALUE PIC 99 VALUEZERO. IX2074.2
026100 02 FILLERPIC X(8) VALUESPACE. IX2074.2
026200 02 RE-MARK PIC X(61). IX2074.2
026300 01 TEST-COMPUTED. IX2074.2
026400 02 FILLERPIC X(30) VALUESPACE. IX2074.2
026500 02 FILLERPIC X(17) VALUE IX2074.2
026600 " COMPUTED=". IX2074.2
026700 02 COMPUTED-X. IX2074.2
026800 03 COMPUTED-A PIC X(20) VALUESPACE. IX2074.2
026900 03 COMPUTED-N REDEFINES COMPUTED-A IX2074.2
027000 PIC -9(9).9(9). IX2074.2
027100 03 COMPUTED-0V18 REDEFINES COMPUTED-A PIC -.9(18). IX2074.2
027200 03 COMPUTED-4V14 REDEFINES COMPUTED-A PIC -9(4).9(14). IX2074.2
027300 03 COMPUTED-14V4 REDEFINES COMPUTED-A PIC -9(14).9(4). IX2074.2
027400 03 CM-18V0 REDEFINES COMPUTED-A. IX2074.2
027500 04 COMPUTED-18V0 PIC -9(18). IX2074.2
027600 04 FILLERPIC X. IX2074.2
027700 03 FILLERPIC X(50) VALUESPACE. IX2074.2
027800 01 TEST-CORRECT. IX2074.2
027900 02 FILLERPIC X(30) VALUESPACE. IX2074.2
028000 02 FILLERPIC X(17) VALUE" CORRECT =". IX2074.2
028100 02 CORRECT-X. IX2074.2
028200 03 CORRECT-A PIC X(20) VALUESPACE. IX2074.2
028300 03 CORRECT-N REDEFINES CORRECT-A PIC -9(9).9(9). IX2074.2
028400 03 CORRECT-0V18 REDEFINES CORRECT-A PIC -.9(18). IX2074.2
028500 03 CORRECT-4V14 REDEFINES CORRECT-A PIC -9(4).9(14). IX2074.2
028600 03 CORRECT-14V4 REDEFINES CORRECT-A PIC -9(14).9(4). IX2074.2
028700 03 CR-18V0 REDEFINES CORRECT-A. IX2074.2
028800 04 CORRECT-18V0 PIC -9(18). IX2074.2
028900 04 FILLERPIC X. IX2074.2
029000 03 FILLERPIC X(2) VALUESPACE. IX2074.2
029100 03 COR-ANSI-REFERENCE PIC X(48) VALUESPACE. IX2074.2
029200 01 CCVS-C-1. IX2074.2
029300 02 FILLERPICIS X(99) VALUEIS" FEATURE PAIX2074.2
029400- "SS PARAGRAPH-NAME IX2074.2
029500- " REMARKS". IX2074.2
029600 02 FILLERPIC X(20) VALUESPACE. IX2074.2
029700 01 CCVS-C-2. IX2074.2
029800 02 FILLERPIC X VALUESPACE. IX2074.2
029900 02 FILLERPIC X(6) VALUE"TESTED". IX2074.2
030000 02 FILLERPIC X(15) VALUESPACE. IX2074.2
030100 02 FILLERPIC X(4) VALUE"FAIL". IX2074.2
030200 02 FILLERPIC X(94) VALUESPACE. IX2074.2
030300 01 REC-SKL-SUB PIC 9(2) VALUEZERO. IX2074.2
030400 01 REC-CT PIC 99 VALUEZERO. IX2074.2
030500 01 DELETE-COUNTER PIC 999 VALUEZERO. IX2074.2
030600 01 ERROR-COUNTER PIC 999 VALUEZERO. IX2074.2
030700 01 INSPECT-COUNTER PIC 999 VALUEZERO. IX2074.2
030800 01 PASS-COUNTER PIC 999 VALUEZERO. IX2074.2
030900 01 TOTAL-ERROR PIC 999 VALUEZERO. IX2074.2
031000 01 ERROR-HOLD PIC 999 VALUEZERO. IX2074.2
031100 01 DUMMY-HOLD PIC X(120) VALUESPACE. IX2074.2
031200 01 RECORD-COUNT PIC 9(5) VALUEZERO. IX2074.2
031300 01 ANSI-REFERENCE PIC X(48) VALUESPACES. IX2074.2
031400 01 CCVS-H-1. IX2074.2
031500 02 FILLERPIC X(39) VALUESPACES. IX2074.2
031600 02 FILLERPIC X(42) VALUE IX2074.2
031700 "OFFICIAL COBOL COMPILER VALIDATION SYSTEM". IX2074.2
031800 02 FILLERPIC X(39) VALUESPACES. IX2074.2
031900 01 CCVS-H-2A. IX2074.2
032000 02 FILLERPIC X(40) VALUESPACE. IX2074.2
032100 02 FILLERPIC X(7) VALUE"CCVS85 ". IX2074.2
032200 02 FILLERPIC XXXX VALUE IX2074.2
032300 "4.2 ". IX2074.2
032400 02 FILLERPIC X(28) VALUE IX2074.2
032500 " COPY - NOT FOR DISTRIBUTION". IX2074.2
032600 02 FILLERPIC X(41) VALUESPACE. IX2074.2
032700 IX2074.2
032800 01 CCVS-H-2B. IX2074.2
032900 02 FILLERPIC X(15) VALUE IX2074.2
033000 "TEST RESULT OF ". IX2074.2
033100 02 TEST-ID PIC X(9). IX2074.2
033200 02 FILLERPIC X(4) VALUE IX2074.2
033300 " IN ". IX2074.2
033400 02 FILLERPIC X(12) VALUE IX2074.2
033500 " HIGH ". IX2074.2
033600 02 FILLERPIC X(22) VALUE IX2074.2
033700 " LEVEL VALIDATION FOR ". IX2074.2
033800 02 FILLERPIC X(58) VALUE IX2074.2
033900 "ON-SITE VALIDATION, NATIONAL INSTITUTE OF STD & TECH. ".IX2074.2
034000 01 CCVS-H-3. IX2074.2
034100 02 FILLERPIC X(34) VALUE IX2074.2
034200 " FOR OFFICIAL USE ONLY ". IX2074.2
034300 02 FILLERPIC X(58) VALUE IX2074.2
034400 "COBOL 85 VERSION 4.2, Apr 1993 SSVG ".IX2074.2
034500 02 FILLERPIC X(28) VALUE IX2074.2
034600 " COPYRIGHT 1985 ". IX2074.2
034700 01 CCVS-E-1. IX2074.2
034800 02 FILLERPIC X(52) VALUESPACE. IX2074.2
034900 02 FILLERPIC X(14) VALUEIS"END OF TEST- ". IX2074.2
035000 02 ID-AGAIN PIC X(9). IX2074.2
035100 02 FILLERPIC X(45) VALUESPACES. IX2074.2
035200 01 CCVS-E-2. IX2074.2
035300 02 FILLERPIC X(31) VALUESPACE. IX2074.2
035400 02 FILLERPIC X(21) VALUESPACE. IX2074.2
035500 02 CCVS-E-2-2. IX2074.2
035600 03 ERROR-TOTAL PIC XXX VALUESPACE. IX2074.2
035700 03 FILLERPIC X VALUESPACE. IX2074.2
035800 03 ENDER-DESC PIC X(44) VALUE IX2074.2
035900 "ERRORS ENCOUNTERED". IX2074.2
036000 01 CCVS-E-3. IX2074.2
036100 02 FILLERPIC X(22) VALUE IX2074.2
036200 " FOR OFFICIAL USE ONLY". IX2074.2
036300 02 FILLERPIC X(12) VALUESPACE. IX2074.2
036400 02 FILLERPIC X(58) VALUE IX2074.2
036500 "ON-SITE VALIDATION, NATIONAL INSTITUTE OF STD & TECH. ".IX2074.2
036600 02 FILLERPIC X(13) VALUESPACE. IX2074.2
036700 02 FILLERPIC X(15) VALUE IX2074.2
036800 " COPYRIGHT 1985". IX2074.2
036900 01 CCVS-E-4. IX2074.2
037000 02 CCVS-E-4-1 PIC XXX VALUESPACE. IX2074.2
037100 02 FILLERPIC X(4) VALUE" OF ". IX2074.2
037200 02 CCVS-E-4-2 PIC XXX VALUESPACE. IX2074.2
037300 02 FILLERPIC X(40) VALUE IX2074.2
037400 " TESTS WERE EXECUTED SUCCESSFULLY". IX2074.2
037500 01 XXINFO. IX2074.2
037600 02 FILLERPIC X(19) VALUE IX2074.2
037700 "*** INFORMATION ***". IX2074.2
037800 02 INFO-TEXT. IX2074.2
037900 04 FILLERPIC X(8) VALUESPACE. IX2074.2
038000 04 XXCOMPUTED PIC X(20). IX2074.2
038100 04 FILLERPIC X(5) VALUESPACE. IX2074.2
038200 04 XXCORRECT PIC X(20). IX2074.2
038300 02 INF-ANSI-REFERENCE PIC X(48). IX2074.2
038400 01 HYPHEN-LINE. IX2074.2
038500 02 FILLERPICIS X VALUEISSPACE. IX2074.2
038600 02 FILLERPICIS X(65) VALUEIS"************************IX2074.2
038700- "*****************************************". IX2074.2
038800 02 FILLERPICIS X(54) VALUEIS"************************IX2074.2
038900- "******************************". IX2074.2
039000 01 CCVS-PGM-ID PIC X(9) VALUE IX2074.2
039100 "IX207A". IX2074.2
039200 PROCEDUREDIVISION. IX2074.2
039300 DECLARATIVES. IX2074.2
039400 USE-IX207A-TEST SECTION. IX2074.2
039500 USEAFTERSTANDARDEXCEPTIONPROCEDURE IX2074.2
039600 IX-FS1, IX-FS2. IX2074.2
039700 USE-PAR-001. IX2074.2
039800 ADD 00001 TO WRK-DS-05V00-006. IX2074.2
039900 IF WRK-DS-05V00-005 LESSTHAN 301 IX2074.2
040000 GOTO USE-PAR-EXIT. IX2074.2
040100 USE-PAR-002. IX2074.2
040200 IF WRK-DS-05V00-006 EQUALTO 0001 IX2074.2
040300 MOVE"PASS"TO P-OR-F. IX2074.2
040400 ADD 1 TO DOTVALUE. IX2074.2
040500 MOVE"EXCEPTION PROCEDURE EXECUTED"TO RE-MARK. IX2074.2
040600 MOVE TEST-RESULTS TO PRINT-REC. IX2074.2
040700 WRITE PRINT-REC. IX2074.2
040800 USE-PAR-EXIT. IX2074.2
040900 EXIT. IX2074.2
041000 ENDDECLARATIVES. IX2074.2
041100 CCVS1 SECTION. IX2074.2
041200 OPEN-FILES. IX2074.2
041300 OPEN I-O RAW-DATA. IX2074.2
041400 MOVE CCVS-PGM-ID TO RAW-DATA-KEY. IX2074.2
041500 READ RAW-DATA INVALIDKEYGOTO END-E-1. IX2074.2
041600 MOVE"ABORTED "TO C-ABORT. IX2074.2
041700 ADD 1 TO C-NO-OF-TESTS. IX2074.2
041800 ACCEPT C-DATE FROMDATE. IX2074.2
041900 ACCEPT C-TIME FROMTIME. IX2074.2
042000 REWRITE RAW-DATA-SATZ INVALIDKEYGOTO END-E-1. IX2074.2
042100 END-E-1. IX2074.2
042200 CLOSE RAW-DATA. IX2074.2
042300 OPENOUTPUT PRINT-FILE. IX2074.2
042400 MOVE CCVS-PGM-ID TO TEST-ID. MOVE CCVS-PGM-ID TO ID-AGAIN. IX2074.2
042500 MOVESPACETO TEST-RESULTS. IX2074.2
042600 PERFORM HEAD-ROUTINE THRU COLUMN-NAMES-ROUTINE. IX2074.2
042700 MOVEZEROTO REC-SKL-SUB. IX2074.2
042800 PERFORM CCVS-INIT-FILE 9 TIMES. IX2074.2
042900 CCVS-INIT-FILE. IX2074.2
043000 ADD 1 TO REC-SKL-SUB. IX2074.2
043100 MOVE FILE-RECORD-INFO-SKELETON IX2074.2
043200 TO FILE-RECORD-INFO (REC-SKL-SUB). IX2074.2
043300 CCVS-INIT-EXIT. IX2074.2
043400 GOTO CCVS1-EXIT. IX2074.2
043500 CLOSE-FILES. IX2074.2
043600 OPEN I-O RAW-DATA. IX2074.2
043700 MOVE CCVS-PGM-ID TO RAW-DATA-KEY. IX2074.2
043800 READ RAW-DATA INVALIDKEYGOTO END-E-2. IX2074.2
043900 MOVE"OK. "TO C-ABORT. IX2074.2
044000 MOVE PASS-COUNTER TO C-OK. IX2074.2
044100 MOVE ERROR-HOLD TO C-ALL. IX2074.2
044200 MOVE ERROR-COUNTER TO C-FAIL. IX2074.2
044300 MOVE DELETE-COUNTER TO C-DELETED. IX2074.2
044400 MOVE INSPECT-COUNTER TO C-INSPECT. IX2074.2
044500 REWRITE RAW-DATA-SATZ INVALIDKEYGOTO END-E-2. IX2074.2
044600 END-E-2. IX2074.2
044700 CLOSE RAW-DATA. IX2074.2
044800 PERFORM END-ROUTINE THRU END-ROUTINE-13. CLOSE PRINT-FILE. IX2074.2
044900 TERMINATE-CCVS. IX2074.2
045000 EXITPROGRAM. IX2074.2
045100 TERMINATE-CALL. IX2074.2
045200 STOPRUN. IX2074.2
045300 INSPT. MOVE"INSPT"TO P-OR-F. ADD 1 TO INSPECT-COUNTER. IX2074.2
045400 PASS. MOVE"PASS "TO P-OR-F. ADD 1 TO PASS-COUNTER. IX2074.2
045500 FAIL. MOVE"FAIL*"TO P-OR-F. ADD 1 TO ERROR-COUNTER. IX2074.2
045600 DE-LETE. MOVE"*****"TO P-OR-F. ADD 1 TO DELETE-COUNTER. IX2074.2
045700 MOVE"****TEST DELETED****"TO RE-MARK. IX2074.2
045800 PRINT-DETAIL. IX2074.2
045900 IF REC-CT NOTEQUALTOZERO IX2074.2
046000 MOVE"."TO PARDOT-X IX2074.2
046100 MOVE REC-CT TO DOTVALUE. IX2074.2
046200 MOVE TEST-RESULTS TO PRINT-REC. PERFORM WRITE-LINE. IX2074.2
046300 IF P-OR-F EQUALTO"FAIL*"PERFORM WRITE-LINE IX2074.2
046400 PERFORM FAIL-ROUTINE THRU FAIL-ROUTINE-EX IX2074.2
046500 ELSEPERFORM BAIL-OUT THRU BAIL-OUT-EX. IX2074.2
046600 MOVESPACETO P-OR-F. MOVESPACETO COMPUTED-X. IX2074.2
046700 MOVESPACETO CORRECT-X. IX2074.2
046800 IF REC-CT EQUALTOZEROMOVESPACETO PAR-NAME. IX2074.2
046900 MOVESPACETO RE-MARK. IX2074.2
047000 HEAD-ROUTINE. IX2074.2
047100 MOVE CCVS-H-1 TO DUMMY-RECORD. PERFORM WRITE-LINE 2 TIMES. IX2074.2
047200 MOVE CCVS-H-2A TO DUMMY-RECORD. PERFORM WRITE-LINE 2 TIMES. IX2074.2
047300 MOVE CCVS-H-2B TO DUMMY-RECORD. PERFORM WRITE-LINE 3 TIMES. IX2074.2
047400 MOVE CCVS-H-3 TO DUMMY-RECORD. PERFORM WRITE-LINE 3 TIMES. IX2074.2
047500 COLUMN-NAMES-ROUTINE. IX2074.2
047600 MOVE CCVS-C-1 TO DUMMY-RECORD. PERFORM WRITE-LINE. IX2074.2
047700 MOVE CCVS-C-2 TO DUMMY-RECORD. PERFORM WRITE-LINE 2 TIMES. IX2074.2
047800 MOVE HYPHEN-LINE TO DUMMY-RECORD. PERFORM WRITE-LINE. IX2074.2
047900 END-ROUTINE. IX2074.2
048000 MOVE HYPHEN-LINE TO DUMMY-RECORD. PERFORM WRITE-LINE 5 TIMES.IX2074.2
048100 END-RTN-EXIT. IX2074.2
048200 MOVE CCVS-E-1 TO DUMMY-RECORD. PERFORM WRITE-LINE 2 TIMES. IX2074.2
048300 END-ROUTINE-1. IX2074.2
048400 ADD ERROR-COUNTER TO ERROR-HOLD ADD INSPECT-COUNTER TO IX2074.2
048500 ERROR-HOLD. ADD DELETE-COUNTER TO ERROR-HOLD. IX2074.2
048600 ADD PASS-COUNTER TO ERROR-HOLD. IX2074.2 048700* IF PASS-COUNTER EQUAL TO ERROR-HOLD GO TO END-ROUTINE-12. IX2074.2
048800 MOVE PASS-COUNTER TO CCVS-E-4-1. IX2074.2
048900 MOVE ERROR-HOLD TO CCVS-E-4-2. IX2074.2
049000 MOVE CCVS-E-4 TO CCVS-E-2-2. IX2074.2
049100 MOVE CCVS-E-2 TO DUMMY-RECORD PERFORM WRITE-LINE. IX2074.2
049200 END-ROUTINE-12. IX2074.2
049300 MOVE"TEST(S) FAILED"TO ENDER-DESC. IX2074.2
049400 IF ERROR-COUNTER ISEQUALTOZERO IX2074.2
049500 MOVE"NO "TO ERROR-TOTAL IX2074.2
049600 ELSE IX2074.2
049700 MOVE ERROR-COUNTER TO ERROR-TOTAL. IX2074.2
049800 MOVE CCVS-E-2 TO DUMMY-RECORD. IX2074.2
049900 PERFORM WRITE-LINE. IX2074.2
050000 END-ROUTINE-13. IX2074.2
050100 IF DELETE-COUNTER ISEQUALTOZERO IX2074.2
050200 MOVE"NO "TO ERROR-TOTAL ELSE IX2074.2
050300 MOVE DELETE-COUNTER TO ERROR-TOTAL. IX2074.2
050400 MOVE"TEST(S) DELETED "TO ENDER-DESC. IX2074.2
050500 MOVE CCVS-E-2 TO DUMMY-RECORD. PERFORM WRITE-LINE. IX2074.2
050600 IF INSPECT-COUNTER EQUALTOZERO IX2074.2
050700 MOVE"NO "TO ERROR-TOTAL IX2074.2
050800 ELSEMOVE INSPECT-COUNTER TO ERROR-TOTAL. IX2074.2
050900 MOVE"TEST(S) REQUIRE INSPECTION"TO ENDER-DESC. IX2074.2
051000 MOVE CCVS-E-2 TO DUMMY-RECORD. PERFORM WRITE-LINE. IX2074.2
051100 MOVE CCVS-E-3 TO DUMMY-RECORD. PERFORM WRITE-LINE. IX2074.2
051200 WRITE-LINE. IX2074.2
051300 ADD 1 TO RECORD-COUNT. IX2074.2
051400 IF RECORD-COUNT GREATER 42 IX2074.2
051500 MOVE DUMMY-RECORD TO DUMMY-HOLD IX2074.2
051600 MOVESPACETO DUMMY-RECORD IX2074.2
051700 WRITE DUMMY-RECORD AFTERADVANCINGPAGE IX2074.2
051800 MOVE CCVS-H-1 TO DUMMY-RECORD PERFORM WRT-LN 2 TIMES IX2074.2
051900 MOVE CCVS-H-2A TO DUMMY-RECORD PERFORM WRT-LN 2 TIMES IX2074.2
052000 MOVE CCVS-H-2B TO DUMMY-RECORD PERFORM WRT-LN 3 TIMES IX2074.2
052100 MOVE CCVS-H-3 TO DUMMY-RECORD PERFORM WRT-LN 3 TIMES IX2074.2
052200 MOVE CCVS-C-1 TO DUMMY-RECORD PERFORM WRT-LN IX2074.2
052300 MOVE CCVS-C-2 TO DUMMY-RECORD PERFORM WRT-LN IX2074.2
052400 MOVE HYPHEN-LINE TO DUMMY-RECORD PERFORM WRT-LN IX2074.2
052500 MOVE DUMMY-HOLD TO DUMMY-RECORD IX2074.2
052600 MOVEZEROTO RECORD-COUNT. IX2074.2
052700 PERFORM WRT-LN. IX2074.2
052800 WRT-LN. IX2074.2
052900 WRITE DUMMY-RECORD AFTERADVANCING 1 LINES. IX2074.2
053000 MOVESPACETO DUMMY-RECORD. IX2074.2
053100 BLANK-LINE-PRINT. IX2074.2
053200 PERFORM WRT-LN. IX2074.2
053300 FAIL-ROUTINE. IX2074.2
053400 IF COMPUTED-X NOTEQUALTOSPACE IX2074.2
053500 GOTO FAIL-ROUTINE-WRITE. IX2074.2
053600 IF CORRECT-X NOTEQUALTOSPACEGOTO FAIL-ROUTINE-WRITE.IX2074.2
053700 MOVE ANSI-REFERENCE TO INF-ANSI-REFERENCE. IX2074.2
053800 MOVE"NO FURTHER INFORMATION, SEE PROGRAM."TO INFO-TEXT. IX2074.2
053900 MOVE XXINFO TO DUMMY-RECORD. PERFORM WRITE-LINE 2 TIMES. IX2074.2
054000 MOVESPACESTO INF-ANSI-REFERENCE. IX2074.2
054100 GOTO FAIL-ROUTINE-EX. IX2074.2
054200 FAIL-ROUTINE-WRITE. IX2074.2
054300 MOVE TEST-COMPUTED TO PRINT-REC PERFORM WRITE-LINE IX2074.2
054400 MOVE ANSI-REFERENCE TO COR-ANSI-REFERENCE. IX2074.2
054500 MOVE TEST-CORRECT TO PRINT-REC PERFORM WRITE-LINE 2 TIMES. IX2074.2
054600 MOVESPACESTO COR-ANSI-REFERENCE. IX2074.2
054700 FAIL-ROUTINE-EX. EXIT. IX2074.2
054800 BAIL-OUT. IX2074.2
054900 IF COMPUTED-A NOTEQUALTOSPACEGOTO BAIL-OUT-WRITE. IX2074.2
055000 IF CORRECT-A EQUALTOSPACEGOTO BAIL-OUT-EX. IX2074.2
055100 BAIL-OUT-WRITE. IX2074.2
055200 MOVE CORRECT-A TO XXCORRECT. MOVE COMPUTED-A TO XXCOMPUTED. IX2074.2
055300 MOVE ANSI-REFERENCE TO INF-ANSI-REFERENCE. IX2074.2
055400 MOVE XXINFO TO DUMMY-RECORD. PERFORM WRITE-LINE 2 TIMES. IX2074.2
055500 MOVESPACESTO INF-ANSI-REFERENCE. IX2074.2
055600 BAIL-OUT-EX. EXIT. IX2074.2
055700 CCVS1-EXIT. IX2074.2
055800 EXIT. IX2074.2
055900 SECT-IX207A-0001 SECTION. IX2074.2
056000 WRITE-INT-GF-01. IX2074.2
056100 OPENOUTPUT IX-FS1. IX2074.2
056200 MOVE"IX-FS1"TO XFILE-NAME (1). IX2074.2
056300 MOVE"R1-F-G"TO XRECORD-NAME (1). IX2074.2
056400 MOVEZEROTO XRECORD-NUMBER (1). IX2074.2
056500 MOVE CCVS-PGM-ID TO XPROGRAM-NAME (1). IX2074.2
056600 MOVE 000240 TO XRECORD-LENGTH (1). IX2074.2
056700 MOVE 0001 TO XBLOCK-SIZE (1). IX2074.2
056800 MOVE"RC"TO CHARS-OR-RECORDS (1). IX2074.2
056900 MOVE"IX"TO XFILE-ORGANIZATION (1). IX2074.2
057000 MOVE"S"TO XLABEL-TYPE (1). IX2074.2
057100 MOVE 000300 TO IX-FS1-FILESIZE IX2074.2
057200 MOVE 000300 TO RECORDS-IN-FILE (1). IX2074.2
057300 MOVEZEROTO WRK-DS-05V00-005. IX2074.2
057400 MOVEZEROTO WRK-DS-04V00-001. IX2074.2
057500 MOVEZEROTO WRK-DS-04V00-002. IX2074.2
057600 MOVE 00001 TO WRK-DU-05V00-001. IX2074.2
057700 MOVE IX-FS1-FILESIZE TO WRK-DU-05V00-003. IX2074.2
057800 MOVEZEROTO WRK-DS-05V00-006. IX2074.2
057900 MOVE 00001 TO WRK-DS-05V00-007. IX2074.2
058000 MOVE"TESTED FEATURES: "IX2074.2
058100 TO PRINT-REC. PERFORM WRITE-LINE. IX2074.2
058200 MOVE"ORDERING OF CLAUSES IN SELECT STATEMENT IX-8 2.3.3 (1)"IX2074.2
058300 TO PRINT-REC. PERFORM WRITE-LINE. IX2074.2
058400 MOVE"ALERNATE RECORD KEY WITH DUPLICATES; IX-11 "IX2074.2
058500 TO PRINT-REC. PERFORM WRITE-LINE. IX2074.2
058600 MOVE"USE AFTER STANDARD EXECPTION; IX-39 "IX2074.2
058700 TO PRINT-REC. PERFORM WRITE-LINE. IX2074.2
058800 MOVE"FILE STATUS; IX-3 "IX2074.2
058900 TO PRINT-REC. PERFORM WRITE-LINE. IX2074.2
059000 PERFORM BLANK-LINE-PRINT. IX2074.2 059100* IX2074.2 059200* WRK-DS-05V00-005 = COUNTS THE NUMBER OF TIMES READ/WRITE IX2074.2 059300* WAS EXECUTED. IX2074.2 059400* IX2074.2 059500* WRK-DS-04V00-001 = THIS COUNTER IS INCREMENTED EACH TIME IX2074.2 059600* A WRITE STATEMENT IS ENCOUNTERED IX2074.2 059700* THE COUNTER IS DECREMENTED EACH TIME AN IX2074.2 059800* INVALID KEY CONDITION OCCURS ON THE WRITEIX2074.2 059900* WRK-DU-05V00-001 = NUMERIC FIELD ENBEDDED IN RECORD KEY IX2074.2 060000* WHICH MAKES THE KEY UNIQUE. IX2074.2 060100* IX2074.2 060200* WRK-DU-05V00-003 = NUMERIC FIELD ENBEDDED IN ALTERNATE KEY IX2074.2 060300* WHICH MAKES THE KEY UNIQUE. IX2074.2 060400* IX2074.2 060500* WRK-DS-05V00-006 = COUNTER IS INCREMENTED EACH TIME A RECORDIX2074.2 060600* RETRIEVED IS NOT THE ONE EXPECTED. IX2074.2 060700* IX2074.2 060800* WRK-DS-05V00-007 = THIS COUNTER IS USED TO CREATE A IX2074.2 060900* DUPLICATE ALTERNATE KEY - I.E., EVERY IX2074.2 061000* 50TH RECORD. IX2074.2 061100* IX2074.2 061200* WRK-DS-05V00-008 = COUNTER CONTAINING THE RECORD NUMBER IX2074.2 061300* WHICH IS EXPECTED TO BE FOUND. IX2074.2 061400* IX2074.2 061500* NOTE - RECORDS OF THE FILE ARE CREATED SEQUENTIALLY IX2074.2 061600* BY RECORD KEY VALUE . THE ALTERNATE RECORD KEY IX2074.2 061700* VALUES ARE CREATED INVERSE TO TO THE RECORD IX2074.2 061800* CREATION SEQUENCE OF THE FILE. IX2074.2 061900* IX2074.2 062000* FOLLOWING IS AN EXAMPLE OF THE SEQUENTIAL ORDER OF THE IX2074.2 062100* RECORDS AS CREATED. IX2074.2 062200* IX2074.2 062300* RECORD RECORD ALTERNATE IX2074.2 062400* NUMBER KEY KEY IX2074.2 062500* IX2074.2 062600* 001 001 300 IX2074.2 062700* 002 002 299 IX2074.2 062800* 003 003 298 IX2074.2 062900* . . . IX2074.2 063000* . . . IX2074.2 063100* . . . IX2074.2 063200* 50 050 251 IX2074.2 063300* 51 051 251 IX2074.2 063400* 52 052 249 IX2074.2 063500* IX2074.2 063600* IX2074.2
063700 WRITE-TEST-GF-01-R1. IX2074.2
063800 ADD 000001 TO XRECORD-NUMBER (1). IX2074.2
063900 MOVE WRK-FS1-RECKEY TO XRECORD-KEY (1). IX2074.2
064000 MOVE WRK-FS1-ALTKEY TO ALTERNATE-KEY1 (1). IX2074.2
064100 WRITE IX-FS1R1-F-G-240 FROM FILE-RECORD-INFO (1) IX2074.2
064200 INVALIDKEY IX2074.2
064300 SUBTRACT 0001 FROM WRK-DS-04V00-001. IX2074.2
064400 ADD 0001 TO WRK-DS-04V00-001. IX2074.2
064500 ADD 0001 TO WRK-DS-05V00-005. IX2074.2
064600 ADD 00001 TO WRK-DS-05V00-007. IX2074.2
064700 IF WRK-DS-05V00-007 GREATERTHAN 50 IX2074.2
064800 MOVE 0001 TO WRK-DS-05V00-007 IX2074.2
064900 ELSE IX2074.2
065000 SUBTRACT WRK-DU-05V00-001 FROM IX-FS1-FILESIZE IX2074.2
065100 GIVING WRK-DU-05V00-003. IX2074.2 065200* IX2074.2 065300* EVERY 50TH AND 51ST ALTERNATE KEY VALUE WILL BE EQUAL. IX2074.2 065400* IX2074.2
065500 ADD 00001 TO WRK-DU-05V00-001. IX2074.2
065600 IF WRK-DS-05V00-005 LESSTHAN IX-FS1-FILESIZE IX2074.2
065700 GOTO WRITE-TEST-GF-01-R1. IX2074.2
065800 CLOSE IX-FS1. IX2074.2
065900 WRITE-TEST-GF-01. IX2074.2
066000 MOVE"WRITE"TO FEATURE. IX2074.2
066100 MOVE"WRITE-TEST-GF-01"TO PAR-NAME. IX2074.2
066200 IF WRK-DS-04V00-001 NOTEQUALTO IX-FS1-FILESIZE IX2074.2
066300 PERFORM FAIL IX2074.2
066400 MOVE WRK-DS-04V00-001 TO COMPUTED-N IX2074.2
066500 MOVE IX-FS1-FILESIZE TO CORRECT-N IX2074.2
066600 ELSE IX2074.2
066700 PERFORM PASS. IX2074.2
066800 PERFORM PRINT-DETAIL. IX2074.2 066900* IX2074.2 067000* IX2074.2
067100 READ-INIT-F1-01. IX2074.2
067200 MOVE 001 TO WRK-DS-05V00-008. IX2074.2
067300 MOVEZEROTO WRK-DS-05V00-006. IX2074.2
067400 MOVEZEROTO WRK-DS-05V00-005. IX2074.2
067500 OPENINPUT IX-FS1. IX2074.2
067600 READ-TEST-F1-01-R2. IX2074.2
067700 READ IX-FS1 RECORDATEND IX2074.2
067800 GOTO READ-TEST-F1-01. IX2074.2
067900 MOVE IX-FS1R1-F-G-240 TO FILE-RECORD-INFO (1). IX2074.2
068000 ADD 0001 TO WRK-DS-05V00-005. IX2074.2
068100 IF WRK-DS-05V00-008 NOTEQUALTO XRECORD-NUMBER (1) IX2074.2
068200 ADD 00001 TO WRK-DS-05V00-006. IX2074.2
068300 ADD 00001 TO WRK-DS-05V00-008. IX2074.2
068400 IF WRK-DS-05V00-005 LESSTHAN IX-FS1-FILESIZE IX2074.2
068500 GOTO READ-TEST-F1-01-R2. IX2074.2
068600 READ-TEST-F1-01. IX2074.2
068700 MOVE"READ RECORD KEY "TO FEATURE. IX2074.2
068800 MOVE"READ-TEST-F1-01 "TO PAR-NAME. IX2074.2
068900 CLOSE IX-FS1. IX2074.2
069000 SUBTRACT IX-FS1-FILESIZE FROM WRK-DS-05V00-005. IX2074.2
069100 ADD WRK-DS-05V00-005 TO WRK-DS-05V00-006. IX2074.2
069200 IF WRK-DS-05V00-006 NOTEQUALTOZERO IX2074.2
069300 PERFORM FAIL IX2074.2
069400 MOVEZEROTO CORRECT-N IX2074.2
069500 MOVE WRK-DS-05V00-006 TO COMPUTED-N IX2074.2
069600 ELSE IX2074.2
069700 PERFORM PASS. IX2074.2
069800 PERFORM PRINT-DETAIL. IX2074.2 069900* IX2074.2 070000* IX2074.2
070100 READ-INT-F1-02. IX2074.2
070200 MOVE 00020 TO WRK-DS-05V00-006. IX2074.2
070300 MOVE 00241 TO WRK-DS-05V00-008. IX2074.2
070400 MOVEZEROTO WRK-DS-05V00-005. IX2074.2
070500 MOVE 00060 TO WRK-DU-05V00-003. IX2074.2
070600 OPENINPUT IX-FS1. IX2074.2
070700 MOVE WRK-FS1-ALTKEY TO IX-FS1-ALTKEY1. IX2074.2
070800 START IX-FS1 KEYISEQUALTO IX2074.2
070900 IX-FS1-ALTKEY1 IX2074.2
071000 INVALIDKEY IX2074.2
071100 ADD 1000 TO WRK-DS-05V00-006. IX2074.2
071200 READ-TEST-F1-02-R3. IX2074.2
071300 READ IX-FS1 RECORDATEND IX2074.2
071400 ADD 10000 TO WRK-DS-05V00-006 IX2074.2
071500 GOTO READ-TEST-F1-02. IX2074.2
071600 MOVE IX-FS1R1-F-G-240 TO FILE-RECORD-INFO (1). IX2074.2
071700 ADD 00001 TO WRK-DS-05V00-005. IX2074.2
071800 IF WRK-DS-05V00-008 EQUALTO XRECORD-NUMBER (1) IX2074.2
071900 SUBTRACT 00001 FROM WRK-DS-05V00-006. IX2074.2
072000 IF WRK-DS-05V00-005 LESSTHAN 20 IX2074.2
072100 SUBTRACT 00001 FROM WRK-DS-05V00-008 IX2074.2
072200 GOTO READ-TEST-F1-02-R3. IX2074.2
072300 READ-TEST-F1-02. IX2074.2
072400 MOVE"READ ALTERNATE KEY "TO FEATURE. IX2074.2
072500 MOVE"READ-TEST-F1-02 "TO PAR-NAME. IX2074.2
072600 CLOSE IX-FS1. IX2074.2
072700 MOVE"READ ALTERNATE KEY"TO FEATURE. IX2074.2
072800 IF WRK-DS-05V00-006 NOTEQUALTOZERO IX2074.2
072900 PERFORM FAIL IX2074.2
073000 MOVE WRK-DS-05V00-006 TO COMPUTED-N IX2074.2
073100 MOVEZEROTO CORRECT-N IX2074.2
073200 MOVE"SEE PROGRAM"TO RE-MARK IX2074.2
073300 ELSE IX2074.2
073400 PERFORM PASS. IX2074.2 073500* IX2074.2 073600* COMPUTED RESULTS IN INCREMENTS OF 1000 INDICATES THAT IX2074.2 073700* AN INVALID KEY CONDITION OCCURRED ON THE START IX2074.2 073800* STATEMENT - SEE PARAGRAPH INX-INIT-001-3. IX2074.2 073900* IX2074.2 074000* COMPUTED RESULTS IN INCREMENTS OF 10000 INDICATE THAT THE IX2074.2 074100* AT END PATH ON THE READ WAS TAKEN. IX2074.2 074200* IX2074.2 074300* COMPUTED RESULTS IN INCREMENTS OF 00001 INDICATE THAT THE IX2074.2 074400* RECORD MADE AVAILABLE AS A RESULT OF THE READ IX2074.2 074500* WAS NOT THE ONE EXPECTED. IX2074.2 074600* IX2074.2
074700 PERFORM PRINT-DETAIL. IX2074.2 074800* IX2074.2 074900* 03 IX2074.2 075000* IX2074.2
075100 READ-INIT-F1-03. IX2074.2
075200 MOVE 00060 TO WRK-DS-05V00-006. IX2074.2
075300 MOVE 00001 TO WRK-DU-05V00-003. IX2074.2
075400 MOVE 00300 TO WRK-DS-05V00-008. IX2074.2
075500 MOVEZEROTO WRK-DS-05V00-005. IX2074.2
075600 OPENINPUT IX-FS1. IX2074.2
075700 MOVE WRK-FS1-ALTKEY TO IX-FS1-ALTKEY1. IX2074.2
075800 START IX-FS1 KEYISEQUALTO IX2074.2
075900 IX-FS1-ALTKEY1 IX2074.2
076000 INVALIDKEY IX2074.2
076100 ADD 01000 TO WRK-DS-05V00-006. IX2074.2
076200 READ-TEST-F1-03-R4. IX2074.2
076300 READ IX-FS1 RECORDATEND IX2074.2
076400 ADD 10000 TO WRK-DS-05V00-006 IX2074.2
076500 GOTO READ-TEST-F1-03. IX2074.2
076600 MOVE IX-FS1R1-F-G-240 TO FILE-RECORD-INFO (1). IX2074.2
076700 IF WRK-DS-05V00-008 EQUALTO XRECORD-NUMBER (1) IX2074.2
076800 SUBTRACT 00001 FROM WRK-DS-05V00-006. IX2074.2
076900 ADD 00001 TO WRK-DS-05V00-005. IX2074.2
077000 IF WRK-DS-05V00-005 EQUALTO 50 AND IX2074.2
077100 XRECORD-NUMBER (1) EQUALTO 250 IX2074.2
077200 SUBTRACT 00001 FROM WRK-DS-05V00-006. IX2074.2
077300 IF WRK-DS-05V00-005 EQUALTO 51 AND IX2074.2
077400 XRECORD-NUMBER (1) EQUALTO 251 IX2074.2
077500 SUBTRACT 00001 FROM WRK-DS-05V00-006. IX2074.2
077600 SUBTRACT 00001 FROM WRK-DS-05V00-008. IX2074.2
077700 IF WRK-DS-05V00-005 LESSTHAN 60 IX2074.2
077800 GOTO READ-TEST-F1-03-R4. IX2074.2
077900 READ-TEST-F1-03. IX2074.2
078000 MOVE"READ DUPLICATE KEY "TO FEATURE. IX2074.2
078100 MOVE"READ-TEST-F1-03 "TO PAR-NAME. IX2074.2
078200 CLOSE IX-FS1. IX2074.2
078300 IF WRK-DS-05V00-006 NOTEQUALTOZERO IX2074.2
078400 PERFORM FAIL IX2074.2
078500 MOVE WRK-DS-05V00-006 TO COMPUTED-N IX2074.2
078600 MOVEZEROTO CORRECT-N IX2074.2
078700 MOVE"SEE PROGRAM"TO RE-MARK IX2074.2
078800 ELSE IX2074.2
078900 PERFORM PASS. IX2074.2 079000* IX2074.2 079100* WITH THE GIVEN SYNTACTICAL COBOL ENTRIES IN THE FILE-CONTROL IX2074.2 079200* PARAGRAPH THIS TEST VERIFIES THAT RECORDS WITH DUPLICATE IX2074.2 079300* KEYS CAN BE ACCESSED WHEN THE FILE IS READ IX2074.2 079400* SEQUENTIALLY. THE START STATEMENT ESTABLISHES THE ALTERNATE IX2074.2 079500* KEY AS THE KEY OF REFERENCE AND POSITIONS THE CURRENT IX2074.2 079600* RECORD POINTER TO THE LAST RECORD IN THE FILE (ALTERNATE IX2074.2 079700* KEY VALUE OF 1). SIXTY RECORDS ARE READ SEQUENTIALLY USING IX2074.2 079800* THE ALTERNATE KEY - THE FILE IS BEING READ INVERSE TO ITS IX2074.2 079900* CREATION. ON THE 50 TH AND 51 ST READ (RECORD NUMBERS 250 IX2074.2 080000* AND 251) THESE RECORDS SHOULD CONTAIN ALTERNATE KEYS IX2074.2 080100* WHICH ARE THE SAME. RECORDS WITH LIKE KEYS SHOULD BE MADE IX2074.2 080200* AVAILABLE IN THE SEQUENCE IN WHICH THEY ARE CREATED, IX2074.2 080300* THEREFORE RECORD NUMBER 250 SHOULD BE READ BEFORE RECORD IX2074.2 080400* NUMBER 251. IX2074.2 080500* IX2074.2 080600* COMPUTE RESULTS IN INCREMENTS OF 1000 INDICATES THAT IX2074.2 080700* AN INVALID KEY CONDITION OCCURRED ON THE START IX2074.2 080800* STATEMENT - SEE PARAGRAPH READ-INIT-001-4. IX2074.2 080900* IX2074.2
--> --------------------
--> maximum size reached
--> --------------------
¤ 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.49Bemerkung:
Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können
¤
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 ist noch experimentell.