我真的很感激,如果有人可以指導我檢查更新觸發器內的更新調用中是否包含特定的字段。非常感謝。Salesforce Apex觸發器 - 如何檢查更新觸發器中是否包含字段?
11
A
回答
13
所有字段總是出現在觸發不管他們是否是髒的,以確定是否一個特定的領域已被修改,你必須使用oldMap
地圖這是一個Map<ID, sObject>
檢索該行以前的版本並比較新舊價值觀。例如,
trigger CaseOnParticularFieldUpdate on Case (before update) {
for (Case c: Trigger.new) {
Case oldCase = Trigger.oldMap.get(c.ID);
if (c.Field != oldCase.Field) {
// field was updated, do some magic here
}
}
}
1
觸發器將包括該sobject的所有字段,它將被調用。您可以檢查該對象中任何字段的先前(舊)值和當前(新)值,並可以對其進行比較並相應地執行操作。
希望它可以幫助你。
相關問題
- 1. Apex觸發器Salesforce
- 2. Salesforce Apex:如何測試觸發器是否被調用
- 3. Salesforce觸發器:自定義對象的更新字段觸發器
- 4. 的Apex觸發器來更新查閱字段(聯繫)
- 5. APEX觸發器的Salesforce測試類
- 6. 批量觸發字段更新salesforce
- 7. Salesforce事件更新父記錄(Apex後插入觸發器)
- 8. 更新字段按觸發器更新
- 9. Apex觸發器 - 如何使用觸發器更新所有案例所有者?
- 10. Orcacle Apex觸發器
- 11. 爲了更新Salesforce中的查找字段,我需要一個Apex類還是隻需要一個觸發器?
- 12. Apex測試類 - 觸發器未觸發
- 13. sybase更新觸發器檢查
- 14. 檢查約束違反之前更新後觸發器觸發
- 15. 如何確定表字段是否包含在插入觸發器中
- 16. 更新觸發器是否更新其自己的表,調用觸發器?
- 17. Salesforce的更新後觸發
- 18. 從INSERT觸發器更新時觸發更新後未觸發
- 19. 如何使用Rest API創建Apex觸發器和apex類?
- 20. 檢測更新查詢是否來自觸發器
- 21. 如何在200多條記錄上運行salesforce apex觸發器
- 22. 確定更新觸發器是否由ON UPDATE CASCADE觸發
- 23. 如何從Apex中的觸發器更新類變量?
- 24. 檢查更改後值是否發生了變化()觸發器
- 25. 更新面板觸發器未觸發
- 26. INSERT觸發器沒有觸發更新?
- 27. 檢查VARCHAR2是否僅包含使用觸發器的字母表
- 28. Salesforce Apex觸發器 - 計算金額字段值的總和並更新商機字段
- 29. 查詢過程觸發器觸發期間/之後觸發選擇觸發器是否觸發?
- 30. Salesforce Lead觸發器CANNOT_INSERT_UPDATE_ACTIVATE_ENTITY
謝謝我知道如何檢查字段數據是否被修改。然而我的問題與這種情況有關。 列表 aclist = [從帳戶中選擇ID,姓名,email__c]; (Account a:aclist) { \t a.email__c = a.name+''gmail.com'; } 更新aclist; 當該觸發器運行現在會發生什麼:在賬戶 觸發(前更新) { \t爲(A帳戶:trigger.new) \t { \t \t如果(a.accountNumber == NULL) \t \t { \t \t \t a.accountnumber ='NA'; \t \t} \t}} 將爲帳戶作爲ACCOUNTNUMBER領域的更新將被改變? –
2011-04-06 13:27:32
是的。正如我所說的,觸發器包含ALL sObject字段。它不像僅僅預先加載VF中引用字段的visualforce/apex擴展。 – mmix 2011-04-06 19:29:29