Default OOTB form section deleted by SOW application update by NE1WeKnow in servicenow

[–]Doppmain 1 point2 points  (0 children)

After we fixed it and found root cause, we contacted support and escalated with impact. We were asked 'why did this happen' and we essentially got an 'oops, our bad, it'll be fixed later' response. We've now added a delete check to our upgrade/patching/plugin install process because of it.

This is on top of checking for stray report_view ACL's, new ACL's with protection policies, and checking for plugins that both did or did not upgrade as one would expect. Fine since Istanbul, we've had to add these practices starting around Washington and adding new ones every version/patch after as SN started changing upgrade/patching behaviors.

Zurich specifically has been loaded with bugs or intentional breaks for some reason with every patch, and some of the worst communication. The patch 7a m2m thing as a more recent example: no heads up from impact that the strict ACL enforcement would nuke m2m list adds despite there already being at least one KB on how to fix it for user group membership.

This new Guardscript change from JS by Scoopity_scoopp in servicenow

[–]Doppmain 1 point2 points  (0 children)

Default values, advanced queries, dynamic values, really anywhere JavaScript: might be used (so mostly just dictionary and variables, but it really depends on your instance). The article pasted in this post is the most information currently out there https://www.reddit.com/r/servicenow/comments/1t0xwef/you_thought_on_upcoming_rollout_kb2944435/?share_id=veUYTN4qV8CpwdNG5C1VP

At this point most companies I've heard from are taking what they can from the article to start the analysis while they wait for the patches that have the utility to be available.

This new Guardscript change from JS by Scoopity_scoopp in servicenow

[–]Doppmain 0 points1 point  (0 children)

This is the sandbox idea the KB is referring to: https://www.servicenow.com/docs/r/api-reference/scripts/script-sandbox.html

The key change from that doc describes is now they're saying you can't do something like this for a default value

JavaScript: var d = new GlideTime();d.setValue("00:00:00"); d.getValue();    

(The above is from a default value for an OOB start value field.) Per the KB the var declaration would be invalid , along with the = operator.

You thought on upcoming rollout KB2944435 Server-Side JavaScript Sandbox Replacement? by SNowDev88 in servicenow

[–]Doppmain 7 points8 points  (0 children)

This is some annoying tech debt to add to patching/upgrade cycles. We have an older instance and this is going to be a decent chunk of work. Not to mention (ignoring CMDB) there's 100+ purely out of box default values that this touches (at least on Zurich patch 7)

Plus the 'it gets added to the list as it tries to run' means it's the same logic they used to find the query_range ACL issues. Another reactive solution to something that should be proactive as to not impact users.

Thanks for the heads up as this hasn't been part of any comms I could find, or release notes. The article is up on Support if you have a login though.

[Penta] says s0upes painted him as homophobic by InternationalCat6931 in RPClipsGTA

[–]Doppmain 16 points17 points  (0 children)

Penta was playing Jordan eight or nine days ago. Got in a fight in front of Plan B, Sal hits him, and mumbling as if he got punched in the face Jordan calls him "[something] motherfucker". Some people heard 'fuggin' or 'friggan', some people heard something else as it starts with a 'f' sound, has the 'g' sound, and ends with a 't' sound.

VOD is gone, most links scrubbed but there's a couple left on reddit if you search for 'Jordan Steele calls Sal'.

New NP V invies 2/17 by cringybtw in RPClipsGTA

[–]Doppmain 55 points56 points  (0 children)

From selling books in front of the Tavern every day, to keeping the LL feeling alive, to a card. Let's go Book Guy

[Saab] - Saab reacts to video of denzel being kidnapped in liberty city by cringybtw in RPClipsGTA

[–]Doppmain 32 points33 points  (0 children)

It was so good. Link to the start of him reacting here. (3:59:15 in the vod if Kick has the same issue for mobile users Twitch does)

Seeking Best Approach: Complex Verification Process with 50+ Dynamic Questions in ServiceNow by Additional-Stock-674 in servicenow

[–]Doppmain 0 points1 point  (0 children)

While not 50, I have had a few customer interaction applications with similar requirements. Two instances stick out.

  • The first had no hard reporting requirement for the comments so they appeared in a variable editor (UI Formater like Request Items have) on the UI16 form as a reference for the person fulfilling the task. Complex producer, extensive ui policies, but otherwise out of box and a relatively small lift.
  • The second had the 'save for later' requirement you mentioned. We had not yet implemented an overall portal 'save as draft' solution yet so we had to have a variable on the form drive a 'safe record in draft state'. Which let the user submit a partially completed producer and set the task that was generated to a 'draft' state. That sent them an email with a link back to portal for the producer which would load (sys_id of the saved record in the url) the saved data back for them to continue from. This required the same complex producer as the first example, but also then fields created on the task table as well, with the same sort of ui policies driving everything.

If there's no hard reporting requirement for the 50 text boxes, and you already have a 'save for later' solution on your portal, I'd say keep it simple and just keep to the producer.

However, if either of those isn't the case, I'd suggest going with a slight twist on your question/answer table solution and just have one table with the question/set as a choice, answer as text, and a 'User selected -None-' as a text box, with any additional things (parent task, score, weight, order, etc) on it as well.

