Adding attachment button to service catalog request

Jan-Z
Giga Expert

I have created a service catalog item which requires documents to be attached to the request before the request can be submitted. The team working with this request does not like the paperclip icon and they would like a "button" but in the middle of the service catalog item below an already created label. They want the "button" because they feel it will be more visible to end users submitting requests.

To accomplish this I created a variable macro with label and used the macro add_attachment. This looks correct and provide the look the end users want BUT
it does not work. Upon testing I can add attachments using this button and the attachments appear at the top of the request as attachments under manage attachments. BUT upon submission the attachments disappear. When I look at the submitted request there are no attachments, when I look at the SC item there are no attachments.

Does anyone know how to add an attachments 'BUTTON" to an SC request? Or to fix the issue I am having using the macro with label? Any help would be appreciated. Thanks.

1 ACCEPTED SOLUTION

1. Create UI Macro
1a. In the "Type Filter Text" search for UI Macro
1b. Create New:
1c. Paste the following code:



<?xml version="1.0" encoding="utf-8" ?>
<j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">
<b>Use the paperclip</b>
<a onclick="saveCatAttachment(gel('sysparm_item_guid').value, 'sc_cart_item')">
<img title="Attachments..." height="16" src="images/icons/attachment.gifx" border="0" width="16"/></a>
<b>to attach items to this request.</b>
</j:jelly>

2. Add a Variable to your Catalog Item.
3. Type-- UI Macro
4. Choose your newly created macro in step 1.
5. It should show up on your form (see attachment) it is clickable and functions just as the OOB paperclip icon on the top right of forms.
6. If you want change two attributes in the code above
6a. Change the icon by uploading an icon or choosing one from the image browser (src="images/icons/attachment.gifx" or src="images/pdf.gifx")
6b. Change the size of the icon (height="16" or height="25")

Try out your UI macro.


View solution in original post

40 REPLIES 40

Hi Jonathan,



Thanks for the reply to the post. I'm able to provide the "Attachment" icon but unfortunately when I click on it nothing happens. I have admin and security admin rights.


sir how to make the language change for this?



Screenshot_7_2_13_11_57_AM.png



while picking language from language picker... this alone not changing... will u please help me...


juola
Kilo Contributor

Hi Abil,



You can include translated content by replacing fixed content with "messages".



If you now have this on the UI macro: <b>Use the paperclip</b>  


Just replace it with: <b>${gs.getMessage('use.paperclip')}</b>




And then define the "use.paperclip" message for all the languages you need on the sys_ui_message table: System UI --> Messages.




Hope this helps.


Any chance you got this to work with record producers in Fuji?   For me, it's not displaying the attachment anywhere on the HR Case form/record.   (I've added the attachment related list to the HR case form and it doesn't show there either).



Appreciate any further insight you may have.


Bharath Padaki
ServiceNow Employee
ServiceNow Employee

Hi Patrick,



I used the following code in the macro, which did the trick for me. However, I haven't tested this in Fuji, possible that the saveCatAttachment function has been deprecated? -


************


<?xml version="1.0" encoding="utf-8" ?>


<j:jelly trim="false" xmlns:j="jelly:core" xmlns:g="glide" xmlns:j2="null" xmlns:g2="null">


<button onclick="saveCatAttachment(gel('sysparm_item_guid').value, 'hr_case')">Add Attachment</button>


</j:jelly>


************