Posts

Generating Passwords

Image
Searching for an OOB* feature to generate User passwords, I have found the example below. var username = 'itil' ; var password = SNC . PasswordPolicyEvaluator . generateUserPassword ( username ) ; gs . info ( password ); // to view the password If we try to access the SNC API in a Scoped Application it will not work because it is designed for System Administrators. They can run scripts within the Global scope.  Last month while participating as a Hacktoberfest maintainer I had the chance to evaluate a contribution regarding password generation: var PasswordGenerator = Class .create(); PasswordGenerator .prototype = { initialize: function () {}, // // Input: Minimum password length that is required // Returns a random password for the min length specified // generate: function (givenPasswordLength) { var specials = '!@#$%&*()_+<>[].~' ; var lowercase = 'abcdefghijklmnopqrstuvwxyz' ; var upperc...

Creating Custom Apps - Part 1

Image
  In this video series we will discuss about the ServiceNow App Engine module and its features. Special thanks to my friend Kleber for participating in this series. Thank you.

Hacktoberfest

Image
I just completed the #ServiceNowHacktoberfest by having 4 contributions accepted! - Service Portal is a single place for everyone to access information, services and different applications. For my first contribution   (1068)  I shared a use case to get a parameter from the URL and use it into an Ajax call, recovering information from the database to show within the User Interface. - For my second pull request   (1069) I talked about best practices, explaining how to safely update a record. If we're not cautious with this kind of programming we can accidentally insert records instead of updating them. - For my third contribution   (1085)  I explained how to validate a field provided within a Catalog Item/Record Producer so that the date can't be in the past.  - The last one   (1093) was about fixing a direct reference to the Choice table. This is an internal table and it is not best practice to reference that table directly when you are crea...

LIVE Let's meet Mr. Paul Morris

Image
Holding 7 ServiceNow trophies in a row, he totally deserves the title of The ServiceNow Nerd.   Our guest is the ServiceNow MVP Paul Morris - a ServiceNow Certified Technical Architect. He has more than a decade of experience within the ServiceNow platform and he talked about details of his side project. Check Paul´s contacts below. Blog:  sn-nerd.com Linkedin: www.linkedin.com/in/paul-morris-perthwa  

PROJECT Golden Ticket matching tool

Image
        Simon Hendery  shared his thoughts  about having a matching tool when Golden Ticket's owners could donate it in case they don't have someone in mind.       Simon asked the developer community for help and when I read it I immediately thought...  YES!       When I said to Simon that I've developed the App, it was like throwing a rock into a river. I could see a ripple moving away from where the rock landed:       1) Just a few days online and the tool found the first match. Cheers Simon! The idea was yours!       2) Jace Benson posted about it spreading the idea.        3) Allen Andreas asked about the statistics and the s ection  Our Numbers  w as implemented.        4) The tool was featured in JaceNow Youtube channel. Thanks Jace!        Analysing the solut...

How to hide a Related List

Do you know about the Related List that displays people who can approve or reject a document? Recently a scenario came up where the developer needed to prevent the employee who created a record from approving that document. It wasn't common because usually the operational level creates the document while a manager approves it. Leaving this question of personas aside and focusing on the problem, what would be a possible solution? The first workaround that came to my mind was to hide the Approval list if the user who registered was viewing his own record. A workaround is not the ultimate solution. Just a palliative fix while we find time to think about the ideal one. The action plan 1) Every record has a field called sys_created_by; 2) On the front-end (client side) we have access to an API called Glide User that has some information about the logged in user. Among them is the name in the userName property. What if we create a ...