사용자 지정 동작을 만들어 기록 목록에서 객체 배열 생성

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기6분
  • 사용자 기록 목록에서 객체 배열을 생성합니다. 스크립트 단계를 사용하여 기록 목록을 반복하는 방법을 알아봅니다.

    시작하기 전에

    필요한 역할: admin

    이 태스크 정보

    이 예제를 사용하여 이러한 작업 및 단계의 데모를 볼 수 있습니다.
    • 부서 기록에 대한 작업 입력을 생성합니다.
    • 부서 작업 입력에 대해 최대 3개의 사용자 기록을 조회합니다.
    • 사용자 기록 목록을 처리하도록 스크립트 단계를 구성합니다.
    • 사용자 기록 목록이 포함된 스크립트 입력 변수를 생성합니다.
    • 빈 연락처 배열을 만드는 스크립트를 작성합니다.
    • 사용자 기록 목록을 반복하는 스크립트를 작성합니다.
    • 연락처 개체를 만들고 사용자 기록 필드 값을 연락처 개체에 매핑하는 스크립트를 작성합니다.
    • contacts 배열을 현재 연락처 객체로 채우는 스크립트를 작성합니다.
    • 연락처 배열과 하위 연락처 객체에 대한 스크립트 출력 변수를 만듭니다.
    • 연락처 개체를 템플릿으로 저장합니다.
    • 생성된 객체의 contacts 배열을 데이터 알약으로 출력합니다.
    • 샘플 부서에서 작업을 테스트합니다.

    프로시저

    1. 작업을 저장할 응용 프로그램을 만듭니다.
      예를 들어 내 응용 프로그램을 만듭니다.
    2. 다음으로 이동 모두 > 프로세스 자동화 > 플로우 디자이너레이블이 표시됩니다.
      시스템에 방문 페이지가 표시됩니다 플로우 디자이너 .
    3. 선택 신규 > 작업
      작업 속성 대화상자가 표시됩니다.
    4. 이러한 샘플 값을 입력합니다.
      필드
      이름 객체의 연락처 배열 작성
      애플리케이션 내 애플리케이션
      다음에서 접근 가능 모든 애플리케이션 범위
    5. 제출을 선택합니다.
      시스템에 인터페이스가 작업 디자이너 표시됩니다.
    6. Action Outline(작업 개요)에서 입력 > 입력 작성
      시스템에 새 작업 입력이 표시됩니다.
    7. 이러한 값을 사용하여 작업 입력을 구성합니다.
      필드
      레이블 부서
      유형 참조.부서 [Reference.cmn_department]
      필수
    8. 작업 개요에서 새 단계 추가를 선택합니다.
      시스템에 사용 가능한 단계 목록이 표시됩니다.
    9. 기록 조회를 선택합니다.
    10. 이 값을 사용하여 단계를 구성합니다.
      필드
      테이블 사용자 [sys_user]
      조건 [부서] [는] [action->부서]
      정렬 기준 이름
      정렬 유형 a-z
      최대 결과 3
      주:
      이 예제에서는 데모를 위해 Max Results(최대 결과 ) 설정을 3개의 레코드로 제한합니다.
    11. 작업 개요에서 새 단계 추가를 선택합니다.
      시스템에 사용 가능한 단계 목록이 표시됩니다.
    12. 스크립트를 선택합니다.
    13. [Required Runtime]에서 [Instance]를 선택합니다.
    14. 입력 변수 섹션에서 변수 생성을 선택합니다.
    15. 이러한 값을 사용하여 입력 변수를 구성합니다.
      필드
      이름 사용자 기록
      [step->기록 조회 step->사용자 기록]
      주:
      데이터 패널 또는 데이터 알약 선택기 버튼에서 사용자 기록 데이터 알약을 선택할 수 있습니다.
    16. [Script]에 다음 텍스트를 입력합니다.
      (function execute(inputs, outputs) {
        //Create an empty array
        var contactsArray = [];
        var i = 0;
        //Iterate through the list of User records
        while(inputs.userRecords.next()) {
          //Create an empty object for each iteration
          var contactObject = {};
          //Query User records to assign object values
          contactObject.first_name = inputs.userRecords.getValue('first_name');
          contactObject.last_name = inputs.userRecords.getValue('last_name');
          contactObject.email_address = inputs.userRecords.getValue('email');
          //Add current object to array
          contactsArray[i] = contactObject;
          i += 1;
        }
        outputs.contacts = contactsArray;
      })(inputs, outputs);
    17. Output Variables(출력 변수)에서 Create Variable(변수 생성)을 선택합니다.
    18. 이러한 값을 사용하여 출력 변수를 구성합니다.
      레이블 이름 유형 필수
      연락처 연락처 Array.Object
    19. contacts Array.Object를 확장하고 자식 항목의 이름을 contact로 바꿉니다.
    20. 연락처 개체의 행에서 Add Child Item(하위 항목 추가)을 선택합니다.
    21. 이러한 값을 사용하여 하위 항목을 구성합니다.
      레이블 이름 유형 필수
      이름(First Name) first_name 문자열
    22. 연락처 개체의 행에서 Add Child Item(하위 항목 추가)을 선택합니다.
    23. 이러한 값을 사용하여 하위 항목을 구성합니다.
      레이블 이름 유형 필수
      last_name 문자열
    24. 연락처 개체의 행에서 Add Child Item(하위 항목 추가)을 선택합니다.
    25. 이러한 값을 사용하여 하위 항목을 구성합니다.
      레이블 이름 유형 필수
      이메일 주소 email_address 문자열
    26. 연락처 객체의 행에서 Toggle Advanced Inputs(고급 입력 토글)를 선택합니다.
    27. Advanced Options(고급 옵션)에서 Save As Template(템플릿으로 저장)을 선택합니다.
      템플릿으로 저장(Save As Template) 대화상자가 표시됩니다.
    28. Enter a Name(이름 입력)에 contact를 입력합니다.
    29. 저장을 클릭합니다.
    30. Action Outline(작업 개요)에서 출력 > 출력 작성레이블이 표시됩니다.
    31. 이러한 값을 사용하여 작업 출력을 구성합니다.
      레이블 이름 유형 필수
      연락처 연락처 Array.Object
    32. contacts Array.Object를 확장합니다.
    33. 연락처 객체의 행에서 Toggle Advanced Inputs(고급 입력 토글)를 선택합니다.
    34. Advanced Options(고급 옵션)에서 구조 > 템플릿에서 시작레이블이 표시됩니다.
      시스템에 템플릿이 표시됩니다.
    35. Template(템플릿)에서 이전에 저장한 템플릿을 선택합니다.
      예를 들어 내 애플리케이션: 연락처를 선택합니다.
    36. 편집 모드 종료를 선택합니다.
      시스템은 사용자가 생성한 출력 필드를 표시합니다.
    37. 연락처의 경우 [step->Script step->contacts]를 선택합니다.
      주:
      스크립트 단계 연락처 데이터 정제는 데이터 패널 또는 데이터 정제 선택기 버튼에서 선택할 수 있습니다.
    38. 저장을 클릭합니다.
    39. 테스트를 선택합니다.
      테스트 작업 대화상자가 표시됩니다.
    40. 다음 테스트 값을 입력합니다.
      입력
      부서 개발
    41. 테스트 실행을 선택합니다.
      시스템은 제공된 테스트 값으로 작업을 실행합니다.
    42. 테스트 실행이 완료되었습니다.를 선택합니다 . 작업 실행 상세 정보를 봅니다.
      시스템에 작업 실행 상세 정보가 표시됩니다.
    43. 작업 출력 데이터에 대한 런타임 값을 검토합니다.
      시스템은 출력 데이터를 JSON 형식으로 표시합니다.
      이 예제의 경우 contacts 개체에는 개발 부서의 사용자 3명에 대한 이름, 성 및 전자 메일 정보가 포함된 contact 개체의 배열이 포함되어 있습니다.
      {
          "contacts": 
              "contact": [
                  {
                      "email_address": "allyson.gillispie@example.com",
                      "first_name": "Allyson",
                      "last_name": "Gillispie"
                  },
                  {
                      "email_address": "alva.pennigton@example.com",
                      "first_name": "Alva",
                      "last_name": "Pennigton"
                  },
                  {
                      "email_address": "andrew.och@example.com",
                      "first_name": "Andrew",
                      "last_name": "Och"
                  }
              ]
          }
      }
      

    결과

    특정 부서의 사용자를 조회하고 해당 사용자를 연락처 개체의 배열로 변환하는 사용자 지정 작업이 있습니다.

    다음에 수행할 작업

    자신의 논리를 사용하도록 이 작업을 사용자 지정합니다.