- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-11-2015 06:05 AM
HI Experts,
Need help , I have a business rule for certifications.
1) First thing is its working
2) It is executing twice
Details:
When Business rule is fired, it is checking the 'certification filter' and creates tasks , but twice . WHY? this is the issue . It should be generating only once not twice.
Any idea how to make it run only once i mean my code is:. THANKS
-----------------------------------------------------------------------------------------------------
function pdCertTest()
{
var rec = new GlideRecord('cert_schedule');
rec.get('name', 'Priority Incident Closure Certification');
if (typeof SncTriggerSynchronizer != 'undefined')
{
//gs.addInfoMessage("Execute..");
SncTriggerSynchronizer.executeNow(rec);
}
}
----------------------------------------------------------------------------------------------------
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
09-14-2015 06:49 AM
There is no need of current.update() in before BR because after executing Before BRs system itself perform current.update() operation. On other hand the statement current.update() will lead to a loop of update of same record again and again. Check section 4 from below link and get more info on this.
http://wiki.servicenow.com/index.php?title=Business_Rules_Best_Practices
Just remove current.update() from before BR and everything it work will fine.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
06-29-2016 05:29 AM
I used it anyway to execute a Scheduled Import and it worked like a charm, despite being on a 'Global' application. So i guess I'll be using that from now on. It seems like the new clean wrapper to execute a scheduled job.