Loading
Настройка и обслуживание Net Zero Cloud
Копирование ранее отправленных ответов на разглашение

Копирование ранее отправленных ответов на разглашение

Экономьте время и усилия для ввода ответов на одни и те же вопросы, повторяемые каждый год. Добавление интеграции предварительного заполнения в Omniscript позволяет открывать данные из ранее отправленных ответов.

Требуемые версии

Доступно в версиях: Lightning Experience
Доступно в версиях: Enterprise Edition, Performance Edition, Unlimited Edition и Developer Edition
Необходимый набор полномочий
Для использования центра разглашения и соответствия: Пользователь центра разглашения и соответствия
  1. Чтобы извлечь сведения за предыдущий год, создайте класс Apex, извлекающий AssessmentId посредством 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);
        }
    }
    
  2. В средстве запуска приложений найдите и откройте «Процедуры интеграции мультиканала».
  3. Нажмите «Создать» и введите сведения.
    1. В поле «Имя процедуры интеграции» введите «Разглашение_заполнение».
    2. В поле «Тип» введите «Разглашение».
    3. В поле «Подтип» введите «Предварительная заполнение».
    4. Сохраните изменения.
  4. Добавьте удаленное действие перед заполнением.
    1. В поле «Имя элемента» введите GetPrefillAssessmentIdUsingApex.
    2. В качестве удаленного класса введите GetPrefillAssessmentIdUsingApex.
    3. В качестве удаленного метода введите getAssessmentId.
  5. Добавьте удаленное действие оценки.
    1. В поле «Имя элемента» введите GetAssessmentData.
    2. В качестве удаленного класса введите DiscoveryFrmwrk.PrefillAssessment.
    3. В поле «Отправить путь JSON» введите GetPrefillAssessmentIdUsingApex.RemoteActionAssessmentId.
    4. В качестве узла «Отправить JSON» введите RemoteActionAssessmentId.
  6. Добавьте действие ответа.
    1. В поле «Имя элемента» введите AssessmentData.
    2. В поле «Отправить путь JSON» введите GetAssessmentData.AssessmentDataReturned.
  7. Сохраните и активируйте изменения.
  8. В средстве запуска приложений найдите и откройте «Omniscripts».
  9. Откройте форму Omniscript, созданную для вопросов оценки.
  10. Деактивируйте Omniscript.
  11. Перетащите Действие процедуры интеграции на холст.
  12. На панели свойств в поле «Процедура интеграции» введите «Разглашение_заполнения» и выберите «Разглашение_заполнения» в списке поиска.
  13. Сохраните и активируйте изменения.
 
Загрузка
Salesforce Help | Article