Subject | RE: [IBO] IBO Transaction management |
---|---|
Author | Support List |
Post date | 2011-11-17T16:13:31Z |
Steve,
event was triggered. The posting of events is held under transaction control
so events are not announced until the transaction they were posted in are
committed. The way you have it written now makes it sound as if receiving
notification from the event alerter impacts transactions and this isn't so.
You may also want to mention in the paper that in some cases it is necessary
to make use of the StoredProcHasDML property so that IBO will know to flag
the transaction as active when the stored procedure is executed. Currently
there is no API level notification that any DML was executed in a stored
procedure. The same applies for EXECUTE BLOCK statements.
It is also possible to use the ExecuteImmediate() statement and IBO does not
impose the burden of parsing those statements to ascertain whether there is
DML in them or not. Thus, if you do pass in something that will make the
transaction active you must manually activate the transaction. This is done
by calling the transactions Activate method.
Hope this helps,
Jason
> Thanks for the suggestions. The document is updated. For those that areYou should say that a POST_EVENT statement was executed rather than and
> interested the permanent link is:
>
> http://www.lnssoftware.ca/blog/?p=141
event was triggered. The posting of events is held under transaction control
so events are not announced until the transaction they were posted in are
committed. The way you have it written now makes it sound as if receiving
notification from the event alerter impacts transactions and this isn't so.
You may also want to mention in the paper that in some cases it is necessary
to make use of the StoredProcHasDML property so that IBO will know to flag
the transaction as active when the stored procedure is executed. Currently
there is no API level notification that any DML was executed in a stored
procedure. The same applies for EXECUTE BLOCK statements.
It is also possible to use the ExecuteImmediate() statement and IBO does not
impose the burden of parsing those statements to ascertain whether there is
DML in them or not. Thus, if you do pass in something that will make the
transaction active you must manually activate the transaction. This is done
by calling the transactions Activate method.
Hope this helps,
Jason