Dynamics4.0和Dynamics2011处理Email的方法

在这里对Dynamics4.0Dynamics2011中处理Email的方法做一个简单的总结:

 

DynamicsEmail是作为一个Activity Entity存在的,并且存储在ActivityPointerBase表中(这个表的field集合了所有的Activity Entity的字段,如:EmailAppointmentLetterTaskFax等等);

而每一个Activity Entity会与其他的Entity进行相应的关联,这样的关联关系存储在ActivityPartyBase表中,这个表中三个最主要的字段:ActivityId表示Activity EntityIdPartyId表示与之相关联的其他EntityIdActivityPartyId为此表的主键。

EmailSearchBase这个表中记录了所有的EmailAddress的关联关系,即:这个EmailAddress是哪一个EntityEmailAddress字段。

EmailAddressActivity EntityEmail是有本质上的区别的,这样的设计和SalesForce中的Email的设计是一样的。EmailAddress只是一个ObjectSF)或是EntityDynamics)记录的一个字段;而Activity EntityEmail则是进行收发的Email实体,只不过FromToCcBcc会分别关联到相应的EmailAddress,在SFFromToCcBcc就是一个EmailAddress字符串,但是在DynamicsFromToCcBcc是一个含有EmailAddress字段的Entity(如:useraccountlead等等)。

Dynamics API 4.0中创建Email时添加FromToCcBcc的方法是

activityparty from = new activityparty();

from.partyid = new Lookup();

from.partyid.type = "systemuser";

from.partyid.Value = new Guid(“F60AF982-54C2-E011-B910-0050568E03AC”);

emailEntity.from = new activityparty[] { from };

activityparty to = new activityparty();

to.partyid = new Lookup();

to.partyid.type = "account";

to.partyid.Value = new Guid(“60007DC6-62C2-E011-BA0B-0050568E03AC”);

emailEntity.to = new activityparty[] { to };

等等。。。

Dynamics API 2011中创建Email时添加FromToCcBcc的方法是

Entity emailEntity = new Entity("email");

Entity to = new Entity("activityparty");

to.Attributes.Add("partyid", new EntityReference("account", new Guid("CBC1FB8F-42CA-E011-999B-0050568E03AC")));

emailEntity.Attributes.Add("to", new Entity[] { to });

 

原文地址:https://www.cnblogs.com/mingmingruyuedlut/p/2177370.html