Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

REXX Stream I/O

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CLIST & REXX
View previous topic :: :: View next topic  
Author Message
Ricardo Viegas

New User


Joined: 18 Oct 2012
Posts: 33
Location: Brasil

PostPosted: Tue Aug 05, 2014 7:42 am    Post subject: REXX Stream I/O
Reply with quote

Hi there!

I have just installed the "REXX Stream I/O" function package and I would appreciate if somebody could clarify some points related to it (I went through the REXX/CLIST forum and found some postings from Enrico Sorichetti and others about the subject, but was unable to find answers to the following specific questions)

1) I found 3 sources of documentation:
a) Manual "z/OS Stream I/O for TSO/E REXX - Version 1" (no code), dated February/2002
b) Manual "IBM Compiler and Library for REXX on System z - User's Guide and Reference, code SH19-8160-06, dated August/2013
c) Web site "http://www-01.ibm.com/support/docview.wss?uid=swg1PK02493", with corrections to the SH19-8160-05 manual, but all of them applicable to the new edition.
Are there a more actual/coherent/error_free documentation?

2) The package level installed is "130 FIX0000 20020201". Are there a more recent one? If so, where could I find it in the Web?

3) When the option "QUERY EXISTS" is used in the "Stream" function, with the "stream ddname", as far as I understood, the function should return the fully qualified name of the dataset, but I get a null value (please, see the attached output)

4) As mentioned in the documentation, there should occur a return of "-ERROR" when the dataset defined for the "Stream" function, with the "OPEN" option, does not exist, but it returns "ERROR" (please, see the attached output).

5) Related to the two previous questions, am I missing something?

Thanks in advance!
Regards, Ricardo
-----------------------------------

The test exec:
Code:
/* REXX Stream I/O */                                                 
                                                                       
Say 'Package level:' Stream(,'COMMAND', 'QUERY SERVICELEVEL')         
                                                                       
Say; Say 'SysDSN:' SysDSN('TEST.REXX.STREAMIO(TEST)')                 
Say 'Query DataSet:  >' || ,                                           
           Stream("'TEST.REXX.STREAMIO'", 'C', 'QUERY EXISTS')'<'     
Say 'Query DataSet/Member:  >' || ,                                   
           Stream("'TEST.REXX.STREAMIO(TEST)'", 'C', 'QUERY EXISTS')'<'
strm = Stream("'TEST.REXX.STREAMIO(TEST)'", 'C', 'OPEN')               
Say "Stream's DDName: >"strm'<'                                       
Say 'Query stream:  >'Stream(strm, 'C', 'QUERY EXISTS')'<'             
Do ctr = 1 While Lines(strm)                                           
   line = LineIn(strm, , '1')                                         
   Say 'Line' ctr 'with length' Length(line)': >'Strip(line)'<'       
   End ctr                                                             
                                                                       
Say; Say 'SysDSN:' SysDSN('XPTO')                                     
Say 'Query DataSet = >'Stream("'XPTO'", 'C', 'QUERY EXISTS')'<'       
Say "Stream's DDName: >"Stream("'XPTO'", 'C', 'OPEN')'<'               
                                                                       
Return 00   

And its output:
Code:
Package level: REXXSIO 130 FIX0000 20020201
                                           
SysDSN: OK                                 
Query DataSet:  >TEST.REXX.STREAMIO< 
Query DataSet/Member:  >TEST.REXX.STREAMIO(TEST)<             
Stream's DDName: >&SYS00341<                                 
Query stream:  ><                                             
Line 1 with length 80: >just for testing - line 1<           
Line 2 with length 80: >just for testing - line 2 (last line)<
                                                             
SysDSN: DATASET NOT FOUND                                     
Query DataSet = ><                                           
EAGSIO0033 Cannot allocate data set. Data set name not found.
Stream's DDName: >ERROR<
Back to top
View user's profile Send private message

Ricardo Viegas

New User


Joined: 18 Oct 2012
Posts: 33
Location: Brasil

PostPosted: Thu Aug 07, 2014 10:03 pm    Post subject: Reply to: REXX Stream I/O
Reply with quote

Hello!

I would like to add a few observations related to my previous post. I am doing so because, probably, many of the z/OS-REXX users (as myself, until a few days ago) never heard about the "REXX Stream I/O" function package.

1) This package implements, for the z/OS-REXX, the functions CHARIN, CHAROUT, CHARS, LINEIN, LINEOUT, LINES and STREAM, very similar to the existing ones in the REXX implementations in many other operating systems (for example ooREXX in Windows), that do not use EXECIO.

2) In spite of being described in the REXX Compiler manual, those functions are available, in z/OS, for both compiled AND interpreted REXX execs. So, you do not need to have the Compiler installed in your system to make use of them.

3) If you intend to install it:
a) get the file "rexxsio.zip" at "ftp://service.boulder.ibm.com/ps/products/ad/obj-xx".
b) for the installation instructions, utilize the SH19-8160-06 manual, with the corrections pointed in the Web site "http://www-01.ibm.com/support/docview.wss?uid=swg1PK02493"

Hope this be of some help (and clarification)!.
Rgrds, Ricardo
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CLIST & REXX All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts Passing data from REXX to C programme... chong.zhou CLIST & REXX 2 Wed Jul 26, 2017 9:11 pm
No new posts Passing data from REXX to C programme... chong.zhou All Other Mainframe Topics 0 Wed Jul 26, 2017 4:55 pm
No new posts REXX to get the all datasets name parasmalik20 CLIST & REXX 5 Tue Jul 18, 2017 9:10 pm
No new posts How system know which REXX to excute? jackzhang75 CLIST & REXX 14 Thu Jul 06, 2017 1:09 am
No new posts REXX - Dynamic file Creation d_sarlie CLIST & REXX 7 Tue Jun 27, 2017 7:30 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us