0
使用下面的SOAP我能夠從動態2011 IFD因爲一個特定的日期安裝的被修改檢索所有聯繫人。 此外,它還會從鏈接的「成員資格」記錄中返回一些字段。動態2011 SOAP - RetrieveMultiple只返回一個鏈接記錄
但是,如果存在多個成員資格記錄,它將返回所有我需要返回的最新成員資格記錄(續訂日期字段具有最高日期,並且會員支付日期字段(日期時間)不爲空)。
可以用如何調整如下,以便它不會爲每個聯繫人的會員記錄返回一個記錄任何人的幫助 - 每次僅接觸最新的會員記錄字段只是一條記錄。
<s:Body>
<RetrieveMultiple xmlns="http://schemas.microsoft.com/xrm/2011/Contracts/Services" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<query i:type="a:QueryExpression" xmlns:a="http://schemas.microsoft.com/xrm/2011/Contracts">
<a:ColumnSet>
<a:AllColumns>false</a:AllColumns>
<a:Columns xmlns:b="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<b:string>contactid</b:string>
<b:string>firstname</b:string>
<b:string>lastname</b:string>
</a:Columns>
</a:ColumnSet>
<a:Criteria>
<a:Conditions />
<a:FilterOperator>And</a:FilterOperator>
<a:Filters>
<a:FilterExpression>
<a:Conditions>
<a:ConditionExpression>
<a:AttributeName>createdon</a:AttributeName>
<a:Operator>GreaterThan</a:Operator>
<a:Values xmlns:b="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<b:anyType i:type="c:dateTime" xmlns:c="http://www.w3.org/2001/XMLSchema">2016-08-23T01:03:34+01:00</b:anyType>
</a:Values>
</a:ConditionExpression>
<a:ConditionExpression>
<a:AttributeName>modifiedon</a:AttributeName>
<a:Operator>GreaterEqual</a:Operator>
<a:Values xmlns:b="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<b:anyType i:type="c:dateTime" xmlns:c="http://www.w3.org/2001/XMLSchema">2016-08-23T01:03:34+01:00</b:anyType>
</a:Values>
</a:ConditionExpression>
</a:Conditions>
<a:FilterOperator>Or</a:FilterOperator>
<a:Filters />
</a:FilterExpression>
</a:Filters>
</a:Criteria>
<a:Distinct>true</a:Distinct>
<a:EntityName>contact</a:EntityName>
<a:LinkEntities>
<a:LinkEntity>
<a:Columns>
<a:AllColumns>false</a:AllColumns>
<a:Columns xmlns:b="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<b:string>statecode</b:string>
<b:string>new_cancelledmembership</b:string>
<b:string>py3_membershipproduct</b:string>
<b:string>new_reasoncancelled</b:string>
<b:string>new_cancelleddate</b:string>
<b:string>py3_renewaldate</b:string>
<b:string>modifiedon</b:string>
</a:Columns>
</a:Columns>
<a:EntityAlias i:nil="true" />
<a:JoinOperator>Inner</a:JoinOperator>
<a:LinkCriteria>
<a:Conditions />
<a:FilterOperator>And</a:FilterOperator>
<a:Filters>
<a:FilterExpression>
<a:Conditions>
<a:ConditionExpression>
<a:AttributeName>py3_membershippaymentdate</a:AttributeName>
<a:Operator>NotNull</a:Operator>
</a:ConditionExpression>
</a:Conditions>
<a:FilterOperator>Or</a:FilterOperator>
</a:FilterExpression>
</a:Filters>
</a:LinkCriteria>
<a:LinkEntities />
<a:LinkFromAttributeName>contactid</a:LinkFromAttributeName>
<a:LinkFromEntityName>contact</a:LinkFromEntityName>
<a:LinkToAttributeName>py3_member</a:LinkToAttributeName>
<a:LinkToEntityName>py3_membership</a:LinkToEntityName>
<a:Orders>
<a:OrderExpression>
<a:AttributeName>py3_renewaldate</a:AttributeName>
<a:OrderType>Ascending</a:OrderType>
</a:OrderExpression>
</a:Orders>
</a:LinkEntity>
</a:LinkEntities>
<a:PageInfo>
<a:Count>0</a:Count>
<a:PageNumber>0</a:PageNumber>
<a:PagingCookie i:nil="true" />
<a:ReturnTotalRecordCount>false</a:ReturnTotalRecordCount>
</a:PageInfo>
<a:NoLock>false</a:NoLock>
</query>
</RetrieveMultiple>
</s:Body>