MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

DFHCDSUP question

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> CICS and Middleware
View previous topic :: View next topic  
Author Message
Cogito-Ergo-Sum
Advanced


Joined: 15 Dec 2002
Posts: 637
Topics: 43
Location: Bengaluru, INDIA

PostPosted: Wed Aug 10, 2005 12:14 pm    Post subject: DFHCDSUP question Reply with quote

Hi,
I have a requirement to get the correlation between programs and transaction IDs. I almost got it done. My attempt:
Code:

//STEP1    EXEC PGM=DFHCSDUP,
//            PARM='CSD(READONLY)'
//STEPLIB  DD DSN=CICS.SDFHLOAD,DISP=SHR
//DFHCSD   DD DSN=CICS.DFHCSD,DISP=SHR
//SYSIN    DD *
 EXTRACT GROUP(CICSGRP) OBJECTS USERPROGRAM(DFH0CRFC)
/*
//CRFINPT  DD *
PROGRAM
TRANSACTION
/*
//CRFOUT   DD SYSOUT=I
//SYSOUT   DD SYSOUT=I
//SYSPRINT DD SYSOUT=I

The result:
Code:

DFH5120 I PRIMARY CSD OPENED;  DDNAME: DFHCSD                                   
DFH5287 E EXTRACT TERMINATED AT USERS REQUEST RC=10                             
DFH5103 I ERROR(S) OCCURRED WHILE PROCESSING EXTRACT COMMAND.                   
DFH5104 W SUBSEQUENT COMMANDS  (EXCEPT LIST) ARE NOT EXECUTED BECAUSE OF ERROR(S
DFH5123 I PRIMARY CSD CLOSED;  DDNAME: DFHCSD                                   


When I traced the RC=10 message, it points to the below COBOL code (from the member DFH0CRFC in hlq.SDFHSAMP):
Code:

* ************************************************************** *
*      A L L O C A T E  A  D E F I N E D  E L E M E N T          *
*  This subroutine allocates the next available element of       *
*  DEFINED ELEMENT POOL, if one is available. If not the return  *
*  code special register is set. DEFINED-ELEMENT-PTR points to   *
*  new element on exit.                                          *
* ************************************************************** *
 ALLOCATE-A-DEFINED-ELEMENT.
     IF NOT DEFINED-ELEMENT-FREE THEN
          MOVE INSUFFICIENT-DEFINED-ELEMENTS TO RETURN-CODE
          SET INSUFFICIENT-STORAGE TO TRUE
     ELSE
          SET DEFINED-ELEMENT-PTR TO
              NEXT-AVAILABLE-DEFINED-ELEMENT
*         * **************************************************** *
*         * Point to next available element in pool              *
*         * **************************************************** *
          SET NEXT-AVAILABLE-DEFINED-ELEMENT UP BY 1
          ADD 1 TO DEFINED-ELEMENTS-ALLOCATED
     END-IF.


I am at a loss to understand this RC. Any ideas?
_________________
ALL opinions are welcome.

Debugging tip:
When you have eliminated all which is impossible, then whatever remains, however improbable, must be the truth.
-- Sherlock Holmes.
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12376
Topics: 75
Location: San Jose

PostPosted: Wed Aug 10, 2005 12:41 pm    Post subject: Reply with quote

Cogito,

Am I missing something here? Isn't it simple with CEMT?

Code:


CEMT I TRAN(*) PROGRAM(*)


This will list all your Transactions and programs associated to it

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Cogito-Ergo-Sum
Advanced


Joined: 15 Dec 2002
Posts: 637
Topics: 43
Location: Bengaluru, INDIA

PostPosted: Wed Aug 10, 2005 12:46 pm    Post subject: Reply with quote

Online? Yes, it is easy there.

But, I was looking for something in batch. Also, if you remember, I recently posted a question about CEMT in batch. I was unable to get the results.

Try this:
Code:

//STEP1    EXEC PGM=DFHCSDUP,           
//            PARM='CSD(READONLY)'     
//STEPLIB  DD DSN=CICS.SDFHLOAD,DISP=SHR
//DFHCSD   DD DSN=CICS.DFHCSD,DISP=SHR 
//SYSIN    DD *                         
 LIST    GROUP(CICSGRP) OBJECTS         
/*                                     
//SYSOUT   DD SYSOUT=I                 

_________________
ALL opinions are welcome.

Debugging tip:
When you have eliminated all which is impossible, then whatever remains, however improbable, must be the truth.
-- Sherlock Holmes.
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12376
Topics: 75
Location: San Jose

PostPosted: Wed Aug 10, 2005 12:49 pm    Post subject: Reply with quote

cogito,

I noticed that your error is from the control cards it self.

Quote:

DFH5103 I ERROR(S) OCCURRED WHILE PROCESSING EXTRACT COMMAND


So I looked up the EXTRACT command syntax and it seems that you have OBJECT clause in the wrong place.

check this link

http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/DFHJAA43/3.2.7?DT=20000622093847

try running the job with the extract command as follows

Code:

EXTRACT GROUP(CICSGRP) USERPROGRAM(DFH0CRFC) OBJECTS


Also remove the /* after the extract command

Hope this helps...

Cheers

kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12376
Topics: 75
Location: San Jose

PostPosted: Wed Aug 10, 2005 12:58 pm    Post subject: Reply with quote

Cogito,

check this out

Code:

3 If you specify the EXTRACT command, you may need to:


Concatenate with STEPLIB the libraries that contain your USERPROGRAM programs.


Include a DD statement for any input data set that is defined in your user program. For example, the CICS-supplied user program, DFH$CRFA, needs a DD statement with a ddname of CRFINPT.



The input file specified by CRFINPT is needed by the user programs DFH$CRFx (where x=A for Assembler or x=P for PL/I) and DFH0CRFC (for COBOL) to supply the list of resource types or attributes for which you want a cross-reference listing. You can specify (in uppercase) any resource type known to CEDA, one resource type per line (starting in column 1). For example, your CRFINPT file may contain the following resource types (one per line) to be cross-referenced:




       PROGRAM
       TRANSACTION
       TYPETERM
       XTPNAME
       DSNAME


For programming information about the use of the CRFINPT file by the programs DFH$CRFx or DFH0CRFC (for COBOL), see the CICS Customization Guide .





4 If you specify the EXTRACT command, you need to include the DD statements for any data sets that receive output from your extract program. The ddname is whatever ddname you define in the user program.



You might want to read this in detail here - Invoking DFHCSDUP as a batch program

http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/DFHJAA43/3.1.4?DT=20000622093847

Hope this helps...

Cheers

kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Cogito-Ergo-Sum
Advanced


Joined: 15 Dec 2002
Posts: 637
Topics: 43
Location: Bengaluru, INDIA

PostPosted: Wed Aug 10, 2005 1:02 pm    Post subject: Reply with quote

Kolusu,
I had tried that option too. Same result. I do not see any reason for omitting /*. I do not see anything to this effect in the manual.

BTW, I changed the CRFIN to:
Code:

//CRFINPT  DD *
PROGRAM TRANSACTION
/*

and then to
Code:

//CRFINPT  DD *
TRAN PROGRAM
/*


There is no error in either of the cases. But, niether is there expected output.
Code:

UTILITY COMMAND:    EXTRACT GROUP(CICSGRP) OBJECTS USERPROGRAM(DFH0CRFC) 
* * * * CROSS REFERENCE OF PROGRAM TRAN * * * *                           
THERE ARE NO DEFINITIONS/USES OF PROGRAM TRAN IN THE SPECIFIED GROUP/LISTS.

_________________
ALL opinions are welcome.

Debugging tip:
When you have eliminated all which is impossible, then whatever remains, however improbable, must be the truth.
-- Sherlock Holmes.
Back to top
View user's profile Send private message
Cogito-Ergo-Sum
Advanced


Joined: 15 Dec 2002
Posts: 637
Topics: 43
Location: Bengaluru, INDIA

PostPosted: Wed Aug 10, 2005 1:09 pm    Post subject: Reply with quote

Kolusu,
My step is observing all the checks that you have posted.

BTW, the first CRFINPT above should have been:
Code:

//CRFINPT  DD *
PROGRAM
TRANSACTION
/*

_________________
ALL opinions are welcome.

Debugging tip:
When you have eliminated all which is impossible, then whatever remains, however improbable, must be the truth.
-- Sherlock Holmes.
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12376
Topics: 75
Location: San Jose

PostPosted: Wed Aug 10, 2005 1:21 pm    Post subject: Reply with quote

Quote:

Kolusu, My step is observing all the checks that you have posted.


hmm, how about this?

Quote:

If you specify the EXTRACT command, you may need to: Concatenate with STEPLIB the libraries that contain your USERPROGRAM programs.


Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Cogito-Ergo-Sum
Advanced


Joined: 15 Dec 2002
Posts: 637
Topics: 43
Location: Bengaluru, INDIA

PostPosted: Wed Aug 10, 2005 1:28 pm    Post subject: Reply with quote

Both are available in that particular PDS. So, no concatenation required (atleast for our site). 8)

Guess what? Change the USERPROGRAM to the Assembler version and provide SYSIN as instream (not as PS file; dunno why Rolling Eyes ). The results are coming correctly!

Sample output:
Code:

6 USES ARE MADE OF JZXF0050               
  THEY ARE:                               
           TRANSACTION  AYAA     IN CICSGRP
           TRANSACTION  AYAB     IN CICSGRP
           TRANSACTION  AYAC     IN CICSGRP
           TRANSACTION  AYAD     IN CICSGRP
           TRANSACTION  AYAE     IN CICSGRP
           TRANSACTION  AYAF     IN CICSGRP
                                           
                                           
6 USES ARE MADE OF JZXF0060               
  THEY ARE:                               
           TRANSACTION  AYBA     IN CICSGRP
           TRANSACTION  AYBB     IN CICSGRP
           TRANSACTION  AYBC     IN CICSGRP
           TRANSACTION  AYBD     IN CICSGRP
           TRANSACTION  AYBE     IN CICSGRP
           TRANSACTION  AYBF     IN CICSGRP


Final successful step:
Code:

//STEP1    EXEC PGM=DFHCSDUP,                         
//            PARM='CSD(READONLY)'                   
//STEPLIB  DD DSN=CICS.SDFHLOAD,DISP=SHR             
//DFHCSD   DD DSN=CICS.DFHCSD,DISP=SHR               
//SYSIN    DD *                                       
EXTRACT GROUP(CICSGRP) USERPROGRAM(DFH$CRFA) OBJECTS 
/*                                                   
//CRFINPT  DD *                                       
PROGRAM                                               
TRANSACTION                                           
/*                                                   
//CRFOUT   DD DSN=fb 132 dataset,DISP=(,CATLG,DELETE),
//            UNIT=SYSDA,                             
//            SPACE=(CYL,1)                           
//SYSOUT   DD SYSOUT=I                               
//SYSPRINT DD SYSOUT=I                               


8)
_________________
ALL opinions are welcome.

Debugging tip:
When you have eliminated all which is impossible, then whatever remains, however improbable, must be the truth.
-- Sherlock Holmes.
Back to top
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12376
Topics: 75
Location: San Jose

PostPosted: Wed Aug 10, 2005 2:28 pm    Post subject: Reply with quote

cogito,

Glad that you are able to solve the error.

Kolusu
_________________
Kolusu
www.linkedin.com/in/kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> CICS and Middleware All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group