EXECIO

2009-02-18 Thread Maria Brown
I am writing to a partitioned dataset via the EXECIO command.
The dataset is also currently in use by an active application, which causes
my EXECIO command to fail with "DATA SET IS ALLOCATED TO ANOTHER JOB 
OR USER".  Is there anway to get around this with execio?

I can manually edit and save the file without any problems while the dataset is 
in use by the app.

"ALLOC F(INDD) da("dsnname")"  
"execio * DISKW indd (STEM LINES. FINIS"   
"Free File(indd)"  

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


execio

2009-02-18 Thread Lucy Arnold
You can try:

"ALLOC F(INDD) da("dsnname") shr reuse"

But if the other application has exclusive, there could still be a
problem





Lucy Arnold
Storage Manager
U.C. Davis Medical Center
916-734-5498

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Barkow, Eileen
try allocating with disp shr  - default is old
"ALLOC F(INDD) da("dsnname")  SHR"  


-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
Behalf Of Maria Brown
Sent: Wednesday, February 18, 2009 1:13 PM
To: IBM-MAIN@bama.ua.edu
Subject: EXECIO

I am writing to a partitioned dataset via the EXECIO command.
The dataset is also currently in use by an active application, which
causes
my EXECIO command to fail with "DATA SET IS ALLOCATED TO ANOTHER JOB 
OR USER".  Is there anway to get around this with execio?

I can manually edit and save the file without any problems while the
dataset is 
in use by the app.

"ALLOC F(INDD) da("dsnname")"  
"execio * DISKW indd (STEM LINES. FINIS"   
"Free File(indd)"  

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Ted MacNEIL
>I am writing to a partitioned dataset via the EXECIO command.
>The dataset is also currently in use by an active application, which causes my 
>EXECIO command to fail with "DATA SET IS ALLOCATED TO ANOTHER JOB OR USER".
>Is there anway to get around this with execio?

There is a reason to do this.
It's called data integrity.
You have been lucky with ISPF EDIT.
With a PDS, you can destroy a member if two users are updating the same library 
and different members.

Why do you need to do this?
You're walking a tight-rope without a net.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Fletcher, Kevin
Maria,

You may need to add a DISP(SHR) to your ALLOC. I also do not see where
you are updating a particular member, that could also be a problem. I do
not know the exact syntax for updating a member, but would be worth you
while to investigate it.

Just my 2 cents worth.

HTH

Fletch


I am writing to a partitioned dataset via the EXECIO command.
The dataset is also currently in use by an active application, which
causes my EXECIO command to fail with "DATA SET IS ALLOCATED TO ANOTHER
JOB OR USER".  Is there anway to get around this with execio?

I can manually edit and save the file without any problems while the
dataset is in use by the app.

"ALLOC F(INDD) da("dsnname")"  
"execio * DISKW indd (STEM LINES. FINIS"   
"Free File(indd)"  



--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Fletcher, Kevin
Based on other posts and my RTFM, the DISP(SHR) is incorrect, you just
need to add SHR to you ALLOC. I apologize for the faux paus in the
syntax. 

Maria,

You may need to add a DISP(SHR) to your ALLOC. I also do not see where
you are updating a particular member, that could also be a problem. I do
not know the exact syntax for updating a member, but would be worth you
while to investigate it.

Just my 2 cents worth.

HTH

Fletch


I am writing to a partitioned dataset via the EXECIO command.
The dataset is also currently in use by an active application, which
causes my EXECIO command to fail with "DATA SET IS ALLOCATED TO ANOTHER
JOB OR USER".  Is there anway to get around this with execio?

I can manually edit and save the file without any problems while the
dataset is in use by the app.

"ALLOC F(INDD) da("dsnname")"  
"execio * DISKW indd (STEM LINES. FINIS"   
"Free File(indd)"  



--
For IBM-MAIN subscribe / signoff / archive access instructions, send
email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO Search
the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Mark Zelden
On Wed, 18 Feb 2009 18:34:23 +, Ted MacNEIL  wrote:

>>I am writing to a partitioned dataset via the EXECIO command.
>>The dataset is also currently in use by an active application, which
causes my EXECIO command to fail with "DATA SET IS ALLOCATED TO ANOTHER JOB
OR USER".
>>Is there anway to get around this with execio?
>
>There is a reason to do this.
>It's called data integrity.
>You have been lucky with ISPF EDIT.
>With a PDS, you can destroy a member if two users are updating the same
library and different members.
>

I disagree with Ted that you've been "lucky" with ISPF edit since it
does use an ENQ to protect on a member level basis.  But that only works
if everyone plays by those rules.   Also there has been some extra 
protection for a *long* time that keeps two tasks from opening a PDS
for output (IEC143I 213-30 abend).   I'm sure the archives are filled
with information about this sort of thing.

Besides the "SHR" recommendation, the OP may want to consider using
ISPF services to write to the PDS.  Then they will be playing by the same
rules as everyone else.

Mark
--
Mark Zelden
Sr. Software and Systems Architect - z/OS Team Lead
Zurich North America / Farmers Insurance Group - ZFUS G-ITO
mailto:mark.zel...@zurichna.com
z/OS Systems Programming expert at http://expertanswercenter.techtarget.com/
Mark's MVS Utilities: http://home.flash.net/~mzelden/mvsutil.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Itschak Mugzach
You didn't specify disposition. it defaulted to OLD. Try 'SHR' at the end of
the alloc statement.

ITschak

On Wed, Feb 18, 2009 at 8:13 PM, Maria Brown  wrote:

> I am writing to a partitioned dataset via the EXECIO command.
> The dataset is also currently in use by an active application, which causes
> my EXECIO command to fail with "DATA SET IS ALLOCATED TO ANOTHER JOB
> OR USER".  Is there anway to get around this with execio?
>
> I can manually edit and save the file without any problems while the
> dataset is
> in use by the app.
>
> "ALLOC F(INDD) da("dsnname")"
> "execio * DISKW indd (STEM LINES. FINIS"
> "Free File(indd)"
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
> Search the archives at http://bama.ua.edu/archives/ibm-main.html
>

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Ted MacNEIL
> disagree with Ted that you've been "lucky" with ISPF edit since it does use 
> an ENQ to protect on a member level basis.  But that only works if everyone 
> plays by those rules.

As recently as z/OS 1.4, I have seen two people corrupt members using ISPF with 
different member names.

>Also there has been some extra protection for a *long* time that keeps two 
>tasks from opening a PDS for output (IEC143I 213-30 abend).


When you edit a PDS member, the file is not open for output. The member is just 
a memory copy.
It's opened for output, when you save it.
ISPF keeps information in memory, but does not re-read the directory. 
So, if two people (or more) are editing members,  directory already read, the 
last saver 'wins'.

Try it! You won't like it.
 
I did a test with some of our developers, just about two years ago.

The data was corrupted.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Hal Merritt
I suppose so, but you really don't want to do that. You are being stopped from 
a very good likelihood of corrupting the file. 

DISP OLD is appropriate unless you have some other exclusivity mechanism to 
serialize updates. 

I'm not sure, but I think your REXX would completely destroy the target PDS by 
converting it to sequential unless 'dsanme' included a member name. 

As others note, ISPF edit is a very sophisticated file manager that protects 
down to the member level. I'd second the suggestions to use ISPF EDIT services 
to accomplish the mission.  

-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of 
Maria Brown
Sent: Wednesday, February 18, 2009 12:13 PM
To: IBM-MAIN@bama.ua.edu
Subject: EXECIO

I am writing to a partitioned dataset via the EXECIO command.
The dataset is also currently in use by an active application, which causes
my EXECIO command to fail with "DATA SET IS ALLOCATED TO ANOTHER JOB 
OR USER".  Is there anway to get around this with execio?

I can manually edit and save the file without any problems while the dataset is 
in use by the app.

"ALLOC F(INDD) da("dsnname")"  
"execio * DISKW indd (STEM LINES. FINIS"   
"Free File(indd)"  

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html
NOTICE: This electronic mail message and any files transmitted with it are 
intended
exclusively for the individual or entity to which it is addressed. The message, 
together with any attachment, may contain confidential and/or privileged 
information.
Any unauthorized review, use, printing, saving, copying, disclosure or 
distribution 
is strictly prohibited. If you have received this message in error, please 
immediately advise the sender by reply email and delete all copies.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Hal Merritt
Interesting! Haven't seen or heard of this in years and years. I see a 'member 
in use' message just trying to open the member in a second instance of ISPF 
edit in the same session or different user.  

AFAIK, when you open a member in ISPF, it is with update intent and a sysplex 
wide exclusive enqueue goes up.  

I wonder if there is some issue with your GRS configuration? 



-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of 
Ted MacNEIL
Sent: Wednesday, February 18, 2009 2:12 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: EXECIO

> disagree with Ted that you've been "lucky" with ISPF edit since it does use 
> an ENQ to protect on a member level basis.  But that only works if everyone 
> plays by those rules.

As recently as z/OS 1.4, I have seen two people corrupt members using ISPF with 
different member names.

>Also there has been some extra protection for a *long* time that keeps two 
>tasks from opening a PDS for output (IEC143I 213-30 abend).


When you edit a PDS member, the file is not open for output. The member is just 
a memory copy.
It's opened for output, when you save it.
ISPF keeps information in memory, but does not re-read the directory. 
So, if two people (or more) are editing members,  directory already read, the 
last saver 'wins'.

Try it! You won't like it.
 
I did a test with some of our developers, just about two years ago.

The data was corrupted.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html
NOTICE: This electronic mail message and any files transmitted with it are 
intended
exclusively for the individual or entity to which it is addressed. The message, 
together with any attachment, may contain confidential and/or privileged 
information.
Any unauthorized review, use, printing, saving, copying, disclosure or 
distribution 
is strictly prohibited. If you have received this message in error, please 
immediately advise the sender by reply email and delete all copies.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Ted MacNEIL
>Interesting! Haven't seen or heard of this in years and years. I see a 'member 
>in use' message just trying to open the member in a second instance of ISPF 
>edit in the same session or different user.  

The issue is if the member name is different.

>AFAIK, when you open a member in ISPF, it is with update intent and a sysplex 
>wide exclusive enqueue goes up.  

Not until save/end.

While you're editing, there is no update intent.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Scott Rowe
Sorry Ted, but I believe you are wrong again.  I just did a test based on the 
exact situation you outlined, and had no problem whatsoever (as I expected).

>>> Ted MacNEIL  2/18/2009 3:11 PM >>>
> disagree with Ted that you've been "lucky" with ISPF edit since it does use 
> an ENQ to protect on a member level basis.  But that only works if everyone 
> plays by those rules.

As recently as z/OS 1.4, I have seen two people corrupt members using ISPF with 
different member names.

>Also there has been some extra protection for a *long* time that keeps two 
>tasks from opening a PDS for output (IEC143I 213-30 abend).


When you edit a PDS member, the file is not open for output. The member is just 
a memory copy.
It's opened for output, when you save it.
ISPF keeps information in memory, but does not re-read the directory. 
So, if two people (or more) are editing members,  directory already read, the 
last saver 'wins'.

Try it! You won't like it.

I did a test with some of our developers, just about two years ago.

The data was corrupted.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


CONFIDENTIALITY/EMAIL NOTICE: The material in this transmission contains 
confidential and privileged information intended only for the addressee.  If 
you are not the intended recipient, please be advised that you have received 
this material in error and that any forwarding, copying, printing, 
distribution, use or disclosure of the material is strictly prohibited.  If you 
have received this material in error, please (i) do not read it, (ii) reply to 
the sender that you received the message in error, and (iii) erase or destroy 
the material. Emails are not secure and can be intercepted, amended, lost or 
destroyed, or contain viruses. You are deemed to have accepted these risks if 
you communicate with us by email. Thank you.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Mark Zelden
On Wed, 18 Feb 2009 20:11:53 +, Ted MacNEIL  wrote:

>> disagree with Ted that you've been "lucky" with ISPF edit since it does
use an ENQ to protect on a member level basis.  But that only works if
everyone plays by those rules.
>
>As recently as z/OS 1.4, I have seen two people corrupt members using ISPF
with different member names.
>
>>Also there has been some extra protection for a *long* time that keeps two
tasks from opening a PDS for output (IEC143I 213-30 abend).
>
>
>When you edit a PDS member, the file is not open for output. The member is
just a memory copy.
>It's opened for output, when you save it.
>ISPF keeps information in memory, but does not re-read the directory.
>So, if two people (or more) are editing members,  directory already read,
the last saver 'wins'.
>
>Try it! You won't like it.
>
>I did a test with some of our developers, just about two years ago.
>
>The data was corrupted.
>


Ted, you are completely wrong on this issue.   Was your test done
in a sysplex or MIMplex with the correct ENQ propagation?  Or did you
do it from two different environments that shouldn't have been sharing
at the PDS level to begin with (it's okay to share if data sets are protected
by RESERVE).

I wish I had time to debate... but I'm off to a DR drill.  I'm sure others
who understand and live in environments with hundreds of ISPF users
editing the same PDSes across systems in a sysplex and don't run into
the problem you've described will chime in.  

Perhaps you should read the ISPF manuals also.  

