Copia delle risposte alle informative inviate in precedenza
Risparmiare tempo e fatica immettendo le risposte alle stesse domande ripetute ogni anno. Aggiungendo l'integrazione di precompilazione a un OmniScript, è possibile accedere ai dati delle risposte inviate in precedenza.
Versioni (Edition) richieste
| Disponibile in: Lightning Experience |
| Disponibile in: Enterprise Edition, Performance Edition, Unlimited Edition e Developer Edition |
| Insieme di autorizzazioni necessario | |
|---|---|
| Per utilizzare l'Hub conformità e informative: | Utente hub di informative e conformità |
-
Per recuperare l'informativa di un anno precedente, creare una classe Apex che recupera AssessmentId utilizzando contextId.
global class GetPrefillAssessmentIdUsingApex implements System.Callable { global Map<String, Object> call(String action, Map<String, Object> args) { Map<String, Object> inputMap = (Map<String, Object>)args.get('input'); Map<String, Object> outputMap = (Map<String, Object>)args.get('output'); Map<String, Object> options = (Map<String, Object>)args.get('options'); return invokeMethod(action, inputMap, outputMap, options); } global Map<String, Object> invokeMethod(String methodName, Map<String,Object> input, Map<String,Object> output, Map<String,Object> options) { try { getAssessmentId(input, output, options); } catch(Exception ex) { Map<String, String> errorObject = new Map<String,String>(); errorObject.put('error', ex.getMessage()); return errorObject; } return output; } public static void getAssessmentId(Map<String, Object> input, Map<String, Object> output, Map<String, Object> options) { List < Map < String, String >> UIoptions = new List<Map<String, String>>(); String disclosureId = (String) input.get('ContextId'); String prevDisclosureId = [Select ReplicateResponsesFromId FROM Disclosure WHERE Id = :disclosureId LIMIT 1][0].ReplicateResponsesFromId; if(prevDisclosureId == null) { return; } for (Disclosure ds: [Select AssessmentId FROM Disclosure WHERE Id = :prevDisclosureId LIMIT 1]) { Map<String, String> tempMap = new Map<String, String>(); tempMap.put('PrevDisclosureId', prevDisclosureId); tempMap.put('AssessmentId', ds.AssessmentId); UIoptions.add(tempMap); output.put('RemoteActionAssessmentId', ds.AssessmentId); } System.debug(input); System.debug(output); } } - Dal Programma di avvio app, trovare e selezionare Procedure di integrazione OmniStudio.
-
Fare clic su Nuova e immettere i dettagli.
- Come nome procedura di integrazione, immettere Disclosure_Prefill.
- Per Tipo, immettere Informativa.
- Per Sottotipo, immettere Precompilata.
- Salvare le modifiche.
-
Aggiungere un'azione remota di precompilazione.
- Come nome elemento, immettere GetPrefillAssessmentIdUsingApex.
- Come classe remota, immettere GetPrefillAssessmentIdUsingApex.
- Come metodo remoto, immettere getAssessmentId.
-
Aggiungere un'azione remota di valutazione.
- Come nome elemento, immettere GetAssessmentData.
- Come classe remota, immettere DiscoveryFrmwrk.PrefillAssessment.
- Come percorso JSON invio, immettere GetPrefillAssessmentIdUsingApex.RemoteActionAssessmentId.
- Per Send JSON Node (Nodo JSON invio), immettere RemoteActionAssessmentId.
-
Aggiungere un'azione di risposta.
- Come nome elemento, immettere AssessmentData.
- Come percorso JSON invio, immettere GetAssessmentData.AssessmentDataReturned.
- Salvare e attivare le modifiche.
- Dal Programma di avvio app, trovare e selezionare OmniScript.
- Aprire il modulo OmniScript creato per le domande di valutazione.
- Disattivare l'OmniScript.
- Trascinare Azione procedura di integrazione nell'area di disegno.
- Nel riquadro Proprietà, per Procedura di integrazione, immettere Disclosure_Prefill e selezionare Disclosure_Prefill dall'elenco di ricerca.
- Salvare e attivare le modifiche.
Questo articolo ha risolto il problema?
Facci sapere, così possiamo migliorare!
