> -----Original Message-----
> From: IBM Mainframe Discussion List
> [mailto:[EMAIL PROTECTED] On Behalf Of O'Brien, David W.
> (NIH/CIT) [C]
> Sent: Monday, June 11, 2007 8:16 AM
> To: [email protected]
> Subject: CA-1 install - user exits?
>
>
> I've asked CA for clarification and since the response was
> less than satisfactory, I'll ask the group.
>
> Has anyone installed CA-1 r11.5 recently?
Yes. I was not the one doing it, but I have in the past.
>
> I'm not familiar with using Iebupdte and because it is an IBM
> utility CA won't give an example.
IEBUPDTE is very stupid, uh, simplistic. Sequence numbers are assumed to
be in columns 73-80 of each record. They are assumed to be in strictly
ascending order. IEBUPDTE reads the member to be updated and the
updates. When it reads a record from the existing member which has a
sequence number equal to the update record's number, it uses the update
record to replace the existing record. When the update record's number
is less than the existing member's record number, the update record is
ADDED to the output. Some pseudo code might look like:
READ MEMBER RECORD INTO MREC AT END SET MREC-EOF
READ UPDATE RECORD INTO UREC AT END SET UREC-EOF
DO UNTIL MREC-EOF OR UREC-EOF
SELECT
WHEN MREC-KEY = UREC-KEY THEN DO
WRITE OUTPUT FROM UREC
READ MEMBER RECORD INTO MREC AT END SET MREC-EOF
READ UPDATE RECORD INTO UREC AT END SET UREC-EOF
END
WHEN MREC-KEY < UREC-KEY THEN DO
WRITE OUTPUT FROM MREC
READ MEMBER RECORD INTO MREC AT END SET MREC-EOF
END
WHEN MREC-KEY > UREC-KEY THEN DO
WRITE OUTPUT FROM UREC
READ UPDATE RECORD INTO UREC AT END SET UREC-EOF
END
END /* OF SELECT */
END /* OF DO UNTIL */
DO UNTIL MREC-EOF
WRITE OUTPUT FROM MREC
READ MEMBER RECORD AT END SET MREC-EOF
END
DO UNTIL UREC-EOF
WRITE OUTPUT FROM UREC
READ UPDATE RECORD AT END SET UREC-EOF
END
>
> My first question is why use iebupdte at all? Why not insert
> the required code in the appropriate source code and assemble?
This is possible. This methodology actually goes back to when we had
real card decks and not on line editors. So, use of IEBUPDTE is due to
historical inertia. Also, when distributing IEUBPDTE updates, the number
of data needed to be transmitted is smaller than redistributing a
20,000+ card program. Again, in the past, this was a big deal. Also, the
sequence number of records which the vendor anticipates to be replaced
tend to stay "static" so that if you do it correctly, when the vendor
distributes a fix, it will not "back out" your change as well. That's
another reason to not redistribute the entire source module, with fixes
imbedded.
>
> Second question, Can anyone provide an example of what they
> did to install Usermod CL05205 Macro/Source TMSUX2E? or any
> other exit?
We didn't install this particular exit. The smallest that I see that we
did was CL05200.
++SRCUPD (TMSKEYAB) /* SUPPLY CHANGES IN IEBUPDTE FORMAT. */ .
./ CHANGE NAME=TMSKEYAB
FN='UICI INSURANCE CENTER', CL05200
*00016000
FA='9151 GRAPEVINE HWY', CL05200
*00017000
FC='NORTH RICHLAND HILLS, TX. 76180' CL05200
00018000
++MACUPD (TMEYCOMP) /* SUPPLY CHANGES IN IEBUPDTE FORMAT.
CENTER YOUR COMPANY NAME BELOW
IF COMPANY NAME CONTAINS QUOTES, SUPPLY TWO FOR EACH.
*/ .
./ CHANGE NAME=TMEYCOMP
! MODIFIED BY USERMOD CL05200 CL05200
00000045
'UICI INSURANCE CENTER'
00000060
++MACUPD (TMZ$COMP) /* SUPPLY CHANGES IN IEBUPDTE FORMAT.
PROVIDE YOUR COMPANY NAME BELOW
IF COMPANY NAME CONTAINS QUOTES, SUPPLY TWO FOR EACH.
*/ .
./ CHANGE NAME=TMZ$COMP
* MODIFIED BY USERMOD CL05200 CL05200
00000095
VALUE('UICI INSURANCE CENTER')
00000102
The way to find the correct sequence numbers is to VIEW the source
member, notice the sequence number of the record you want to replace,
then replace it.
Though I do not suggest it, you could copy the entire source member into
your change member, make the changes you want and use the IEBUPDTE ./
REPL statement instead of the ./ CHANGE.
>
> Thanks in advance,
> Dave O'Brien
--
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