복합 데이터

  • 릴리스 버전: Australia
  • 업데이트 날짜 2026년 03월 12일
  • 소요 시간: 9분
  • 그래픽 인터페이스를 사용하여 복잡한 구조적 데이터 컬렉션으로 작업합니다. 설계 사용자가 구조화된 데이터의 구성을 이해하고 개별 요소를 추가, 제거 또는 구성하도록 돕습니다.

    복잡한 데이터를 사용하면 구조화된 데이터를 JSON(JavaScript Object Notation) 또는 XML(eXtensible Markup Language)과 같은 기계가 읽을 수 있는 형식으로 인코딩하고 저장할 수 있습니다. 인터페이스를 사용하여 워크플로우 스튜디오 구조화된 데이터의 구성을 보고 이해할 수 있을 뿐만 아니라 데이터 구조를 생성할 수 있습니다. 예를 들어, 이름, 성, 이메일 주소와 같은 사용자 기록에서 조회하는 정보로 구성된 접촉 창구 데이터 구조를 만들 수 있습니다.

    이러한 워크플로우 스튜디오 인터페이스에서 복잡한 데이터를 생성할 수 있습니다.

    표 1. 복잡한 데이터 사용 예시
    워크플로우 스튜디오 인터페이스 사용 예시
    작업 입력 및 출력 기록 데이터에서 객체를 생성하는 작업을 생성합니다. 작업이 조회하는 기록 데이터를 사용하여 객체를 채웁니다. 사용자 지정 작업을 생성하여 기록에서 객체 생성 문서를 참조하십시오.
    스크립트 단계 입력 및 출력 변수

    기록 목록에서 객체 배열을 만드는 스크립트를 작성합니다. 기록 목록에서 객체 배열을 생성하는 사용자 지정 동작 생성 문서를 참조하십시오.

    JSON 문서를 객체 유형의 출력으로 구문 분석하는 스크립트를 작성합니다.

    하위 플로우 입력 및 출력 객체를 입력으로 받아들이고 이를 사용하여 외부 서비스를 호출하는 하위 플로우를 만듭니다.
    XML 파서 단계 대상 필드 구성 XML 파서 단계를 사용하여 XML 페이로드를 복잡한 데이터 객체로 구문 분석합니다.
    REST API 트리거 본문 필드 인바운드 REST API 요청을 복잡한 데이터 객체로 구문 분석하고 플로우에서 값을 사용합니다. REST API 트리거를 참조하십시오.

    혜택

    복잡한 데이터는 이러한 이점을 제공합니다.
    • 코드를 작성할 필요 없이 데이터를 구문 분석하고 형식을 지정합니다. 예를 들어 데이터 변수를 생성하여 응답 메시지를 구문 분석하거나 요청 메시지의 형식을 지정합니다.
    • 임의의 데이터 구조를 생성합니다. 예를 들어, 기존 상호작용 및 인시던트 기록의 정보를 결합하는 문제 데이터 구조를 만들거나, 사용자 지정 통합을 지원하는 데이터 구조를 만듭니다.
    • 데이터 구조의 구성을 봅니다. 예를 들어, 문제 데이터 구조는 문제에 대해 연락할 대상을 설명하는 사용자 객체와 문제 해결을 위해 수행된 작업을 설명하는 이력 객체로 구성될 수 있습니다. 사용자 객체에 나열된 이메일 주소 경로를 사용하여 알림 작업을 구성하고 상태 경로를 사용하여 문제 에스컬레이션 하위 플로우를 호출하거나 이력 객체에서 개수를 재할당할 수 있습니다.
    • API 호출에서 데이터 구조에 대한 액세스를 허용합니다. 예를 들어, 스크립트에서 작업 또는 하위 플로우를 호출하고 미리 정의된 데이터 구조를 입력 값으로 사용합니다.
    • 데이터 구조를 템플릿으로 저장하고 재사용합니다. 예를 들어, 사용자 객체를 다른 작업 및 플로우에서 재사용할 수 있도록 템플릿 데이터 구조로 저장합니다.

    데이터 구조

    데이터 구조는 계층 구조로 구성된 관련 데이터 요소의 모음입니다. 데이터 구조의 각 요소에는 고유한 데이터 유형과 계층 구조에서 고유한 위치가 있습니다.

    편집기 창에는 들여쓰기가 있는 데이터 구조 계층 구조가 표시됩니다. 들여쓰기 수준은 요소가 계층 구조에서 상위, 하위 또는 동위 항목인지 식별합니다. 상위 요소 아래에 들여쓰기 된 하위 요소가 있고 형제 요소의 들여쓰기 수준이 동일합니다.
    주:
    워크플로우 스튜디오 인터페이스를 사용하면 하위 수준 수를 무제한으로 사용하여 계층 구조를 만들 수 있지만 이를 보려면 가로로 스크롤해야 할 수 있습니다.

    예를 들어 이 데이터 구조는 ID 번호, 이름, 시작 날짜 및 연락처 이메일에 대한 네 개의 하위 요소가 있는 직원 상위 요소로 구성됩니다. 연락처 이메일 요소도 하위 항목이 하나 있는 상위 요소입니다.

    그림 1. Employee 객체에 대한 샘플 입력
    Employee 객체에 대한 샘플 입력입니다. 직원 객체는 상위 항목입니다. ID 번호, 이름, 시작 날짜 및 연락처 이메일에 대한 하위 입력이 있습니다.

    데이터 패널은 기록 변수와 마찬가지로 데이터 구조 계층 구조를 축소 가능하고 확장 가능한 데이터 알약의 트리로 표시합니다. 상위 요소에는 계층 구조를 축소하거나 확장할 수 있는 화살표 아이콘이 있습니다.

    예를 들어 데이터 패널에서 본 직원 데이터 구조는 다음과 같습니다.

    그림 2. 직원 객체에 대한 샘플 데이터 정제
    Employee 객체에 대한 샘플 데이터 정제입니다. 직원 객체는 상위 항목입니다. ID 번호, 이름, 시작 날짜 및 연락처 이메일에 대한 하위 입력이 있습니다.

    데이터 패널 또는 데이터 선택기를 사용하여 데이터 구조에서 특정 값을 선택할 수 있습니다. 데이터 구조는 구조 내의 특정 요소로 닷워킹하거나 이동할 수 있다는 점에서 기록용 데이터 알약과 유사합니다. 데이터 요소를 워크플로우 스튜디오 선택하면 다른 데이터 요소 선택과 마찬가지로 해당 경로가 데이터 알약으로 표시됩니다. 예를 들어 시작 날짜 데이터 요소를 선택하면 경로는 [Input->Employee->Start Date]입니다.

    XPath 또는 JPath와 동일한 방식으로 요소 데이터 경로를 사용할 수 있습니다. 때로는 데이터 알약 경로를 이러한 경로 표기법 중 하나로 변환할 수도 있습니다.

    복합 데이터 유형

    하나 이상의 배열 또는 객체 변수를 사용하여 데이터 구조를 빌드합니다. 이러한 변수 데이터 유형만 하위 변수를 지원합니다.

    배열 변수에는 한 가지 유형의 항목에 대한 값이 포함되어 있습니다. 상위 변수는 항상 Array 데이터 형식이며 배열에서 지원하는 데이터 형식의 한 인스턴스인 하위 변수가 항상 하나만 있습니다. 입력 또는 출력이 동일한 데이터 형식의 여러 값을 수락할 때 배열 변수를 만듭니다.

    예를 들어 연락처 이메일 배열을 만들어 특정 사용자와 연결된 모든 이메일 주소를 나열할 수 있습니다.

    표 2. 연락처 이메일 배열의 샘플 데이터 구조
    구성요소 레이블 데이터 유형 샘플 데이터
    연락처 이메일 배열.문자열 beth.anglin@example.com 및 beth@anglin.com
    연락처 Email_child0 문자열

    객체 변수에는 각각 고유한 데이터 유형과 값이 있는 하위 변수의 개수와 배열이 포함됩니다. 객체 변수를 중첩하면 한 테이블에 다른 테이블에 관련 기록이 있는 테이블 스키마와 유사한 복잡한 데이터 구조를 만들 수 있습니다. 입력 또는 출력이 하나 이상의 관련 속성을 수락할 때 객체 변수를 생성합니다.

    예를 들어 Employee 객체를 만들어 회사에서 일하는 사람에 대한 정보를 정의할 수 있습니다.

    표 3. Employee 객체의 샘플 데이터 구조
    구성요소 레이블 데이터 유형 샘플 데이터
    직원 객체
    ID 번호 정수 20190304000101
    이름 문자열 베스 앵글린
    시작 날짜 날짜/시간 2019년 3월 4일
    연락처 이메일 배열.문자열 beth.anglin@example.com 및 beth@anglin.com

    이러한 변수 데이터 유형만 상위가 될 수 있습니다.

    표 4. 상위 데이터 유형
    데이터 유형 설명
    배열.배열 배열을 위한 컨테이너입니다. Array 유형의 읽기 전용 하위 항목을 추가합니다.
    Array.True/False 예/아니오 값에 대한 컨테이너입니다. True/False 유형의 읽기 전용 하위 항목을 추가합니다.
    배열.선택 선택 값에 대한 컨테이너입니다. 선택 유형의 읽기 전용 하위 항목을 추가합니다.
    배열.날짜/시간 날짜/시간 값의 컨테이너입니다. 날짜/시간 유형의 읽기 전용 하위 항목을 추가합니다.
    Array.Integer 정수 값에 대한 컨테이너입니다. 정수 유형의 읽기 전용 하위 항목을 추가합니다.
    Array.Object 객체의 컨테이너입니다. 하위 항목 추가 옵션을 표시하는 객체 유형의 읽기 전용 하위 항목을 추가합니다.
    배열.문자열 문자열 값의 컨테이너입니다. 문자열 유형의 읽기 전용 하위 항목을 추가합니다.
    객체 다른 데이터 요소의 컨테이너입니다. 하위 항목 추가 옵션을 표시합니다.
    배열 및 객체 변수는 이러한 하위 데이터 유형만 지원합니다.
    • 배열
    • 예/아니오
    • 선택
    • 날짜/시간
    • 정수
    • 객체
    • 문자열
    주:
    배열 및 객체 변수의 데이터 유형은 Glide 요소가 아닙니다. 이러한 항목과 Now Platform 유형 간에 완전한 호환성이 없을 수 있습니다.

    고급 옵션

    객체 변수에는 데이터 구조를 저장하고 로드하는 고급 옵션이 있습니다. 이러한 옵션을 사용하면 한 위치에 정의된 데이터 구조를 다른 위치에서 재사용할 수 있습니다. 고급 옵션에 대한 자세한 내용은 작업 변수 데이터 유형을 참조하십시오.

    데이터 구조 템플릿

    데이터 구조 템플릿을 사용하면 여러 작업 또는 하위 플로우에서 객체 변수를 재사용할 수 있습니다. 예를 들어 데이터 구조를 생성하여 응답을 구문 분석한 다음 나중에 동일한 데이터 구조를 다시 사용하여 요청의 형식을 지정할 수 있습니다. 템플릿은 하위 변수 목록과 해당 구조를 객체 내에 저장합니다. 각 객체 변수에는 템플릿으로 저장하는 고급 옵션이 있습니다.

    템플릿을 적용하면 원래 구조의 복사본이 생성됩니다. 템플릿을 적용한 후 변경한 내용은 템플릿에 영향을 주지 않으며 템플릿을 사용하는 다른 작업에도 영향을 주지 않습니다.

    배열 데이터 알약

    배열 데이터를 포함하는 객체를 처리하려면 For Each 플로우 로직이 필요할 수 있습니다. 예를 들어 이메일 주소 배열을 포함하는 사용자 객체에는 각 이메일 주소로 알림을 보내기 위해 For Each 플로우 로직 루프가 필요합니다.

    객체 데이터 알약

    객체 데이터 알약을 입력 값으로 허용하는 작업을 설계할 수 있습니다. 예를 들어 사용자 객체를 입력으로 수락하는 알림 작업을 생성할 수 있습니다. 사용자 객체가 이름, 성, 주소 값으로 구성된 경우 알림 작업은 이러한 모든 값에 액세스할 수 있습니다. 객체 데이터 알약을 사용하여 작업 입력을 구성하려면 플로우 앞부분에서 객체를 생성해야 합니다.

    그림 3. 객체 데이터 알약을 허용하는 샘플 작업
    플로우의 샘플 작업입니다. 사용자, 이름, 성, 주소, 주소 1에 대한 입력이 있습니다.

    객체 데이터 알약 또는 해당 하위 요소를 사용하여 입력을 구성할 수 있습니다. 객체 데이터 알약 워크플로우 스튜디오 으로 입력 값을 구성하면 객체의 하위 요소가 읽기 전용으로 설정되고 작업은 객체에서 제공하는 값을 사용합니다. 예를 들어, 한 작업이 사용자 객체를 생성하고 다른 작업이 객체에 지정된 사용자에게 알림을 보내는 플로우를 만들 수 있습니다.

    그림 4. 객체 데이터 알약을 사용하도록 구성된 샘플 작업
    플로우의 샘플 작업입니다. 사용자, 이름, 성, 주소, 주소 1에 대한 입력이 있습니다. 사용자 입력에는 데이터 알약 [2->사용자 객체]이 포함되어 있습니다.

    객체의 하위 요소를 구성할 때는 객체의 각 하위 요소에 대해 데이터 알약을 수동으로 제공해야 합니다. 예를 들어, 이전 작업의 기록 값으로 사용자 객체를 수동으로 구성할 수 있습니다.

    스크립트 지원

    스크립트에서 복잡한 데이터를 생성하고 참조합니다. 소스 데이터가 데이터 스트림, REST 단계 응답 또는 기록 조회 단계에서 제공되는 경우 스크립트를 사용합니다. 복잡한 데이터를 사용한 스크립팅에 대한 자세한 내용은 을 참조하십시오 복잡한 데이터에 대한 스크립트 지원 .

    업데이트 세트 지원

    업데이트 세트에는 정의된 플로우, 하위 플로우 또는 작업의 일부로 복합 객체가 포함됩니다. 상위 플로우, 하위 플로우 또는 작업을 변경하면 연결된 복잡한 데이터가 자동으로 캡처됩니다.

    일반 가이드라인

    다음 일반 가이드라인을 따라 재사용 가능하고 유지 관리 가능한 데이터 구조를 만드십시오.

    계층 구조의 하위 수준 수를 최소화합니다.
    데이터 구조의 하위 수준이 많을수록 계층 구조에서 데이터 변수를 보고 선택하기가 더 어려워집니다. 하위 수준 수에 관계 없이 데이터 구조를 빌드할 수 있지만 7개가 넘는 하위 수준이 있는 데이터 구조를 탐색하고 이해하기는 어려워집니다. 최상의 사용자 환경을 위해 하위 수준을 보고 채우려면 가로로 스크롤해야 하는 하위 수준이 너무 많은 데이터 구조를 만들지 마십시오.
    각 유형의 기록 데이터에 대해 별도의 객체 생성
    대부분의 워크플로우 스튜디오 데이터는 인스턴스 또는 외부 시스템에서 온 기록 데이터입니다. 이 설계 방법을 통해 객체에 포함된 내용과 데이터의 출처를 알 수 있습니다.
    기록 데이터 구조 다시 만들기
    기록 데이터를 받거나 전송하는 객체를 빌드할 때는 이러한 레코드에 대한 데이터베이스 딕셔너리 항목을 검토하고 일치하는 객체 데이터 구조를 만듭니다. 예를 들어 인시던트 및 구성 항목 테이블의 데이터를 포함하려는 객체를 원한다고 가정해 보겠습니다. 인시던트 테이블의 간단한 설명 필드에 대한 문자열 요소를 만들고 구성 항목 테이블의 클래스 필드에 대한 문자열 요소의 배열을 만들 수 있습니다.
    다양한 유형의 기록을 결합하는 객체 생성
    여러 유형의 기록에서 정보가 필요한 경우 필요한 모든 정보가 포함된 객체를 생성합니다. 그런 다음 이 객체를 사용하여 에서 데이터의 형식을 지정하거나 구문 분석할 수 있습니다 워크플로우 스튜디오.