
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-07-2018 10:57 AM
I have a scheduled data import, using a transform map, to import our users no a daily basis. One of the included fields is 'Enabled' (source) to update the 'Active' (target) field in ServiceNow.
The need is to have a script that looks for a handful of users and changes the Enabled or Active value for them, but only them. I'm a beginner when it comes to programming and have found that this could be done with a onBefore script or maybe a source script.
Latest test is with an onBefore which is allowing the transform to run, but the value is not changing.
(function runTransformScript(source, map, log, target /*undefined onStart*/ ) {
if(source.login == 'nhesgz');
target.active = false;
})(source, map, log, target);
Looking for the best way to do this. Any and all suggestions are welcome.
Solved! Go to Solution.
- Labels:
-
Scripting and Coding

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-08-2018 09:39 AM
okay, so when we run the script in transform map it run for each row and it will check if source.u_login matches and then it will update at run time.
onComplete() will run once when all the transformations are done for all the records (even after for the user which we wanted to set as inactive) and then it will make those users inactive.
I believe using transform map is better option since you will be checking the u_login user at run time for each row transform, and would taking action right away, instead of using onComplete() with GlideRecord query which will try to glide the sys_user table everytime for every specific records.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-08-2018 01:34 PM
Scratch my last post. I fixed it with brackets.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-08-2018 02:36 PM
Great, finally the issue is fixed now. 🙂

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-09-2018 05:42 AM
Yes. Thanks again for all your help. I greatly appreciate it!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎04-16-2024 08:15 PM
Hi @Shishir Srivast ,
I want to update one field value in custom table via transform map.
Field name is delete_date.
But update should be based on logged in user's role, if user has admin role then only this delete_date should get updated.
Else it should be as it is.
So how we can achieve this...?
Currently I am checking for user's role by using gs.hasRole() method in field map script. It's working for admin role (meaning positive testing). But when I am impersonating to some other user (user without admin role), still it's updating delete_date which is not expected.
So expecting some help..😊
Thanks in advance.

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎03-07-2018 04:05 PM
Just now got a notification of your response :), if you are looking for few specific users to be inactive then you try the way Sanjiv has suggested. 🙂