24.06.2008, 00:28 | #1 |
Участник
|
Attach к e-mail в CRM 4
Подскажите как в CRM 4 прицепить аттач к e-mail.
В CRM 3 с помощью классов activitymimeattachment и UploadFromBase64DataActivityMimeAttachmentRequest. Но в четверке сласса UploadFromBase64DataActivityMimeAttachmentRequest нет и непонятно как теперь все это делать... Может у кого пример есть или ссылка какая по теме... |
|
24.06.2008, 12:16 | #2 |
Moderator
|
Поискав по ключевому слову Attachment, нашел класс TargetCreateActivityMimeAttachment и еже с ним. Раздел называется "E-mail Attachment (activitymimeattachment) Entity Capabilities"
__________________
http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия. MS Certified Dirty Magic Professional |
|
24.06.2008, 16:32 | #3 |
Участник
|
Да, этот замечательный класс я тоже видел... Только для чего он нужен и как с ним работать я так и не понял
|
|
25.06.2008, 11:02 | #4 |
Заноза в заднице
|
А не пробовали напрямую создавать объект типа activitymimeattachment и передавать значения всех необходимых атрибутов?
__________________
Лень мудрого человека - это необходимое средство нейтрализации кипучей активности руководящих им дураков! |
|
26.06.2008, 17:19 | #5 |
Участник
|
Нда, действительно попробовал и вроде бы что-то получилось. Щас тестируется... Но вот тока непонятно, это Микрософт так все упростил по сравнению с трешкой или я все же чего-то недоделал?..
|
|
30.07.2008, 12:08 | #6 |
Участник
|
Вот у меня работает на account:
//Create a new annotation object, which represents the notes you see in CRM. annotation newsgroupsNote = new annotation(); //The annotation's body. It is displayed in the notes view. newsgroupsNote.notetext = "Don't forget send document"; // - \r\n //The objectid specifies to which business object the annotation belongs. newsgroupsNote.objectid = new Lookup(); newsgroupsNote.objectid.type = EntityName.account.ToString(); newsgroupsNote.objectid.Value = new Guid(context.OutputParameters.Properties["id"].ToString()); //The objecttypecode specifies the type of the parent entity. Though explicitly specified in //the objectid property, it must be set. newsgroupsNote.objecttypecode = new EntityNameReference(); newsgroupsNote.objecttypecode.Value = EntityName.account.ToString(); //The subject. Not displayed in the note view, but when you double click the item, //the dialog will display it. newsgroupsNote.subject = "You should look ready document DOZ.\r\n"; /////////////////// //// RETRIEVE ACCOUNT ASSOCIATED WITH CURRENT REQUEST //////////////////// // // ent.name // // PROCESS DOCUMENT TEMPLATE //////////////////// //Create the annotation ICrmService service = context.CreateCrmService(true); Guid annotID = service.Create(newsgroupsNote); account ent = (account)service.Retrieve(EntityName.account.ToString(), new Guid(context.OutputParameters.Properties["id"].ToString()), new AllColumns()); StreamReader reader = new StreamReader(@"c:\upload.doc"); string input = GetBase64StringFromFile(@"c:\upload.doc"); TargetUpdateAnnotation tua = new TargetUpdateAnnotation(); annotation oAnnotation = new annotation(); Key oKey = new Key(); oKey.Value = annotID; oAnnotation.annotationid = oKey; oAnnotation.filename = oAnnotation.filename = ent.name + "_doz.doc"; oAnnotation.mimetype = "application/msword"; oAnnotation.documentbody = input; CrmNumber oNumber = new CrmNumber(); oNumber.Value = 4; oAnnotation.filesize = oNumber; tua.Annotation = oAnnotation; UpdateRequest req = new UpdateRequest(); req.Target = tua; UpdateResponse resp = (UpdateResponse) service.Execute(req); |
|
|
|