Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Populate the reference variable incident number on catalog item form through url

Ankita Gupte
Kilo Sage

I have added variable "Task Number" (name = number) referencing to incident table on standard laptop catalog item form (catalog item sysid = 04b7e94b4f7b4200086eeed18110c7fd). Now I want to auto populate the incident number "INC0000001" in Task Number field on catalog item form using url parameter.

I am new to this configuration. Please help me achieve the same.

1 ACCEPTED SOLUTION

@Ankita Gupte 

 

Try as below :

 

1. Create a Variable for Task Number :

 

AmitVerma_0-1724400197127.png

 

2. Configure an On-Load Catalog Client Script as shown below. Ensure that Isolate Script is set to False :

 

AmitVerma_1-1724400345872.png

function onLoad() {
    //Type appropriate comment here, and begin script below
    var taskNumber = getParameterValue('number');
    if (taskNumber) {
        g_form.setValue('number', taskNumber);
    }

    function getParameterValue(number) {
        var url = window.location.href;
        var value = new URLSearchParams(url).get(number);
        if (value) {
            return value;
        }
    }


}

 3. Hit the Catalog Item URL with number as the parameter. I have made use of the URL https://<myinstance>.service-now.com/now/nav/ui/classic/params/target/com.glideapp.servicecatalog_ca...

 

Output :

AmitVerma_2-1724400546884.png

Thanks and Regards

Amit Verma


Please mark this response as correct and helpful if it assisted you with your question.

View solution in original post

10 REPLIES 10

@Ankita Gupte 

 

Please refer below link and see if it helps :

https://www.servicenow.com/community/itsm-forum/fill-catalog-variable-via-url/m-p/2748704

 


Please mark this response as correct and helpful if it assisted you with your question.

Hi tried using above solution and used below url

instance.name/now/nav/ui/classic/params/target/com.glideapp.servicecatalog_cat_item_view.do%3Fv%3D1%26sysparm_id%3D04b7e94b4f7b4200086eeed18110c7fd%26task_number%3DINC0010017

 

But the incident number INC0010017 is not populating in task number

 

@Ankita Gupte 

 

Try as below :

 

1. Create a Variable for Task Number :

 

AmitVerma_0-1724400197127.png

 

2. Configure an On-Load Catalog Client Script as shown below. Ensure that Isolate Script is set to False :

 

AmitVerma_1-1724400345872.png

function onLoad() {
    //Type appropriate comment here, and begin script below
    var taskNumber = getParameterValue('number');
    if (taskNumber) {
        g_form.setValue('number', taskNumber);
    }

    function getParameterValue(number) {
        var url = window.location.href;
        var value = new URLSearchParams(url).get(number);
        if (value) {
            return value;
        }
    }


}

 3. Hit the Catalog Item URL with number as the parameter. I have made use of the URL https://<myinstance>.service-now.com/now/nav/ui/classic/params/target/com.glideapp.servicecatalog_ca...

 

Output :

AmitVerma_2-1724400546884.png

Thanks and Regards

Amit Verma


Please mark this response as correct and helpful if it assisted you with your question.

Amazing @Amit Verma,

The isolate script option in my catalog client script was true, I inactivated it and it worked. 

Thank you so much, Much Appreciated!

 

Dnyaneshwaree
Mega Sage

Hello @Ankita Gupte ,

You can try this by creating onload catalog client script to set value of task no. and use below URL format and update it:
https://<instance_name>.service-now.com/sp?id=sc_cat_item&sys_id=<catalog_item_sysid>&sysparm_task_n...



Please accept my solution if it works for you and thumps up to mark it as helpful.
Thank you!!

Dnyaneshwaree Satpute
Tera Guru