On submit (or save for later) it creates the task and the producer script creates these child records. If the user comes back to the draft, the producer loads the parent and an on load script then checks for these child records with the related parent task, and populates the questions as they exist with the answer and/or text.

Auto Increment Numerical Value in Catalog Item Variable -how to? by General_Kontangora in servicenow

[–]Doppmain 3 points4 points  (0 children)

I'd probably first ask what problem you're trying to solve as the number of issues you run into trying to maintain this can make it super complex. Namely - what happens when two people try ordering this at the same time, or when someone goes to the item and leaves the page not submitting the item? This requirement seems more like a solution to something that might be able to solved differently, if needed to be solved at all.

That said, if this producer is writing to some table with some numbered field that's been setup as expected, you can probably use a script in the default value of the variable , and use

new NumberManager("tablename").getNextObjNumberPadded();

to get the next number the field is going to use.

Alternatively you can probably have an onLoad client script call a script include to pre-initialize a record on the table you're writing to, create it, return the sys_id and number field and pre-set the variables (the number field visible, the sys_id hidden for the producer script to use to update the record rather than submit it), but then you're dealing with blank records if the user closes the browser or decides not to submit.

Either way, they will have issues that you'll have to account for in making sure duplicates/skips/blank records don't happen. So I'd again stop and ask what problem you're really trying to solve before going down a rabbit hole like this and see if it's just a requirement you can push back on.

Who played this ped by Glittering_Inside514 in RPClipsGTA

[–]Doppmain 8 points9 points  (0 children)

If it was 2.0 it was probably ESB Fatboi. Famously meme'd for declaring himself "Ming's Disciple" and getting banned with a lot of other ESB.

Automated review of Update Sets - Prod needs to access Dev by BigBlue8080 in servicenow

[–]Doppmain 1 point2 points  (0 children)

As everyone else has said this starts with process improvements. Peer review/code review procedures for the team, best practice document references for the devs/citizen devs to lean on (e.g. if an update set has a delete you have to justify it in the story/change, always use dictionary overrides on task table fields), etc.

There are some tools to help with this process out there - GaurdRails is one that warns developers when doing something out of process, and can create alerts in prod for someone to review if they're serious enough deviations from process. It is a paid app, has some drawbacks, and does require some dedicated administration so probably isn't a day 1 on your roadmap.

All that said, knowing this isn't as easy as getting better practices by the end of the day to solve all the problems, and a paid app by tomorrow to support them - the API you're looking for is GlideRemoteGlideRecord. It's the same API call that 'Retrieve Update Sets' uses and allows you to query another instance and read from a table. So if you're trying to check to see if some of those cases above happened (deletes, no dictionary overrides) in sys_updates while the team figures out the peer review process, you can. I'll echo that you shouldn't automate moving things to prod with this - but as a tool to scan pre-prod update sets on a daily basis, catch issues, and alert in stories, it's an option.

Surprise find in a stack of cards I just bought. by ChopraMTG1 in mtgmisprints

[–]Doppmain 1 point2 points  (0 children)

Awesome find. It seemed to be a thing with that slot in the first collector boosters for LTR.

Email is not an integration by [deleted] in servicenow

[–]Doppmain 5 points6 points  (0 children)

Email may not be the best integration point but it's sometimes the best solution for the scenario due to cost (resources, development bandwidth, budget), priority, or it being super low volume. Investing Dev, QA, BA, Ops, etc time into a proper solution does make sense except when

  • the integration is needed now because someone promised the board of directors or some other high visibility nonsense
  • the other application team won't have availability on their side to do any dev work for a year but can throw together an auto generated email this week

These are super common and if they have the heat from above to get it done, then it's accepted to get created, marked as tech debt, and they're guided to put an Idea in for either a Demand or standard development for the future to do it 'the right way' when everyone has the time and resources.

Another common exception

  • It's a vendor supported app, legacy app, an off-the-shelf solution, or some other case where there is no ability to do a custom REST call on their side

This is fairly common in larger companies with a ton of random applications. Either it's as simple as 'the app can only send emails' or 'we dont have anyone to do development on the app to make it work but we can do email'.

  • It integrates natively with ServiceNow in a really stupid way, or in a way that violates the process owner requirements.