Mark
--
Mark Zelden
Sr. Software and Systems Architect - z/OS Team Lead
Zurich North America / Farmers Insurance Group - ZFUS G-ITO
mailto:mark.zel...@zurichna.com
z/OS Systems Programming expert at http://expertanswercenter.techtarget.com/
Mark's MVS Utilities: http://home.flash.net/~mzelden/mvsutil.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Ted MacNEIL
>Sorry Ted, but I believe you are wrong again.  I just did a test based on the 
>exact situation you outlined, and had no problem whatsoever (as I expected).

Fine.
I did it with ISPF EDIT (1.4, two systems, two members, a single PDS) two 
users, one saved then the other did.

This is not a memory thing.

It failed, two years ago.

If something has changed, I'd like to know what it was.
I even remember the comment: "Doug's member was corrupted!".
We got a big laugh over that.

I did say PDS, not PDSE.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Hal Merritt
To be fair, I don't think Ted is 'wrong'. He is simply reporting observed 
behaviors of his system. Many of us seem to be of the opinion that Ted's system 
is malfunctioning or misconfigured. 

I believe Ted to be describing an environment where GRS (or equivalent) needs 
some attention. I suppose there might be some exits that could muddy the water. 

-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of 
Scott Rowe
Sent: Wednesday, February 18, 2009 2:36 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: EXECIO

Sorry Ted, but I believe you are wrong again.  I just did a test based on the 
exact situation you outlined, and had no problem whatsoever (as I expected).

>>> Ted MacNEIL  2/18/2009 3:11 PM >>>
> disagree with Ted that you've been "lucky" with ISPF edit since it does use 
> an ENQ to protect on a member level basis.  But that only works if everyone 
> plays by those rules.

As recently as z/OS 1.4, I have seen two people corrupt members using ISPF with 
different member names.

>Also there has been some extra protection for a *long* time that keeps two 
>tasks from opening a PDS for output (IEC143I 213-30 abend).


When you edit a PDS member, the file is not open for output. The member is just 
a memory copy.
It's opened for output, when you save it.
ISPF keeps information in memory, but does not re-read the directory. 
So, if two people (or more) are editing members,  directory already read, the 
last saver 'wins'.

Try it! You won't like it.

I did a test with some of our developers, just about two years ago.

The data was corrupted.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


CONFIDENTIALITY/EMAIL NOTICE: The material in this transmission contains 
confidential and privileged information intended only for the addressee.  If 
you are not the intended recipient, please be advised that you have received 
this material in error and that any forwarding, copying, printing, 
distribution, use or disclosure of the material is strictly prohibited.  If you 
have received this material in error, please (i) do not read it, (ii) reply to 
the sender that you received the message in error, and (iii) erase or destroy 
the material. Emails are not secure and can be intercepted, amended, lost or 
destroyed, or contain viruses. You are deemed to have accepted these risks if 
you communicate with us by email. Thank you.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html
NOTICE: This electronic mail message and any files transmitted with it are 
intended
exclusively for the individual or entity to which it is addressed. The message, 
together with any attachment, may contain confidential and/or privileged 
information.
Any unauthorized review, use, printing, saving, copying, disclosure or 
distribution 
is strictly prohibited. If you have received this message in error, please 
immediately advise the sender by reply email and delete all copies.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Ted MacNEIL
Thank you for that.
What is missing?
It was a 4000 MIPS 5-image SYSPLEX with two members running TSO.
We had many PDS member issues.
Plus, many SMSPDSE 'corrupt' messages issued.

I'm more of a performance/capacity type, and haven't used SMP, since SMP4.

I am not trying to mislead, but I've been able to re-create the (different) 
members update problem without even trying.
-
Too busy driving to stop for gas!

-Original Message-
From: Hal Merritt 

Date: Wed, 18 Feb 2009 15:02:34 
To: 
Subject: Re: EXECIO


To be fair, I don't think Ted is 'wrong'. He is simply reporting observed 
behaviors of his system. Many of us seem to be of the opinion that Ted's system 
is malfunctioning or misconfigured. 

I believe Ted to be describing an environment where GRS (or equivalent) needs 
some attention. I suppose there might be some exits that could muddy the water. 

-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of 
Scott Rowe
Sent: Wednesday, February 18, 2009 2:36 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: EXECIO

Sorry Ted, but I believe you are wrong again.  I just did a test based on the 
exact situation you outlined, and had no problem whatsoever (as I expected).

>>> Ted MacNEIL  2/18/2009 3:11 PM >>>
> disagree with Ted that you've been "lucky" with ISPF edit since it does use 
> an ENQ to protect on a member level basis.  But that only works if everyone 
> plays by those rules.

As recently as z/OS 1.4, I have seen two people corrupt members using ISPF with 
different member names.

>Also there has been some extra protection for a *long* time that keeps two 
>tasks from opening a PDS for output (IEC143I 213-30 abend).


When you edit a PDS member, the file is not open for output. The member is just 
a memory copy.
It's opened for output, when you save it.
ISPF keeps information in memory, but does not re-read the directory. 
So, if two people (or more) are editing members,  directory already read, the 
last saver 'wins'.

Try it! You won't like it.

I did a test with some of our developers, just about two years ago.

The data was corrupted.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


CONFIDENTIALITY/EMAIL NOTICE: The material in this transmission contains 
confidential and privileged information intended only for the addressee.  If 
you are not the intended recipient, please be advised that you have received 
this material in error and that any forwarding, copying, printing, 
distribution, use or disclosure of the material is strictly prohibited.  If you 
have received this material in error, please (i) do not read it, (ii) reply to 
the sender that you received the message in error, and (iii) erase or destroy 
the material. Emails are not secure and can be intercepted, amended, lost or 
destroyed, or contain viruses. You are deemed to have accepted these risks if 
you communicate with us by email. Thank you.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html
NOTICE: This electronic mail message and any files transmitted with it are 
intended
exclusively for the individual or entity to which it is addressed. The message, 
together with any attachment, may contain confidential and/or privileged 
information.
Any unauthorized review, use, printing, saving, copying, disclosure or 
distribution 
is strictly prohibited. If you have received this message in error, please 
immediately advise the sender by reply email and delete all copies.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Hal Merritt
PDSE corruption is a different issue. Plenty on that in the archives. SMP/E is 
not relevant to this context AFAICT.   

To diagnose the PDS corruption issue, I'd start in my GRS parms.  



-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of 
Ted MacNEIL
Sent: Wednesday, February 18, 2009 3:18 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: EXECIO

Thank you for that.
What is missing?
It was a 4000 MIPS 5-image SYSPLEX with two members running TSO.
We had many PDS member issues.
Plus, many SMSPDSE 'corrupt' messages issued.

I'm more of a performance/capacity type, and haven't used SMP, since SMP4.

I am not trying to mislead, but I've been able to re-create the (different) 
members update problem without even trying.
-
Too busy driving to stop for gas!

-Original Message-
From: Hal Merritt 

Date: Wed, 18 Feb 2009 15:02:34 
To: 
Subject: Re: EXECIO


To be fair, I don't think Ted is 'wrong'. He is simply reporting observed 
behaviors of his system. Many of us seem to be of the opinion that Ted's system 
is malfunctioning or misconfigured. 

I believe Ted to be describing an environment where GRS (or equivalent) needs 
some attention. I suppose there might be some exits that could muddy the water. 

-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of 
Scott Rowe
Sent: Wednesday, February 18, 2009 2:36 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: EXECIO

Sorry Ted, but I believe you are wrong again.  I just did a test based on the 
exact situation you outlined, and had no problem whatsoever (as I expected).

>>> Ted MacNEIL  2/18/2009 3:11 PM >>>
> disagree with Ted that you've been "lucky" with ISPF edit since it does use 
> an ENQ to protect on a member level basis.  But that only works if everyone 
> plays by those rules.

As recently as z/OS 1.4, I have seen two people corrupt members using ISPF with 
different member names.

>Also there has been some extra protection for a *long* time that keeps two 
>tasks from opening a PDS for output (IEC143I 213-30 abend).


When you edit a PDS member, the file is not open for output. The member is just 
a memory copy.
It's opened for output, when you save it.
ISPF keeps information in memory, but does not re-read the directory. 
So, if two people (or more) are editing members,  directory already read, the 
last saver 'wins'.

Try it! You won't like it.

I did a test with some of our developers, just about two years ago.

The data was corrupted.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


CONFIDENTIALITY/EMAIL NOTICE: The material in this transmission contains 
confidential and privileged information intended only for the addressee.  If 
you are not the intended recipient, please be advised that you have received 
this material in error and that any forwarding, copying, printing, 
distribution, use or disclosure of the material is strictly prohibited.  If you 
have received this material in error, please (i) do not read it, (ii) reply to 
the sender that you received the message in error, and (iii) erase or destroy 
the material. Emails are not secure and can be intercepted, amended, lost or 
destroyed, or contain viruses. You are deemed to have accepted these risks if 
you communicate with us by email. Thank you.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html
NOTICE: This electronic mail message and any files transmitted with it are 
intended
exclusively for the individual or entity to which it is addressed. The message, 
together with any attachment, may contain confidential and/or privileged 
information.
Any unauthorized review, use, printing, saving, copying, disclosure or 
distribution 
is strictly prohibited. If you have received this message in error, please 
immediately advise the sender by reply email and delete all copies.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/

Re: EXECIO

2009-02-18 Thread Scott Rowe
Agreed, if the proper QNAMES were not being propagated then this type of thing 
could occur, but that is a configuration problem, not a code problem.

>>> Hal Merritt  2/18/2009 5:17 PM >>>
PDSE corruption is a different issue. Plenty on that in the archives. SMP/E is 
not relevant to this context AFAICT.   

To diagnose the PDS corruption issue, I'd start in my GRS parms.  


CONFIDENTIALITY/EMAIL NOTICE: The material in this transmission contains 
confidential and privileged information intended only for the addressee.  If 
you are not the intended recipient, please be advised that you have received 
this material in error and that any forwarding, copying, printing, 
distribution, use or disclosure of the material is strictly prohibited.  If you 
have received this material in error, please (i) do not read it, (ii) reply to 
the sender that you received the message in error, and (iii) erase or destroy 
the material. Emails are not secure and can be intercepted, amended, lost or 
destroyed, or contain viruses. You are deemed to have accepted these risks if 
you communicate with us by email. Thank you.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Paul Gilmartin
On Wed, 18 Feb 2009 20:11:53 +, Ted MacNEIL wrote:
>
>>Also there has been some extra protection for a *long* time that keeps two 
>>tasks from opening a PDS for output (IEC143I 213-30 abend).
>
>When you edit a PDS member, the file is not open for output. The member is 
>just a memory copy.
>It's opened for output, when you save it.
>ISPF keeps information in memory, but does not re-read the directory.
>So, if two people (or more) are editing members,  directory already read, the 
>last saver 'wins'.
>
Ummm.  If two users edit the same member of a Classic PDS (not
PDSE), not concurrently but consecutively, with no overlap,
it's got to re-read the directory (or at least do a BLDL) because
the STOW associated with the SAVE changes the TTR.  Otherwise
the design is very wrong.  With a PDSE, if the second user
has done a BLDL, the directory change will not appear until
he does a CLOSE.  Then the BLDL result becomes invalid and
another BLDL is needed.

>Try it! You won't like it.
>
>I did a test with some of our developers, just about two years ago.
>
>The data was corrupted.
>
If by corrupted, you mean "last person wins", that's WAD.

When I update a shared PDS, even in batch, I use ISPF LM services.
I've experienced one instance of corruption, when MIM had crashed
on the system the other lady was using (ISPF EDIT of a different
member; I found her member with my member name; identified her
from the member content and asked our sysprog what might have failed.)

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Paul Gilmartin
On Wed, 18 Feb 2009 13:33:07 -0600, Mark Zelden wrote:

>On Wed, 18 Feb 2009 18:34:23 +, Ted MacNEIL  wrote:
>
>I disagree with Ted that you've been "lucky" with ISPF edit since it
>does use an ENQ to protect on a member level basis.  But that only works
>if everyone plays by those rules.   Also there has been some extra
>protection for a *long* time that keeps two tasks from opening a PDS
>for output (IEC143I 213-30 abend).   I'm sure the archives are filled
>with information about this sort of thing.
>
(Sorry I neglected to include this in my previous post).  See:

Link that you currently have selected

   Linkname: Appendix A. ISPF enqueue processing for data integrity
URL: 
http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/ISPZPC70/A.0

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Ted MacNEIL
My test was:

1. Two users open the same PDS (note: no E).
2. Select X; Select Y (one for each user)
3. Type something.
4. One save; two save.
Whomever saved second 'WON'.

I have not tried since z/OS 1.4, two years ago.
So, what ENQ's do I need?
We tried on the same system, and on separate systems.

This PDS 'corruption' has been around longer than I have.

And, it's not the same member name.

-
Too busy driving to stop for gas!

-Original Message-
From: Scott Rowe 

Date: Wed, 18 Feb 2009 18:05:22 
To: 
Subject: Re: EXECIO


Agreed, if the proper QNAMES were not being propagated then this type of thing 
could occur, but that is a configuration problem, not a code problem.

>>> Hal Merritt  2/18/2009 5:17 PM >>>
PDSE corruption is a different issue. Plenty on that in the archives. SMP/E is 
not relevant to this context AFAICT.   

To diagnose the PDS corruption issue, I'd start in my GRS parms.  


