---
sourceDocument: 호주 워크플로우 빌드
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ko-KR/build-workflows

 Release :

    - australia

ft:locale :

    - ko-KR

ft:publication_title :

    - 호주 워크플로우 빌드

ft:clusterId :

    - crworkflow

bundleId :

    - crworkflow

workflow :

    - Creator


---

# 기록 목록에서 객체 배열을 생성하는 사용자 지정 동작 생성

# 기록 목록에서 객체 배열을 생성하는 사용자 지정 동작 생성 {#ariaid-title1}

* 릴리스 버전: Australia
* 
* 업데이트 날짜 2026년 03월 12일
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 소요 시간: 6분

사용자 기록 목록에서 객체 배열을 생성합니다. 스크립트 단계를 사용하여 기록 목록을 반복하는 방법에 대해 알아봅니다.

## 시작하기 전에

필요한 역할: flow_designer의 관리자

## 이 태스크 정보

이 예시를 사용하여 이러한 운영 및 단계의 데모를 확인하십시오.

* 부서 기록에 대한 작업 입력을 생성합니다.
* 부서 작업 입력에 대해 최대 3개의 사용자 기록을 조회합니다.
* 사용자 기록 목록을 처리하도록 스크립트 단계를 구성합니다.
* 사용자 기록 목록이 포함된 스크립트 입력 변수를 만듭니다.
* 빈 연락처 배열을 작성하는 스크립트를 작성합니다.
* 사용자 기록 목록을 반복하는 스크립트를 작성합니다.
* 접촉 창구 객체를 만들고 사용자 기록 필드 값을 접촉 창구 객체에 매핑하는 스크립트를 작성합니다.
* 연락처 배열을 현재 연락처 객체로 채우는 스크립트를 작성합니다.
* 연락처 배열 및 하위 연락처 객체에 대한 스크립트 출력 변수를 만듭니다.
* 접촉 창구 객체를 템플릿으로 저장합니다.
* 생성된 연락처 객체 배열을 데이터 알약으로 출력합니다.
* 샘플 부서로 작업을 테스트합니다.
{#create-custom-action-array-objects__ul_c5v_rdw_lhb}

## 프로시저

1. **옵션:** 작업을 저장할 애플리케이션을 생성합니다.  
   애플리케이션을 계획, 생성 및 배포하는 데 사용할 앱 엔진 스튜디오 수 있습니다. 사용자 지정 애플리케이션 빌드에 대한 자세한 내용은 다음 문서를 참조하십시오 [Building apps in App Engine Studio](https://www.servicenow.com/docs/access?context=aes-app-creation&version=australia&pubname=australia-application-development&ft:locale=en-US).  
   예를 들어 <kbd class="ph userinput">My Application</kbd>이라는 애플리케이션을 만듭니다.
2. 다음으로 이동 모두프로세스 자동화워크플로우 스튜디오.
3. 홈페이지에서 작업을 선택합니다.
4. 선택 신규동작  
   시스템에 작업 속성 대화 상자가 표시됩니다.
5. 다음 샘플 값을 입력합니다.  
   {#create-custom-action-array-objects__table_tjt_xxp_lhb__entry__2}

   | 필드 | 값 |
   |-|-|
   | 이름 | 연락처 객체 배열 생성 |
   | 애플리케이션 | 전역 |
   | 다음에서 접근 가능 | 모든 애플리케이션 범위 |
   [ ]

   {#create-custom-action-array-objects__table_tjt_xxp_lhb}  
   주:  
   사용자 지정 동작을 저장하고 배포할 애플리케이션을 생성한 경우 전역 대신 해당 애플리케이션을 사용합니다.
6. 작업 빌드를 선택합니다.  
   시스템에 인터페이스가 워크플로우 스튜디오 표시됩니다.
7. 작업 개요에서 입력입력 작성  
   시스템에 새 작업 입력이 표시됩니다.
8. 이 값을 사용하여 작업 입력을 구성합니다.  
   {#create-custom-action-array-objects__table_ijj_myp_lhb__entry__2}

   | 필드 | 값 |
   |-|-|
   | 레이블 | 부서 |
   | 유형 | Reference.부서 \[Reference.cmn_department\] |
   | 필수 | 예 |
   [ ]

   {#create-custom-action-array-objects__table_ijj_myp_lhb}
9. 작업 개요에서 새 단계 추가를 선택합니다.  
   시스템에 사용 가능한 단계 목록이 표시됩니다.
10. 기록 조회를 선택합니다.
11. 이 값을 사용하여 단계를 구성합니다.  
    {#create-custom-action-array-objects__table_cvp_l5p_lhb__entry__2}

    | 필드 | 값 |
    |-|-|
    | 테이블 | 사용자 \[sys_user\] |
    | 조건 | \[부서\]\[이다\]\[action-\>부서\] 주: 입력 변수에서 부서 데이터 정제를 선택합니다. |
    | 정렬 기준 | 이름 |
    | 정렬 유형 | a-z |
    | 최대 결과 | 3 |
    [ ]

    {#create-custom-action-array-objects__table_cvp_l5p_lhb}  
    주:  
    이 예시에서는 시연 목적으로 최대 결과 설정을 3개의 기록으로 제한합니다.
12. 작업 개요에서 새 단계 추가를 선택합니다.  
    시스템에 사용 가능한 단계 목록이 표시됩니다.
13. 스크립트를 선택합니다.
14. 입력 변수 섹션에서 변수 생성을 선택합니다.
15. 이 값을 사용하여 입력 변수를 구성합니다.  
    {#create-custom-action-array-objects__table_uby_5zp_lhb__entry__2}

    | 필드 | 값 |
    |-|-|
    | 이름 | 사용자 기록 |
    | 값 | \[단계-\>기록 조회 단계-\>사용자 기록\] 주: 기록 조회 단계에서 사용자 기록 데이터 정제를 선택합니다. |
    [ ]

    {#create-custom-action-array-objects__table_uby_5zp_lhb}  
    주:  
    데이터 패널 또는 데이터 알약 선택기 버튼에서 사용자 기록 데이터 알약을 선택할 수 있습니다.
16. 스크립트에 다음 텍스트를 입력합니다.  

        (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. 출력 변수에서 변수 생성을 선택합니다.
18. 이 값을 사용하여 출력 변수를 구성합니다.  
    {#create-custom-action-array-objects__table_e3w_hbq_lhb__entry__4}

    | 레이블 | 이름 | 유형 | 필수 |
    |-|-|-|-|
    | 연락처 | 연락처 | Array.Object | 예 |
    [ ]

    {#create-custom-action-array-objects__table_e3w_hbq_lhb}
19. 연락처 Array.Object를 확장하고 자식 객체의 이름을 <kbd class="ph userinput">연락처</kbd>로 바꿉니다.
20. 연락처 객체의 행에서 하위 항목 추가 아이콘 ![]()을 선택합니다.
21. 이 값을 사용하여 하위 항목을 구성합니다.  
    {#create-custom-action-array-objects__table_d3v_sbq_lhb__entry__4}

    | 레이블 | 이름 | 유형 | 필수 |
    |-|-|-|-|
    | 이름 | first_name | 문자열 | 예 |
    [ ]

    {#create-custom-action-array-objects__table_d3v_sbq_lhb}
22. 연락처 객체의 행에서 하위 항목 추가 아이콘 ![]()을 선택합니다.
23. 이 값을 사용하여 하위 항목을 구성합니다.  
    {#create-custom-action-array-objects__table_ncv_5bq_lhb__entry__4}

    | 레이블 | 이름 | 유형 | 필수 |
    |-|-|-|-|
    | 성 | last_name | 문자열 | 예 |
    [ ]

    {#create-custom-action-array-objects__table_ncv_5bq_lhb}
24. 연락처 객체의 행에서 하위 항목 추가 아이콘 ![]()을 선택합니다.
25. 이 값을 사용하여 하위 항목을 구성합니다.  
    {#create-custom-action-array-objects__table_kht_vbq_lhb__entry__4}

    | 레이블 | 이름 | 유형 | 필수 |
    |-|-|-|-|
    | 이메일 주소 | email_address | 문자열 | 예 |
    [ ]

    {#create-custom-action-array-objects__table_kht_vbq_lhb}
26. 연락처 객체의 행에서 고급 입력 전환을 선택합니다.
27. 고급 옵션에서 템플릿으로 저장을 선택합니다.  
    시스템에 템플릿으로 저장 대화 상자가 표시됩니다.
28. 이름 입력에 <kbd class="ph userinput">contact</kbd>를 입력합니다.  
29. 저장을 클릭합니다.
30. 작업 개요에서 출력출력 작성.
31. 이 값을 사용하여 작업 출력을 구성합니다.  
    {#create-custom-action-array-objects__table_ojs_pcq_lhb__entry__4}

    | 레이블 | 이름 | 유형 | 필수 |
    |-|-|-|-|
    | 연락처 | 연락처 | Array.Object | 예 |
    [ ]

    {#create-custom-action-array-objects__table_ojs_pcq_lhb}
32. 연락처 Array.Object를 확장합니다.
33. 연락처 객체의 행에서 고급 입력 전환을 선택합니다.
34. 고급 옵션에서 구조템플릿에서 시작.  
    시스템에 템플릿이 표시됩니다.
35. 템플릿의 경우 이전에 저장한 템플릿을 선택합니다.  
    예를 들어 전역: 연락처를 선택합니다.
36. 편집 모드 끝내기를 선택합니다.  
    생성한 출력 필드가 시스템에 표시됩니다.
37. 접촉 창구의 경우 \[step-\>Script step-\>contacts\]를 선택합니다.  
    주:  
    데이터 패널 또는 데이터 알약 선택기 버튼에서 스크립트 단계 연락처 데이터 알약을 선택할 수 있습니다.
38. 저장을 클릭합니다.
39. 테스트를 선택합니다.  
    시스템에 테스트 작업 대화 상자가 표시됩니다.
40. 다음 테스트 값을 입력합니다.  
    {#create-custom-action-array-objects__table_onv_z22_mhb__entry__2}

    | 입력 | 값 |
    |-|-|
    | 부서 | 개발 |
    [ ]

    {#create-custom-action-array-objects__table_onv_z22_mhb}
41. 테스트 실행을 선택합니다.  
    시스템은 제공된 테스트 값으로 작업을 실행합니다.
42. 테스트 실행이 완료되었습니다. 작업 실행 상세 정보를 봅니다.  
    시스템에 작업 실행 상세 정보가 표시됩니다.
43. 작업 출력 데이터의 런타임 값을 검토합니다.  
    실행 상세 정보는 출력 데이터를 JSON 형식의 문자열로 표시하지만 실제 출력 데이터 유형은 객체의 배열입니다. 출력의 문자열 버전이 필요한 경우 JSON 클래스를 사용하여 객체를 문자열로 변환할 수 있습니다. JSON 객체를 문자열로 변환하는 방법에 대한 자세한 내용은 다음 문서를 참조하십시오 [Scoped JSON - stringify(Object jsonObject)](https://www.servicenow.com/docs/access?context=JSONScopedAPI&version=australia&pubname=australia-api-reference&section=JSONScoped-stringify_O&ft:locale=en-US).  
    이 예에서 연락처 객체에는 개발 부서의 세 사용자에 대해 이름, 성 및 이메일 정보가 포함된 연락처 객체의 배열이 포함되어 있습니다.

        {
            "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"
                    }
                ]
            }
        }

## 결과

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

## 다음에 수행할 작업

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

