This is getting to be like a discussion that was had on the REXX list recently, 
as in it would be nice if there was an available PIPE type of command 
available, oh wait there is:

The product where IBM has made a PIPE command available:
http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?infotype=dd&subtype=sm&htmlfid=897/ENUS5655-D45

Sorting is very simple there:
        PIPE stem xy. | sort 1 5 | stem yx.
Or      PIPE < indsn | sort 1 5 | > outdsn

These are simple examples and not everything that can be done, but when I was 
using it (my previous job) it was reasonably quick in execution.  Now I have to 
do the allocation of SORTIN, SORTOUT and SYSIN (control cards) then invoke 
SORT, very cumbersome compared to the simple PIPE command version.

Al Nims
UFIT
University of Florida
(352) 273-1298
@Home

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@LISTSERV.UA.EDU] On Behalf 
Of Elardus Engelbrecht
Sent: Wednesday, June 07, 2017 1:14 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: AW: Rexx SORT (was: ... Job Scheduler ... )

Paul Gilmartin wrote:

>Bernd.Oppolzer wrote:
>>http://bernd-oppolzer.de/blog_20150115_151000.htm
>>this Contains a REXX Procedure to sort a stem variable. See 
>>quicksort_nonrec
>o Of course.  But why should it be necessary to reinvent the wheel when DFSORT 
>has vast capabilities not practical to duplicate in Rexx?

Could you please be kind to tell us what function(s) you have in mind?

On one side, REXX has this nice PARSE function. hard to duplicate that in 
DFSORT, but do-able.
On other side, DFSORT handles SMF records and their weird timestamps better. 
(Yes, I know REXX can handle VBS records these days.)


>>>I could envision adapting [the ANSI Rexx form] in TSO Rexx something like:
>>>    address LINKMVS 'ICEMAN' with ,
>>>        DD:SORTIN stem F1. ,
>>>        DD:SORTOUT stem F2.

You can do the same with REXX statements like this:

"ALLOC F(SORTIN).... blah .... "
"EXECIO * DISKR SORTIN (STEM F1. FINIS"
"FREE F(SORTIN)"     
... and then call DFSORT and sort out your magic

In fact, I have some RYO REXX progs which call DFSORT to sort something out...


>o And while I chose SORT as an example, I intended to consider a more general 
>solution.  Imagine a facility that could invoke not only SORT, but:
>  - IEBUPDTE witn SYSIN, SYSUT1, and SYSUT2 assigned to stems.
>  - ISRSUPC with OLD, NEW, and DELTA assigned to stems.
>  - Etc.  Much like ANSI Rexx.

You can invoke anything with REXX including SDSF, IEBGENER, IEBCOPY, etc. as 
long you pass/receive parameters and DD correctly.

In fact, zSecure ISPF panels are mostly driven by REXX.

But, I agree with you, something standardised so you can do what you desire 
would really be useful.

Something like "ALLOC F(SYSIN) <Stemvariable name> ..."

Also FREE(FSYSIN) which -optionally- drops those Stems. (I said optionally, 
because, you may need to free up SYSIN immediately, but continue to handle 
those stems.)

Just some little idle ideas, yaaaaa.... ;-)

Groete / Greetings
Elardus Engelbrecht

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions, send email to 
lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to