The following only applies to batch jobs that route reports to the system printer.
The run of CA Ideal program can produce 15 reports and a LIST statement output. Actually, you can generate more than 15 reports if they are not sorted reports and one report is released before the next one starts (see RELEASE statement). There is a maximum of four concurrent reports and a total of four sorted reports.
Report output and LIST statement output are arbitrarily assigned to the logical units defined in the PSSPRT01 through PSSPRT15 file table entries. Check with the CA Ideal Administrator for the logical unit assignments defined for these entries in the file table.
If no special forms are required, there is no need to be concerned with which logical unit assignment is used. You can use POWER logical printers and $$ LST statements to keep the outputs logically separated. An example of this follows.
If a special form is required, then the programmer needs to know which logical unit assignment corresponds to the report. In this case, you can do the following:
Note: Sorted reports that share the same forms and copies can share VSE logical assignments. Unsorted reports that share the same forms and copies can share VSE logical assignments only if the first report is released before the second is produced.
For example, in the following run REPORT1 is assigned to special form FRM1, REPORT2 to FRM2, and REPORT3 and LIST statement output to standard forms. The $$ LST statements are always required to keep the outputs logically separated even if special forms are not required.
* $$ JOB JNM=IDBATCH,PRI=n,USER='username',DISP=D * $$ LST DISP=D,CLASS=L,LST=SYS102 * $$ LST DISP=D,CLASS=L,LST=SYS103,FNO=FRM1 * $$ LST DISP=D,CLASS=L,LST=SYS104,FNO=FRM2 * $$ LST DISP=D,CLASS=L,LST=SYS105 * $$ LST DISP=D,CLASS=L,LST=SYS106 * $$ LST DISP=D,CLASS=L // JOB IDBATCH // OPTION LOG,NODUMP // EXEC PROC=IDLPROC // EXEC IDBATCH,SIZE=15K SIGNON PERSON userid PASSWORD password ASSIGN REPORT RUNLIST TO SYS102 ASSIGN REPORT REPORT1 TO SYS103 ASSIGN REPORT REPORT2 TO SYS104 ASSIGN REPORT REPORT3 TO SYS105 ASSIGN REPORT REPORT4 TO SYS106 SET RUN URT DBURT010 RUN RPTPGM OFF /* // EXEC LISTLOG /* /& * $$ EOJ
Note: Session command output and the system error log go to SYSLST (by default). To separate them, add two $$ LST statements and modify the IDSYSFT entries for SYSPRINT and ADRL.
SYS102‑SYS106 Logical units defined in the batch file table for PSS outputs. These units are user‑defined.
Sorted reports have special JCL requirements. You must provide SORT work files. The report writer needs one internal work file for each sorted report. The report work files are defined in the file table. For more information, see the Administration Guide. The JCL for the work file for each sorted report looks like this:
// ASSGN SYSnnn,DISK,VOL=volser,SHR // DLBL IDRWK01,'IDEAL.report.work01',0,SD // EXTENT SYSnnn,volser,,,trks,numtrks
You must specify JCL for each sorted report work file. The requirements for each are the same except for the DLBL names of IDRWK01 through IDRWK04, respectively.
The size of the report work file depends on the size of the report. One logical record is written every time a PRODUCE statement is executed. The size of the record depends on the number and sizes of the data fields defined in the detail and heading sections of the report. A block size of approximately 3KB is used.
The following example shows the JCL needed to run a CA Ideal program that has two sorted reports. No special forms are used. The same SORT work files are shared for each report. An adequate number of SORT work files with sufficient space are needed to sort the data in one report work file for the largest report in a RUN.
* $$ JOB JNM=IDBATCH,PRI=n,USER='username',DISP=D * $$ LST DISP=D,CLASS=L,LST=SYS100 * $$ LST DISP=D,CLASS=L,LST=SYS101 * $$ LST DISP=D,CLASS=L,LST=SYS102 * $$ LST DISP=D,CLASS=L,LST=SYS103 * $$ LST DISP=D,CLASS=L,LST=SYS104 * $$ LST DISP=D,CLASS=L // JOB IDBATCH // OPTION LOG,NODUMP // EXEC PROC=IDLPROC * * Assign for report and SORT work files * // ASSGN SYS050,DISK,VOL=SYSWK1,SHR * * Report work files // DLBL IDRWK01,'IDEAL.REPORT.WORK01',0,SD // EXTENT SYS050,volser,,,9000,50 // DLBL IDRWK02,'IDEAL.REPORT.WORK02',0,SD // EXTENT SYS050,volser,,,9050,50 // DLBL IDRWK03,'IDEAL.REPORT.WORK03',0,SD // EXTENT SYS050,volser,,,9100,50 // DLBL IDRWK04,'IDEAL.REPORT.WORK04',0,SD // EXTENT SYS050,volser,,,9150,50 * * SORT work files * // DLBL SORTWK1,'DOS.WORKFILE.SORT01',0,SD // EXTENT SYS050,volser,,,9100,50 // DLBL SORTWK2,'DOS.WORKFILE.SORT02',0,SD // EXTENT SYS050,volser,,,9150,50 // DLBL SORTWK3,'DOS.WORKFILE.SORT03',0,SD // EXTENT SYS050,volser,,,9200,50 * // EXEC IDBATCH,SIZE=nnK PERSON username PSW psword PRODUCT IDEAL RUN SORTRPT2 OFF /* // EXEC LISTLOG /* /& * $$ EOJ
The size parameter on the // EXEC IDBATCH statement must be 15K for CA Ideal, plus the amount of partition storage (not GETVIS storage) required by the SORT (80K should be sufficient for a sorted report or cross reference on a compilation). For more information, see the IBM DOS SORT Manual.
|
Copyright © 2015 CA Technologies.
All rights reserved.
|
|