Loading

Esecuzione delle regole di assegnazione casi da Apex

Data pubblicazione: Jul 2, 2020
Descrizione
Come eseguire una regola di assegnazione caso da trigger
Risoluzione

Le regole di assegnazione caso consentono di instradare automaticamente i casi agli utenti o alle aree di attesa appropriate. Una regola di assegnazione caso è costituita da più voci di regola che definiscono le condizioni e l'ordine per l'assegnazione dei casi. È possibile creare più regole (ad esempio, una regola Standard e una regola Ferie), ma può essere attiva una sola regola alla volta.

 

Da un'interfaccia utente standard, per attivare le regole di assegnazione è sufficiente selezionare la casella di controllo "Assegna utilizzando regole di assegnazione attive" nella sezione Facoltativo. Il problema si presenta quando l'app deve inserire il caso da Apex e tenta di attivare regole di assegnazione. Con questo script viene inserito un caso, ma non vengono attivate regole di assegnazione, poiché nel caso non esiste un campo "Assegna utilizzando regole di assegnazione attive".

//Instance of case Case newCase = new Case(Status = 'New') ; //Inserting a Case insert newCase ;
 

Esecuzione delle regole di assegnazione casi da Apex

Una soluzione utilizza Database.DMLOptions. La classe Database.DMLOptions può fornire informazioni supplementari durante una transazione, ad esempio specificando il comportamento di troncamento delle informazioni dei campi o delle regole di assegnazione. Lo script che segue, ad esempio, recupera le regole di assegnazione di un caso, quindi crea l'oggetto DMLOptions per la casella di controllo "Assegna utilizzando regole di assegnazione attive".

//Fetching the assignment rules on case AssignmentRule AR = new AssignmentRule(); AR = [select id from AssignmentRule where SobjectType = 'Case' and Active = true limit 1]; //Creating the DMLOptions for "Assign using active assignment rules" checkbox Database.DMLOptions dmlOpts = new Database.DMLOptions(); dmlOpts.assignmentRuleHeader.assignmentRuleId= AR.id; Case newCase = new Case(Status = 'New') ; //Setting the DMLOption on Case instance newCase.setOptions(dmlOpts); insert newCase ;
 

Ora, quando si inserisce un caso tramite questo script, le regole di assegnazione vengono attivate.
 

Numero articolo Knowledge

000387623

 
Caricamento
Salesforce Help | Article