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