How to resolve ERROR: "No Indexes Found" Received on View Primary Panel.
The "No Indexes Found" message will appear on the View Primary panel, when a cross-indexed report does not have its indexes on disk.
When attempting to select a report from the View Primary menu, using an Index Name and Value, and cross-report indexing is used, the corresponding index must reside on disk.
. If the index does not reside on disk, it must be loaded to disk using the SARBCH /LOAD INDEX ... function.
This can also be done by using the "LI" line command of the Report/Sysout Selection List panel (hereafter referred to as the Selection List panel).
. Access the Selection List, scroll to the right, until the DTOI columns are shown.
The values in the column indicate whether a report is on Disk, Tape, and Optical, and if the Index is on disk:
CA-View EXPO -------------- Report Selection List -------------------------------- Command ===> Sel Report ID D T O I ERO ID ==> PWM0410W* * * * * * PWM0410W-Q0058AR-BCNEPA Y B Y * ...
Once all copies of a report are removed from disk and only reside on tape, the index is also removed from disk unless the ERO IRETPD retention parameter is used to instruct View to specifically keep the page index on disk.
. When a report is selected using report selection and then the index is located, this method works because View is using EAS to find the indexes stored on tape.
When using cross-report index selection, this method does not work the same as the index needs to be on disk. The "LI" command only loads back the page index.
Here are directions to load indexes for a report:
//XXXXXXXX JOB ... //STEP1 EXEC PGM=ADLIST,PARM='VIEW.DB1' <=== Modify DB name //STEPLIB DD DISP=SHR,DSN=VIEW.CAILIB <=== Modify, if usedThe resulting CTLCARD file should contain something like the following:
//SYSPRINT DD SYSOUT=* //CTLCARD DD DSN=XXXXXX.XXXXXX.CTLCARD,DISP=(NEW,CATLG), <=== Modify file name // UNIT=SYSDA,SPACE=(TRK,(1,1)), // DCB=(,RECFM=FB,LRECL=80,BLKSIZE=8000) //SYSIN DD * /LIST ARCHDATE=* REPORTID=CKK002-STMTF CCREATE(/LOAD INDEX) /* //
/LOAD INDEX GEN=00972 SEQ=00002 ID=REPORT01 /LOAD INDEX GEN=00972 SEQ=00001 ID=REPORT02 /LOAD INDEX GEN=00932 SEQ=00025 ID=REPORT03 /LOAD INDEX GEN=00932 SEQ=00024 ID=REPORT04 /LOAD INDEX GEN=00927 SEQ=00007 ID=REPORT05 /LOAD INDEX GEN=00927 SEQ=00006 ID=REPORT06 ...The CTLCARD file is then used as input to SARBCH:
//XXXXXXXX JOB ... //SARBCH EXEC PGM=SARBCH,PARM='VIEW.DB1' <=== Modify DB name //STEPLIB DD DISP=SHR,DSN=VIEW.CAILIB <=== Modify, if used //SYSPRINT DD SYSOUT=* //SYSOUT DD SYSOUT=* //SYSIN DD DISP=SHR,DSN=XXXXXX.XXXXXX.CTLCARD //