使用xsjs发送.ics文件作为附件发送

2020-09-16 12:56发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我目前正在尝试使用xsjs发送.ics日历文件。 我可以将文件作为附件发送,但是每当您尝试打开它时,都会从Outlook中收到一条错误消息,提示"操作失败"。

我尝试将代码放入controller.js文件,并使用window.open()下载.ics文件。 可以进行下载,打开文件后,它将在Outlook中显示一个新窗口,以将事件添加到日历中。

有人知道为什么该方法不适用于通过电子邮件发送.ics文件的原因吗? 任何帮助将不胜感激。

controller.js中的代码(下载.ics文件没有任何错误):

 var msgData1 ='20180719T230000Z';
 var msgData2 ='20180720T225959Z';

 var icsMSG =" BEGIN:VCALENDAR \ nVERSION:2.0 \ nPRODID:-//SAP//NONSGML v1.0//EN \ nBEGIN:VEVENT \ nUID:sample@sap.com \ nDTSTAMP:20180706T170000Z \ nATTENDEE; CN = sample;  RSVP = TRUE:MAILTO:sample@sap.com \ nORGANIZER; CN = Me:MAILTO :: sample 
@ sap.com \ nDTSTART:" + msgData1 +" \ nDTEND:" + msgData2 +" \ n位置:\ nSUMMARY :SAP Vacation \ nEND:VEVENT \ nEND:VCALENDAR";
window.open(" data:text/calendar; charset = utf8," + escape(icsMSG));

xsjs中的代码(发送.ics文件但无法打开):

 var msgData1 ='20180719T230000Z';
 var msgData2 ='20180720T225959Z';

 var icsMSG =" BEGIN:VCALENDAR \ nVERSION:2.0 \ nPRODID:-//SAP//NONSGML v1.0//EN \ nBEGIN:VEVENT \ nUID:sample@sap.com \ nDTSTAMP:20180706T170000Z \ nATTENDEE; CN = sample;  RSVP = TRUE:MAILTO:sample@sap.com \ nORGANIZER; CN = Me:MAILTO :: sample
 @ sap.com \ nDTSTART:" + msgData1 +" \ nDTEND:" + msgData2 +" \ n位置:\ n摘要:SAP Vacation \ nEND:VEVENT \ nEND:VCALENDAR";
                
 var mail = new $ .net.Mail({
    发件人:{
       地址:" sample@sap.com"
    },
    至: [{
       地址:" sample@sap.com"
    }],
    主题:" ics测试",
    部分: [
       新的$ .net.Mail.Part({
          类型:$。net.Mail.Part.TYPE_TEXT,
          文字:"日历项目测试",
          contentType:"文本/纯文本"
       })
    ]
 });
 mail.parts.push(
    新的$ .net.Mail.Part({
       类型:$。net.Mail.Part.TYPE_ATTACHMENT,
       数据:逸出(icsMSG),
       contentType:"文本/日历",
       编码:" UTF-8",
       fileName:" SAP.ics"
    })
 );
 var returnValue = mail.send(); 

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我目前正在尝试使用xsjs发送.ics日历文件。 我可以将文件作为附件发送,但是每当您尝试打开它时,都会从Outlook中收到一条错误消息,提示"操作失败"。

我尝试将代码放入controller.js文件,并使用window.open()下载.ics文件。 可以进行下载,打开文件后,它将在Outlook中显示一个新窗口,以将事件添加到日历中。

有人知道为什么该方法不适用于通过电子邮件发送.ics文件的原因吗? 任何帮助将不胜感激。

controller.js中的代码(下载.ics文件没有任何错误):

 var msgData1 ='20180719T230000Z';
 var msgData2 ='20180720T225959Z';

 var icsMSG =" BEGIN:VCALENDAR \ nVERSION:2.0 \ nPRODID:-//SAP//NONSGML v1.0//EN \ nBEGIN:VEVENT \ nUID:sample@sap.com \ nDTSTAMP:20180706T170000Z \ nATTENDEE; CN = sample;  RSVP = TRUE:MAILTO:sample@sap.com \ nORGANIZER; CN = Me:MAILTO :: sample 
@ sap.com \ nDTSTART:" + msgData1 +" \ nDTEND:" + msgData2 +" \ n位置:\ nSUMMARY :SAP Vacation \ nEND:VEVENT \ nEND:VCALENDAR";
window.open(" data:text/calendar; charset = utf8," + escape(icsMSG));

xsjs中的代码(发送.ics文件但无法打开):

 var msgData1 ='20180719T230000Z';
 var msgData2 ='20180720T225959Z';

 var icsMSG =" BEGIN:VCALENDAR \ nVERSION:2.0 \ nPRODID:-//SAP//NONSGML v1.0//EN \ nBEGIN:VEVENT \ nUID:sample@sap.com \ nDTSTAMP:20180706T170000Z \ nATTENDEE; CN = sample;  RSVP = TRUE:MAILTO:sample@sap.com \ nORGANIZER; CN = Me:MAILTO :: sample
 @ sap.com \ nDTSTART:" + msgData1 +" \ nDTEND:" + msgData2 +" \ n位置:\ n摘要:SAP Vacation \ nEND:VEVENT \ nEND:VCALENDAR";
                
 var mail = new $ .net.Mail({
    发件人:{
       地址:" sample@sap.com"
    },
    至: [{
       地址:" sample@sap.com"
    }],
    主题:" ics测试",
    部分: [
       新的$ .net.Mail.Part({
          类型:$。net.Mail.Part.TYPE_TEXT,
          文字:"日历项目测试",
          contentType:"文本/纯文本"
       })
    ]
 });
 mail.parts.push(
    新的$ .net.Mail.Part({
       类型:$。net.Mail.Part.TYPE_ATTACHMENT,
       数据:逸出(icsMSG),
       contentType:"文本/日历",
       编码:" UTF-8",
       fileName:" SAP.ics"
    })
 );
 var returnValue = mail.send(); 
付费偷看设置
发送
2条回答
骆驼绵羊
1楼-- · 2020-09-16 13:04

嗨,马克

什么是收件人电子邮件客户端(outlook/gmail/other?)在特定版本上发生?

这个问题在msft论坛上可能会更好,但是我很想看看结果

Cikesha
2楼-- · 2020-09-16 13:28

您好,Sergio,

它正在使用Microsoft Outlook 2016版,但我 尚未尝试在任何早期版本的Outlook中进行尝试。 我认为它也可能更适合在Microsoft论坛上使用,但我认为添加附件的方式可能存在问题,因此我说我将其张贴在这里,看看以前是否有人遇到过这个问题! p>

一周热门 更多>