04.03.2010, 10:01 | #1 |
Участник
|
Отправка писем из плагина
Создал плагин,который повесил на создание сущности. Пытаюсь отправить писма из него. Письма создаются,но не отправляются. Я раньше отправлял письма из кода моей страницыи все было прекрасно,теперь этот же код не работает.
Код: InstantiateTemplateResponse instTemplateResponse = (InstantiateTemplateResponse)crmService.Execute(instTemplate); email emailCreate = (email)instTemplateResponse.BusinessEntityCollection.BusinessEntities[0]; emailCreate.regardingobjectid = new Lookup(); emailCreate.regardingobjectid.type = sContentType; emailCreate.regardingobjectid.Value = new Guid(sEntId); //specify the owner for the mail emailCreate.ownerid = new Owner(); emailCreate.ownerid.type = EntityName.systemuser.ToString(); emailCreate.ownerid.Value = userid; //created by emailCreate.createdby = new Lookup(); emailCreate.createdby.type = EntityName.systemuser.ToString(); emailCreate.createdby.Value = userid; activityparty apTo = new activityparty(); apTo.partyid = new Lookup(); apTo.partyid.type = sContentType; apTo.partyid.Value = new Guid(sEntId); emailCreate.to = new activityparty[] { apTo }; // specify the from part of the email activityparty from = new activityparty(); from.partyid = new Lookup(); from.partyid.type = EntityName.systemuser.ToString(); from.partyid.Value = userid; emailCreate.from = new activityparty[] { from }; Guid emailId = crmService.Create(emailCreate); //attachment foreach (object oAttach in arrAttBodies) { activitymimeattachment attachment = new activitymimeattachment(); try { annotation annot = (annotation)oAttach; if (annot != null) { attachment.activityid = new Lookup(); attachment.activityid.Value = emailId; attachment.activityid.type = EntityName.email.ToString(); attachment.filename = annot.filename; attachment.body = annot.documentbody; attachment.mimetype = annot.mimetype; Guid attachmentId = crmService.Create(attachment); } } catch (System.Web.Services.Protocols.SoapException ex) { //ErrorMessage("Create Attachments Error:" + ex.Detail.InnerText); } } //Send the Email try { // Create an SendEmailRequest object SendEmailRequest req = new SendEmailRequest(); req.EmailId = emailId; req.TrackingToken = ""; req.IssueSend = true; // Finally Send the email message. SendEmailResponse res = (SendEmailResponse)crmService.Execute(req); iMailsCnt++; if (!bResult) bResult = true; } catch (System.Web.Services.Protocols.SoapException ex) { //ErrorMessage("Send Mail Error:" + ex.Detail.InnerText); } Единственную разницу которую мне удалось найти это то,что в поле Createdby теперь значение SYSTEM,хотя раньше туда писался пользователь под которым создавались письма. Ошибка ни о чем "0x80040216 An unexpected error occurred. Platform" Вопрос вобщем-то простой WTF? |
|