To be clear, Active Links are client side operations and each operation is 
independent of each other
operation.  So, in this case, the different actions that take independent 
actions to the database are in
separate API calls and are separate transactions.

Filters fire within the context of an API call and are a single transaction to 
the environment.  So, if you do
20 pushes, they are all done as one unit of work in a single database 
transaction (unless of course you do a
"commit transaction" step in your workflow to defeat us....)   NOTE that even 
if you override the phasing,
it is still one transaction within a filter - again, unless you specifically 
have a workflow operation that does
a commit transaction.

So, now you know what is and what is not in a transaction.

This also emphasizes when you should be using different parts of workflow.

Active links are for screen fiddling - changing the screen, pre-loading data, 
doing lookups....
Filters are for business logic - all the real process logic that you are 
performing....

It sounds like what you are doing here is business logic and you should be 
doing it in filters.  If you are not
saving the parent record, you can get them all in a single filter transaction 
by using a Service call as has been
already mentioned.

Remember, active links fire when you are in the browser or windows client only. 
 They are not fired by any
automated program interaction or web service interaction or anything but the 
BMC clients.  Filters on the
other hand are fired for ALL interaction from whatever source.  This is further 
emphasis that business logic
should be in filters so that it is processed no matter what the interaction.


I hope this helps clarify things,

Doug Mueller

From: Action Request System discussion list(ARSList) 
[mailto:arslist@ARSLIST.ORG] On Behalf Of Longwing, Lj
Sent: Monday, September 09, 2013 7:32 AM
To: arslist@ARSLIST.ORG
Subject: Re: Remedy Rollback Functionality

**
I seem to remember that AL's don't have phases....phasing is only for Filters, 
and that everything happens immediately.

Truly...this would be easy enough to test...as you said...if someone simply 
wanted to :)

On Mon, Sep 9, 2013 at 8:27 AM, Rick Cook 
<remedyr...@gmail.com<mailto:remedyr...@gmail.com>> wrote:
**
If your assertion is that the AL Push is in itself a separate DB action, then 
yes, that would stand and the Filter actions would be separate transaction 
sets, subject to their own rollback.  I think whether it is treated as a 
separate DB action is the question on the table here.

Is it processed as a separate transaction, or as a different phase within the 
same transaction set?  I seem to recall AL Push actions kind of running in a 
Phase 1.5 type of way.  I would suggest that Sahil export a record from forms 
F1 and F2 in the DB, turn on Filter/SQL logs and run the transaction to see 
what actually changes in the records at the DB level, comparing the 
post-transaction records to the saved copy.  That will show whether there is 
anything to worry about regarding AL actions and rollback.
Rick

On Mon, Sep 9, 2013 at 7:13 AM, Longwing, Lj 
<llongw...@usgs.gov<mailto:llongw...@usgs.gov>> wrote:
**
Rick,
I believe that you are incorrect in this statement.  Sahil specifically states 
that the AL in question is doing a Push action.  While you are correct that 
actions on 'current' record are all part of a single transaction, a Push is a 
separate and standalone transaction (I believe)....so while if there are errors 
in AL2, the 'save' won't commit, I believe that anything that happened with a 
push will have already been committed to the DB, and not rolled back.

On Mon, Sep 9, 2013 at 8:10 AM, Rick Cook 
<remedyr...@gmail.com<mailto:remedyr...@gmail.com>> wrote:
**
Guys, you're all missing something.  Active Link actions that fire at the 
client level only perform actions against a displayed COPY of the record in the 
DB.  Those changes aren't committed to the DB until a Save action (i.e. Commit 
Changes/Save) occurs.  So from a DB perspective, there are no AL transactions 
to roll back, because they weren't sent there until a DB action (Modify/Create) 
occurs.
Since all DB-based transactions can be rolled back, as you all correctly 
mentioned, the net result of that rollback is a record that, at the DB level, 
is entirely what it had been prior to the initiation of the transaction.  What 
displays on the client may be different, but that, again, is just a copy, an 
overlay, if you will.

Rick

On Mon, Sep 9, 2013 at 6:52 AM, Misi Mladoniczky 
<m...@rrr.se<mailto:m...@rrr.se>> wrote:
Hi,

I agree completely with L.J. here. Use filters.

There is one instance though where filters do not roll back, and that is if
you do Filter Service Calls to perform any database stuff. This in not that
common though.

        Best Regards - Misi, RRR AB, http://rrr.se

> The simple answer, is do it with Filters.  Change your two active links to
> be a single active link with a service action, have filters triggered on
> service that perform the actions of both active links.
>
> This has multiple benefits, less activity between client and server, which
> gives a better performance experience, secondly, the benefit you are
> looking for of transaction integrity.
>
>
> On Mon, Sep 9, 2013 at 7:15 AM, Sahil 
> <pathania.sa...@gmail.com<mailto:pathania.sa...@gmail.com>> wrote:
>
>> **
>> Thanks for the answer
>>
>> Then how the data integrity be maintained. If a operation is performed and
>> change request is created along with task. This action is performed by two
>> ALs. Now if one AL is failed then one request gets created and other not.
>> ??
>>
>>
>> regards
>> sahil
>>
>>
>> On Mon, Sep 9, 2013 at 3:10 PM, Longwing, Lj 
>> <llongw...@usgs.gov<mailto:llongw...@usgs.gov>> wrote:
>>
>>> **
>>> No, Active links are each separate transactions, so action 1 does not
>>> roll back.
>>>
>>>
>>> On Mon, Sep 9, 2013 at 4:27 AM, Sahil Pathania
>>> <pathania.sa...@gmail.com<mailto:pathania.sa...@gmail.com>>wrote:
>>>
>>>> Hello Experts,
>>>>
>>>> I just wanted to know the rollback functionality of ARS.
>>>>
>>>> I am saving request on the form. I have 3 Active links  A1, A2 and A3
>>>> which push data to the form F1 F2 and F2.
>>>>
>>>> Once A1 Active link fires and commit the data to form F1, then network
>>>> error comes and A2 could not fire.
>>>>
>>>> Does remedy rollback the transition on F1.
>>>>
>>>>
>>>> I  know it happens in case of filter  but not sure about Active links..
>>>>
>>>> Remedy ARS 7.6.04, oracle DB
>>>>
>>>>
>>>> regards
>>>> Sahil
>>>>
>>>>
>>>> _______________________________________________________________________________
>>>> UNSUBSCRIBE or access ARSlist Archives at 
>>>> www.arslist.org<http://www.arslist.org>
>>>> "Where the Answers Are, and have been for 20 years"
>>>>
>>>
>>> _ARSlist: "Where the Answers Are" and have been for 20 years_
>>
>>
>>
>>
>> --
>> *Cheers!!*
>> *Sahil Pathania*
>>
>>  _ARSlist: "Where the Answers Are" and have been for 20 years_
>
> _______________________________________________________________________________
> UNSUBSCRIBE or access ARSlist Archives at 
> www.arslist.org<http://www.arslist.org>
> "Where the Answers Are, and have been for 20 years"
>

_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at 
www.arslist.org<http://www.arslist.org>
"Where the Answers Are, and have been for 20 years"

_ARSlist: "Where the Answers Are" and have been for 20 years_

_ARSlist: "Where the Answers Are" and have been for 20 years_

_ARSlist: "Where the Answers Are" and have been for 20 years_

_ARSlist: "Where the Answers Are" and have been for 20 years_

_______________________________________________________________________________
UNSUBSCRIBE or access ARSlist Archives at www.arslist.org
"Where the Answers Are, and have been for 20 years"

Reply via email to