CONFIDENTIALITY/EMAIL NOTICE: The material in this transmission contains 
confidential and privileged information intended only for the addressee.  If 
you are not the intended recipient, please be advised that you have received 
this material in error and that any forwarding, copying, printing, 
distribution, use or disclosure of the material is strictly prohibited.  If you 
have received this material in error, please (i) do not read it, (ii) reply to 
the sender that you received the message in error, and (iii) erase or destroy 
the material. Emails are not secure and can be intercepted, amended, lost or 
destroyed, or contain viruses. You are deemed to have accepted these risks if 
you communicate with us by email. Thank you.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Thompson, Steve
-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
Behalf Of Ted MacNEIL
Sent: Wednesday, February 18, 2009 5:29 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: EXECIO

My test was:

1. Two users open the same PDS (note: no E).
2. Select X; Select Y (one for each user)
3. Type something.
4. One save; two save.
Whomever saved second 'WON'.

I have not tried since z/OS 1.4, two years ago.
So, what ENQ's do I need?
We tried on the same system, and on separate systems.

This PDS 'corruption' has been around longer than I have.



Ok, being a pilot and all, I've made a landing for fuel, so I've topped
off my tanks (to comply with FAA regs concerning reserves and all that).


Let's back up to the mid-'90s. I have run the test Ted describes across
systems and in the same DOMAIN (hey it was an Amdahl shop). The test
called for ACS/WYLBUR and TSO/ISPF using the documented ISPF ENQUEUES.
 
This was a STANDARD TEST when I was an ACS/WYLBUR developer (MVS/SP4
through OS/390 V1R1) in the mid-'90s. 

TODAY, we run the same situation where I work, only we are all TSO/ISPF
users. We have been running this way with z/OS 1.7 through and including
z/OS 1.10. 

Prior to working here, I have been at customer sites running OS/390 V2R9
through z/OS 1.4. One customer site was running z/OS 1.1 with three
LPARs all sharing DASD. We did not have MIM. We did not get crushed PDS
members EXECPT for when I made the mistake of running multiple
assemblies with LNKEDTs to the same load library. There we wound up with
a screwed up directory and bad members. MY OWN FAULT for NOT using
DISP=OLD.

Today (actually, it was during summer 2008) I ran tests with some code
that I wrote using the ISPF ENQUEUES. The only time we have had a
problem is when simultaneous update of the DIRECTORY is attempted (and I
did my best to make sure that two STOWs happening together was part of
the testing). As someone else pointed out, you will get an ABEND for
that one -- system protecting you from yourself. In fact, my attempting
the same old thing of multiple assemblies/link jobs now will ABEND when
one BINDER is attempting to write to the same load library as another
BINDER at the same time (I knew about that protection and attempted to
make use of it). 

Also, I can, between three TSO/ISPF sessions, edit a PDS, and get the
LATEST copy of a member, even though the DIRECTORY hasn't been refreshed
(from my perspective). By that I mean, I can list a PDS with one account
(A) and edit the same PDS from (B) and once (B) saves and ends with the
xyz member, (A) can now edit xyz w/o a manual refresh. I know that this
works with 1.8 and up (because those are the levels I'm logged on to).

Now, there may be something happening under the covers here, because we
do have TRX (only for TSO sessions). But I thought that it only cached
the BLDL info for load, CLIST/REXX and panel libraries.

So, Ted, as a few others have pointed out, you must have something wrong
with the configuration where you are.

Regards,
Steve Thompson

-- Opinions expressed by poster may not be those of poster's employer.
--

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Ted MacNEIL
>mmm.  If two users edit the same member of a Classic PDS (not PDSE)

Please NOTE!
I NEVER said the same member!
I went out of my way to say DIFFERENT members.

My comments & example were all about DIFFERENT!!
-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Gibney, Dave
I tried with two ids, same pds, different members, same monoplex with no
surprising results. Both members were updated as expected.
I tried with same id value, same pds on shared dasd, different members,
different monplexes with no surprising results. Both members were
updated as expected.

z/OS 1.9

Dave Gibney
Information Technology Services
Washington State University

> -Original Message-
> From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
> Behalf Of Ted MacNEIL
> Sent: Wednesday, February 18, 2009 3:29 PM
> To: IBM-MAIN@bama.ua.edu
> Subject: Re: EXECIO
> 
> My test was:
> 
> 1. Two users open the same PDS (note: no E).
> 2. Select X; Select Y (one for each user)
> 3. Type something.
> 4. One save; two save.
> Whomever saved second 'WON'.
> 
> I have not tried since z/OS 1.4, two years ago.
> So, what ENQ's do I need?
> We tried on the same system, and on separate systems.
> 
> This PDS 'corruption' has been around longer than I have.
> 
> And, it's not the same member name.
> 
> -
> Too busy driving to stop for gas!
> 
> -----Original Message-
> From: Scott Rowe 
> 
> Date: Wed, 18 Feb 2009 18:05:22
> To: 
> Subject: Re: EXECIO
> 
> 
> Agreed, if the proper QNAMES were not being propagated then this type
> of thing could occur, but that is a configuration problem, not a code
> problem.
> 
> >>> Hal Merritt  2/18/2009 5:17 PM >>>
> PDSE corruption is a different issue. Plenty on that in the archives.
> SMP/E is not relevant to this context AFAICT.
> 
> To diagnose the PDS corruption issue, I'd start in my GRS parms.
> 
> 
> CONFIDENTIALITY/EMAIL NOTICE: The material in this transmission
> contains confidential and privileged information intended only for the
> addressee.  If you are not the intended recipient, please be advised
> that you have received this material in error and that any forwarding,
> copying, printing, distribution, use or disclosure of the material is
> strictly prohibited.  If you have received this material in error,
> please (i) do not read it, (ii) reply to the sender that you received
> the message in error, and (iii) erase or destroy the material. Emails
> are not secure and can be intercepted, amended, lost or destroyed, or
> contain viruses. You are deemed to have accepted these risks if you
> communicate with us by email. Thank you.
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
> Search the archives at http://bama.ua.edu/archives/ibm-main.html
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
> Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Ted MacNEIL
>I tried with two ids, same pds, different members, same monoplex with no
surprising results.

Please tell me what's changed!

I did this, and got bad results.
I'm surprised, since on 1.4, I got what I said.
What did I do wrong?
-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-18 Thread Mark Zelden
On Thu, 19 Feb 2009 01:34:56 +, Ted MacNEIL  wrote:

>>I tried with two ids, same pds, different members, same monoplex with no
>surprising results.
>
>Please tell me what's changed!

OPEN.

>
>I did this, and got bad results.
>I'm surprised, since on 1.4, I got what I said.
>What did I do wrong?
>-


The change to add the SYSZDSCB ENQ was around the early to mid 90s IIRC.  
Long before anyone heard of OS/390 - let alone z/OS.

Okay... it took me a while, but I found the apar that added the support.
It was even earlier than I thought.  DFP/XA 2.3 (HDP2230).  APAR OY07766
and the PTF was available 12/14/1987  - UY15908.

 
  APAR Identifier .. OY07766  Last Changed  99/04/20
  DSCB INTEGRITY SUBJECT TO EXPOSURE
 
 
  Symptom .. IN INCORROUT Status ... CLOSED  PER
  Severity ... 3  Date Closed . 87/11/20
  Component .. 566528413  Duplicate of 
  Reported Release . 230  Fixed Release  999
  Component Name DFP/XA O/C/EOV   Special Notice
  Current Target Date ..  Flags
  SCP ...
  Platform 
 
  Status Detail: ASSIGNMENT - APAR has been assigned to a
  programmer.
 
  PE PTF List:
 
  PTF List:
  Release 230   : UY15908 available 87/12/14 (F802 )
 
 
  Parent APAR:
  Child APAR list:
 
 
  ERROR DESCRIPTION:
  IN ORDER TO PROTECT THE INTEGRITY OF THE DSCB OF PDS'S FROM:
  1. TWO OR MORE USERS OPEN TO DIFFERENT MEMBERS OF A PDS
 DATASET FOR OUTPUT WITH DISP=SHR
 *** DOES NOT APPLY TO OPEN FOR UPDAT ( UPDATE )
  2. UPDATING THE DATE LAST REFERENCED FIELD IN THE DSCB FOR THE
 FIRST ACCESS OF THE DAY WHEN THE FIRST ACCESS OF THE DAY IS
 FOR READ (DISP=SHR), ALSO KNOWN AS THE MIDNIGHT PROBLEM.
  NOTE:  THIS APAR ADDS A RETURN CODE (RC30) TO THE ABEND213
 MSGIEC143I ABEND213-30
  ADDITIONAL SYMPTOMS: MSGIEB189I
 
 
  LOCAL FIX:
 
 
  PROBLEM SUMMARY:
  
  * USERS AFFECTED: ALL USERS USING PDS DATASETS *
  
  * PROBLEM DESCRIPTION: CORRUPTION OF A PARTIONED DATASET'S*
  *  DIRECTORY WHICH THEN GIVES SYMPTOMS *
  *  OF LOST MEMBERS, DUPLICATE TTRS, OR *
  *  CORRUPTED MEMBERS OF THE PDS.   *
  
  * RECOMMENDATION: INSTALL THE PTF  *
  
  THIS APAR ADDRESSES TWO PROBLEMS. THE FIRST PROBLEM OCCURS WHEN
  A USER ALLOCATES A PDS WITH DISP = SHR AND THEN OPENS A MEMBER
  FOR OUTPUT. THE USER KEEPS THE PARTIONED DATASET OPEN THROUGH
  MIDNIGHT. ANYTIME AFTER MIDNIGHT, A SECOND USER OPENS THE SAME
  DATASET FOR INPUT. THE SECOND OPEN READS THE FMT1 DSCB TO UPDATE
  THE DATE-LAST-REFERENCED FIELD. AFTER THAT THE FIRST USER CLOSES
  THE DATASET AND CLOSE WRITES BACK THE FMT1 DSCB, THE DS1LSTAR
  AND DS1TRBAL FIELDS WOULD THEN GET UPDATED TO REFLECT THE NEW
  LOCATION OF THE MODIFIED MEMBER. WHEN THE SECOND OPEN WRITES
  BACK THE FMT1 DSCB, THE VALUES OF DS1LSTAR AND DS1TRBAL WILL NOW
  GET RESET WITH THEIR OLD VALUES WHICH WOULD, IN EFFECT, LOSE THE
  CHANGED MEMBER FROM THE FIRST OPEN. THE SECOND PROBLEM OCCURS
  WHEN TWO USERS HAVE ALLOCATED A PDS WITH DISP = SHR AND EACH ONE
  OPENS THE DATASET FOR OUTPUT TO WORK ON DIFFERENT MEMBERS. ONE
  OF THE USERS UPDATES MAY BE LOST BECAUSE THEY EACH HAVE THE SAME
  COPY OF THE DIRECTORY AND THE LAST ONE FINISHED WILL CAUSE THE
  DIRECTORY TO REFLECT ONLY HIS CHANGES. IF THE FIRST USER CAUSED
  A NEW MEMBER TO BE ADDED, THAT NEW MEMBER WOULD NO LONGER EXIST.
  IF THE FIRST USER HAD MODIFIED A MEMBER, ITS DIRECTORY ENTRY
  WILL NOW POINT TO THE SECOND USERS MEMBER (DUPLICATE TTR'S).
 
 
  PROBLEM CONCLUSION:
  THE PDS CORRUPTION WILL BE ELIMINATED BY USING TWO NEW RESOURCES
  THAT WILL BE ENQUEUED UPON DURING OPEN AND CLOSE PROCESSING.
  THESE NEW ENQUEUES WILL BE PERFORMED ONLY IN SOME
  CIRCUMSTANCES. MOST OF THE CHANGES ARE INTERNAL TO THE SYSTEM
  AND WILL NOT BE NOTICED BY THE END USER WITH ONE EXCEPTION. IF
  USERA ALLOCATES A PDS WITH DISP = SHR AND OPENS THE DATASET
  FOR OUTPUT AND USERB ALLOCATES THE SAME PDS WITH DISP = SHR
  AND ALSO ATTEMPTS TO OPEN THIS DATASET FOR OUTPUT, USERB'S
  OPEN WILL NOW FAIL WITH AN ABEND213-30. THIS WOULD HAVE
  SUCCEEDED PRIOR TO THE FIX AND ALMOST CERTAINLY WOULD HAVE
  CORRUPTED THE DIRECTORY. THE NEW RESOURCES BOTH HAVE THE SAME
  MAJOR NAME OF SYSZDSCB. THE MINOR NAMES (RNAME) ARE SIMILAR
  AND WORK TOGETHER TO SERIALIZE OUTPUT TO THE PARTITION
  DATASET. THE MINOR NAMES CONSIST OF: VOLSER+MODE+DSN WHERE THE
  MODE CAN EITHER BE AN "A" OR AN "S". THE RESOURCE WITH MODE
  EQUAL TO "S" IS ENQUEUED UPON WHEN A PDS IS OPENED WITH A
  DISPOSITION = SHARE (EITHER INPUT

Re: EXECIO

2009-02-18 Thread Ted MacNEIL
Okay!
I surrender!
It wasn't there, at the time.
We blew the files off the map!
Sorry, but it happened!
-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-19 Thread Umamaheshwar Iyer
Try using disp = old

The "Old " is with respect to the PDS and not the member that is
created.

Thanks & Best Regards.
Umamaheshwar Iyer | Project Manager | Tech Mahindra 
Hinjwadi, Pune - 411 004, INDIA
Ph. Office: +91 20 4225 0801 | Cell: +91 97666 44472 
Email: ui0037...@techmahindra.com
www.techmahindra.com 

-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
Behalf Of Barkow, Eileen
Sent: Thursday, February 19, 2009 12:00 AM
To: IBM-MAIN@bama.ua.edu
Subject: Re: EXECIO

try allocating with disp shr  - default is old
"ALLOC F(INDD) da("dsnname")  SHR"  


-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
Behalf Of Maria Brown
Sent: Wednesday, February 18, 2009 1:13 PM
To: IBM-MAIN@bama.ua.edu
Subject: EXECIO

I am writing to a partitioned dataset via the EXECIO command.
The dataset is also currently in use by an active application, which
causes
my EXECIO command to fail with "DATA SET IS ALLOCATED TO ANOTHER JOB 
OR USER".  Is there anway to get around this with execio?

I can manually edit and save the file without any problems while the
dataset is 
in use by the app.

"ALLOC F(INDD) da("dsnname")"  
"execio * DISKW indd (STEM LINES. FINIS"   
"Free File(indd)"  

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html




Disclaimer:

This message and the information contained herein is proprietary and 
confidential and subject to the Tech Mahindra policy statement, you may review 
the policy at http://www.techmahindra.com/Disclaimer.html";>http://www.techmahindra.com/Disclaimer.html
 externally and http://tim.techmahindra.com/Disclaimer.html";>http://tim.techmahindra.com/Disclaimer.html
 internally within Tech Mahindra.



--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-19 Thread Scott Rowe
Just for the record, my test was with different members, and it works fine.

>>> Ted MacNEIL  2/18/2009 7:13 PM >>>
>mmm.  If two users edit the same member of a Classic PDS (not PDSE)

Please NOTE!
I NEVER said the same member!
I went out of my way to say DIFFERENT members.

My comments & example were all about DIFFERENT!!
-
Too busy driving to stop for gas!


CONFIDENTIALITY/EMAIL NOTICE: The material in this transmission contains 
confidential and privileged information intended only for the addressee.  If 
you are not the intended recipient, please be advised that you have received 
this material in error and that any forwarding, copying, printing, 
distribution, use or disclosure of the material is strictly prohibited.  If you 
have received this material in error, please (i) do not read it, (ii) reply to 
the sender that you received the message in error, and (iii) erase or destroy 
the material. Emails are not secure and can be intercepted, amended, lost or 
destroyed, or contain viruses. You are deemed to have accepted these risks if 
you communicate with us by email. Thank you.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-19 Thread Scott Rowe
Good find Mark, I knew it was a long time ago, it must not have been easy to 
find ;-)

>>> Mark Zelden  2/18/2009 10:56 PM >>>
On Thu, 19 Feb 2009 01:34:56 +, Ted MacNEIL  wrote:

>>I tried with two ids, same pds, different members, same monoplex with no
>surprising results.
>
>Please tell me what's changed!

OPEN.



CONFIDENTIALITY/EMAIL NOTICE: The material in this transmission contains 
confidential and privileged information intended only for the addressee.  If 
you are not the intended recipient, please be advised that you have received 
this material in error and that any forwarding, copying, printing, 
distribution, use or disclosure of the material is strictly prohibited.  If you 
have received this material in error, please (i) do not read it, (ii) reply to 
the sender that you received the message in error, and (iii) erase or destroy 
the material. Emails are not secure and can be intercepted, amended, lost or 
destroyed, or contain viruses. You are deemed to have accepted these risks if 
you communicate with us by email. Thank you.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-19 Thread Thompson, Steve
-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
Behalf Of Ted MacNEIL
Sent: Wednesday, February 18, 2009 10:15 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: EXECIO

Okay!
I surrender!
It wasn't there, at the time.
We blew the files off the map!
Sorry, but it happened!


Mark's post got me thinking. So I did a quick search and found this:

Perhaps II00587 (Last Changed  89/09/28) 

I wonder if it might partly describe the problem you have had? 

I know for a fact that a certain ISV has caused problems with BLDL &
STOW. At the time I worked on ACS/WYLBUR, two of my people had worked in
Common O/C/E L2 and informed me of a few issues here. There are other
APARs dealing with the associated problems, but I thought you might want
to read this from all the way back in the '80s (out of the afore
mentioned APAR II00587):

  PROBLEM SUMMARY:
 A) THE TTR POINTER, THE DS1LSTAR FIELD, IS MAINTAINED IN
  THE FORMAT1 DSCB.  ITS FUNCTION IS TO POINT TO THE LAST USED
  BLOCK AND THE LAST USED TRACK.  THIS FIELD IS CRUCIAL TO
  POSITIONING THE NEXT MEMBER WRITTEN TO A PDS.
 B) THE PDF EDITOR USES THE FOLLOWING SEQUENCE TO AVOID
  DATA INTEGRITY EXPOSURES WHEN UPDATING A PDS MEMBER:
