Uppdatera Apex som körs när en individuell programpost av kategorin Förmån skapas. Konfigurera utlösaren för att publicera en BMRecertEvent när en omcertifieringsapplikation klarar screeningen och granskas. Händelsehanteraren för BMRecertEvent uppdaterar omcertifieringsstatus för förmånstilldelningen som är relaterad till applikationen.
I Inställningar, i Objekthanteraren, välj Individuellt program.
Klicka på Utlösare.
För ProcessIAForBenefitAssistance, klicka på och välj sedan Redigera.
Klistra in denna kod i textrutan. Ersätt Omnistudio-Namespace-Prefix med namnutrymmesprefixet för Omnistudio-paketet som installerats i din organisation.
Hitta namnutrymmesprefixet för Omnistudio-paketet på sidan Installerade paket i Inställningar.
trigger ProcessIAForBenefitAssistance on IndividualApplication (after update) {
String procedureNameForNewIA = 'BenefitManagement_ProcessIndividualApplication';
Map <String, Object> ipInput = new Map <String, Object> ();
Map <String, Object> ipOutput = new Map <String, Object> ();
Map <String, Object> ipOptions = new Map <String, Object> ();
// List to hold the Platform Events to be published
List<BMRecertEvent__e> eventsToPublish = new List<BMRecertEvent__e>();
// Iterate through the inserted or updated records
for (IndividualApplication ia : Trigger.new) {
if(ia.Status == 'Submitted' && ia.Category == 'Benefit') {
String recordId = ia.Id;
ipInput.put('RecordId', recordId);
/* Call the IP via runIntegrationService, and save the output to ipOutput */
ipOutput = (Map <String, Object>) Omnistudio-Namespace-Prefix.IntegrationProcedureService.runIntegrationService(procedureNameForNewIA, ipInput, ipOptions);
System.debug('IP Output: ' + ipOutput);
IndividualApplication iaRecord = [SELECT Id, Status, ApplicationType, Category FROM IndividualApplication WHERE Id = :ia.Id];
if(iaRecord.Status != 'Denied' && iaRecord.ApplicationType == 'Recertification'){
BMRecertEvent__e event = new BMRecertEvent__e();
// Set fields on the Platform Event based on the inserted or updated record
event.RecordId__c = iaRecord.Id;
// Add the Platform Event to the list of events to be published
eventsToPublish.add(event);
}
}
}
// Publish the list of Platform Events
if (!eventsToPublish.isEmpty()) {
EventBus.publish(eventsToPublish);
}
}
Spara dina ändringar.
Löste denna artikel ditt problem?
Berätta för oss vad vi kan förbättra!
Laddar
Salesforce Help | Article
Cookie Consent Manager
General Information
Required Cookies
Functional Cookies
Advertising Cookies
General Information
We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required Cookies
Always Active
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional Cookies
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising Cookies
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.