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 

How to find the Transaction ID of the Program

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


Joined: 14 Feb 2006
Posts: 42
Topics: 22

PostPosted: Thu Aug 06, 2009 12:36 am    Post subject: How to find the Transaction ID of the Program Reply with quote

Hi

I have a list of CICS programs, i want to fiond out the transaction IDS which will invoke these programs. How do i find it.

I did CEDA DISPLAY but it is giving me the PCT entry form the transaction. That i i only get TRANID -> Program mapping not the reverse..

How do i do it?
_________________
Thanks and Regards..
Rajesh
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger MSN Messenger
kolusu
Site Admin
Site Admin


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

PostPosted: Thu Aug 06, 2009 11:34 am    Post subject: Reply with quote

rajeshkoratti,

CEMT I TRA(*) identifies the transaction name and its related program name.

Kolusu
Back to top
View user's profile Send private message Send e-mail Visit poster's website
Terry_Heinze
Supermod


Joined: 31 May 2004
Posts: 391
Topics: 4
Location: Richfield, MN, USA

PostPosted: Thu Aug 06, 2009 2:35 pm    Post subject: Reply with quote

I think Rajesh is interested in a CEMT I PROGRAM(XXX) option that displays all transaction IDs associated with program XXX. That option does not exist (that I know of).
_________________
....Terry
Back to top
View user's profile Send private message Send e-mail
rajeshkoratti
Beginner


Joined: 14 Feb 2006
Posts: 42
Topics: 22

PostPosted: Thu Aug 06, 2009 10:11 pm    Post subject: Reply with quote

Thanks Kolusu.. however as Terry pointed out i need the Program -> Trans mapping. The reason being in my shop, unfortuantely, the naming conventions are not followed strictly hence, guessing out the transaction id from the program name is difficult. Exclamation
_________________
Thanks and Regards..
Rajesh
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger MSN Messenger
semigeezer
Supermod


Joined: 03 Jan 2003
Posts: 1014
Topics: 13
Location: Atlantis

PostPosted: Fri Aug 07, 2009 12:56 am    Post subject: Reply with quote

As long as the definitions are in the CSD and no one else is using CEDA...
Modifications, error checking and how it works left as an exercise for the reader:
Code:
/* Rexx                                                              */

"ALLOC F(DFHCSD) REU SHR DA('CICSTS41.NQA17C05.DFHCSD')"
sysin.0 = 1
sysin.1 = " LIST ALL OBJECTS"
"ALLOC F(SYSIN) REU NEW UNIT(VIO) SP(1) TRACK LREC(80) RECF(F)" ,
    "DSO(PS) DEL"
"EXECIO 1 DISKW SYSIN (STEM SYSIN. FINIS"
"ALLOC F(SYSPRINT) REU NEW UNIT(VIO) LREC(132)",
    "RECF(F B A) DSO(PS) DEL SP(15,50) track  "
"CALL 'CICSBLD.V4R1M0.CICS.SDFHLOAD(DFHCSDUP)'"
"execio * diskr sysprint (stem sysprint. finis"
"FREE F(SYSIN DFHCSD SYSPRINT)"
progs. = ""
proglist = ""
Do a = 1 to sysprint.0
  Parse Var sysprint.a 2 "TRANSACTION(" trans ")" . "PROGRAM(" prog ")"
  If trans <> "" & prog <> "" Then
    Do
      If progs.prog == "" Then
        proglist = proglist prog
      progs.prog = progs.prog trans
    End
End
Do a = 1 to words(proglist)
  prog = word(proglist,a)
  Say "Program "left(prog,8) "Transids: "space(progs.prog)
End

