Talk About Network



Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Assembly 370 > Deconcatination...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 1 of 4 Topic 241 of 328
Post > Topic >>

Deconcatination of data sets and open every DD

by Joerg.Brehe@[EMAIL PROTECTED] (j?rg brehe) Apr 28, 2005 at 01:37 AM

Ok, my last message was a little briefy.

I have a bunch of data sets, not only on one volume. In my example
master2 is on another volume (Sequential Data Set). I shall get the
the right position (TTR, OFFSET) in member X.
I shall use EXCP. So I can read a whole track. 

The only problem is, our customers shall use concatinated data sets as
before.
So I must the decontanation in my programm, to get the right position.
I think EOV doesn't work. I must jump in every data set in time.
 
Now I try to copy the JFCB's. After this I try to open the data sets.

This time I get an S413/4

-No device is available for mounting the volume containing the data
set to be
-opened (dsn), or the allocated device is not available for one of
these
-reasons:
-  a.. The volume already on the allocated device, identified in the
ser
-field of the message text, is permanently resident, reserved, or
enqueued.
-  b.. The request volume is in use elsewhere.
-  c.. Another DCB is open on the device and the device is a magnetic
tape.
-  d.. The device type is incompatible with the DSORG in the DCB.

-Specify another device in the UNIT parameter of the DD statement.




My Data sets in the concatination are on different volumes.


RECINDD  DD  DSN=MASTER1,DISP=SHR     ok
         DD  DSN=MASTER2,DISP=SHR     here I get the error
         DD  DSN=MASTER8,DISP=SHR     
         DD  ...
         DD  ... 

Master1 is on another volume as Master2 


 ***code cut for breavity
*----------------------------------------------------------
*  Get all JFCB's in concatination
*----------------------------------------------------------   
Alloc    MVI    ARLOPT1,ARLLANY   GET STORAGE ABOVE 16 MB       
         RDJFCB (DUMMY)                                        
         LTR    R15,R15                                        
         BNZ    Fehler            IF NOT DEFINED                  
*                                                              
         L      R3,ARLAREA        ADDRESS OF ALLOCATION RETRIEVAL 
         XR     R5,R5                                          
***      ICM    R5,B'1100',ARLRTRVD                            
         LH     R5,ARLRTRVD        NUMBER OF DATA SETS             
         STH    R5,NORTRVD  
*                                   
*  CALCULATE AMOUNT OF STORAGE FOR JFCB'S  
*                     
         SR     R0,R0           PREPARE                         
         LR     R0,R5           GET NUMBER OF DATA SETS         
         MH     R0,=H'176'      MULT BY JFCB   LENGTH           
         STORAGE OBTAIN,LENGTH=(R0),LOC=(BELOW,ANY)             
         LR     R9,R1           POINT TO AREA FOR FIRST DSNAME  
         ST     R9,JFCBADDR 
*                                   
*  copy JFCB in Storage                                               
          *
LOOP     MVC    0(176,R9),4(R3)                                 
         LA     R9,176(,R9)
                                                    
         LA     R3,224(,R3)     SHIFT TO NEXT                   
         BCT    R5,LOOP                                         
*LOOP END                                                         
         XR     R5,R5                                           
         ICM    R5,B'0111',ARLRLEN                              
         XR     R3,R3                                           
         IC     R3,ARLPOOL                                      
         STORAGE RELEASE,LENGTH=(R5),SP=(R3),ADDR=ARLAREA       
         LTR    R15,R15                                         
         BNZ    FEHLER  


*----------------------------------------------------------------
*  OPEN EVERY DD IN CONCATINATED DATA SETS                       
*----------------------------------------------------------------
OPENCAT  RDJFCB RECIN          READ THE JFCB                     
         LTR    R15,R15                                          
         BNZ    FEHLER         IF NOT DEFINED 
                   
* CALCULATE AMOUNT OF STORAGE                                    
         SR     R0,R0           PREPARE                   
         LH     R0,NORTRVD      GET NUMBER OF DATASETS           
         LR     R3,R0           SAVE NUMBER OF VOLS              
*                                                                
         MH     R0,=Y(RECINLN) MULT BY EXCP DCB LENGTH           
         STORAGE OBTAIN,LENGTH=(R0),LOC=(BELOW,ANY),ADDR=DCBADDRL
         LR     R4,R1           POINT TO AREA FOR FIRST DCB      
         XC     IDTDCBA,IDTDCBA                                  
         ST     R4,IDTDCBA      SAVE PTR TO FIRST DCB            
                                                       
         L      R5,JFCBADDR                                      
OPENLO1  MVC    JFCB(176),0(R5)  COPY JFCB                       
         LA     R5,176(,R5)      POINT TO NEXT JFCB              
                                                 
*                                                                
         MVC    0(RECINLN,R4),RECIN  BUILD A DCB                 
         OPEN   ((R4),INPUT),TYPE=J  USE TYPE=J TO CHANGE JFCB   
         LTR    R15,R15                                          
         BNZ    FEHLER                                           
         LA     R4,RECINLN(,R4)   POINT TO NEXT DCB              
         BCT    R3,OPENLO1                                       
         BR     R6  


  
RECIN    DCB   DSORG=PS,MACRF=(E),EODAD=DATAEND,EXLST=EXITL,   
               DDNAME=RECINDD                                  
RECINLN  EQU   *-RECIN             LÄNGE INPUT DCB             
*                                                              
RECOUT   DCB   DSORG=PS,MACRF=PM,DDNAME=RECOUTD                
*                                                              
DUMMY    DCB   DSORG=PS,MACRF=(E),EXLST=INEXLST,               
               DDNAME=RECINDD                                  


Jörg




 4 Posts in Topic:
Deconcatination of data sets and open every DD
Joerg.Brehe@[EMAIL PROTEC  2005-04-28 01:37:03 
Re: Deconcatination of data sets and open every DD
Greg Price <grogon@[EM  2005-04-29 00:20:15 
Re: Deconcatination of data sets and open every DD
Jerry Peters <jerry@[E  2005-04-28 20:30:35 
Re: Deconcatination of data sets and open every DD
Binyamin Dissen <posti  2005-04-28 23:58:31 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Mon May 12 7:22:08 CDT 2008.