我需要JavaScript函数的帮助。我正在使用ServiceNow平台。
我有以下要求:
我正在使用Elite page here中发布的代码。
问题:
为什么要将附件添加到记录中两次? 如何通过电子邮件客户端获取最新更新中添加的附件?
//Table: Email [sys_email]
//When: after
//Insert: true
//Update: true
//Condition: !current.instance.nil() && current.type == 'received'
//Script:
addAttachmentAudit();
function addAttachmentAudit() {
var instance = current.instance;
var targetTable = current.target_table;
var grAttachment = new GlideRecord('sys_attachment');
grAttachment.addQuery('table_sys_id',current.sys_id);
grAttachment.query();
while(grAttachment.next()){
grAttachment.table_name = targetTable;
grAttachment.table_sys_id = instance;
grAttachment.update();
var grTargetTable = new GlideRecord(targetTable);
grTargetTable.addQuery('sys_id',instance);
grTargetTable.query();
while (grTargetTable.next()) {
grTargetTable.work_notes =
"Attachment added: " + grAttachment.file_name +
" by email from " + current.sys_created_by;
grTargetTable.update();
}
}
}
答案 0 :(得分:0)
您是否考虑过删除while(grTargetTable.next())块?只需要手动grTargetTable.next()一次,因为你要通过sys_id查询,因此应该只有一个。
我有兴趣知道这是否有效。 对不起,我无法直接评论你的问题,我还没有足够的代表。