Automate the Recall of Offline Reports
As an administrator, you can allow users to recall automatically their own offline reports. This section explains how to automate the recall of offline reports for users.
As an administrator, you can allow users to recall automatically their own offline reports. A suggested process follows:
To let users view offline reports on tapes without recall, you can use the CA View Extended Access Server (EAS), see
SAREASUX - EAS for Tape and Roboticsin the CA View documentation. If you do not implement EAS, you can use your external automation tool to recall these offline reports.
- Select a repository where you want to let users recall offline reports.
- Use your automation tool to search for the CAHATPR02 WTO message from Web Application Server task.Web Viewergenerates a CAHATPR02 message when a user selects an archived report.For instructions to search for the message, see the documentation for your automation tool.
- In your automation tool, parse CAHATPR02 to find the values for report, gen, seq, and user. CAHATPR02 includes report identifier details that help you construct automation to recall the report, as shown in the following sample message:CAHATPR02 Report "RE100001" Gen=1 Seq=17 User WEBVADM DB CORVUS.UP.T3 recall requestUse the OPS/MVS example after these steps as a model for this step and the next step.
The following example illustrates how to use CA OPS/MVS to parse CAHATPR02 (Step 4 in the previous procedure) and use the parsed data to load the report (Step 5). Follow this example as a model to use your automation tool to perform the same steps. For more information about using OPS/MVS, see the CA OPS/MVS documentation.
Sample MSG Rule
Set up this message in your CA OPS/MVS system with a SET WTOSAMPLE (MSG rule). Create and customize the rule for your environment.
This rule is executed when CAHATPR02 is detected in the
Web Viewerlog. It parses the message, extracts the values needed, and calls the REXX exec to build and submit the recall job.
)msg CAHATPR02 )proc MG=msg.text /* assigns text of message to a value of MG */ id# = word(MG,3) /* 3rd word in message assigned to id# */ id# = STRIP(id#,,'"') /* removes the quotes from id# (word3) */ gen# = word(MG,4) /* 4th word in message assigned to gen# */ ADDRESS OSF "OI SUBMTJOB" id# gen# /* Execute SUBMTJOB REXX which submits job with values */ return
Sample REXX Exec to Build and Submit the Recall Job
Use the following sample as a model to create and customize the REXX exec to build and submit the recall job. Verify that the REXX is in your SYSEXEC for your servers and that your OSFGETJOBID is set to YES.
Parse arg id# gen# /* value of word 3 and word 4 */ line.1 = "//J12345 JOB ,'SAR REPORT RETRIEVAL',CLASS=N," line.2 = "// MSGCLASS=J,MSGLEVEL=(1,1)" line.3 = "//STARTUP1 EXEC UCC11RMS" line.4 = "//STEP1 EXEC PGM=SARBCH,PARM='P06.D63200A.SAR'" line.5 = "//STEPLIB DD DSN=SYS3.SAR.LOADLIB,DISP=SHR" line.6 = "//SYSPRINT DD SYSOUT=*" line.7 = "//REPORT DD SYSOUT=(A,,C611)" line.8 = "//SYSIN DD *" line.9 = "/LOAD ID="id# gen# /* inserts values of word 3 and word 4 */ zz = OPSUBMIT(line.) If rc <> 0 then Do while queued() <> 0 pull msg say msg End