|
There are two fields used to define the before and after images. They are defined as pairs and look like the following: ************************************* ** Trigger data map ** D PARM1 DS D FNAME 1 10 D LNAME 11 20 D MNAME 21 30 D TEVENT 31 31 D TTIME 32 32 D CMTLCK 33 33 D RSVD01 34 36 D CCSID 37 40B 0 D RSVD02 41 48 D OLDOFF 49 52B 0 D OLDLEN 53 56B 0 D OONOFF 57 60B 0 D OONLEN 61 64B 0 D NEWOFF 65 68B 0 D NEWLEN 69 72B 0 D NNOFF 73 76B 0 D NNLEN 77 80B 0 D RSVD03 81 96 **** ** Old record format ** D OldData 97 1245 D OOMAP 1246 1480 **** * New record data D NEWData 1481 2629 D NOMAP 2630 2864 The fields OldData and Newdata are as wide as the triggered files record length. In this case the file has a record length of 1149 bytes. The fields Oomap and Nomap have one byte for each field in the triggered file. In this case the file has 235 fields, so the fields are 235 bytes long. By the way this information is right out of the IBM manuals. > -----Original Message----- > From: Jim Langston [SMTP:jlangston@conexfreight.com] > Sent: Wednesday, August 09, 2000 6:07 PM > To: MIDRANGE-L@midrange.com > Subject: Re: Database Trigger Programs > > From a sample given me, and from what I have in production, I just declare > the > buffer as 32767 and be done with it. The AS/400 doesn't seem to care in > the > least that we are only passing 1000 bytes or whatever. As long as I don't > try to access outside the "real" buffer no problems occur. > > I really don't know what would happen if I tried to use the data outside > the > valid buffer, it would probably be gigo (garbage in, garbage out). > > Regards, > > Jim Langston > > Date: Tue, 8 Aug 2000 23:25:37 -0500 > From: "William Washington III" <w.washington@iols.net> > Subject: Database Trigger Programs > > Hi All! > > When creating a trigger program (in RPG/ILE) there is a variable length > section that contains the before and after image of the record that is > changed. I know how to access them with the offsets. > > My question is: How is the length of the data structure (for the first > parameter of the trigger program) calculated? I always have to make the > data area ridiculously large, then go into debug mode to see where it > ends. > Is there a way to do this programmatically? Any thoughts are appreciated. > > ============================== > William Washington III > w.washington3@njiasystems.com > www.njiasystems.com > ============================== > > +--- > | This is the Midrange System Mailing List! > | To submit a new message, send your mail to MIDRANGE-L@midrange.com. > | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com. > | To unsubscribe from this list send email to > MIDRANGE-L-UNSUB@midrange.com. > | Questions should be directed to the list owner/operator: > david@midrange.com > +--- +--- | This is the Midrange System Mailing List! | To submit a new message, send your mail to MIDRANGE-L@midrange.com. | To subscribe to this list send email to MIDRANGE-L-SUB@midrange.com. | To unsubscribe from this list send email to MIDRANGE-L-UNSUB@midrange.com. | Questions should be directed to the list owner/operator: david@midrange.com +---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.