How to duplicate View reports to a new database on another system
search cancel

How to duplicate View reports to a new database on another system

book

Article ID: 239559

calendar_today

Updated On:

Products

View

Issue/Introduction

I need to duplicate some reports from a View database from one system to another unconnected system.

What is the process to duplicate View repots to another system?

Environment

Release : 14.0

Component : View

Resolution

Here are the instructions to duplicate View reports from one system to another unconnected system:  

a) Before taking selective UNLOAD on the sending database, need to ensure that all of the reports being unloaded are first on the database disk layer.

To that end, first run a SARDBASE STATUS FULL:

//XXXXXXXX JOB ...                                                
//SARDBASE EXEC PGM=SARDBASE,PARM='VIEW_HLQ'  <=== MODIFY DB NAME
//STEPLIB  DD  DISP=SHR,DSN=VIEW.CVDELOAD     <=== MODIFY, IF USED
//SYSPRINT DD  SYSOUT=*                                          
//SYSIN    DD *                                                  
STATUS FULL                                                      
/*                                                                
//

If there is not sufficient room on the disk layer to load the 10% - 20% of the reports, then need to run a SARDBASE ADDDS DATA to add disk space:

//XXXXXXXX JOB ...                                                
//SARDBASE EXEC PGM=SARDBASE,PARM='VIEW_HLQ'  <=== MODIFY DB NAME
//STEPLIB  DD  DISP=SHR,DSN=VIEW.CVDELOAD     <=== MODIFY, IF USED
//SYSPRINT DD  SYSOUT=*                                          
//SYSIN    DD   *                                                
ADDDS DATA  CYLINDER=nnnn BLKSIZE=13682 UNIT=3390 VOLSER=xxxxxx
/*                                                                
//    

b) Run a /LOAD transaction for each report you bring to the disk layer. 

//XXXXXXXX JOB ...
//SARBCH   EXEC PGM=SARBCH,PARM='VIEW_HLQ'  <=== MODIFY DB NAME
//STEPLIB  DD  DISP=SHR,DSN=VIEW.CVDELOAD     <=== MODIFY, IF USED
//SYSPRINT DD  SYSOUT=*
//REPORT   DD   SYSOUT=*
//SYSIN    DD   *
/LOAD  ID=XXXXXXXXXXXX GEN=NNNN SEQ=NN 
/*
//

                                                  
c) Once the reports to be selected have been determined, run a SARDBASE Selective UNLOAD using the below JCL:

//XXXXXXXX JOB ...                                                
//SARDBASE EXEC PGM=SARDBASE,PARM='VIEW_HLQ'  <=== MODIFY DB NAME
//STEPLIB  DD  DISP=SHR,DSN=VIEW.CVDELOAD     <=== MODIFY, IF USED
//SYSPRINT DD  SYSOUT=*                                          
//*********************************************                  
//*  USE THE FOLLOWING SARUNLTB STATEMENT IF  *                  
//*  YOU ARE DOING A "SELECTIVE" UNLOAD       *                  
//*********************************************                  
//SARUNLTB DD  *                                                  
S=xxxxxxxxxxxx ADATE=mm/dd/yyyy
/*                                                                
//SARUNLD  DD  DISP=(,CATLG,DELETE),                              
//             DSN=XXXXXX.XXXXXX.SARSELUL,
//             DCB=(RECFM=VB,LRECL=32756,BLKSIZE=32760),          
//             SPACE=(CYL,(NNN,NN),RLSE),                        
//             UNIT=XXXX,VOL=SER=YYYYYY                          
//SYSPRINT DD SYSOUT=*                                            
//SYSIN    DD *                                                  
UNLOAD                                                            
/*                                                                
//  

d) On the receiving side, create a new, empty database using the below JCL:

//XXXXXXXX JOB ...                                                
//SARDBASE EXEC PGM=SARDBASE,PARM='VIEW_HLQ2'  <=== MODIFY DB NAME
//STEPLIB  DD  DISP=SHR,DSN=VIEW.CVDELOAD     <=== MODIFY, IF USED
//SYSPRINT DD  SYSOUT=*                                          
//SYSIN    DD   *                                                
ADDDS INDEX CYLINDER=nnnn BLKSIZE=8906 UNIT=3390 VOLSER=xxxxxx
ADDDS DATA  CYLINDER=nnnn BLKSIZE=13682 UNIT=3390 VOLSER=xxxxxx
/*                                                                
//  

e) Then, run a SARDBASE LOAD, to load the selected reports:

//XXXXXXXX JOB ...                                                
//SARDBASE EXEC PGM=SARDBASE,PARM='VIEW_HLQ2'  <=== MODIFY DB NAME
//STEPLIB  DD  DISP=SHR,DSN=VIEW.CVDELOAD     <=== MODIFY, IF USED
//SYSPRINT DD  SYSOUT=*                                          
//SARLOAD  DD  DISP=SHR,DSN=XXXXXX.XXXXXX.SARSELUL
//SYSIN    DD   *                                                
LOAD                                                              
/*
//  

f) Then run the following SARGRW:

//XXXXXXXX JOB ...
//SARGRW01 EXEC PGM=SARGRW                                        
//STEPLIB  DD   DISP=SHR,DSN=VIEW.CVDELOAD    <=== Modify, if used
//SORTWK01 DD UNIT=SYSDA,SPACE=(CYL,(5),,CONTIG)                  
//SORTWK02 DD UNIT=SYSDA,SPACE=(CYL,(5),,CONTIG)                  
//SORTWK03 DD UNIT=SYSDA,SPACE=(CYL,(5),,CONTIG)                  
//SYSUDUMP DD SYSOUT=*                                            
//SYSOUT   DD SYSOUT=*                                            
//SYSPRINT DD SYSOUT=*                                            
//PRTFILE  DD SYSOUT=*                                            
//OUTFILE  DD  DISP=(,CATLG,DELETE),                              
//             DSN=XXXXXX.XXXXXX.SARGRWOP,                        
//             DCB=(RECFM=F,LRECL=80,BLKSIZE=80),                
//             SPACE=(TRK,(5,1),RLSE),                            
//             UNIT=XXXX,VOLSER=XXXXXX                            
//SYSIN    DD *                                                  
/CONTROL SEQ=RID DATABASE=VIEW_HLQ2  <=== Modify View DB Name
/ OUTPUT '/CHANGE BACKUP=OFF ID='      COL(1)       
/ OUTPUT SUBSTR(RID,1,25)  COL(23)                                
/ OUTPUT 'GEN='                     COL(49)                                
/ OUTPUT EDIT(GEN,'99999') COL(53)                                
/ OUTPUT 'SEQ='                     COL(59)                                
/ OUTPUT EDIT(SEQ,'99999') COL(63)                                
/END  
/*    
//        

g) Then, run the following SARBCH job:

//XXXXXXXX JOB ...                                                
//SARBCH   EXEC PGM=SARBCH,PARM='VIEW_HLQ2'  <=== MODIFY DB NAME  
//STEPLIB  DD  DISP=SHR,DSN=VIEW.CVDELOAD     <=== MODIFY, IF USED
//SYSPRINT DD  SYSOUT=*                                          
//REPORT   DD  SYSOUT=*                                          
//SYSIN    DD  DISP=SHR,DSN=XXXXXX.XXXXXX.SARGRWOP
//  

h) After the above SARBCH run, at the next View backup, all reports will be backed up to new tapes.