1) OPEN FOR READ
2) READ MEMBER INTO STORAGE
3) CLOSE DATA SET
  AND AT SAVE TIME:
4) ENQUEUE RESERVE ON THE DATA SET
5) OPEN FOR WRITE
6) WRITE
7) STOW
8) CLOSE
9) RELEASE
  THIS IS ALL DONE USING EXISTING IBM DATA MANAGEMENT SERVICES
  AND LEAVES NO POSSIBILITY FOR INVALIDATION OF THE DS1LSTAR
  FIELD ON AN UNMODIFIED IBM SYSTEM.  AT THE SAME TIME, IT
  ALLOWS MULTIPLE USERS TO EDIT DIFFERENT MEMBERS OF THE SAME
  PARTITIONED DATA SET.
 C) THE FIRST ACCESS OF EACH DAY CAUSES THE FORMAT1 DSCB
  TO BE READ, UPDATED WITH THE CURRENT DATE, AND REWRITTEN.
  IF THIS TAKES PLACE WHILE THE DATA SET IS OPEN FOR OUTPUT
  OR UPDATE, THE DS1LSTAR COULD BE INVALIDATED.  THIS UNIQUE
  PROBLEM, COMMONLY KNOWN AS 'THE MIDNIGHT PROBLEM', WAS
  DOCUMENTED BY O/C/EOV APAR OZ44857 (CLOSED 'PRS').  THIS
  APAR HAS BEEN PURGED FROM RETAIN AND IS NO LONGER VISIBLE.
  SEE NEW APAR OY07766.
 D) SOME NON-IBM DISK MANAGEMENT PACKAGES HAVE THE OPTION
  OF FORCING A REWRITE OF THE FORMAT1 DSCB AT EVERY OPEN.
  THIS CAN RESULT IN AN INVALID POINTER IN THE DS1LSTAR FIELD
  AND A DAMAGED DIRECTORY.  USERS RUNNING IN THIS MODE ARE
  RISKING A DUPLICATE TTR EVERY TIME A MEMBER IS SAVED BY
  PDF.


Regards,
Steve Thompson

-- Opinions expressed by poster may not reflect those of poster's
employer. --

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-19 Thread Paul Gilmartin
On Wed, 18 Feb 2009 19:04:17 -0500, Thompson, Steve wrote:
>
>Prior to working here, I have been at customer sites running OS/390 V2R9
>through z/OS 1.4. One customer site was running z/OS 1.1 with three
>LPARs all sharing DASD. We did not have MIM. We did not get crushed PDS
>members EXECPT for when I made the mistake of running multiple
>assemblies with LNKEDTs to the same load library. There we wound up with
>a screwed up directory and bad members. MY OWN FAULT for NOT using
>DISP=OLD.
>
I had believed Linkage Editor protected itself with ENQ/reserve
on SYSIEWLP. A symptom I remember from decades ago was deadlocks.

--gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-23 Thread Umamaheshwar Iyer
Maria

You can alternatively use 

"FREE F(INDD)" in your REXX Exec. 

OR

In option 6 of ISPF give Free f(indd) each time you run into such
problems.


Thanks & Best Regards.
Umamaheshwar Iyer | Project Manager | Tech Mahindra 
Hinjwadi, Pune - 411 004, INDIA
Ph. Office: +91 20 4225 0801 | Cell: +91 97666 44472 
Email: ui0037...@techmahindra.com
www.techmahindra.com 

-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
Behalf Of Fletcher, Kevin
Sent: Thursday, February 19, 2009 12:06 AM
To: IBM-MAIN@bama.ua.edu
Subject: Re: EXECIO

Maria,

You may need to add a DISP(SHR) to your ALLOC. I also do not see where
you are updating a particular member, that could also be a problem. I do
not know the exact syntax for updating a member, but would be worth you
while to investigate it.

Just my 2 cents worth.

HTH

Fletch


I am writing to a partitioned dataset via the EXECIO command.
The dataset is also currently in use by an active application, which
causes my EXECIO command to fail with "DATA SET IS ALLOCATED TO ANOTHER
JOB OR USER".  Is there anway to get around this with execio?

I can manually edit and save the file without any problems while the
dataset is in use by the app.

"ALLOC F(INDD) da("dsnname")"  
"execio * DISKW indd (STEM LINES. FINIS"   
"Free File(indd)"  



--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html




Disclaimer:

This message and the information contained herein is proprietary and 
confidential and subject to the Tech Mahindra policy statement, you may review 
the policy at http://www.techmahindra.com/Disclaimer.html";>http://www.techmahindra.com/Disclaimer.html
 externally and http://tim.techmahindra.com/Disclaimer.html";>http://tim.techmahindra.com/Disclaimer.html
 internally within Tech Mahindra.



--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: EXECIO

2009-02-23 Thread Umamaheshwar Iyer
Maria

You can alternatively use 

"FREE F(INDD)" in your REXX Exec. 

OR

In option 6 of ISPF give Free f(indd) each time you run into such
problems


Thanks & Best Regards.
Umamaheshwar Iyer | Project Manager | Tech Mahindra 
Hinjwadi, Pune - 411 004, INDIA
Ph. Office: +91 20 4225 0801 | Cell: +91 97666 44472 
Email: ui0037...@techmahindra.com
www.techmahindra.com 


-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
Behalf Of Maria Brown
Sent: Wednesday, February 18, 2009 11:43 PM
To: IBM-MAIN@bama.ua.edu
Subject: EXECIO

I am writing to a partitioned dataset via the EXECIO command.
The dataset is also currently in use by an active application, which
causes
my EXECIO command to fail with "DATA SET IS ALLOCATED TO ANOTHER JOB 
OR USER".  Is there anway to get around this with execio?

I can manually edit and save the file without any problems while the
dataset is 
in use by the app.

"ALLOC F(INDD) da("dsnname")"  
"execio * DISKW indd (STEM LINES. FINIS"   
"Free File(indd)"  

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html




Disclaimer:

This message and the information contained herein is proprietary and 
confidential and subject to the Tech Mahindra policy statement, you may review 
the policy at http://www.techmahindra.com/Disclaimer.html";>http://www.techmahindra.com/Disclaimer.html
 externally and http://tim.techmahindra.com/Disclaimer.html";>http://tim.techmahindra.com/Disclaimer.html
 internally within Tech Mahindra.



--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Stopping EXECIO translation

2008-06-09 Thread Pinnacle
- Original Message - 
From: "Shishir" <[EMAIL PROTECTED]>

Newsgroups: bit.listserv.tsorexx
Sent: Monday, June 09, 2008 8:31 AM
Subject: Stopping EXECIO translation



I am on Z/OS.
I have following lines in my rexx script to read lines from file DD1

'EXECIO 1 DISKR  DD1 ( '
IF RC = 0 THEN PULL LST_LINE

LST_LINE returns small letters translated into capital ones.
I mean file contains 'a' and EXECIO returns 'A' , but i want 'a' .

How can i get my desired result?


Shishir,

NEVER use PULL.  It is short for PARSE UPPER PULL, which will uppercase 
everything in your string.  If you're dealing with packed decimal data, that 
will yield unpredictable results.  Use PARSE PULL, and you'll get the 
results you want.


Regards,
Tom Conley 


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: Stopping EXECIO translation

2008-06-09 Thread Paul Gilmartin
On Mon, 9 Jun 2008 12:36:38 -0400, Pinnacle wrote:

>- Original Message -
>From: "Shishir" 
>Newsgroups: bit.listserv.tsorexx
>Sent: Monday, June 09, 2008 8:31 AM
>Subject: Stopping EXECIO translation
>
>
>>I am on Z/OS.
>> I have following lines in my rexx script to read lines from file DD1
>>
>> 'EXECIO 1 DISKR  DD1 ( '
>> IF RC = 0 THEN PULL LST_LINE
>>
>> LST_LINE returns small letters translated into capital ones.
>> I mean file contains 'a' and EXECIO returns 'A' , but i want 'a' .
>>
>> How can i get my desired result?
>
>Shishir,
>
>NEVER use PULL.  It is short for PARSE UPPER PULL, which will uppercase
>everything in your string.  If you're dealing with packed decimal data, that
>will yield unpredictable results.  Use PARSE PULL, and you'll get the
>results you want.
>
Better yet, use the "(stem" option and bypass the nasty stack entirely.

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



How to insert records using EXECIO

