Attachment mandatory not working in Serviceportal

salu
Mega Guru

Hello All,

I am trying to make attachment mandatory in catalog item and service portal. Below script working in catalog item but not working in serviceportal.

 

We are using Add to cart button in service portal.

 

function onSubmit() {
//Works in non-portal ui
try {
var attachments = document.getElementById('header_attachment_list_label');
if (attachments.style.visibility == 'hidden' || attachments.style.display == 'none') {
alert('You must attach the completed form before submitting this request.');
return false;
}
}
//For Service Portal
catch (e) {
var count = getSCAttachmentCount();
if (count <= 0) {
alert('You must attach the completed form before submitting this request.');
return false;
}
}
}

Can some please help??

 

Thanks

Saranya

1 ACCEPTED SOLUTION

Ankur Bawiskar
Tera Patron
Tera Patron

@salu

Refer blog below

Verify Mandatory Attachments Count on Catalog Item

Sharing the steps and script here

Script: onSubmit

UI Type - ALL

Applies to Catalog Item - True

Note: Ensure Isolate Script field is set to False for this Catalog Client Script to ensure DOM manipulation works

function onSubmit() {
	//Type appropriate comment here, and begin script below

var countRequired = 1;
	if(window == null){
		// portal
		if(this.document.getElementsByClassName('get-attachment').length != countRequired) {
			alert('You must attach the completed form before submitting this request.');
			return false;
		}
	}
	else{
		// native view
         var length = $j("li.attachment_list_items").find("span").length;
		if(length != countRequired){
			alert('You must attach the completed form before submitting this request.');
			return false;
		}
	}
}

Isolate Script: Set to False

image

 

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

View solution in original post

21 REPLIES 21

You missed one thing on your old script. you did not include your ui script inside the service portal theme . 

 

eg:

 

  1. In the Left Navigator Bar, go to Service Portal > Portals

  2. Click the Portal you want to adjust. It maybe be the one with URL suffix of "sp".

  3. Click the "info" button for the Theme. The standard theme is "Stock" or “La Jolla”

  4. Scroll to the bottom to the JS Include Related List

  5. Add your JS Include there

Create New JS Theme
Display Name: GlobalCatalogItemFunctions
UI Script: GlobalCatalogItemFunctions

 

This is the reason your are getting error in console. at least  give a try to so you will be sure what was you missing. 

you should at least try with my last response which you were missing. I tested that in my personal instance and working after that. include your ui script in portal theme then that method would be reachable on portal. 

Hello Harshan,

Thank you very much for help and doing it from your end.I have added the theme and it got worked.

 

Appreciating your help!!

 

Thanks a ton!!!

 

Thank you

Ankur Bawiskar
Tera Patron
Tera Patron

@salu

Refer blog below

Verify Mandatory Attachments Count on Catalog Item

Sharing the steps and script here

Script: onSubmit

UI Type - ALL

Applies to Catalog Item - True

Note: Ensure Isolate Script field is set to False for this Catalog Client Script to ensure DOM manipulation works

function onSubmit() {
	//Type appropriate comment here, and begin script below

var countRequired = 1;
	if(window == null){
		// portal
		if(this.document.getElementsByClassName('get-attachment').length != countRequired) {
			alert('You must attach the completed form before submitting this request.');
			return false;
		}
	}
	else{
		// native view
         var length = $j("li.attachment_list_items").find("span").length;
		if(length != countRequired){
			alert('You must attach the completed form before submitting this request.');
			return false;
		}
	}
}

Isolate Script: Set to False

image

 

Regards
Ankur

Regards,
Ankur
Certified Technical Architect  ||  9x ServiceNow MVP  ||  ServiceNow Community Leader

It worked.Thank you very much