|
Hi Gio,--
I remember reading a post some time back about how to retrieve the
name of the program that updated/inserted/deleted the record that
fired the trigger.
I would presume if you knew the name of the program was NOT the
trigger program that you could ascertain what to do in the trigger
program if I am understanding your question.
It may also help if you could provide more information why updating
one record in the file would require updates to other record(s) in the
same file. (I remember doing things like this a hundred years ago to
maintain RRN chains )
Cheers
From: "Alan Shore via RPG400-L" <rpg400-l@xxxxxxxxxxxxxxxxxx>
To: "RPG programming on IBM i" <rpg400-l@xxxxxxxxxxxxxxxxxx>
Cc: "Alan Shore" <ashore@xxxxxxxx>, "gio.cot" <gio.cot@xxxxxxxxxxx>
Date: 13/08/2020 07:51 PM
Subject: RE: [EXTERNAL] Trigger and recursion problem
Sent by: "RPG400-L" <rpg400-l-bounces@xxxxxxxxxxxxxxxxxx>
Hi Gio
Unless someone says something different, I believe you HAVE to let
this happen A Trigger program captures what is being changed on the
data The suggestions of using a certain language to bypass the trigger
makes no sense You are capturing the data change It shouldn’t matter
what is used to make that data change Anyway, you say that one
particular change could "trigger" a change to a different record on
the same file This should eventually end If it doesn’t, then the logic
that links an update to another record is faulty (in my opinion)
For example
A change to record 1, triggers a change to record 2 A change to record
2, triggers a change to record 3 A change to record 3, triggers a
change to record 4 A change to record 4, triggers a change to record 5
The fault will be if a change to record 5 triggers a change to records
1, 2, 3 or 4 Then the perpetual loop continues If this IS in fact what
needs to happen, I would be asking why?
The jumps HAVE to end sometime
I CAN see that if the jumps are in fact limited, the trigger program
could bog down the system because so may jumps are being created
Alan Shore
E-mail : ASHORE@xxxxxxxx
Phone [O] : (631) 200-5019
Phone [C] : (631) 880-8640
‘If you're going through hell, keep going.’
Winston Churchill
-----Original Message-----
From: RPG400-L [mailto:rpg400-l-bounces@xxxxxxxxxxxxxxxxxx] On Behalf
Of gio.cot via RPG400-L
Sent: Thursday, August 13, 2020 5:31 AM
To: rpg400-l@xxxxxxxxxxxxxxxxxx
Cc: gio.cot <gio.cot@xxxxxxxxxxx>
Subject: [EXTERNAL] Trigger and recursion problem
Hi all
I have this situation:
in the item master data file, i have a trigger ; now i would need add
in the trigger program a change, that in some situation do some
update to another record always in the item master data file , which
however fire again the trigger causing recursive error. How could
menage this situation (trigger that updates another record of the same
file that has fired the
trigger) ?
i have read several post (some one say to use C, other says that i can
use CLP or also Ile with procedure.. and i'm very confused) in this
moment i have a master/mediator trigger program that call one o more
program (reading a file where i have strored the programs to call)
that receive this two parameters
DbTrgDs
DbTrgLen
DbTrgDS DS
DbFil Like( StdNam )
DbLib Like( StdNam )
DbMbr Like( StdNam )
DbTrgAct Like( StdChr )
DbTrgTim Like( StdChr )
DbCmtLck Like( StdChr )
DbReserve1 3
DbCcsId Like( StdBin4)
DbReserve2 8
DbBfrOfs Like( StdBin4)
DbBfrLen Like( StdBin4)
DbBfrNulOf Like( StdBin4)
DbBfrNulLn Like( StdBin4)
DbAftOfs Like( StdBin4)
DbAftLen Like( StdBin4)
DbAftNulOf Like( StdBin4)
DbAftNulLn Like( StdBin4)
DbTrgBuf 1 32767A
DbTrgAry 1A OverLay( DbTrgBuf )
Dim( %Size ( DbTrgBuf ))
DbTrgAry 1 32767 Dim( 32767 )
DbTrgLen S Like( StdBin4 )
Any idea or suggestion ? (P.S. i'm running on V7R2)
Thanks in advance
Gio
--
Questa e-mail è stata controllata per individuare virus con Avast
antivirus.
https://www.avast.com/antivirus
--
This is the RPG programming on IBM i (RPG400-L) mailing list To post a
message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe,
or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.
Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.
Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com
--
This is the RPG programming on IBM i (RPG400-L) mailing list To post a
message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe,
or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.
Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.
Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com
______________________________________________________________________
This email has been scanned by the Symantec Email Security.cloud service.
______________________________________________________________________
______________________________________________________________________
This email has been scanned for computer viruses. Although MSD has
taken reasonable precautions to ensure no viruses are present in this
email, MSD cannot accept responsibility for any loss or damage arising
from the use of this email or attachments.
______________________________________________________________________
--
This is the RPG programming on IBM i (RPG400-L) mailing list To post a
message email: RPG400-L@xxxxxxxxxxxxxxxxxx To subscribe, unsubscribe,
or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives at
https://archive.midrange.com/rpg400-l.
Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.
Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.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.