2008-10-16 Thread P.Sabarish Kannan
Hi

 I have a requirement to insert some records in the beginning of a file where 
already some lines are existing . i tried using DISKW using MOD , but they are 
appending to the end. How do we insert in the beginning? I am using REXX for 
this program.

Thanks in advance

Sabarish

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



REXX EXECIO changing LOWERCASE TO UPPERCASE

2007-01-09 Thread John Mattson
I have a fairly simple REXX that reads record by record from a PDS member 
and then writes to a new file.  Basically a REXX ibegener. (Yes, I know 
there are better ways, but please humor me, I have reasons.)  Problem is 
that it reads in lowercase characters as UPERCASE. What I want to do is 
PRESERVE the case whatever it is...   Anyone have any ideas no how to fix 
this? 

Here is an example, Using the following file as input: 
AFITJLM.ALC.TSTFTP(TSTFTP)
* 
UPPERCASE 
lowercase 

Here is what I get when I run the REXX 

EXECUTING MSYS.ISPF.REXX(ALC#VST) 
PDQ : D 
SYS : CAM 
IDS : 'AFITJLM.ALC.TSTFTP(TSTFTP)' 
ODS : 'DALC.FTPCTL(TSTFTP)' 
RECORD BEFORE: UPPERCASE 
RECORD AFTER : UPPERCASE 
RECORD BEFORE: LOWERCASE 
RECORD AFTER : LOWERCASE 

Here is the REXX 
/* REXX */ 
TRLEVEL = 'I' 
TRLEVEL = '' 
INTERPRET TRACE TRLEVEL 
SIGNAL ON HALT 
TRACE 
ARG PDQ SYS IDS ODS 
PDQ = STRIP(PDQ) 
SYS = STRIP(SYS) 
IDS = STRIP(IDS) 
ODS = STRIP(ODS) 
IDS = "'"IDS"'" 
ODS = "'"ODS"'" 
SAY " " 
SAY "EXECUTING MSYS.ISPF.REXX(ALC#VST)" 
SAY "PDQ :" PDQ 
SAY "SYS :" SYS 
SAY "IDS :" IDS 
SAY "ODS :" ODS 
INTERPRET TRACE TRLEVEL 
 
/* DOES THE USER'S DSN & MEMBER EXIST ? */ 
TRACE 
INTERPRET TRACE TRLEVEL 
ADDRESS TSO 
 
IF SYSDSN(IDS) ¬= "OK" THEN 
DO 
   TRACE 
   SAY "***" 
   SAY "*** COPY-FROM DS(MEMBER) DOES NOT EXIST, TRY AGAIN" 
   SAY "***" 
   INTERPRET TRACE TRLEVEL 
   SIGNAL BADEND 
END 
 
FMTO: ADDRESS TSO 
 
"ALLOC DD(FM) DSN("IDS") SHR " 
"ALLOC DD(TO) DSN("ODS") SHR " 
 
   TRACE 
"NEWSTACK" 
DO X=1 BY 1 UNTIL X>999 
   "EXECIO 1 DISKR FM" 
   IF RC>0 THEN LEAVE 
   PULL RECORD 
   SAY "RECORD BEFORE:" RECORD 
   SAY "RECORD AFTER :" RECORD 
   PUSH RECORD 
   "EXECIO 1 DISKW TO" 
END 
INTERPRET TRACE TRLEVEL 
"EXECIO 0 DISKR FM (FINIS" 
"EXECIO 0 DISKW TO (FINIS" 
"FREE  DD(FM TO)" 
 
/* "ISPEXEC EDIT DATASET("ODS")"   */ 
 
SIGNAL THEEND 
BADEND: 
ADDRESS TSO 
"FREE  DD(X)" 
"FREE ALL" 
EXIT () 
 
THEEND: 
ADDRESS TSO 
"FREE ALL" 
EXIT 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How to insert records using EXECIO

2008-10-16 Thread Veilleux, Jon L
You can read the whole file into a stem variable, put the lines you want
to insert into a stack, and then loop though the first stem variable to
append the values to the stack and then write the file back.

/* rexx */   
 
ADDRESS TSO  
"ALLOC FI(TEMPNAME) DSN(your_file_name) SHR"       
'EXECIO * DISKR TEMPNAME (STEM CARD.   FINIS'
Do y=1 to 3  
outcard.y = your_new_records

End  
Do x = 1 to card.0   
Y=y+1
outcard.y=card.x 
End  
Push ''      
'EXECIO 'y' DISKW TEMPNAME (stem outcard. FINIS' 

Jon L. Veilleux 
[EMAIL PROTECTED] 
(860) 636-2683 


-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On
Behalf Of P.Sabarish Kannan
Sent: Thursday, October 16, 2008 7:22 AM
To: IBM-MAIN@BAMA.UA.EDU
Subject: How to insert records using EXECIO

Hi

 I have a requirement to insert some records in the beginning of a file
where already some lines are existing . i tried using DISKW using MOD ,
but they are appending to the end. How do we insert in the beginning? I
am using REXX for this program.

Thanks in advance

Sabarish

--
For IBM-MAIN subscribe / signoff / archive access instructions, send
email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search
the archives at http://bama.ua.edu/archives/ibm-main.html

This e-mail may contain confidential or privileged information. If
you think you have received this e-mail in error, please advise the
sender by reply e-mail and then delete this e-mail immediately.
Thank you. Aetna   

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Walt Farrell
On Thu, 16 Oct 2008 06:22:27 -0500, P.Sabarish Kannan
<[EMAIL PROTECTED]> wrote:

> I have a requirement to insert some records in the beginning of a file where
>already some lines are existing . i tried using DISKW using MOD , but they are
>appending to the end. How do we insert in the beginning? I am using REXX for
>this program.

As far as I know you can not insert records into an existing file using
EXECIO.  You can append to the end, as you noticed.

I would write the new records into a new file and then copy the existing
file and append its records to that new file.   After that, the exec could
then delete the existing file and rename the new one to the old name if needed.

There is an unsafe alternative: you could read all of the existing data into
REXX variables, then write the new records to the beginning of the existing
file, and then write the data from the variables after that new data. 
However, if an error occurs before you finish the writing then you will have
lost the data in your file.

-- 
  Walt Farrell

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Hunkeler Peter (KIUK 3)
>I have a requirement to insert some records in the beginning of a file 
>where already some lines are existing . i tried using DISKW using MOD, 
>but they are appending to the end. How do we insert in the beginning? 
>I am using REXX for this program.

There is no direct way to insert data into a sequential data set,
neither
at the beginning nor inbetween. You need to re-write the dataset with
all 
the new and current records in the desired sequence.

If the dataset is not too big, you can read it into storage using EXECIO
then write everything back out with multiple EXEXIOs. You can also use
one of various ways to concatenate the input datasets and copy them
into a new output dataset.

-- 
Peter Hunkeler
Credit Suisse

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Paul Gilmartin
On Thu, 16 Oct 2008 07:49:45 -0400, Veilleux, Jon L wrote:

>You can read the whole file into a stem variable, ...
>
I feel old.

You really ought to have a fallback mechanism in case
"can" fails.

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Veilleux, Jon L
Actually, I remember installing Amdahl SP Assist so that our machines
could have more than 16MB of real storage. Times have changed..


Jon L. Veilleux 
[EMAIL PROTECTED] 
(860) 636-2683 


-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On
Behalf Of Paul Gilmartin
Sent: Thursday, October 16, 2008 9:19 AM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

On Thu, 16 Oct 2008 07:49:45 -0400, Veilleux, Jon L wrote:

>You can read the whole file into a stem variable, ...
>
I feel old.

You really ought to have a fallback mechanism in case "can" fails.

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions, send
email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search
the archives at http://bama.ua.edu/archives/ibm-main.html

This e-mail may contain confidential or privileged information. If
you think you have received this e-mail in error, please advise the
sender by reply e-mail and then delete this e-mail immediately.
Thank you. Aetna   

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Paul Gilmartin
On Thu, 16 Oct 2008 06:53:15 -0500, Walt Farrell wrote:
>
>I would write the new records into a new file and then copy the existing
>file and append its records to that new file.   After that, the exec could
>then delete the existing file and rename the new one to the old name if needed.
>
And I'll recommend z/OS Unix files.  You can omit the delete, and the
POSIX rename guarantees that no other process will observe a window
during which the file doesn't exist, and there's no need for an ENQ
with the possible lockout.  (Might the same be true with PDSE members?)

>There is an unsafe alternative: you could read all of the existing data into
>REXX variables, then write the new records to the beginning of the existing
>file, and then write the data from the variables after that new data.
>However, if an error occurs before you finish the writing then you will have
>lost the data in your file.
>
And it might actually be poorer performance.  Note that this is
effectively copying the original file to the page data set, then
the page data set back to the new file -- twice the disk I/O.

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Paul Gilmartin
On Thu, 16 Oct 2008 09:25:51 -0400, Veilleux, Jon L wrote:

>Actually, I remember installing Amdahl SP Assist so that our machines
>could have more than 16MB of real storage. Times have changed..
>
Can Rexx keep stem variables above the bar nowadays?

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Veilleux, Jon L
You are right. You should always have a back up plan. I was answering
his basic question not thinking about preventing disasters. 
That being said, if you really need to protect the file maybe REXX
EXECIO isn't the best solution
Jon 


Jon L. Veilleux 
[EMAIL PROTECTED] 
(860) 636-2683 


-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On
Behalf Of Paul Gilmartin
Sent: Thursday, October 16, 2008 9:19 AM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

On Thu, 16 Oct 2008 07:49:45 -0400, Veilleux, Jon L wrote:

>You can read the whole file into a stem variable, ...
>
I feel old.

You really ought to have a fallback mechanism in case "can" fails.

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions, send
email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search
the archives at http://bama.ua.edu/archives/ibm-main.html

This e-mail may contain confidential or privileged information. If
you think you have received this e-mail in error, please advise the
sender by reply e-mail and then delete this e-mail immediately.
Thank you. Aetna   

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Lizette Koehler
Depending on the number of records in the input file, EXECIO may not be the
most efficient way to do this.

But you could create a new file with the new lines in it and then use
something like IEBGENER later in the REXX to mod the data from the original
file into the new file.

The reason to do it this way is to protect your original file from being
corrupted should there be a failure of some type (x37, 0Cx, etc).

Mod will normally add lines to the end of a file not to a beginning of a
file.

Lizette

> 
> Hi
> 
>  I have a requirement to insert some records in the beginning of a file
> where
> already some lines are existing . i tried using DISKW using MOD , but
> they are
> appending to the end. How do we insert in the beginning? I am using
> REXX for
> this program.
> 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Patrick O'Keefe
On Thu, 16 Oct 2008 13:53:47 +0200, Hunkeler Peter (KIUK 3) 
<[EMAIL PROTECTED]> wrote:

>>I have a requirement to insert some records in the beginning of a file
>>where already some lines are existing . i tried using DISKW using 
MOD,
>>but they are appending to the end. How do we insert in the 
beginning?
>>I am using REXX for this program.
>
>There is no direct way to insert data into a sequential data set,
>neither
>at the beginning nor inbetween. You need to re-write the dataset with
>all
>the new and current records in the desired sequence.
>...

Peter came close to saying this, but I think it's worth highlighting.
This "restriction" has nothing to do with REXX; it's just  the way
processing of sequential datasets works.

Regarding MOD, last I checked there was no MOD option to EXECIO
(and I wouldn't expect it there) so I assume the origonal poster
was refering to DISP=MOD or MOD on a TSO ALLOCATE command.
In those contexts MOD implies "Add to the end of a dataset".

In the JCL manual it clearly states that MOD implies either 
   The data set exists and records are to be added to the end of it. 
   The data set must be sequential. 
or
   A new data set is to be created.   

HELP for the ALLOCATE command is a lot less clear:
   ADDITIONS ARE TO BE MADE TO DATA SET  

Pat O'Keefe

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Scott Ford
Patrick,

I have been updating in place with Execio in Rexx. The DISP=MOD
Is correct and finding the record you want to update or insert or
delete is also part of the formula.

Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.


-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Patrick O'Keefe
Sent: Thursday, October 16, 2008 3:25 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

On Thu, 16 Oct 2008 13:53:47 +0200, Hunkeler Peter (KIUK 3) 
<[EMAIL PROTECTED]> wrote:

>>I have a requirement to insert some records in the beginning of a file
>>where already some lines are existing . i tried using DISKW using 
MOD,
>>but they are appending to the end. How do we insert in the 
beginning?
>>I am using REXX for this program.
>
>There is no direct way to insert data into a sequential data set,
>neither
>at the beginning nor inbetween. You need to re-write the dataset with
>all
>the new and current records in the desired sequence.
>...

Peter came close to saying this, but I think it's worth highlighting.
This "restriction" has nothing to do with REXX; it's just  the way
processing of sequential datasets works.

Regarding MOD, last I checked there was no MOD option to EXECIO
(and I wouldn't expect it there) so I assume the origonal poster
was refering to DISP=MOD or MOD on a TSO ALLOCATE command.
In those contexts MOD implies "Add to the end of a dataset".

In the JCL manual it clearly states that MOD implies either 
   The data set exists and records are to be added to the end of it. 
   The data set must be sequential. 
or
   A new data set is to be created.   

HELP for the ALLOCATE command is a lot less clear:
   ADDITIONS ARE TO BE MADE TO DATA SET  

Pat O'Keefe

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Jack . Hamilton
I wonder - Why is it not possible to add records to the beginning of a 
data set?  Wouldn't it be possible for a sufficiently clever program to 
place the inserted records into a newly allocated area on disk, and then 
modify the VTOC to point to that new area first and the old first area 
next?  It might require rewriting a bunch of control blocks, and probably 
wouldn't work for some kinds of data sets (FBS comes to mind), but isn't 
it theoretically possible? 


--
Jack Hamilton
Management Information & Analysis - Analytic Information Services
Kaiser Foundation Health Plan, Inc.
1950 Franklin Street, Oakland, California 94612
+1 510 987-1556 (KP tieline 8-427-1556)

NOTE:  This email document and attachments are covered by CA Evidence Code 
§1157 and CA Health and Safety Code §1370.

NOTICE TO RECIPIENT:  If you are not the intended recipient of this 
e-mail, you are prohibited from sharing, copying, or otherwise using or 
disclosing its contents.  If you have received this e-mail in error, 
please notify the sender immediately by reply e-mail and permanently 
delete this e-mail and any attachments without reading, forwarding or 
saving them.  Thank you.


IBM Mainframe Discussion List  wrote on 10/16/2008 
12:24:56 PM:

> On Thu, 16 Oct 2008 13:53:47 +0200, Hunkeler Peter (KIUK 3)
> <[EMAIL PROTECTED]> wrote:

> >>I have a requirement to insert some records in the beginning of a file
> >>where already some lines are existing . i tried using DISKW using
> MOD,
> >>but they are appending to the end. How do we insert in the
> beginning?
> >>I am using REXX for this program.
> >
> >There is no direct way to insert data into a sequential data set,
> >neither
> >at the beginning nor inbetween. You need to re-write the dataset with
> >all
> >the new and current records in the desired sequence.
> >...

> Peter came close to saying this, but I think it's worth highlighting.
> This "restriction" has nothing to do with REXX; it's just  the way
> processing of sequential datasets works.

> Regarding MOD, last I checked there was no MOD option to EXECIO
> (and I wouldn't expect it there) so I assume the origonal poster
> was refering to DISP=MOD or MOD on a TSO ALLOCATE command.
> In those contexts MOD implies "Add to the end of a dataset".

> In the JCL manual it clearly states that MOD implies either
> The data set exists and records are to be added to the end of it.
> The data set must be sequential.
> or
> A new data set is to be created.
> 
> HELP for the ALLOCATE command is a lot less clear:
> ADDITIONS ARE TO BE MADE TO DATA SET
> 
> Pat O'Keefe

> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
> Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Patrick O'Keefe
On Thu, 16 Oct 2008 16:24:14 -0400, Scott Ford 
<[EMAIL PROTECTED]> wrote:

>Patrick,
>
>I have been updating in place with Execio in Rexx. ...

I didn't mean to imply you couldn't update in place.  That's a lot
different than inserting.  

Pat O'Keefe

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Scott Ford
Patrick,
I understand what you said, my comments are that an insert was also very
doable in rexx..no more no less.

Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Patrick O'Keefe
Sent: Thursday, October 16, 2008 6:42 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

On Thu, 16 Oct 2008 16:24:14 -0400, Scott Ford 
<[EMAIL PROTECTED]> wrote:

>Patrick,
>
>I have been updating in place with Execio in Rexx. ...

I didn't mean to imply you couldn't update in place.  That's a lot
different than inserting.  

Pat O'Keefe

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Jürgen Kehr

Hi,

... and after 15 records added this way you'll get an x37 error, because 
your dataset have more than 16 extents.


[EMAIL PROTECTED] schrieb:
I wonder - Why is it not possible to add records to the beginning of a 
data set?  Wouldn't it be possible for a sufficiently clever program to 
place the inserted records into a newly allocated area on disk, and then 
modify the VTOC to point to that new area first and the old first area 
next?  It might require rewriting a bunch of control blocks, and probably 
wouldn't work for some kinds of data sets (FBS comes to mind), but isn't 
it theoretically possible? 



--
Jack Hamilton
Management Information & Analysis - Analytic Information Services
Kaiser Foundation Health Plan, Inc.
1950 Franklin Street, Oakland, California 94612
+1 510 987-1556 (KP tieline 8-427-1556)

  


--

___



Freundliche Gruesse / Kind regards



Dipl.Math. Juergen Kehr, IT Schulung & Beratung, IT Education + Consulting

Tel.  +49-561-9528788  Fax   +49-561-9528789  Mobil +49-172-5129389

ICQ 292-318-696 (JKehr)



mailto:[EMAIL PROTECTED]

mailto:[EMAIL PROTECTED]

___

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Gerhard Postpischil

[EMAIL PROTECTED] wrote:
I wonder - Why is it not possible to add records to the beginning of a 
data set?  Wouldn't it be possible for a sufficiently clever program to 
place the inserted records into a newly allocated area on disk, and then 
modify the VTOC to point to that new area first and the old first area 
next?  It might require rewriting a bunch of control blocks, and probably 
wouldn't work for some kinds of data sets (FBS comes to mind), but isn't 
it theoretically possible? 


I'm speculating, but sequential files (QSAM, BSAM) were designed 
to be as device independent as possible. While your proposal 
would work a few times for a DASD file, it would not work on 
tape. Furthermore, while there may be a business case for 
inserting records into a file, the specific case of doing so 
only at the beginning is pretty rare, and wouldn't justify the 
expense of implementation.


Gerhard Postpischil
Bradford, VT

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Paul Gilmartin
On Thu, 16 Oct 2008 18:53:48 -0400, Scott Ford wrote:

>I understand what you said, my comments are that an insert was also very
>doable in rexx..no more no less.
>
I'm intrigued.  Can you point us to some sample code?  or
is this just the copy-append-rename already posted a couple
times in this thread?

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Scott Ford
I will put together a sample and post it, including Input file, exec clist
and output...

Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Paul Gilmartin
Sent: Thursday, October 16, 2008 8:05 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

On Thu, 16 Oct 2008 18:53:48 -0400, Scott Ford wrote:

>I understand what you said, my comments are that an insert was also very
>doable in rexx..no more no less.
>
I'm intrigued.  Can you point us to some sample code?  or
is this just the copy-append-rename already posted a couple
times in this thread?

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Scott Ford
--- Gil...here u go


 before add of records *

BROWSESFORD.TEST.FILELine  Col 001
080
* Top of Data
**
line1   
line2   
line3   
line4   
line5   
line6   
line7  
 
 Bottom of Data


/*   Rexx*/
/*   */
/* Clist:   REXXINS  */
/* Author:  Scott Ford, IDF  */
/* Date  :  10-16-2008   */
/* Version:  1.0 */
/* Modification: 1.0 */
/* Release:  1.0 */
/* Narative: Input flat file and insert records  */
/*---*/
reci = 0;
j = 1;
call alloc_input;
call read_input;
call insert_input;
exit
alloc_input:
address TSO
'PROFILE NOPREFIX'
'ALLOC DDN(FILEIN) MOD DSN(SFORD.TEST.FILE)'
if rc = 0 then do;
  say 'REXXINS  --  File allocated ok - at 'date(u)' 'time()
end;
return;
read_input:
'execio * DISKR FILEIN (STEM A. FINIS'
if rc = 0 then do;
  say 'REXXINS  --  File read ok - at 'date(u)' 'time()
end;
return;
insert_input:
B. = '';
j = 1;
do i=1 to A.0;
  if substr(A.i,1,5) = 'line3' then do;
 parse var A.i record
 reci = i
 B.j = 'line3a'
 j = j + 1
 B.j = 'line3b'
   'execio '2' DISKW FILEIN ( STEM B. FINIS'
 say rc
  end;
end;
return;

* after addition of records *

 BROWSESFORD.TEST.FILELine  Col 001
080
* Top of Data
**
line1   
line2   
line3   
line4   
line5   
line6   
line7   
line3a
line3b
 Bottom of Data


Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Paul Gilmartin
Sent: Thursday, October 16, 2008 8:05 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

On Thu, 16 Oct 2008 18:53:48 -0400, Scott Ford wrote:

>I understand what you said, my comments are that an insert was also very
>doable in rexx..no more no less.
>
I'm intrigued.  Can you point us to some sample code?  or
is this just the copy-append-rename already posted a couple
times in this thread?

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Scott Ford
Gil,

See this Share paper...

http://shareew.prod.web.sba.com/client_files/callpapers/attach/SHARE_in_San_
Jose/S8343WS150114.pdf


Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Paul Gilmartin
Sent: Thursday, October 16, 2008 8:05 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

On Thu, 16 Oct 2008 18:53:48 -0400, Scott Ford wrote:

>I understand what you said, my comments are that an insert was also very
>doable in rexx..no more no less.
>
I'm intrigued.  Can you point us to some sample code?  or
is this just the copy-append-rename already posted a couple
times in this thread?

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-16 Thread Hunkeler Peter (KIUK 3)
Its alreqdy 8:30am here but it might still be too early
to understand your sample. The result shown indicates 
that you implemented an "append", which of course is 
equal to "insert after last record". Not what the OP 
wanted.

But why are you reading the data set in first? ALLOC
with MOD followed by EXECIO DISKW accomplishes the same.

I don't understand what the do loop is for.

-- 
Peter Hunkeler
CREDIT SUISSE

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-17 Thread Scott Ford
It was an example for Gil and I also included a url for the actual execio
diskru ..from IBM ...

Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Hunkeler Peter (KIUK 3)
Sent: Friday, October 17, 2008 2:35 AM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

Its alreqdy 8:30am here but it might still be too early
to understand your sample. The result shown indicates 
that you implemented an "append", which of course is 
equal to "insert after last record". Not what the OP 
wanted.

But why are you reading the data set in first? ALLOC
with MOD followed by EXECIO DISKW accomplishes the same.

I don't understand what the do loop is for.

-- 
Peter Hunkeler
CREDIT SUISSE

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



FW: How to insert records using EXECIO

2008-10-17 Thread Scott Ford
Peter,
See below

Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.


-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Scott Ford
Sent: Thursday, October 16, 2008 9:17 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

Gil,

See this Share paper...

http://shareew.prod.web.sba.com/client_files/callpapers/attach/SHARE_in_San_
Jose/S8343WS150114.pdf


Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Paul Gilmartin
Sent: Thursday, October 16, 2008 8:05 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

On Thu, 16 Oct 2008 18:53:48 -0400, Scott Ford wrote:

>I understand what you said, my comments are that an insert was also very
>doable in rexx..no more no less.
>
I'm intrigued.  Can you point us to some sample code?  or
is this just the copy-append-rename already posted a couple
times in this thread?

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-17 Thread Hunkeler Peter (KIUK 3)
Scott,
I thought you wanted to demonstrate how to insert records
at the beginning of a file. I must have misunderstood. 

-- 
Peter Hunkeler
CREDIT SUISSE

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-17 Thread Paul Gilmartin
On Fri, 17 Oct 2008 08:35:28 +0200, Hunkeler Peter (KIUK 3) wrote:

>Its alreqdy 8:30am here but it might still be too early
>to understand your sample. The result shown indicates
>
I didn't understand it last night.

>that you implemented an "append", which of course is
>equal to "insert after last record". Not what the OP
>wanted.
>
>But why are you reading the data set in first? ALLOC
>with MOD followed by EXECIO DISKW accomplishes the same.
>
>I don't understand what the do loop is for.
>
I don't understand what the "parse" instruction inside the
unnecessary do loop is for.

I was disappointed.  I had envisioned something like what
a colleague told me long ago.  As an undergraduate, he
had learned on a Scientific Data Systems (later XEROX)
Sigma system.  He explained that program source files,
necessarily line-numbered, were stored in something like
a VSAM KSDS file, with the line numbers as keys.  So it
was possible to update, insert, and delete records in
place.

Of course, this behavior is hard to distinguish from an
editor's reading the entire DSORG=PS file into main
storage, updating it in the buffer, and rewriting it.

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-17 Thread Howard Brazee
On 16 Oct 2008 14:06:57 -0700, [EMAIL PROTECTED] wrote:

>I wonder - Why is it not possible to add records to the beginning of a 
>data set?  Wouldn't it be possible for a sufficiently clever program to 
>place the inserted records into a newly allocated area on disk, and then 
>modify the VTOC to point to that new area first and the old first area 
>next?  It might require rewriting a bunch of control blocks, and probably 
>wouldn't work for some kinds of data sets (FBS comes to mind), but isn't 
>it theoretically possible? 

That's why we have linked lists, for occasions where this kind of
overhead is worth while.

I've used relative files for the same kind of need, although these
days databases have taken over (which do all that and more).

There are trade-offs though.   That kind of processing requires
significant overhead that slows down processing and is less reliable.
It's easier and safer to write a new copy of the file with the
inserted records in it.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-17 Thread Scott Ford
Peter,
Did you see the url I sent you...



Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.


-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Hunkeler Peter (KIUK 3)
Sent: Friday, October 17, 2008 8:14 AM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

Scott,
I thought you wanted to demonstrate how to insert records
at the beginning of a file. I must have misunderstood. 

-- 
Peter Hunkeler
CREDIT SUISSE

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-18 Thread Paul Gilmartin
On Thu, 16 Oct 2008 21:17:05 -0400, Scott Ford wrote:
>
>See this Share paper...
>
> http://shareew.prod.web.sba.com/client_files/callpapers/attach/SHARE_in_San_Jose/S8343WS150114.pdf
>
Ah, the dreaded Rexx Stream I/O Function Package; I've read about it.
This is worse than disappointing; it's dismaying.

Conway's Law at it's most pernicious.

There's the above function package, then there's Rexx Stream I/O for
z/OS Unix Rexx, originally a function package; now integrated into
the z/OS base; both from IBM.

The former runs only under TSO/E, and processes only legacy data sets.

The latter runs only under z/OS Unix and processes only z/OS Unix files.

Why can't IBM get their act together and produce a single stream I/O
facility, integrated with the z/OS base, operational under all of
z/OS Unix, TSO/E, and IRXJCL?  And while they're at it, implement the
customary Rexx facility missing from both, SIGNAL ON NOTREADY?

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-18 Thread Scott Ford
Gil amen brother...I loved Open Source Open Object Rexx..
But it took independent developers to do the job...IBM used to listen to
us the customers...

Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Paul Gilmartin
Sent: Saturday, October 18, 2008 10:08 AM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

On Thu, 16 Oct 2008 21:17:05 -0400, Scott Ford wrote:
>
>See this Share paper...
>
>
http://shareew.prod.web.sba.com/client_files/callpapers/attach/SHARE_in_San_
Jose/S8343WS150114.pdf
>
Ah, the dreaded Rexx Stream I/O Function Package; I've read about it.
This is worse than disappointing; it's dismaying.

Conway's Law at it's most pernicious.

There's the above function package, then there's Rexx Stream I/O for
z/OS Unix Rexx, originally a function package; now integrated into
the z/OS base; both from IBM.

The former runs only under TSO/E, and processes only legacy data sets.

The latter runs only under z/OS Unix and processes only z/OS Unix files.

Why can't IBM get their act together and produce a single stream I/O
facility, integrated with the z/OS base, operational under all of
z/OS Unix, TSO/E, and IRXJCL?  And while they're at it, implement the
customary Rexx facility missing from both, SIGNAL ON NOTREADY?

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-18 Thread Shmuel Metz (Seymour J.)
In <[EMAIL PROTECTED]>, on 10/16/2008
   at 06:22 AM, "P.Sabarish Kannan" <[EMAIL PROTECTED]> said:

> I have a requirement to insert some records in the beginning of a file
>where  already some lines are existing .

You can't; you need to rewrite the entire file. For classical sequential
files I recommend writing a new file rather than writing on top of the old
file. That way, if something happens in the middle you haven't lost your
data. For Unix files that shouldn't be necessary.

It's too bad that IBM killed TSS.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-18 Thread Shmuel Metz (Seymour J.)
In <[EMAIL PROTECTED]>, on
10/16/2008
   at 02:03 PM, [EMAIL PROTECTED] said:

>I wonder - Why is it not possible to add records to the beginning of a 
>data set?  Wouldn't it be possible for a sufficiently clever program to 
>place the inserted records into a newly allocated area on disk, and then 
>modify the VTOC to point to that new area first and the old first area 
>next? 

FSVO clever. It's clever in the sense that crashing two planes and tunning
a third one into power lines is brilliant flying. It may impress the
groupies but it's not professional and it's not safe.

OTOH, if you do it in a sandbox and don't put your enterprise at risk, it
might be a fun training exercise. But don't try it at home.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-18 Thread Shmuel Metz (Seymour J.)
In <[EMAIL PROTECTED]>, on 10/16/2008
   at 09:11 PM, Scott Ford <[EMAIL PROTECTED]> said:

>--- Gil...here u go

That code does not insert records, it appends them. Nobody claimed that
you couldn't append.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-19 Thread Scott Ford
>>--- Shmuel ..

I thought I remembered you could insert records...I tried it and showed some
code here...but obviously my old memory is failing. I looked it up and even
the TSO/Rexx manuals say...append or update in place , but no word of
insert..

Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Shmuel Metz (Seymour J.)
Sent: Saturday, October 18, 2008 10:39 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

In <[EMAIL PROTECTED]>, on 10/16/2008
   at 09:11 PM, Scott Ford <[EMAIL PROTECTED]> said:

>--- Gil...here u go

That code does not insert records, it appends them. Nobody claimed that
you couldn't append.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see <http://patriot.net/~shmuel/resume/brief.html> 
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-22 Thread Shmuel Metz (Seymour J.)
In <[EMAIL PROTECTED]>, on 10/19/2008
   at 12:07 PM, Scott Ford <[EMAIL PROTECTED]> said:

>I thought I remembered you could insert records...

And elsewhere I thought that you could continue a line after an operator,
without an explicit continuation character :-(

They say that memory is the second thing to go - I can't remember the
first.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: How to insert records using EXECIO

2008-10-22 Thread Scott Ford
Shmuel...

Hair  boy 

Scott Ford
Senior Systems Engineer

 
[p] 678.266.3399 x304[m] 609-346-0399  identityforge.com



This message is for the designated recipient only and may contain
privileged, proprietary, or otherwise private information. If you have
received it in error, please notify the sender immediately or let us know at

[EMAIL PROTECTED] or [EMAIL PROTECTED], and then delete the
original.  Any other use of the email by you is prohibited.

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Shmuel Metz (Seymour J.)
Sent: Wednesday, October 22, 2008 7:29 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: How to insert records using EXECIO

In <[EMAIL PROTECTED]>, on 10/19/2008
   at 12:07 PM, Scott Ford <[EMAIL PROTECTED]> said:

>I thought I remembered you could insert records...

And elsewhere I thought that you could continue a line after an operator,
without an explicit continuation character :-(

They say that memory is the second thing to go - I can't remember the
first.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see <http://patriot.net/~shmuel/resume/brief.html> 
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html



Re: REXX EXECIO changing LOWERCASE TO UPPERCASE

2007-01-09 Thread McKown, John
> -Original Message-
> From: IBM Mainframe Discussion List 
> [mailto:[EMAIL PROTECTED] On Behalf Of John Mattson
> Sent: Tuesday, January 09, 2007 3:18 PM
> To: IBM-MAIN@BAMA.UA.EDU
> Subject: REXX EXECIO changing LOWERCASE TO UPPERCASE
> 
> 
> I have a fairly simple REXX that reads record by record from 
> a PDS member 
> and then writes to a new file.  Basically a REXX ibegener. 
> (Yes, I know 
> there are better ways, but please humor me, I have reasons.)  
> Problem is 
> that it reads in lowercase characters as UPERCASE. What I 
> want to do is 
> PRESERVE the case whatever it is...   Anyone have any ideas 
> no how to fix 
> this? 
> 

WAD.

PULL RECORD

is short for 

PARSE PULL UPPER RECORD

You need

PARSE PULL RECORD

to maintain the upper/lower case. I learned this the hard way, myself.

--
John McKown
Senior Systems Programmer
HealthMarkets
Keeping the Promise of Affordable Coverage
Administrative Services Group
Information Technology

The information contained in this e-mail message may be privileged
and/or confidential.  It is for intended addressee(s) only.  If you are
not the intended recipient, you are hereby notified that any disclosure,
reproduction, distribution or other use of this communication is
strictly prohibited and could, in certain circumstances, be a criminal
offense.  If you have received this e-mail in error, please notify the
sender by reply and delete this message without copying or disclosing
it. 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: REXX EXECIO changing LOWERCASE TO UPPERCASE

2007-01-09 Thread Imbriale, Donald (Exchange)
PULL is a short form of PARSE UPPER PULL.  Use PARSE PULL instead of
PULL.

Don Imbriale

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On
Behalf Of John Mattson
Sent: Tuesday, January 09, 2007 4:18 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: REXX EXECIO changing LOWERCASE TO UPPERCASE

I have a fairly simple REXX that reads record by record from a PDS
member 
and then writes to a new file.  Basically a REXX ibegener. (Yes, I know 
there are better ways, but please humor me, I have reasons.)  Problem is

that it reads in lowercase characters as UPERCASE. What I want to do is 
PRESERVE the case whatever it is...   Anyone have any ideas no how to
fix 
this? 



***
Bear Stearns is not responsible for any recommendation, solicitation, 
offer or agreement or any information about any transaction, customer 
account or account activity contained in this communication.
***

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: REXX EXECIO changing LOWERCASE TO UPPERCASE

2007-01-09 Thread Kenny Fogarty
Put PARSE before your ARG and you'll be sorted. 

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of John Mattson
Sent: 09 January 2007 21:18
To: IBM-MAIN@BAMA.UA.EDU
Subject: REXX EXECIO changing LOWERCASE TO UPPERCASE

I have a fairly simple REXX that reads record by record from a PDS member
and then writes to a new file.  Basically a REXX ibegener. (Yes, I know
there are better ways, but please humor me, I have reasons.)  Problem is
that it reads in lowercase characters as UPERCASE. What I want to do is 
PRESERVE the case whatever it is...   Anyone have any ideas no how to fix 
this? 

Here is an example, Using the following file as input: 
AFITJLM.ALC.TSTFTP(TSTFTP)
*
UPPERCASE
lowercase 

Here is what I get when I run the REXX 

EXECUTING MSYS.ISPF.REXX(ALC#VST) 
PDQ : D 
SYS : CAM 
IDS : 'AFITJLM.ALC.TSTFTP(TSTFTP)' 
ODS : 'DALC.FTPCTL(TSTFTP)' 
RECORD BEFORE: UPPERCASE
RECORD AFTER : UPPERCASE
RECORD BEFORE: LOWERCASE
RECORD AFTER : LOWERCASE 

Here is the REXX
/* REXX */
TRLEVEL = 'I' 
TRLEVEL = '' 
INTERPRET TRACE TRLEVEL
SIGNAL ON HALT
TRACE
ARG PDQ SYS IDS ODS
PDQ = STRIP(PDQ)
SYS = STRIP(SYS)
IDS = STRIP(IDS)
ODS = STRIP(ODS)
IDS = "'"IDS"'" 
ODS = "'"ODS"'" 
SAY " " 
SAY "EXECUTING MSYS.ISPF.REXX(ALC#VST)" 
SAY "PDQ :" PDQ 
SAY "SYS :" SYS 
SAY "IDS :" IDS 
SAY "ODS :" ODS 
INTERPRET TRACE TRLEVEL 
 
/* DOES THE USER'S DSN & MEMBER EXIST ? */ TRACE INTERPRET TRACE TRLEVEL
ADDRESS TSO 
 
IF SYSDSN(IDS) ¬= "OK" THEN
DO 
   TRACE 
   SAY "***" 
   SAY "*** COPY-FROM DS(MEMBER) DOES NOT EXIST, TRY AGAIN" 
   SAY "***" 
   INTERPRET TRACE TRLEVEL 
   SIGNAL BADEND
END 
 
FMTO: ADDRESS TSO 
 
"ALLOC DD(FM) DSN("IDS") SHR " 
"ALLOC DD(TO) DSN("ODS") SHR " 
 
   TRACE
"NEWSTACK" 
DO X=1 BY 1 UNTIL X>999 
   "EXECIO 1 DISKR FM" 
   IF RC>0 THEN LEAVE 
   PULL RECORD 
   SAY "RECORD BEFORE:" RECORD 
   SAY "RECORD AFTER :" RECORD 
   PUSH RECORD 
   "EXECIO 1 DISKW TO" 
END
INTERPRET TRACE TRLEVEL
"EXECIO 0 DISKR FM (FINIS" 
"EXECIO 0 DISKW TO (FINIS" 
"FREE  DD(FM TO)" 
 
/* "ISPEXEC EDIT DATASET("ODS")"   */ 
 
SIGNAL THEEND
BADEND: 
ADDRESS TSO
"FREE  DD(X)" 
"FREE ALL" 
EXIT () 
 
THEEND: 
ADDRESS TSO
"FREE ALL" 
EXIT 

--
For IBM-MAIN subscribe / signoff / archive access instructions, send email
to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO Search the
archives at http://bama.ua.edu/archives/ibm-main.html

--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.432 / Virus Database: 268.16.8/621 - Release Date: 09/01/2007
13:37
 

-- 
No virus found in this outgoing message.
Checked by AVG Free Edition.
Version: 7.5.432 / Virus Database: 268.16.8/621 - Release Date: 09/01/2007
13:37
 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: REXX EXECIO changing LOWERCASE TO UPPERCASE

2007-01-09 Thread Ted MacNEIL
>Put PARSE before your ARG and you'll be sorted.

ITYM "... before your PULL".

  
Yaw tee pucketty!
Rum ting clue!
Ni! Ni! Ni!
Arrooo!  

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: REXX EXECIO changing LOWERCASE TO UPPERCASE

2007-01-09 Thread Paul Gilmartin
In a recent note, John Mattson said:

> Date: Tue, 9 Jan 2007 13:18:28 -0800
> 
> I have a fairly simple REXX that reads record by record from a PDS member
> and then writes to a new file.  Basically a REXX ibegener. (Yes, I know
> there are better ways, but please humor me, I have reasons.)  Problem is
> that it reads in lowercase characters as UPERCASE. What I want to do is
> PRESERVE the case whatever it is...   Anyone have any ideas no how to fix
> this?
> 
>"EXECIO 1 DISKR FM"
>IF RC>0 THEN LEAVE
>PULL RECORD
>SAY "RECORD BEFORE:" RECORD
>SAY "RECORD AFTER :" RECORD
>PUSH RECORD
>"EXECIO 1 DISKW TO"
>
Use, instead:

 "EXECIO 1 DISKR FM (stem RECORD."
     IF RC>0 THEN LEAVE
 SAY "RECORD BEFORE:" RECORD.1
 SAY "RECORD AFTER :" RECORD.1
 "EXECIO 1 DISKW TO (stem RECORD."

Two instructions fewer to work correctly.

-- gil
-- 
StorageTek
INFORMATION made POWERFUL

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: REXX EXECIO changing LOWERCASE TO UPPERCASE

2007-01-15 Thread Shmuel Metz (Seymour J.)
In
<[EMAIL PROTECTED]>,
on 01/09/2007
   at 01:18 PM, John Mattson <[EMAIL PROTECTED]> said:

>Anyone have any ideas no how to fix this? 

Yes: use PARSE PULL instead of PULL, or use the stem form of EXECIO.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see <http://patriot.net/~shmuel/resume/brief.html> 
Practice Safe REXX

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO UPPERCASE)

2007-01-15 Thread Paul Gilmartin
On Mon, 15 Jan 2007 11:58:13 -0500, Shmuel Metz (Seymour J.) wrote:
> 
> >Anyone have any ideas no how to fix this?
> 
> Yes: use PARSE PULL instead of PULL, or use the stem form of EXECIO.
> 
I'm curious as to why the preponderance of Rexx examples posted to these lists
prefer [PARSE] PULL over STEM (I suggested the latter in my followup).  I avoid
using the stack as much as possible because in my experience it leads to hard-
to-diagnose errors if the PUSHes and PULLs ever get out of sync.  And in the
case where the entire record is needed in a variable, STEM saves a statement.

-- gil
-- 
StorageTek
INFORMATION made POWERFUL

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO UPPERCASE)

2007-01-15 Thread Arthur T.
On 15 Jan 2007 10:20:32 -0800, in bit.listserv.ibm-main 
(Message-ID:<[EMAIL PROTECTED]>) 
[EMAIL PROTECTED] (Paul Gilmartin) wrote:



>Anyone have any ideas no how to fix this?
Yes: use PARSE PULL instead of PULL, or use the stem form 
of EXECIO.
I'm curious as to why the preponderance of Rexx examples 
posted to these lists
prefer [PARSE] PULL over STEM (I suggested the latter in 
my followup).  I avoid
using the stack as much as possible because in my 
experience it leads to hard-
to-diagnose errors if the PUSHes and PULLs ever get out of 
sync.  And in the
case where the entire record is needed in a variable, STEM 
saves a statement.


 I also avoid using the stack.  It's especially 
problematic in TSO:  An accidental end to the EXEC will 
start you executing the rest of the stack as TSO 
commands.  I've had occasion to do that on purpose, but I'd 
hate to have it happen by accident.



--
I cannot receive mail at the address this was sent from.
To reply directly, send to ar23hur "at" intergate "dot" com

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO UPPERCASE)

2007-01-16 Thread wtrovijo
By the way it would be nice to have some kind of modified rexx environment to 
allow rexx programs to share stems. It would avoid passing data thru stacks 
even between different rexx programs. 
 
Walter.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO UPPERCASE)

2007-01-16 Thread Todd Burch
Walter, write one!  I wrote one 10 years ago using standard rexx exits.
Global variables in rexx are great! 

Todd


-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of wtrovijo
Sent: Tuesday, January 16, 2007 10:37 AM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO
UPPERCASE)

By the way it would be nice to have some kind of modified rexx environment
to allow rexx programs to share stems. It would avoid passing data thru
stacks even between different rexx programs. 
 
Walter.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO UPPERCASE)

2007-01-16 Thread Charles Mills
It would be great to be able to pass stems to Rexx functions, internal or
external. Even with an internal function, you are reduced to passing the
NAME of the step in quotes, and having the function use Interpret or Value
or similar.

I don't know exactly what the invocation syntax would be, but it would be
great also if functions could return stems. As it is, if a function wants to
return multiple values, they must be either exposed variables (with all of
the potential problems) or parsed by the caller from a single returned
string (clumsy and non-intuitive).

I guess the "invocation syntax" problem is fundamentally the problem that
Rexx has no "stem assignment." Rexx really could use

ToVar. = FromVar.

Then the stem function invocation could be something like

ToVar. = StemFunc.(x, y, z)

It would not work for "stem functions," but at the very least, it would be
great if you could do "stem assignment" with something like

Do x = Every tail of FromVar.
ToVar.x = FromVar.x
End x

Charles

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of wtrovijo
Sent: Tuesday, January 16, 2007 8:37 AM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO
UPPERCASE)

By the way it would be nice to have some kind of modified rexx environment
to allow rexx programs to share stems. It would avoid passing data thru
stacks even between different rexx programs

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO UPPERCASE)

