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

G0000V00 from (0), (-1) ...


IBM Mainframe Forums -> CLIST & REXX
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
harisukumaran

New User


Joined: 14 Jun 2005
Posts: 75

PostPosted: Thu Feb 03, 2022 3:05 am
Reply with quote

BPXWDYN gives the RTDSN only if an ALLOCATE is executed
When run via rexx BPXWDYN ALLOCATE does not wait for contending processes that are writing to generations to complete
Is there a way to retrieve the G0000V00 from relative GDG number without doing a BPXWDYN ALLOCATE or parsing a LISTCAT listing ?
BPXWDYN info is just for current DDNAME allocation as far I can see
Is there something else that can be used for this?
Back to top
View user's profile Send private message
don.leahy

Active Member


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

PostPosted: Thu Feb 03, 2022 4:52 am
Reply with quote

Did you try a BPXWYDYN INFO call?
Back to top
View user's profile Send private message
harisukumaran

New User


Joined: 14 Jun 2005
Posts: 75

PostPosted: Thu Feb 03, 2022 5:03 am
Reply with quote

Yes. I did. it does not take dataset names. it likes only currently allocated ddnames
Back to top
View user's profile Send private message
Pedro

Global Moderator


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

PostPosted: Thu Feb 03, 2022 8:03 am
Reply with quote

BPXWDYN is an interface for dynamic allocation, so I do not think that it is appropriate for what you need.

There is an assembler macro called LOCATE that will retrieve catalog. The doc has a section for GDGs, but I am not sufficiently familiar with it to say that it is what you want. Perhaps create an assembler program that can be called from rexx.

More: www.ibm.com/docs/en/zos/2.1.0?topic=rifc-retrieving-information-by-data-set-name-locate-camlst-name
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 734
Location: Denmark

PostPosted: Thu Feb 03, 2022 2:45 pm
Reply with quote

LOCATE can do it, I have used it in a small REXX function RXREALDS which can retrieve the real gds like so: name=RxRealDs('my.gdg(0)').
The program can be found here: harders-jensen.com/
Back to top
View user's profile Send private message
harisukumaran

New User


Joined: 14 Jun 2005
Posts: 75

PostPosted: Thu Feb 03, 2022 7:42 pm
Reply with quote

Fantastic !
Thank you so much you both !
I will take a shot at it. I hardly know any assembler though. This maybe a good opportunity for me to learn just enough to figure out how to do this icon_smile.gif
Back to top
View user's profile Send private message
harisukumaran

New User


Joined: 14 Jun 2005
Posts: 75

PostPosted: Thu Feb 03, 2022 9:32 pm
Reply with quote

I am getting ASMA057E on RxInit
Is this a custom module ?
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 734
Location: Denmark

PostPosted: Thu Feb 03, 2022 9:34 pm
Reply with quote

yes, let me check the package..
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 734
Location: Denmark

PostPosted: Thu Feb 03, 2022 9:43 pm
Reply with quote

works fine for me, do you have the install lib in assembly syslib? RXINIT is in member DVLXMACS which is included by the COPY statement. you are welcome to contact me directly using the email address on the website.
Back to top
View user's profile Send private message
harisukumaran

New User


Joined: 14 Jun 2005
Posts: 75

PostPosted: Thu Feb 03, 2022 9:55 pm
Reply with quote

WJ, thanks for your quick response. I am trying to see how I can assemble both modules using changeman. Unfortunately I have virtually no knowledge of assembly hence it is challenging for me. Let me try a bit longer and see if I can figure this out. thank you again for the great code
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 734
Location: Denmark

PostPosted: Thu Feb 03, 2022 10:02 pm
Reply with quote

ok, I have just uploaded a new package. same program, just slightly different packaging.
Back to top
View user's profile Send private message
daveporcelan

Active Member


Joined: 01 Dec 2006
Posts: 792
Location: Pennsylvania

PostPosted: Thu Feb 03, 2022 10:53 pm
Reply with quote

Could you please describe the steps to get a Rexx program from your site to my Mainframe.

I tried:
Downloaded to my PC.
FTP to Mainframe using Binary mode
TSO Receive - This failed:
Code:
 INMR102I Restore not possible.  Input data is not complete.
 INMR921I Received file appears not to be an Interactive Data Transmission Facility file. The first record is:
INMR922I $:           :  .*
                         .* Gener
INMR901I Dataset X.RECEIVE.INVALID.FILE from WJ on N1
Back to top
View user's profile Send private message
Joerg.Findeisen

Senior Member


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

PostPosted: Thu Feb 03, 2022 11:06 pm
Reply with quote

daveporcelan wrote:
Downloaded to my PC.
FTP to Mainframe using Binary mode
TSO Receive - This failed:

You must send the File as Binary FB 80 to the Host. The msg you are seeing is typical when the format is wrong.
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 734
Location: Denmark

PostPosted: Thu Feb 03, 2022 11:08 pm
Reply with quote

Did you upload to a FB/80 dataset?
Back to top
View user's profile Send private message
daveporcelan

Active Member


Joined: 01 Dec 2006
Posts: 792
Location: Pennsylvania

PostPosted: Thu Feb 03, 2022 11:46 pm
Reply with quote

Thank you both.

Pre-allocating the FTP target dataset as FB/80 did the trick.

I was then able to issue the TSO Receive command.
Back to top
View user's profile Send private message
harisukumaran

New User


Joined: 14 Jun 2005
Posts: 75

PostPosted: Fri Feb 04, 2022 8:09 pm
Reply with quote

Hi Willy
What assembly options should be used for assembling DVLXMACS and for linkediting it?
The changeman linkedit is failing for me
Back to top
View user's profile Send private message
Pedro

Global Moderator


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

PostPosted: Sat Feb 05, 2022 8:43 am
Reply with quote

You asked for assembler options... if the assembly works okay, then probably the assembler options are okay. Are you sure the assembly got RC=0?

You should not be doing the linkedit if the assembly failed.
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 734
Location: Denmark

PostPosted: Sat Feb 05, 2022 3:03 pm
Reply with quote

You do not assemble DVLXMACS, you assemble RXREALDS. DVLXMACS is included via a COPY statement. As you can see in the JCL for RXREALDS, it requires the distributed lib as assembly SYSLIB especially to be able to include external macros and copybooks.
Why don't you just modify and run the install job RXREALDS, and when you have ascertained that it works, then you worry about CHANGEMAN?
Back to top
View user's profile Send private message
Willy Jensen

Active Member


Joined: 01 Sep 2015
Posts: 734
Location: Denmark

PostPosted: Sun Feb 06, 2022 2:30 pm
Reply with quote

Or locate the 'COPY' statements at the top of the assembler input, delete the statement and insert the member by hand.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> CLIST & REXX

 


Search our Forums:

Back to Top