0
我有與Microsoft Dynamics CRM 2013的以下問題:的Microsoft Dynamics CRM 2013 SDK問題 - 錯誤
我有兩個父實體(法律合同或協議),其參考修正案和財務細節以1:M關係。我需要在子記錄上總結金額並將該金額存儲在父記錄中。
我寫了一個插件,爲每個子實體創建,更新和刪除。
什麼有發生如下:
- 瞭解,如果我的父母是法律合同或協議
- 總和所有的子記錄達
- 尋父和存儲總結值。
問題: 微軟已經去除,以獲得從分格組件的信息在新的SDK所以即使客戶端提供的數據的能力,它是不可訪問。
當我運行下面的代碼我得到的是空的的parentID一個例外:「如果(c.Attributes.Contains(......)」測試導致異常
如果我運行相同。代碼作爲命令行它工作得很好,因爲它pukes插件運行時,它只是
代碼片段:
EntityReference parentAgreementId = new EntityReference();
EntityReference parentContractId = new EntityReference();
QueryByAttribute querybyattribute = new QueryByAttribute("new_invoicedetails");
querybyattribute.ColumnSet = new ColumnSet(true);
// Attribute to query.
querybyattribute.Attributes.AddRange("new_invoicedetailsid");
// Value of queried attribute to return.
querybyattribute.Values.AddRange(sItem.getChildId());
// Query passed to service proxy.
EntityCollection retrieved = service.RetrieveMultiple(querybyattribute);
// Iterate through returned collection.
foreach (var c in retrieved.Entities)
{
If (c.Attributes.Contains("new_contractnumberid"))
{
parentContractId = c.GetAttributeValue<EntityReference>("new_contractnumberid");
}
If (c.Attributes.Contains("new_agreementnumberid"))
{
parentAgreementId = c.GetAttributeValue<EntityReference>("new_agreementnumberid");
}
例外:
在插件發生0 -2147220891 OperationStatus SubErrorCode -2146233088 錯誤。 2014-02-24T20:27:31.028313Z
[Contracts.Plugins: Contracts.Plugins.Autonumber]
[97f9577d-1394-e311-a461-000c29f9727b: PostInvoiceDetailsUpdate]
Execption: Object reference not set to an instance of an object. at Contracts.Plugins.SumAmounts.Execute(IServiceProvider serviceProvider)
Execption: An error occured in the plug-in. at Contracts.Plugins.SumAmounts.Execute(IServiceProvider serviceProvider)
at Contracts.Plugins.Autonumber.Execute(IServiceProvider serviceProvider)
小寫「if語句」不影響結果。 – smellyfeet
你會得到什麼例外?你可以在這裏發佈嗎? –