2007-01-16 Thread Rob Scott
Charles

Checkout the STEMPUSH and STEMPULL rexx functions on www.mximvs.com - I
wrote these some time ago to allow rexx stems to be passed between rexx
execs in the same address space. The rexx variables are pushed onto a
dataspace stack and the STOKEN for the stack is passed to the other rexx
exec where it is used to pull the stem variables down. 


Rob Scott
Rocket Software, Inc
275 Grove Street
Newton, MA 02466
617-614-2305
[EMAIL PROTECTED]
http://www.rs.com/portfolio/mxi_g2

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On
Behalf Of Charles Mills
Sent: 16 January 2007 12:43
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO
UPPERCASE)

It would be great to be able to pass stems to Rexx functions, internal
or external. Even with an internal function, you are reduced to passing
the NAME of the step in quotes, and having the function use Interpret or
Value or similar.

I don't know exactly what the invocation syntax would be, but it would
be great also if functions could return stems. As it is, if a function
wants to return multiple values, they must be either exposed variables
(with all of the potential problems) or parsed by the caller from a
single returned string (clumsy and non-intuitive).

I guess the "invocation syntax" problem is fundamentally the problem
that Rexx has no "stem assignment." Rexx really could use

ToVar. = FromVar.

Then the stem function invocation could be something like

