响应CRM 2011中的电子邮件活动图像

时间:2012-12-10 15:01:34

标签: javascript dynamics-crm-2011 dynamics-crm crm jscript

如何在回复电子邮件活动时保留图片?
当在CRM中查看时,电子邮件中的图像显示 - 它们作为附件添加。当我单击“响应”按钮时,写下一个响应,然后发送响应,从电子邮件中删除图像并且不附加到电子邮件中。

我一直在用JScript尝试各种各样的东西。
我宁愿不要写除JScript以外的任何东西。

2 个答案:

答案 0 :(得分:1)

使用javascript可以实现这一点。我不知道你尝试了什么,但这可以做到。即捕获表单的发送事件并使用Javascript创建附件。

其他选项包括:

  • 您可以使用工作流程附加父电子邮件的备注 响应。但是你将被迫保存你的电子邮件等待 一会儿(执行工作流程),然后发送电子邮件。
  • 编写插件代码(但除了Javascript之外你不会使用其他任何东西

Javascript删除附件:

function deleteAttachments(){ 
    var notesId = {GUID of notes};
    var objNotes = new Object();
    objNotes.DocumentBody = null;
    objNotes.FileName = null;
    objNotes.FileSize = null;
    objNotes.IsDocument = false;
    updateRecord(notesId, objNotes, “AnnotationSet”);
}

function updateRecord(id, entityObject, odataSetName) {
        var jsonEntity = window.JSON.stringify(entityObject);
        var serverUrl = Xrm.Page.context.getServerUrl();
        var ODATA_ENDPOINT = “/XRMServices/2011/OrganizationData.svc”;
        var updateRecordReq = new XMLHttpRequest();
        var ODataPath = serverUrl + ODATA_ENDPOINT;
        updateRecordReq.open(‘POST’, ODataPath + “/” + odataSetName + “(guid’” + id + “‘)”, false);
        updateRecordReq.setRequestHeader(“Accept”, “application/json”);
        updateRecordReq.setRequestHeader(“Content-Type”, “application/json; charset=utf-8″);
        updateRecordReq.setRequestHeader(“X-HTTP-Method”, “MERGE”);
        updateRecordReq.send(jsonEntity);
}  

答案 1 :(得分:1)

我可以在这里访问附件:
https:{org。 URL} /xrmServices/2011/OrganizationData.svc/EmailSet(guid'3848cb4d-673f-E211-b9af-005056bd0001' )/ email_activity_mime_attachment

guid是电子邮件的指南。
图像存储在d:Body中作为Base64。
现在我需要做的是用src =“data:image / png; base64,theverylongstring ...
为每个内联图像重写img 所有内嵌图像都将作为Base64保留在响应中。