Error in brule
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-27-2015 10:04 PM
Hi All,
I am getting an error when using
car str= new GlideStringUtil() and
var a = new sysAttachment()
error message - illegal access of GlideStringUtil in the script
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-28-2015 03:53 AM
Hi All,
Thanks for your valuable reply.
Its not an scoped application .
Actually my requirement is to send an attachment with the incident from one SNow instance to another SNow instance through Web services.
Below is my code ,
var StringUtil = new GlideStringUtil();
var attachments = new GlideSysAttachment();
var fileName, contentType;
var gR = new GlideRecord('sys_attachment');
gR.addEncodedQuery('table_name=incident^table_sys_id='+current.sys_id);
gR.query();
while(gR.next()){
try {
var binData = attachments.getBytes(gR);
var encData = StringUtil.base64Encode(binData);
gs.log('XML Respons for payload='+encData);
var s = new sn_ws.SOAPMessageV2('create_attachment', 'insert');
s.setStringParameter('source', 'change_request:'+current.u_change_sysid);
s.setStringParameter('payload', encData);
s.setStringParameter('topic', 'AttachmentCreator');
s.setStringParameter('agent', 'AttachmentCreator');
s.setStringParameter('name', gR.file_name+':'+gR.content_type);
var response = s.execute();
var responseBody = response.getBody();
var status = response.getStatusCode();
}
catch(ex) {
var message = ex.getMessage();
}
}
Any suggestions ??
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-28-2015 04:00 AM

- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-28-2015 04:04 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎07-28-2015 04:23 AM
Hi Pradeep,
FYR,
Below is my full code for the task
function onAfter(current, previous) {
/*var xmldoc = new XMLDocument(response, true);
var str= xmldoc.getNodeText("//short_description");
gs.log(str);
var strg=xmldoc.getNodeText("//assigned_to");
gs.log(strg);*/
var s = new sn_ws.SOAPMessageV2('CreateINC533', 'insert');
s.setStringParameter('assigned_to', current.assigned_to);
s.setStringParameter('short_description', current.short_description);
s.setStringParameter('number', current.number);
var response = s.execute();
var responseBody = response.getBody();
var status = response.getStatusCode();
/*
gs.addInfoMessage(response.toString());
var helper = new XMLHelper(response);
var obj = helper.toObject();
logObj(obj, "*" );
function logObj(obj, sep){
for (var x in obj){
if (typeof obj[x] != "function"){
if(x == "sys_id" && JSUtil.notNil(obj[x])){
gs.log(sep + x + ":: " + obj[x]);
//Attachment Creator
var grSysAtt = new GlideRecord('sys_attachment');
grSysAtt.addQuery('table_sys_id', current.sys_id);
grSysAtt.query();
while (grSysAtt.next()){
gs.log(grSysAtt.table_sys_id + 'sys id of the record foound');
var sa = GlideSysAttachment();
var binData = sa.getBytes(grSysAtt);
var encData = GlideStringUtil.base64Encode(binData);
gs.log("Encoded data:" + encData);
//var sm =new sn_ws.SOAPMessageV2('CreateAttachment533', 'insert');
s.setStringParameter('agent', 'AttachmentCreator');
s.setStringParameter('topic', 'AttachmentCreator');
s.setStringParameter('payload', encData);
s.setStringParameter('name', grSysAtt.file_name+':'+grSysAtt.content_type);
s.setStringParameter('source', grSysAtt.table_name+':'+obj[x]);
// var response2 = sm.execute();
// var responseBody2 = response2.getBody();
// var status2 = response2.getStatusCode();
}
}
}
logObj(obj[x], sep + "*" );
}
}*/
// var StringUtil = Packages.com.glide.util.StringUtil;
//var StringUtil = new GlideStringUtil();
//var attachments= Packages.com.glide.ui.SysAttachment();
//var attachments= new GlideSysAttachment();
var StringUtil = new GlideStringUtil;
var attachments = new GlideSysAttachment();
var fileName, contentType;
var gR = new GlideRecord('sys_attachment');
gR.addEncodedQuery('table_name=incident^table_sys_id='+current.sys_id);
gR.query();
while(gR.next()){
var binData = attachments.getBytes(gR);
var encData = StringUtil.base64Encode(binData);
gs.log('XML Respons for payload='+encData);
var s1 = new sn_ws.SOAPMessageV2('Create_Attachment', 'insert');
s1.setStringParameter('source', 'change_request:'+current.u_change_sysid);
s1.setStringParameter('payload', encData);
s1.setStringParameter('topic', 'AttachmentCreator');
s1.setStringParameter('agent', 'AttachmentCreator');
s1.setStringParameter('name', gR.file_name+':'+gR.content_type);
var response1= s1.execute();
var responseBody1 = response1.getBody();
var status1 = response1.getStatusCode();
}}
I tried with XMLHelper , It seems ticket is creating but attachment not found in that ticket in another instance .
So that I am trying to copy the attachment .
Thanks in advance
Kind Regards,
VimalPriya S