ToVar. = StemFunc.(x, y, z)

It would not work for "stem functions," but at the very least, it would
be great if you could do "stem assignment" with something like

Do x = Every tail of FromVar.
ToVar.x = FromVar.x
End x

Charles

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On
Behalf Of wtrovijo
Sent: Tuesday, January 16, 2007 8:37 AM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO
UPPERCASE)

By the way it would be nice to have some kind of modified rexx
environment to allow rexx programs to share stems. It would avoid
passing data thru stacks even between different rexx programs

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO UPPERCASE)

2007-01-16 Thread Shmuel Metz (Seymour J.)
In <[EMAIL PROTECTED]>, on 01/15/2007
   at 12:20 PM, Paul Gilmartin <[EMAIL PROTECTED]> said:

>I'm curious as to why the preponderance of Rexx examples posted to
>these lists prefer [PARSE] PULL over STEM (I suggested the latter in
>my followup).

My guess would be training. ObUnsolicitedPlug Maybe some companies
could productivity throw some business Steve's way.

Personally, I'm more curious about why so many people have trouble
with uninitialized variables and with expression syntax. Possibly
that's due to some back REXX textbooks floating around.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO UPPERCASE)

2007-01-16 Thread Charles Mills
Thanks. Nice looking code!

I kind of wonder about the overhead of looping through all of the Rexx
variables with IRXEXCOM. A lot of work if the program has lots of variables,
but the stem in question has only a few tails.

