The CreatorCon Call for Content is officially open! Get started here.

"after" business rule is ok, but when i switch to "async" is is not exectuted anymore ?

christophe_beck
Mega Contributor

Hello, got i problem with async rules.

Made a service,

created an app from this service

made a small business rule with "after" trigerring to test some things, had all the success i wanted.

But now i'd like this BR to call a webservice

It tells me i can't have the BR to "after" if i call a webservice (although it worked the first time but well ... )

So i switch to "async" and my Business rule doesnt seem to be called anymore. The conditions are on "current.approval", or even with no condition at all, or true

my condition is : current.approval=="approved"

here is the only mention of my business rule (manageNewUser) in the logs :

02:04:38.631: Execute before insert business rules on sys_trigger:ASYNC: manageNewUser before engines (order <1000)

02:04:38.631: Global       ==> 'Ensure Valid Schedule' on sys_trigger:ASYNC: manageNewUser

02:04:38.631: Global       <== 'Ensure Valid Schedule' on sys_trigger:ASYNC: manageNewUser

02:04:38.631: Finished executing before insert business rules on sys_trigger:ASYNC: manageNewUser before engines (order <1000)

02:04:38.632: Execute after insert business rules on sys_trigger:ASYNC: manageNewUser before engines (order <1000)

02:04:38.632: Global       === Skipping 'Propagate run all nodes changes' on sys_trigger:ASYNC: manageNewUser; condition not satisfied: Condition: current.system_id == "ACTIVE NODES" || current.system_id == "ALL NODES" || (previous != null && (previous.system_id == "ALL NODES" || previous.system_id == "ACTIVE NODES"))

02:04:38.632: Global       ==> 'Randomize minute for UA jobs' on sys_trigger:ASYNC: manageNewUser

02:04:38.632: Global       <== 'Randomize minute for UA jobs' on sys_trigger:ASYNC: manageNewUser

02:04:38.632: Finished executing after insert business rules on sys_trigger:ASYNC: manageNewUser before engines (order <1000)

what can i do to make this rule execute ?

bonus question, how can i log a message in the script so that it appears in the log. I tried gs.log but it yells at me. gs.debug seems to not be working, even when i activated business rule log...

thank you

Christophe

Edit : I should add that this previous log is when the condition is OK

When the condition is NOT OK i have this log (that i prefer personnaly, but still ...)

02:16:36.246: App:Newcomer setup App   === Skipping 'manageNewUser' on x_133971_newcomer_setup_task:NEW0001010; condition not satisfied: Condition: current.approval=="approved"Role Conditions: activity_admin,activity_creator,admin,agent_admin,api_analytics_read,approval_admin,approver_user,assessment_admin,asset,assignment_rule_admin,atf_test_admin,atf_test_designer,bsm_legacy,bsm_legacy_admin,business_rule_admin,catalog,catalog_admin,catalog_e

1 ACCEPTED SOLUTION

christophe_beck
Mega Contributor

Ok so turns out i'm too new to this


Async means async so in logs, you probably won't see anything.


Though, when i watch the outgoing http logs, there is was my async request, so i guess it's working as it should !



sorry for disturbance


View solution in original post

7 REPLIES 7

I see where the confusion is with this "previous" object.



the condition you are talking about seems to be the condition for the   :


=== Skipping 'Propagate run all nodes changes


business rule, which isn't mine.


christophe_beck
Mega Contributor

Ok so turns out i'm too new to this


Async means async so in logs, you probably won't see anything.


Though, when i watch the outgoing http logs, there is was my async request, so i guess it's working as it should !



sorry for disturbance


Community Alums
Not applicable

Hi christophe.beckerich,

I'm having an issue with a BR running fine when after but if I switch to async, it will only run certain times.

It would be useful to know where you are getting these async request logs from? Is it from the Today's Scheduled Jobs module?

Thank you