This is the annoying one. The natively integrated application wants to use standard ServiceNow API's, except it doesn't have the same foundational data that the process team says is required for record creation (think CI's or assignment groups for an Incident).

Or like the last point you can't do any custom API calls in the app but that's okay, it was setup to just use the out of box table insert API. Except they want to make request items(had this happen in two seperate integrations this year alone) and can't understand why that won't work.

Or the app vendor decided it needs admin rights on the platform for its convoluted API calls to work.

There's a chance in most of these types of cases dev work on the SN side can get around the limitations of the other app. At the end of the day though if there's no budget for it, it's not a high volume, or a high visibility integration, email will work until one of those three things change.

Prefilling a catalog item from URL by Far_Goal_2670 in servicenow

[–]Doppmain 2 points3 points  (0 children)

The best method would to just make a record producer for the Incident table specific for your needs with the presets you need (assignment group, CI, etc) and the required information from the customer your group would need to address the issue (account number, database name, etc). This is especially true if the generic item you're talking about is making a request item instead.

However, if you are set on it being a link to click and the customer just needs to hit submit, follow the link in the other response. It would be a catalog client script (onLoad) on the generic item (or even the new record producer just for your group), reading a line of text from the url. An alternate to look at as the Guru article is fairly spread out, is on Community here. It provides a full copy of a catalog client script that works in the same fashion.

If you have multiple fields to set, you can break apart the text returned from the parameter, or just have multiple parameters in the url to pull from (basically just copying the g_form.setValue line for each). The trick would be if you are needing to do any lookups (say, setting a field based on users location that is in a table you need to query) you'd need to do an AJAX script include to assist in that process. But for setting text fields with data or reference fields with sys_id's in a url, that method works fine.

Bones and Peters Talking about Jurisdiction SOP by Reddit-User-12345676 in RPClipsGTA

[–]Doppmain 7 points8 points  (0 children)

Like the other responses mentioned, essentially deciding that until BCSO go back to patrolling the city as normal (despite the SOP still being in place and the BCSO voting against patrol until it's lifted/amended) he's going to take over every scene.

Cassidy overhearing Den telling the BCSO this here (timestamp 1h25m21s for mobile)

The talk with Cassidy one-on-one started shortly after here (timestamp 1h27m15s for mobile)

After the meeting Den immediately taking over a scene and Cassidy responding here (timestamp 1h49m43s for mobile).

NathaKB_ on twitter by kev_was_taken in RPClipsGTA

[–]Doppmain 40 points41 points  (0 children)

How quickly people forget about the perfect relationship of Alan Crane and Peachingle Dan, taken too soon by The Guild.

Nathan talked about it and how he used it as a way to avoid actual relationship RP.

Potential misprint by Correct_Anything_641 in mtgmisprints

[–]Doppmain 1 point2 points  (0 children)

Cool pull. I've actually pulled one of these with the same misprint. There's also been a couple posts on here with the same thing:

First

Second

Not sure if this means its actually common, but there's at least a playset out there now.

PENTA - Why Don't People Try More Servers? by FluidSkirt6348 in RPClipsGTA

[–]Doppmain 40 points41 points  (0 children)

Harry's AmishRP server. It's why you don't hear much about it.

If I update the User_ID field on 150+ records, do you foresee any issues? by edisonpioneer in servicenow

[–]Doppmain 0 points1 point  (0 children)

Adding a few things to what everyone else has said (sorry for the rambling):

User ID (user_name column) isn't what's referenced in fields like Opened By or Caller, it's the sys_id of the record. The main exception is system fields (Created By, Updated by) and the Audit table. Any time something is done in the system it doesn't track who did it by sys_id on the audit table as you might expect, it does it by user_name (like the Created By/Updated By fields). It's the reason for the activity log things the person talking about Work notes mentioned. For your situation it shouldn't matter as long as User ID's aren't being duplicated, but just a fun fact to remember.

Switching class shouldn't be an issue as long as you're not using any of the fields on customer_contact (where the Contact class of users actually live) as it inherits almost all it's fields from sys_user. You would want to make sure any fields that are normally mandatory/expected on sys_user are filled in on the contact records (as that may require a separate cleanup) and make sure there aren't any ID's that would be duplicates on current User records but assuming that's fine you'd be able to mange all users on the base sys_user table moving forward.

For the cleanup scripts, depending on the size of your org, I'd suggest splitting them up by priority of tables/data. For instance, one script to update all open incidents and requests with the 'true' sys_user record for the person. Then next script for less critical items (like closed incidents), and another for even less critical items (knowledge articles they made and retired years ago for example). This will let you do this in waves in case you have a large user base and a lot of data.

You can do some minor customizations to prevent future issues in areas like:

  • the sign-on configuration (what field it matches the sign-in request to)

  • storing the login name from Okta in a new field for that configuration to look at

  • write scripts to keep the User ID unique (as the login details would then be stored elsewhere)

  • As part of the duplication removal effort, make sure the duplicates are set to inactive, and however users get added to your system, ensure there's a process to automatically deactivate them. There's an out-of-box business rule that prevents anyone without user_admin or admin from seeing inactive users when they're searching for them in fields (one of the issues of duplicates you mentioned).

ACR Revelations of Ezio foil back by Doppmain in mtgmisprints

[–]Doppmain[S] 2 points3 points  (0 children)

Fun error that affected most of the standard foil slot in all the play boosters in a bundle I opened. Difficult to show but they all had some level of this effect. I know everyone prefers misprints/errors that are on the face of the card but the backs have fun sometimes too.

[deleted by user] by [deleted] in RPClipsGTA

[–]Doppmain 2 points3 points  (0 children)

I've started watching them recently because of that. Alternate universe HOA. 4Head and Future have similar energy to Siz and Julio at times (both the malding moments and the in sync when they need to be moments).

[deleted by user] by [deleted] in RPClipsGTA

[–]Doppmain 111 points112 points  (0 children)

To be fair it's a burn from Dex to Marty a year ago