Charles

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Rob Scott
Sent: Tuesday, January 16, 2007 4:12 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO
UPPERCASE)

Charles

Checkout the STEMPUSH and STEMPULL rexx functions on www.mximvs.com - I
wrote these some time ago to allow rexx stems to be passed between rexx
execs in the same address space. The rexx variables are pushed onto a
dataspace stack and the STOKEN for the stack is passed to the other rexx
exec where it is used to pull the stem variables down. 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO UPPERCASE)

2007-01-17 Thread Rob Scott
Charles

In the case you outline the overhead is probably non-trivial - but
unavoidable.

This is one of the reasons for making the "delete dataspace on pull"
optional in STEMPULL - so that a "init" style rexx exec could load up
all the required variables and then other execs can pull them down
multiple times if required. Obviously not all users of STEMPULL/PUSH
will fall under this design umbrella and will have to keep going through
the IRXEXCOM loop.
 


Rob Scott
Rocket Software, Inc
275 Grove Street
Newton, MA 02466
617-614-2305
[EMAIL PROTECTED]
http://www.rs.com/portfolio/mxi_g2

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On
Behalf Of Charles Mills
Sent: 16 January 2007 19:32
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO
UPPERCASE)

Thanks. Nice looking code!

I kind of wonder about the overhead of looping through all of the Rexx
variables with IRXEXCOM. A lot of work if the program has lots of
variables, but the stem in question has only a few tails.

Charles

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On
Behalf Of Rob Scott
Sent: Tuesday, January 16, 2007 4:12 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO
UPPERCASE)

Charles

Checkout the STEMPUSH and STEMPULL rexx functions on www.mximvs.com - I
wrote these some time ago to allow rexx stems to be passed between rexx
execs in the same address space. The rexx variables are pushed onto a
dataspace stack and the STOKEN for the stack is passed to the other rexx
exec where it is used to pull the stem variables down. 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO UPPERCASE)

2007-01-20 Thread Shmuel Metz (Seymour J.)
In <[EMAIL PROTECTED]>, on 01/16/2007
   at 09:43 AM, Charles Mills <[EMAIL PROTECTED]> said:

>It would be great to be able to pass stems to Rexx functions,
>internal or external.

Well, if you could convince IBM to port OOREXX to MVS, ...
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO UPPERCASE)

2007-01-20 Thread Charles Mills
I'll give Sam a call on Monday.

Charles

-Original Message-
From: IBM Mainframe Discussion List [mailto:[EMAIL PROTECTED] On Behalf
Of Shmuel Metz (Seymour J.)
Sent: Saturday, January 20, 2007 3:20 PM
To: IBM-MAIN@BAMA.UA.EDU
Subject: Re: PULL? PUSH? STEM? (was: REXX EXECIO changing LOWERCASE TO
UPPERCASE)

In <[EMAIL PROTECTED]>, on 01/16/2007
   at 09:43 AM, Charles Mills <[EMAIL PROTECTED]> said:

>It would be great to be able to pass stems to Rexx functions,
>internal or external.

Well, if you could convince IBM to port OOREXX to MVS, ...
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see <http://patriot.net/~shmuel/resume/brief.html> 
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Regarding using a variable as line number for updating a sequential file using EXECIO DISRU

2009-04-01 Thread sabarish kannan
Hi

 I have a situation in a TSO REXX pgm, where i will not be knowing the
linenum which is being updated, before hand.It will be known only at
runtime. So i have setup a counter which gets incremented and when the
condition gets satisfied for updating a row in a sequential file i try to
use a command like below

"EXECIO 1 DISKRU INSEQ LCTR"

Where LCTR is the line counter. But it gives a error saying the line can be
number or should not be provided. How can we try using a variable ? Any
tips.

thanks
Sabarish

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Regarding using a variable as line number for updating a sequential file using EXECIO DISRU

2009-04-01 Thread Gary Threadgold
sabarish kannan  on 2009-04-01 at 09:53 wrote:
>Hi
>
> I have a situation in a TSO REXX pgm, where i will not be knowing the
>linenum which is being updated, before hand.It will be known only at
>runtime. So i have setup a counter which gets incremented and when the
>condition gets satisfied for updating a row in a sequential file i try to
>use a command like below
>
>"EXECIO 1 DISKRU INSEQ LCTR"
>
>Where LCTR is the line counter. But it gives a error saying the line can be
>number or should not be provided. How can we try using a variable ? Any
>tips.
>
>thanks
>Sabarish

Hi Sabarish,
You'll need to move your counter variable outside the quotes:

"EXECIO 1 DISKRU INSEQ" lctr

Regards,
Gary.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Regarding using a variable as line number for updating a sequential file using EXECIO DISRU

2009-04-01 Thread sabarish kannan
Hi Gary

 Thanks. It works.

Sabarish

On Wed, Apr 1, 2009 at 2:01 PM, Gary Threadgold  wrote:

>  sabarish kannan  on 2009-04-01 at 09:53
> wrote:
> >Hi
> >
> > I have a situation in a TSO REXX pgm, where i will not be knowing the
> >linenum which is being updated, before hand.It will be known only at
> >runtime. So i have setup a counter which gets incremented and when the
> >condition gets satisfied for updating a row in a sequential file i try to
> >use a command like below
> >
> >"EXECIO 1 DISKRU INSEQ LCTR"
> >
> >Where LCTR is the line counter. But it gives a error saying the line can
> be
> >number or should not be provided. How can we try using a variable ? Any
> >tips.
> >
> >thanks
> >Sabarish
>
> Hi Sabarish,
> You'll need to move your counter variable outside the quotes:
>
> "EXECIO 1 DISKRU INSEQ" lctr
>
> Regards,
> Gary.
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
> Search the archives at http://bama.ua.edu/archives/ibm-main.html
>

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html