I'm not familiar with MQ series. But the solution is similar to what
you described. We creates a queue file where trigger conditionally
opens it under commitment control base on the commitment flag from input
buffer. A never ending job then read this file and fire the email.
The basic thing I try to point to is that implementing trigger is not as
easy as what one might think. Most programmer does not put commitment
control into consideration. The process might work fine at the time
that it was implementer. It then starts to break when a new application
is created to update the trigger file under commitment control.
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Murphy, Mark
Sent: Tuesday, June 10, 2008 11:01 AM
To: RPG programming on the AS400 / iSeries
Subject: RE: Trigger programme without a trigger.
Do it asynchronously using MQ Series.
Set up a database trigger that will add a message to an "e-mail queue"
using Syncpoint control when commitment control is active.
Set up your "e-mail queue" with a trigger to start a program that will
send the e-mail whenever a message hits the queue. Or use a never
ending program to wait for a message to hit the queue.
Under sync point control an uncommitted message cannot be read from the
queue, so the e-mail will not be sent until the transaction is
successfully committed.
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of Lim Hock-Chai
Sent: Tuesday, June 10, 2008 11:30 AM
To: RPG programming on the AS400 / iSeries
Subject: RE: Trigger programme without a trigger.
Here is an actual scenario:
I work for a paging company. We have a few applications that allow user
to add/remove/change "Carbon Copy to email address" feature on any
pager. When this feature is added to a pager, all messages sent to this
pager will get "Carbon Copy" to the email address specified. Everything
works fine.
6 months later, business unit requests IT to modify system to start
sending a message to the pager when a "Carbon Copy To Emaill Address"
feature is added/removed/update on the pager. The catch all solution
for this request is to add a trigger to the "Carbon Copy To" file. When
a record is added/updated/changed, this new trigger program will fires
an email to the pager to notify customer about the change. Some of
those applications that maintains the "Carbon Copy To" file
updates/adds/changes this file under commitment control. How should you
write this trigger to make sure that trigger only fires the email after
the changes is committed?
-----Original Message-----
From: rpg400-l-bounces@xxxxxxxxxxxx
[mailto:rpg400-l-bounces@xxxxxxxxxxxx] On Behalf Of David Gibbs
Sent: Tuesday, June 10, 2008 9:20 AM
To: RPG programming on the AS400 / iSeries
Subject: Re: Trigger programme without a trigger.
Lim Hock-Chai wrote:
Yes, trigger should run under the same commitment definition as the
caller program. That is a given. The problem is what if you need the
trigger to do a task that cannot run under commitment control? For
example, send an email under certain condition, submit a job under
certain condition...
What task can't run under commitment control? (IMO) Sending an email or
submitting a job doesn't seem to have any relation to whether or not
commitment control is active.
david
--
IBM System i - For when you can't afford to be out of business
--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing
list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit:
http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at
http://archive.midrange.com/rpg400-l.
--
This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing
list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit:
http://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives at
http://archive.midrange.com/rpg400-l.
This e-mail transmission contains information that is intended to be
confidential and privileged. If you receive this e-mail and you are not
a named addressee you are hereby notified that you are not authorized to
read, print, retain, copy or disseminate this communication without the
consent of the sender and that doing so is prohibited and may be
unlawful. Please reply to the message immediately by informing the
sender that the message was misdirected. After replying, please delete
and otherwise erase it and any attachments from your computer system.
Your assistance in correcting this error is appreciated.
As an Amazon Associate we earn from qualifying purchases.