Sample of output:
Code:
Program ACCT00   Transids: ACCT                                 
Program ACCT03   Transids: ACEL ACLG AC03 AC05 AC06             
Program ACCT01   Transids: AC01                                 
Program ACCT02   Transids: AC02                                 
Program DFH$AALL Transids: AADD AINQ AUPD AADD AINQ AUPD       
Program DFH$ABRW Transids: ABRW ABRW                           
Program DFH$AMNU Transids: AMNU AMNU                           
Program DFH$AREN Transids: AORD AORD                           
Program DFH$ACOM Transids: AORQ AORQ                           
Program DFH$AREP Transids: AREP AREP                           
Program DFH$PPKO Transids: PPKO                                 
Program DFH$PPLA Transids: PPLA                                 
Program DFH0CPKO Transids: XPKO                                 

_________________
New members are encouraged to read the How To Ask Questions The Smart Way FAQ at http://www.catb.org/~esr/faqs/smart-questions.html.
Back to top
View user's profile Send private message Visit poster's website
semigeezer
Supermod


Joined: 03 Jan 2003
Posts: 1014
Topics: 13
Location: Atlantis

PostPosted: Fri Aug 07, 2009 3:56 pm    Post subject: Reply with quote

I just noticed the duplicates for transactions listed in multiple groups, such as the 2 ABRWs in the example.

A minor update thats also a bit more readable:
Code:
/* Rexx                                                              */
                                                                       
sysin.1 = " LIST ALL OBJECTS"                                         
                                                                       
"ALLOC F(DFHCSD)   REU SHR DA('CICSTS41.NQA17C05.DFHCSD')"             
"ALLOC F(SYSIN)    REU NEW UNIT(VIO) SP(1) TRACK LREC(80) RECF(F)" ,   
                  "DSO(PS) DEL"                                       
"ALLOC F(SYSPRINT) REU NEW UNIT(VIO) LREC(132)",                       
                  "RECF(F B A) DSO(PS) DEL SP(15,50) TRACK"           
                                                                       
"EXECIO 1 DISKW SYSIN (STEM SYSIN. FINIS"                             
"CALL 'CICSBLD.V4R1M0.CICS.SDFHLOAD(DFHCSDUP)'"                       
"EXECIO * DISKR SYSPRINT (STEM SYSPRINT. FINIS"                       
"FREE F(SYSIN DFHCSD SYSPRINT)"                                       
                                                                       
transactions. = ""                                                     
programlist = ""                                                       
Do a = 1 to sysprint.0                                                 
  Parse Var sysprint.a 2 "TRANSACTION(" trans ")" . "PROGRAM(" prog ")"
  If trans <> "" & prog <> "" Then                                     
    Do                                                                 
      If transactions.prog == "" Then                                 
        programlist = programlist prog                                 
      If wordpos(trans,transactions.prog)=0 Then                       
        transactions.prog = transactions.prog trans                   
    End                                                               
End                                                                   
Do a = 1 to words(programlist)                                         
  prog = word(programlist,a)                                           
  Say "Program "left(prog,8) "Transids: "space(transactions.prog)     
End                                                                   

_________________
New members are encouraged to read the How To Ask Questions The Smart Way FAQ at http://www.catb.org/~esr/faqs/smart-questions.html.
Back to top
View user's profile Send private message Visit poster's website
rajeshkoratti
Beginner


Joined: 14 Feb 2006
Posts: 42
Topics: 22

PostPosted: Thu Aug 13, 2009 3:12 am    Post subject: Reply with quote

Using the DFHCSD file did the trick!!! Smile Thanks a lot Semigeezer (i always wonder what your name means:) )
_________________
Thanks and Regards..
Rajesh
Back to top
View user's profile Send private message Send e-mail Yahoo Messenger MSN Messenger
warp5
Intermediate


Joined: 02 Dec 2002
Posts: 429
Topics: 18
Location: Germany

PostPosted: Mon Aug 17, 2009 1:45 am    Post subject: Reply with quote

A geezer is usually used for an older person, maybe a little ecentric (ever seen the movie The Odd Couple?). A semi geezer would be a part geezer, another words Semigeezer is getting close to being old. I got a kick out of the name the first time I saw it, and if you have followed the quality and knowledge of Semigeezer's replies you know that he has a lot of valuable experience.
Back to top
View user's profile Send private message 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