我的這篇文章的標題可能有點混淆,但我會盡量使其儘可能清晰。我遇到了Apex觸發器的問題。我們有一個名爲應收賬款(Managed Packaged)的自定義對象。每個機會與一個或多個應收記錄相關。由於Receivable對象是託管打包的,所以「主詳細關係」不是一個選項。Salesforce Apex觸發器 - 計算金額字段值的總和並更新商機字段
這裏是我的邏輯:
創建的機會觸發(插入和/或更新)>環,其具有觸發機會ID和接收的機會ID字段(ID匹配的所有應收款這是一個機會看看應收賬款中的後續字段)> 使用匯總的金額>自動填充總佣金字段。
觸發器不會拋出任何錯誤,但它也不會自動填充。
trigger newRecaivables on Opportunity (after insert, after update)
{
set<Id> oppid = new set<id>();
list<opportunity> opplist = [select id from opportunity where id in : oppid ];
for(Opportunity Opp : trigger.new)
{
List<aggregateResult> results = [select Fees_Received_Category__c ,sum(McaApp__Amount__c) total from McaApp__Receivable__c Where McaApp__Opportunity__c in:oppid group by Fees_Received_Category__c];
for(AggregateResult ar : results)
{
if (String.valueOf(ar.get('Fees_Received_Category__c'))=='Received')
{
Opp.Total_Commission__c = String.valueOf(ar.get('total'));
}
}
}
}
任何幫助,將不勝感激。
'oppid'爲空。您不會爲其添加值並使用該設置進行查詢。 – Reshma
嗨Reshma,謝謝你的線索。我能夠使它工作。 –
儘量避免SOQL內循環 – Reshma