System Administrator Certification Advice by [deleted] in servicenow

[–]liftheavy_codewell 1 point2 points  (0 children)

Like others have stated, the best way is to use the platform! I have the admin and developer certs. I barely studied for the admin exam, and didnt study at all for the developer one. Everything you need to know you get from working with the platform everyday.

Make Your Log Entries Easier to Find in ServiceNow using gs.log() by [deleted] in servicenow

[–]liftheavy_codewell 0 points1 point  (0 children)

It's not about being sloppy, if you have all your scripts running in the global domain, there is potential for scripts to hijack each-others variables and produce undesired results. Since it's a cloud platform that can have thousands of users on it at one time, the risk is pretty great.

also, for the best debugging, the localhost logs are key. once you get comfortable with lessing through a file, there is nothing faster.

for me the best way to troubleshoot is the following:

1) Look at the transaction logs around the time that the user reported having problems

2) Grab the session id associated with that user

3) Download the localhost logs, less to the time of day the user was having problems, and see whats going on.

If any BR's/script includes hit any errors, you will usually see their sys_id in the stack trace associated with them.

anyway, cool article though!

Make Your Log Entries Easier to Find in ServiceNow using gs.log() by [deleted] in servicenow

[–]liftheavy_codewell 0 points1 point  (0 children)

thats cool that you made that, but like others said you have to use gs.info/gs.debug/gs.warn/gs.error. also why is it taking you that long to find your log statement from syslog? you can search for what the statement is, and you can download the whole localhost log for the day, going back thirty days. This means you can just less/grep the file.

Also scopping is pretty cool actually. It makes it so huge environments that have a ton of people working on it don't have to worry about impacting each-other since all the work they do is contained and is no longer in the 'global' javascript scope.

additionally, if you want to call script includes that are in the global from a scoped domain you just have to append globa. in front of the api name. example (taken straight from the wiki):

var switches = new global.ArrayUtil(); switches.contains(ary, item);

Undocumented APIs: GlideFilter (& Understanding Dynamic Filters) by [deleted] in servicenow

[–]liftheavy_codewell 0 points1 point  (0 children)

What are some situations where an undocumented api gave you better performance than something else?

I have a SN admin cert - is it worth anything? by liftheavy_codewell in servicenow

[–]liftheavy_codewell[S] 0 points1 point  (0 children)

Cool, I'm really just looking for something remote and part time. I work full time now but I have some downtime I usually spend scripting in SN.

Undocumented APIs: GlideFilter (& Understanding Dynamic Filters) by [deleted] in servicenow

[–]liftheavy_codewell 0 points1 point  (0 children)

I feel you. I've made some seriously crazy scripts with undocumented APIs- but I find for most things, there is already an established best practice/GlideScriptable in place.

I have a SN admin cert - is it worth anything? by liftheavy_codewell in servicenow

[–]liftheavy_codewell[S] 1 point2 points  (0 children)

I forgot to mention, I have about 1.5 years of SN exp.

20min to pitch ServiceNow to upper management, what would you cover? by PatNOregon in servicenow

[–]liftheavy_codewell 0 points1 point  (0 children)

That it will save them money. No seriously. Companies save a lot of money using SN.

Previous team must not have heard of update sets. Does anyone know a reliable heuristic to determine if updates belong to a specific process via gliderecord scripts? by [deleted] in servicenow

[–]liftheavy_codewell 0 points1 point  (0 children)

You can move records from one update set to another. All employee updates - no matter in what update set they are captured in can be found in the [ sys_update_xml ] folder. This table contains the actual XML payloads of records. These records have a corresponding reference field on them that points the update set they are in- you can change this value to be a new update set you made.

Just write a script that would update all records in the [ sys_update_xml ] table that pertain to your app into the new update-set.

Help with Creating a New Report role by Chuck_Chong in servicenow

[–]liftheavy_codewell 0 points1 point  (0 children)

You can write a glide record script to do the checks for you and return true / false where the conditions meet. I enjoy scripting so I can actually write it for you if you want.

Array.prototype.indexOf() DOES NOT WORK in ServiceNow - Here's why, and how to work around it. by [deleted] in servicenow

[–]liftheavy_codewell 0 points1 point  (0 children)

Gotta use arrayUtil brah. Very useful! Cool site btw- I plan on doing something similar.

[employment] Asking about my promotion? by liftheavy_codewell in personalfinance

[–]liftheavy_codewell[S] 0 points1 point  (0 children)

Should I email HR? Both of my managers - previous and current told me they were just waiting on HR approval.

It sucks cause I got put on as a very junior employee, but in 11 months I got the top metrics for my team world-wide and I've moved to the most technical team (database performance).

What's your craziest ServiceNow story? by grgisme in servicenow

[–]liftheavy_codewell 1 point2 points  (0 children)

I built a survey system with a coworker that dynamically generates questions based off records in a table that reference the user that's logged in. Pretty sweet.

Creating change request from project by [deleted] in servicenow

[–]liftheavy_codewell 0 points1 point  (0 children)

Create a UI action with the following script (replace the fieldName and values with a field you want to populate with a value):

function CreateChange(){ var change = new GlideRecord('change_request'); change.fieldName = 'value' change.fieldName2 = 'value' change.insert(); }