IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

how to show the class of an ims transaction via rexx


IBM Mainframe Forums -> CLIST & REXX
Post new topic   This topic is locked: you cannot edit posts or make replies.
View previous topic :: View next topic  
Author Message
Renato Zangerolami

New User


Joined: 06 Dec 2019
Posts: 28
Location: Brazil

PostPosted: Fri Dec 06, 2019 6:50 pm
Reply with quote

I'm trying to display the class of a particular ims transaction via rexx, does anyone have any suggestions on how to do it?
Back to top
View user's profile Send private message
Joerg.Findeisen

Active Member


Joined: 15 Aug 2015
Posts: 569
Location: Bamberg, Germany

PostPosted: Sat Dec 07, 2019 7:10 am
Reply with quote

What have you tried so far?
Back to top
View user's profile Send private message
Renato Zangerolami

New User


Joined: 06 Dec 2019
Posts: 28
Location: Brazil

PostPosted: Mon Dec 09, 2019 9:41 pm
Reply with quote

Code:
/* rexx */
"CART XXXX"     /* XXXX= TRANSACTION */
"QRY TRAN NAME(XXXX) SHOW(STATUS)"
RESULTS = CSLULGTS("RESP.","XXXX","3:15")
DO IDX = 1 TO RESP.O
   PARSE VAR RESP.IDM . "TRAN(XXXX" . ,
         "MBR(" IMSNAME ") . ,
          "LSII("STATUS")" .
END


I also tried to use this command

Code:
IMFEXEC CMD '/DIS TRAN XXXX


**
if it is possible to save the class in a variable it also helps.

Coded for you - please do it yourself next time
Back to top
View user's profile Send private message
Nic Clouston

Global Moderator


Joined: 10 May 2007
Posts: 2455
Location: Hampshire, UK

PostPosted: Tue Dec 10, 2019 4:31 pm
Reply with quote

What was the problem with that code?
Have youtried using OUTTRAP to capture the output?
Back to top
View user's profile Send private message
Joerg.Findeisen

Active Member


Joined: 15 Aug 2015
Posts: 569
Location: Bamberg, Germany

PostPosted: Tue Dec 10, 2019 5:03 pm
Reply with quote

Code:
DO IDX = 1 TO RESP.O
   PARSE VAR RESP.IDM . "TRAN(XXXX" . ,
         "MBR(" IMSNAME ") . ,
          "LSII("STATUS")" .


I would try parsing RESP.IDX first rather than RESP.IDM. Minor issues can have consequences too.
Back to top
View user's profile Send private message
Pedro

Global Moderator


Joined: 01 Sep 2006
Posts: 2249
Location: Silicon Valley

PostPosted: Tue Dec 10, 2019 11:26 pm
Reply with quote

If you want the class value, you have to ask for it in the SHOW() parameter:
Code:
"QRY TRAN NAME(XXXX) SHOW(STATUS,CLASS)"


FYI: I created the REXX SPOC API of IMS when I worked for IBM! I consider it one of the most important contributions of my career.
Back to top
View user's profile Send private message
Pedro

Global Moderator


Joined: 01 Sep 2006
Posts: 2249
Location: Silicon Valley

PostPosted: Tue Dec 10, 2019 11:32 pm
Reply with quote

Also, you are using the CSLULGTS function, which I added in the first release. I realized it was hard to use, so I later created the CSLULGTP function which parses it better and puts the values into a stem variable.

See: www.ibm.com/support/knowledgecenter/en/SSEPH2_13.1.0/com.ibm.ims13.doc.spr/ims_retrieving_rexx.htm
Back to top
View user's profile Send private message
Renato Zangerolami

New User


Joined: 06 Dec 2019
Posts: 28
Location: Brazil

PostPosted: Fri Jan 17, 2020 6:09 pm
Reply with quote

Thank you guys for answer!
I was able to execute the command using sdsf to display the class follows the code:
Code:
RC=ISFCALLS('ON')
ADDRESS SDSF "ISFEXEC /IMSTDIS TRAN XXXX"
DO IX=1 TO ISFULOG.0
SAY ISFULOG.IX
END
Back to top
View user's profile Send private message
don.leahy

Active Member


Joined: 06 Jul 2010
Posts: 707
Location: Whitby, ON, Canada

PostPosted: Sat Jan 18, 2020 3:36 am
Reply with quote

Pedro wrote:
If you want the class value, you have to ask for it in the SHOW() parameter:
Code:
"QRY TRAN NAME(XXXX) SHOW(STATUS,CLASS)"


FYI: I created the REXX SPOC API of IMS when I worked for IBM! I consider it one of the most important contributions of my career.

Great work, Pedro! I use the SPOC Rexx interface a lot in my work. Thanks especially for the cslulgtp functionality that stores the response in stem variables.
Back to top
View user's profile Send private message
Pedro

Global Moderator


Joined: 01 Sep 2006
Posts: 2249
Location: Silicon Valley

PostPosted: Sat Jan 18, 2020 7:42 am
Reply with quote

Quote:
Great work, Pedro! I use the SPOC Rexx interface a lot in my work.

You are welcome!
Back to top
View user's profile Send private message
Renato Zangerolami

New User


Joined: 06 Dec 2019
Posts: 28
Location: Brazil

PostPosted: Wed Jan 22, 2020 5:49 pm
Reply with quote

Pedro, I'm sorry for my lack of sensitivity in failing to recognize your great work done.I believe that I will use the CSLULGTP function a lot. Thank you.
I have another question, regarding IMS, we access transactions through the terminal using logon applid = imst and logon applid = ms2d, in my test, I need to change the transaction class in both accesses. So far I was able to change only in imst, in ms2d the command is not recognized. Can you explain the difference between them and how do I change the class via ms2d?
* Through the terminal it is possible to change the class via ms2d and imst.
Back to top
View user's profile Send private message
Nic Clouston

Global Moderator


Joined: 10 May 2007
Posts: 2455
Location: Hampshire, UK

PostPosted: Wed Jan 22, 2020 8:19 pm
Reply with quote

One question per topic. Locked.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   This topic is locked: you cannot edit posts or make replies. View Bookmarks
All times are GMT + 6 Hours
Forum Index -> CLIST & REXX

 


Similar Topics
Topic Forum Replies
No new posts REXX SDSF filtering CLIST & REXX 8
No new posts Trying to reference a javascript glob... CLIST & REXX 7
No new posts REXX - Adding variables CLIST & REXX 8
No new posts Help this REXX Rookie-Bad arithmetic ... CLIST & REXX 7
This topic is locked: you cannot edit posts or make replies. REXX to find /* Define and write the ... CLIST & REXX 5
Search our Forums:

Back to Top