Copie des réponses de divulgation déjà soumises
Gagnez du temps et des efforts en saisissant les réponses aux mêmes questions qui reviennent chaque année. En ajoutant l'intégration du préremplissage à un OmniScript, vous pouvez accéder aux données des réponses déjà soumises.
Éditions requises
| Disponible avec : Lightning Experience |
| Disponible avec : Enterprise Edition, Performance Edition, Unlimited Edition et Developer Edition |
| Ensemble d'autorisations requis | |
|---|---|
| Pour utiliser la Plate-forme de divulgation et de conformité : | Utilisateur de la plate-forme de divulgation et de conformité |
-
Pour récupérer la divulgation de l'année précédente, créez une classe Apex qui récupère AssessmentId en utilisant 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); } } - Dans le Lanceur d'application, recherchez et sélectionnez Procédures d'intégration OmniStudio.
-
Cliquez sur Nouveau, puis saisissez les détails.
- Dans Nom de la procédure d'intégration, saisissez Disclosure_Prefill.
- Dans Type, saisissez Divulgation.
- Dans Sous-type, saisissez Préremplir.
- Enregistrez vos modifications.
-
Ajoutez une action distante de préremplissage.
- Dans Nom de l'élément, saisissez GetPrefillAssessmentIdUsingApex.
- Pour Classe distante, saisissez GetPrefillAssessmentIdUsingApex.
- Dans Méthode distante, saisissez getAssessmentId.
-
Ajoutez une action d'évaluation distante.
- Dans Nom de l'élément, saisissez GetAssessmentData.
- Dans Classe distante, saisissez DiscoveryFrmwrk.PrefillAssessment.
- Dans Chemin JSON d'envoi, saisissez GetPrefillAssessmentIdUsingApex.RemoteActionAssessmentId.
- Dans Nœud JSON d'envoi, saisissez RemoteActionAssessmentId.
-
Ajoutez une action de réponse.
- Dans Nom de l'élément, saisissez AssessmentData.
- Dans Chemin JSON d'envoi, saisissez GetAssessmentData.AssessmentDataReturned.
- Enregistrez et activez les modifications.
- Dans le Lanceur d'application, recherchez et sélectionnez OmniScripts.
-
Ouvrez le formulaire OmniScript que vous avez créé pour les questions d'évaluation.
Consultez Gestion des informations du questionnaire de divulgation dans l'infrastructure de découverte.
- Désactivez l'Omniscript.
- Faites glisser Action Procédure d'intégration vers la zone de dessin.
- Dans le panneau Propriétés, saisissez Disclosure_Prefill dans Procédure d'intégration, puis sélectionnez Disclosure_Prefill dans la liste de recherche.
- Enregistrez et activez les modifications.
Cet article a-t-il résolu votre problème ?
Dites-nous ce que nous pouvons améliorer !
