Advanced Apex Programming for Salesforce.com and Force.com by Dan Appleman

Advanced Apex Programming for Salesforce.com and Force.com by Dan Appleman

Author:Dan Appleman [Appleman, Dan]
Language: eng
Format: epub
ISBN: 9781936754113
Publisher: Desaware Publishing
Published: 2015-08-30T22:00:00+00:00


In the SolutionTrigger1 trigger, which is an after-insert, after-update trigger, add the following (commenting out the previous handleTrigger1 call):

GoingAsync1.handleTrigger5(trigger.new, trigger.newMap, trigger.oldMap, trigger.isInsert);

In the GoingAsync1 class, create the HandleTrigger5 function, which is very similar to the original HandleTrigger1 function.

public static void handleTrigger5(List<Solution> solutionList, Map<ID, Solution> newMap, Map<ID, Solution> oldMap, Boolean isInsert) { if(alreadyProcessed) return; alreadyProcessed = true; List<AsyncRequest__c> newAsyncRequests = new List<AsyncRequest__c>(); List<String> textChangedIds = new List<ID>(); for(Solution sl: solutionList) { if(isInsert || sl.SolutionNote!= oldMap.get(sl.id).SolutionNote) textChangedIds.add(sl.id); if(textChangedIds.size()>100) { newAsyncRequests.add( new AsyncRequest__c( AsyncType__c = 'Translate Solution', Params__c = string.Join(textChangedIds,','))); textChangedIds.clear(); } } if(textChangedIds.size()>0) newAsyncRequests.add( new AsyncRequest__c( AsyncType__c = 'Translate Solution', Params__c = string.Join(textChangedIds,','))); insert newAsyncRequests; }



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.