×
The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.
Hello Charles,
As you can see, the 'UPDATE sometable SET somefield = somefield' does
noting except to cause the update trigger on sometable to be fired.
Yes, I understand that. But, the UPDATE will cause an update event to
occur in the trigger, whereas a read will cause a READ event to occur in
the trigger. A READ will only fill in the "before" buffer, not both the
before and after like the update will.
So a program that reads the whole file isn't much of a substitute for
one that updates the whole file -- at least from a "testing a trigger"
point of view.
Thus, my desire for a program that gets passed a tablename,
'sometable' in this case, and a trigger program name, say 'MYTRGPGM',
which will then read each record in sometable, build an approprite
pseudo-trigger buffer and call MYTRGPGM.
Oh, I see... you're not trying to FIRE the trigger... you're trying to
build your own trigger buffer on the fly, and then CALL the program
manually... okay, I see.
Hmmm... I do have a sample program here:
http://www.scottklement.com/cpytoifs/cpytoifs.zip
This program isn't exactly what you're looking for, but perhaps will
give you a starting point. The program reads an entire PF/LF and writes
it's contents to the IFS (using the IFS APIs). Obviously, you can
remove the IFS code, and add your own code to build the trigger buffer.
You'll notice that the Ropen() in this program specifies arrseq=Y and
blkrcd=Y -- that causes the file to be read in arrival sequence
(non-keyed sequence) and enables record blocking, respectively. I did
that mainly for performance -- and I suspect that you'd want to do the
same thing, but I thought I should point it out, just in case you didn't :)
The other thing... I ignore the null field map in this program. You,
however, might want to change the code to access that null field map,
since you may want to include it in your trigger buffer.
But, otherwise, I expect it to be a good start to what you want to do.
As an Amazon Associate we earn from qualifying purchases.