동적 입력 시작하기

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기22분
  • 플로우에서 사용 가능한 모든 동적 입력 유형을 사용하는 방법을 보여주는 샘플 작업을 생성합니다.

    시작하기 전에

    필요한 역할: action_designer 또는 admin

    프로시저

    1. 인스턴스에 대한 자격 증명 및 연결 기록 생성.
      이 연결 및 자격 증명 별칭은 데이터 수집 작업의 REST 단계를 구성하는 데 필요한 기본 URL과 사용자 계정을 제공합니다.
    2. 테이블 이름을 가져오는 데이터 수집 작업 만들기.
      이 데이터 수집 작업은 동적 선택 입력에 대한 JSON 데이터를 제공합니다.
    3. 필드 이름을 가져오는 데이터 수집 작업 만들기.
      이 데이터 수집 작업은 동적 템플릿 입력에 대한 JSON 데이터를 제공합니다.
    4. 데이터 수집 작업을 생성하여 동적 입력 추가.
      이 데이터 수집 작업은 JSON 데이터를 제공하여 임의의 동적 입력을 생성합니다.
    5. 동적 입력을 테스트하는 사용자 지정 작업 만들기.
      이 사용자 지정 작업은 다양한 유형의 동적 입력을 보여줍니다.

    인스턴스에 대한 자격 증명 및 연결 기록 생성

    로컬 인스턴스에 연결하는 데 필요한 별칭, 연결 및 자격 증명을 작성합니다.

    시작하기 전에

    필요한 역할: admin

    프로시저

    1. 다음으로 이동 모두 > 연결 및 자격 증명 > 자격 증명레이블이 표시됩니다.
    2. 새로 만들기를 선택하고, 기본 인증 자격 증명을 선택하고, 이러한 필드 값을 입력합니다.
      1. Name(이름)에 Local Admin(로컬 관리자)을 입력합니다.
      2. 사용자 이름에 Flow Designer 및 REST API에 대한 액세스 권한이 있는 사용자 계정을 입력합니다.
        예를 들어 admin을 입력합니다.
      3. Password(암호)에 계정 암호를 입력합니다.
    3. 제출을 선택하여 자격 증명 기록을 만듭니다.
    4. 다음으로 이동 모두 > 연결 및 자격 증명 > 연결 및 자격 증명 별칭레이블이 표시됩니다.
    5. 새로 만들기를 선택하고 이러한 필드 값을 입력합니다.
      1. Name(이름)에 Local Instance(로컬 인스턴스)를 입력합니다.
      2. 연결 유형에 대해 HTTP의 기본값을 수락합니다.
      3. 제출을 선택하여 연결 및 자격 증명 별칭 기록을 만듭니다.
    6. 생성한 별칭을 선택합니다.
      예를 들어 로컬 인스턴스를 선택합니다.
    7. 연결 관련 목록에서 새로 만들기를 선택하고 다음 필드 값을 입력합니다.
      1. [Name]에 [My Instance]를 입력합니다.
      2. 자격 증명의 경우 생성한 기본 인증 자격 증명 레코드를 선택합니다.
        예를 들어 로컬 관리자 자격 증명을 선택합니다.
      3. Connection URL(연결 URL)에 끝에 슬래시를 포함하여 인스턴스의 기본 URL을 입력합니다.
        URL 접두사 https:// 포함하고 URL 끝에 슬래시 문자를 추가합니다.
        예를 들면 https://example.service-now.com/입니다.
      4. 제출을 선택하여 HTTP 연결 기록을 만듭니다.

    결과

    REST 단계를 구성할 때 로컬 인스턴스 별칭을 사용하여 로컬 인스턴스에 연결할 수 있습니다.

    테이블 이름을 가져오는 데이터 수집 작업 만들기

    사용자 지정 데이터 수집 작업을 생성하여 테이블 API에서 테이블 이름 목록을 가져옵니다.

    시작하기 전에

    필요한 역할: action_designer 또는 admin

    이 태스크 정보

    이 데이터 수집 작업은 다음 요소로 구성됩니다.
    • REST에서 테이블 이름을 수집하는 REST 단계 Table API
    • REST 단계의 응답 본문에서 JSON 페이로드를 구성하는 스크립트 단계
    • 테이블 이름 및 값 쌍을 JSON 문서로 저장할 output 이라는 작업 출력 변수

    이 사용자 지정 작업은 REST API 호출을 사용하여 core 기록 조회 작업기록 조회 작업의 기능을 복제합니다ServiceNow. 일반적으로 기본 기록 작업을 수행하기 위해 사용자 지정 작업을 생성할 필요는 없습니다. 이 작업은 동적 입력을 위한 테이블 데이터를 수집하기 위해 REST 및 스크립트 단계에 대한 작업을 수행하는 방법을 보여줍니다.

    프로시저

    1. 다음으로 이동 모두 > 프로세스 자동화 > 플로우 디자이너레이블이 표시됩니다.
    2. 선택 새로 생성 > 작업레이블이 표시됩니다.
      1. 조치 특성 화면의 조치 이름 필드에 테이블에 대한 데이터 수집 조치를 입력하십시오.
      2. Application(애플리케이션)에서 Global(전역)을 선택합니다.
      3. 제출을 선택합니다.
      2단계에서 작성된 작업 속성의 예
    3. 입력 섹션 아래의 작업 개요에서 새 단계 추가 아이콘( 새 단계 추가 아이콘)을 선택합니다.
    4. 통합 섹션에서 REST 단계를 선택하고 다음 필드 값을 입력합니다.
      입력
      연결 연결 별칭 사용을 선택한 상태로 둡니다.
      연결 별칭 이전에 만든 별칭을 선택하거나 새 레코드 만들기 아이콘( 새 레코드 만들기 아이콘)을 선택하여 HTTP(s) 연결을 만듭니다.
      주:
      HTTP 연결에 대한 자격 증명기본 인증 자격 증명을 사용해야 합니다. 또한 연결 URL 은 끝에 슬래시를 포함하여 인스턴스의 기본 URL이어야 합니다. 연결 및 자격 증명에 대한 자세한 내용은 연결 시작자격 증명 시작하기를 참조하세요.
      빌드 요청 수동 옵션을 선택된 상태로 둡니다.
      자원 경로 api/now/doc/table/schema 입력
      HTTP 메서드 GET을 입력합니다.
      3단계와 4단계의 REST 단계 구성 예
    5. REST 단계 아래의 작업 개요에서 새 단계 추가 아이콘( 새 단계 아이콘)을 선택하고 스크립트 단계를 선택합니다.
      1. 입력 변수 섹션에서 변수 생성을 선택합니다.
      2. 이름 필드에 payload를 입력합니다.
      3. 필드 옆의 데이터 알약 선택기( 데이터 알약 선택기)를 선택하고 REST(Representational State Transfer) 단계 > 응답 본문레이블이 표시됩니다.
      4. 스크립트 필드에 다음 코드를 입력합니다.
        
        (function execute(inputs, outputs) {
          var payload = JSON.parse(inputs.payload);
          var tables = payload.result // Get the value of the result array
            .filter(function(table) { return table.value.indexOf('_') < 0; }) // Filter the tables we want
            .map(function(table) { 
              return { label: table.label, name: table.value }; // Set values for label and name 
          });
          outputs.tables = { data: tables }; // Final, properly formatted output
        })(inputs, outputs);

        REST API는 image, reference, rawLabel, selected, label, missing, used 및 value 속성을 사용하여 각 테이블을 설명하는 JSON 형식 문자열을 반환합니다. label 및 value 속성은 동적 선택에 필요한 값을 제공합니다. 동적 선택을 위해서는 각 선택 옵션에 레이블과 이름이 있어야 합니다. 이 스크립트는 value 속성을 name 속성에 매핑합니다.

      5. Output Variables(출력 변수) 섹션에서 Create Variable(변수 생성)을 선택합니다.
      6. 레이블이름 필드에 tables를 입력합니다.
      7. 유형 필드에서 JSON을 선택합니다.
      5단계의 스크립트 단계 구성 예
    6. Action Outline(작업 개요)에서 Outputs(출력)를 선택합니다.
      1. 출력 만들기를 선택합니다.
      2. Label( 레이블)Name(이름 ) 필드에 output을 입력합니다.
      3. 유형 필드에서 JSON을 선택합니다.
      4. 편집 모드 종료를 선택합니다.
      5. 옆에 있는 데이터 알약 선택기( Data pill picker)를 선택하고 선택합니다. 스크립트 단계 > tables레이블이 표시됩니다.
      6단계의 작업 출력 구성 예
    7. 작업 헤더에서 저장 을 선택한 다음, 테스트를 선택하여 작업을 테스트합니다.
      1. 테스트 실행을 선택합니다.
      2. 작업의 실행 상세 정보를 봅니다.
        다음 축약된 예제와 같이 테이블의 런타임 값이 레이블이름 에 대한 키-값 쌍의 배열을 포함하는 복합 객체인 경우 데이터 수집 작업이 성공적으로 실행됩니다.
        {
          "data": [
            {
              "name": "evaluation",
              "label": "A/B Testing Evaluation"
            },
            {
              "name": "sla",
              "label": "Agreement"
            },
            {
              "name": "announcement",
              "label": "Announcement"
            },
            {
              "name": "cmdb",
              "label": "Base Configuration Item"
            },
            {
              "name": "checklist",
              "label": "Checklist"
            },
            {
              "name": "collaborator",
              "label": "Collaborator"
            },
            {
              "name": "conflict",
              "label": "Conflict"
            },
            {
              "name": "clone",
              "label": "Database Clone"
            },
            {
              "name": "dsl",
              "label": "DML"
            },
            {
              "name": "global",
              "label": "Global"
            },
            {
              "name": "goal",
              "label": "Goal"
            },
            {
              "name": "incident",
              "label": "Incident"
            },
            {
              "name": "interaction",
              "label": "Interaction"
            },
            {
              "name": "map",
              "label": "Map"
            },
            {
              "name": "ola",
              "label": "OLA"
            },
            {
              "name": "problem",
              "label": "Problem"
            },
            {
              "name": "question",
              "label": "Question"
            },
            {
              "name": "reminder",
              "label": "Reminder"
            },
            {
              "name": "instance",
              "label": "ServiceNow Instance"
            },
            {
              "name": "label",
              "label": "Tag"
            },
            {
              "name": "task",
              "label": "Task"
            },
            {
              "name": "taxonomy",
              "label": "Taxonomy"
            },
            {
              "name": "ticket",
              "label": "Ticket"
            },
            {
              "name": "topic",
              "label": "Topic"
            },
            {
              "name": "expert",
              "label": "Wizard"
            }
          ]
        }
      7단계의 작업 실행 상세 정보 예
    8. 작업 헤더에서 게시 를 선택하여 전역 범위 내의 다른 플로우 및 작업에서 이 작업을 사용할 수 있도록 합니다.

    필드 이름을 가져오는 데이터 수집 작업 만들기

    데이터 수집 동작을 만들어 테이블의 필드 목록을 가져옵니다.

    시작하기 전에

    필요한 역할: action_designer 또는 admin

    이 태스크 정보

    이 데이터 수집 작업은 다음 요소로 구성됩니다.
    • REST에서 필드를 수집하는 REST 단계 Table API
    • REST 단계의 응답 본문에서 JSON 페이로드를 구성하는 스크립트 단계
    • 필드 이름 및 값 쌍을 JSON 문서로 저장할 output 이라는 작업 출력 변수

    이 사용자 지정 작업은 REST API 호출을 사용하여 core 기록 조회 작업기록 조회 작업의 기능을 복제합니다ServiceNow. 일반적으로 기본 기록 작업을 수행하기 위해 사용자 지정 작업을 생성할 필요는 없습니다. 이 작업은 동적 입력을 위한 필드 데이터를 수집하기 위한 REST 및 스크립트 단계 작업을 보여줍니다.

    프로시저

    1. 다음으로 이동 모두 > 프로세스 자동화 > 플로우 디자이너레이블이 표시됩니다.
    2. 선택 새로 생성 > 작업레이블이 표시됩니다.
      1. 작업 속성 화면의 작업 이름 필드에 필드에 대한 데이터 수집 작업을 입력합니다.
      2. Application(애플리케이션)에서 Global(전역)을 선택합니다.
      3. 제출을 선택합니다.
      2단계의 작업 속성 예시
    3. 작업 개요에서 입력을 선택합니다.
      1. Action Input(작업 입력) 헤더에서 Create Input(입력 생성)을 선택합니다.
      2. Label( 레이블)Name(이름 ) 필드에 Table(테이블)을 입력합니다.
      3. 유형 필드에서 문자열을 선택합니다.
      4. 필수 슬라이더를 전환하여 활성화합니다.
      5. 고급 입력 토글 아이콘을 선택하여 고급 입력을 표시합니다.
      6. 기본값incident를 입력합니다.
      3단계의 입력 구성 예
    4. REST 단계 아래의 작업 개요에서 새 단계 추가 아이콘( 새 단계 아이콘)을 선택합니다.
    5. 통합 섹션에서 스크립트 단계를 선택하고 다음 필드 값을 입력합니다.
      1. 입력 변수 섹션에서 변수 생성을 선택합니다.
      2. 이름 필드에 table을 입력합니다.
      3. 옆에 있는 데이터 알약 선택기( Data pill picker)를 선택하고 선택합니다. 작업 > 테이블레이블이 표시됩니다.
      4. 스크립트 필드에 다음 코드를 입력합니다.
        
        (function execute(inputs, outputs) {
            if(!inputs.table || inputs.table === "-- None --") { // check for empty or no table 
              outputs.table = "incident"; // set default table to incident
            } else {
              outputs.table = inputs.table; // use input value provided
            }
        })(inputs, outputs);

        이 스크립트는 REST 단계에 항상 테이블 이름이 포함되도록 합니다.

      5. Output Variables(출력 변수) 섹션에서 Create Variable(변수 생성)을 선택합니다.
      6. Label( 레이블)Name(이름 ) 필드에 table을 입력합니다.
      7. 유형 필드에서 문자열을 선택합니다.
      5단계의 스크립트 단계 구성 예
    6. 입력 섹션 아래의 작업 개요에서 새 단계 추가 아이콘( 새 단계 아이콘)을 선택합니다.
    7. 통합 섹션에서 REST 단계를 선택하고 다음 필드 값을 입력합니다.
      입력
      연결 연결 별칭 사용을 선택한 상태로 둡니다.
      연결 별칭 이전에 만든 별칭을 선택하거나 새 레코드 만들기 아이콘( 새 레코드 만들기 아이콘)을 선택하여 HTTP(s) 연결을 만듭니다.
      주:
      HTTP 연결에 대한 자격 증명기본 인증 자격 증명을 사용해야 합니다. 또한 연결 URL 은 끝에 슬래시를 포함하여 인스턴스의 기본 URL이어야 합니다. 연결 및 자격 증명에 대한 자세한 내용은 연결 시작자격 증명 시작하기를 참조하세요.
      빌드 요청 Manual(수동)을 선택한 상태로 둡니다.
      자원 경로 api/now/table/을 입력한 다음 데이터 정제 선택기( Data pill picker)를 선택합니다. 선택 스크립트 단계 > 테이블레이블이 표시됩니다.
      HTTP 메서드 GET을 입력합니다.
      쿼리 매개변수 이 쿼리 매개변수를 추가하여 REST API가 하나의 기록만 반환하도록 합니다.
      • 이름: sysparm_limit
      • : 1
      7단계의 REST 단계 구성 예
    8. REST 단계 아래의 작업 개요에서 새 단계 추가 아이콘( 새 단계 아이콘)을 선택합니다.
    9. 통합 섹션에서 스크립트 단계를 선택하고 다음 필드 값을 입력합니다.
      1. 입력 변수 섹션에서 변수 생성을 선택합니다.
      2. 이름 필드에 payload를 입력합니다.
      3. 옆에 있는 데이터 알약 선택기( Data pill picker)를 선택하고 선택합니다. REST(Representational State Transfer) 단계 > 응답 본문레이블이 표시됩니다.
      4. 스크립트 필드에 다음 코드를 입력합니다.
        
        (function execute(inputs, outputs) {
          var payload = JSON.parse(inputs.payload);
          var fields = Object.keys(payload.result[0]) // Get first record of array
            .map(function(property) {
              return {
                label: property.charAt(0).toUpperCase() + property.slice(1).replace(/_/g, ' '), // Create label from field name
                name: property, // Set name to field name
                value: '' // Set value to empty so that dynamic template can set value
              };
            });
          outputs.fields = { data: fields }; // final properly formatted output
        })(inputs, outputs);

        REST API는 각 필드를 이름 값 쌍 집합으로 설명하는 JSON 형식 문자열을 반환합니다. 여기서 이름은 필드 이름이고 값은 필드 값입니다. 동적 템플릿에는 필드 이름과 레이블만 있으면 됩니다. 필드 값은 템플릿 값으로 설정할 수 있도록 비워 두어야 합니다. label 속성은 첫 번째 문자를 대문자로 표시하고 밑줄 문자를 공백으로 대체하여 필드 이름에서 계산됩니다.

      5. Output Variables(출력 변수) 섹션에서 Create Variable(변수 생성)을 선택합니다.
      6. Label and Name(레이블 및 이름) 필드에 필드를 입력합니다.
      7. 유형 필드에서 JSON을 선택합니다.
      9단계의 스크립트 단계 구성 예
    10. Action Outline(작업 개요)에서 Outputs(출력)를 선택합니다.
      1. Action Output(작업 출력) 헤더에서 Create Output(출력 생성)을 선택합니다.
      2. Label( 레이블)Name(이름 ) 필드에 output을 입력합니다.
      3. 유형 필드에서 JSON을 선택합니다.
      4. 편집 모드 종료를 선택합니다.
      5. 필드 옆에 있는 데이터 알약 선택기( 데이터 알약 선택기)를 선택한 다음 스크립트 단계 > 필드레이블이 표시됩니다.
      8단계의 출력 구성 예
    11. 작업 헤더에서 저장 을 선택한 다음, 테스트를 선택하여 작업을 테스트합니다.
      1. 테스트 작업 화면의 테이블 필드에 incident를 입력합니다.
      2. 테스트 실행을 선택합니다.
      3. 작업의 실행 상세 정보를 봅니다.
        다음 축약된 예제와 같이 출력 에 대한 런타임 값이 레이블, 이름 에 대한 키-값 쌍의 배열을 포함하는 복합 객체인 경우 데이터 수집 작업이 성공적으로 실행됩니다.
        {
            "data": [
              {
                "name": "parent",
                "label": "Parent",
                "value": ""
              },
              {
                "name": "made_sla",
                "label": "Made sla",
                "value": ""
              },
              {
                "name": "caused_by",
                "label": "Caused by",
                "value": ""
              },
              {
                "name": "watch_list",
                "label": "Watch list",
                "value": ""
              },
              {
                "name": "upon_reject",
                "label": "Upon reject",
                "value": ""
              },
              {
                "name": "sys_updated_on",
                "label": "Sys updated on",
                "value": ""
              },
              {
                "name": "...",
                "label": "...",
                "value": ""
              },
              {
                "name": "category",
                "label": "Category",
                "value": ""
              }
            ]
          }
      9단계의 작업 실행 상세 정보 예
    12. Action(작업) 헤더에서 Publish(게시 )를 클릭하여 이 작업을 전역 범위 내의 다른 작업에서 사용할 수 있도록 합니다.

    데이터 수집 작업을 생성하여 동적 입력 추가

    데이터 수집 작업을 생성하여 참조 유형 동적 입력을 추가합니다.

    시작하기 전에

    필요한 역할: action_designer 또는 admin

    이 태스크 정보

    이 데이터 수집 동작에는 다음 요소가 포함됩니다.
    • 테이블 이름을 저장할 작업 입력 변수
    • 두 개의 동적 입력을 JSON 객체로 구성하는 스크립트 단계
    • 동적 입력을 저장할 output 이라는 작업 출력 변수

    이 사용자 지정 작업은 참조 유형 입력을 사용하여 core 기록 조회 작업기록 조회 작업의 기능을 복제합니다ServiceNow. 일반적으로 기본 기록 작업을 수행하기 위해 사용자 지정 작업을 생성할 필요는 없습니다. 이 작업은 동적 입력을 위한 필드 데이터를 수집하기 위한 스크립트 단계 작업을 보여줍니다.

    프로시저

    1. 다음으로 이동 모두 > 프로세스 자동화 > 플로우 디자이너레이블이 표시됩니다.
    2. 선택 새로 생성 > 작업레이블이 표시됩니다.
      1. 조치 특성 화면의 조치 이름 필드에 동적 입력에 대한 데이터 수집 조치를 입력하십시오.
      2. Application(애플리케이션)에서 Global(전역)을 선택합니다.
      3. 제출을 선택합니다.
      2단계의 작업 속성 예시
    3. 작업 개요에서 입력을 선택합니다.
      1. Action Input(작업 입력) 헤더에서 Create Input(입력 생성)을 선택합니다.
      2. Label( 레이블)Name(이름 ) 필드에 Table(테이블)을 입력합니다.
      3. 유형 필드에서 문자열을 선택합니다.
      4. 고급 입력 토글 아이콘( 고급 입력 토글 아이콘)을 선택합니다.
      5. 기본값 필드에 sys_user 입력합니다.
      3단계의 작업 입력 구성 예시
    4. 입력 아래의 작업 개요에서 새 단계 추가 아이콘( 새 단계 아이콘)을 선택합니다.
    5. 통합 섹션에서 스크립트 단계를 선택하고 다음 필드 값을 입력합니다.
      1. 입력 변수 섹션에서 변수 생성을 선택합니다.
      2. 이름 필드에 table을 입력합니다.
      3. 옆에 있는 데이터 알약 선택기( Data pill picker)를 선택하고 선택합니다. 입력 > 테이블레이블이 표시됩니다.
      4. 스크립트 필드에 다음 코드를 입력합니다.
        
        (function execute(inputs, outputs) { 
            // Define JSON for desired dynamic input type
            outputs.data = { 
                data: [{
                  label: 'Reference type input',
                  name: 'referencetype',
                  reference: inputs.table,
                  type: 'reference',
                }]
              }
          })(inputs, outputs);
        각 유형의 동적 입력에는 고유한 JSON 구조가 있습니다. 참조 필드 동적 입력에는 이러한 속성이 필요합니다.
        레이블
        입력 옆에 표시할 텍스트입니다. 예를 들어, 참조 필드 입력입니다.
        이름
        동적 입력을 식별하고 값을 저장하는 데 사용되는 동적 입력의 내부 이름입니다. 예를 들어 referencetype입니다.
        참조
        참조 필드의 대상 테이블 이름입니다. 예: sys_user. 이 스크립트에서 테이블 이름은 변수입니다.
        유형
        동적 입력의 데이터 유형입니다. 예: 참조. type 속성은 입력을 표시하는 방법과 플로우 디자이너 입력을 구성하는 데 필요한 다른 속성을 결정합니다.
      5. Output Variables(출력 변수) 섹션에서 Create Variable(변수 생성)을 선택합니다.
      6. Label( 레이블 ) 및 Name(이름 ) 필드에 data(데이터)를 입력합니다.
      7. 유형 필드에서 JSON을 선택합니다.
      4-5단계의 스크립트 단계 구성 예
    6. Action Outline(작업 개요)에서 Outputs(출력)를 선택합니다.
      1. Action Output(작업 출력) 헤더에서 Create Output(출력 생성)을 선택합니다.
      2. Label( 레이블)Name(이름 ) 필드에 output을 입력합니다.
      3. 유형 필드에서 JSON을 선택합니다.
      4. 편집 모드 종료를 선택합니다.
      5. 필드 옆에 있는 데이터 알약 선택기( 데이터 알약 선택기)를 선택한 다음 스크립트 단계 > 데이터레이블이 표시됩니다.
      6단계의 출력 구성 예
    7. 작업 헤더에서 저장 을 선택한 다음, 테스트를 선택하여 작업을 테스트합니다.
      1. 테스트 실행을 선택합니다.
      2. 작업의 실행 상세 정보를 봅니다.
        데이터 수집 작업이 성공적으로 실행되면 출력 의 런타임 값은 다음 예제와 같이 JSON 문자열입니다.
        {
          "data": [
            {
              "reference": "sys_user",
              "name": "referencetype",
              "label": "Reference type input",
              "type": "reference"
            }
          ]
        }
      7단계의 작업 실행 상세 정보 예
    8. 작업 헤더에서 게시 를 선택하여 전역 범위 내의 다른 작업에서 이 작업을 사용할 수 있도록 합니다.

    동적 입력을 테스트하는 사용자 지정 작업 만들기

    사용자 지정 작업을 생성하여 동적 입력을 테스트합니다.

    시작하기 전에

    필요한 역할: action_designer 또는 admin

    이 태스크 정보

    이 도우미 작업은 REST 단계에서 데이터를 수집하는 방법을 설명하기 위해 의 기록 작성 단계 기능을 복제합니다. 일반적으로 외부 공급업체 시스템 및 데이터와의 통합에 동적 입력을 사용합니다.

    이 사용자 지정 작업에는 다음 요소가 포함됩니다.
    • 테이블을 선택하기 위한 동적 선택 유형의 입력입니다
    • 필드 값을 선택하고 설정하기 위한 동적 템플릿 유형의 입력
    • 에서 기록을 생성하는 스크립트 단계 GlideRecord - Global
    • 생성된 기록의 sys_id 저장할 output 이라는 작업 출력 변수

    프로시저

    1. 다음으로 이동 모두 > 프로세스 자동화 > 플로우 디자이너레이블이 표시됩니다.
    2. 선택 새로 생성 > 작업레이블이 표시됩니다.
      1. 작업 속성 화면의 작업 이름 필드에 동적 입력에서 기록 작성을 입력합니다.
      2. Application(애플리케이션)에서 Global(전역)을 선택합니다.
      3. 제출을 선택합니다.
      2단계의 작업 속성 구성 예시
    3. 작업 개요에서 입력을 선택합니다.
      1. 입력 생성을 선택합니다.
      2. Label( 레이블)Name(이름 ) 필드에 Table(테이블)을 입력합니다.
      3. Type( 유형 ) 필드에서 Dynamic Choice(동적 선택)를 선택합니다.
      4. 필수 토글 스위치를 켭니다.
      5. 기본값incident를 입력합니다.
      6. 선택의 기본값을 적용합니다.
      7. 작업 필드의 동적 옵션에서 테이블에 대한 데이터 수집 작업을 선택합니다.
      8. 입력 만들기를 선택하여 다른 작업 입력을 만듭니다.
      9. Label and Name(레이블 및 이름) 필드에 Fields(필드)를 입력합니다.
      10. Type( 유형 ) 필드에서 Dynamic Template(동적 템플릿)을 선택합니다.
      11. 필수 토글 스위치를 켭니다.
      12. 작업 필드의 동적 옵션에서 필드에 대한 데이터 수집 작업을 선택합니다.
      13. 테이블 필드 옆에 있는 다른 입력 종속 토글 스위치를 켭니다.
      14. 테이블 필드에서 테이블 입력을 선택합니다.
      15. 입력 만들기를 선택하여 다른 작업 입력을 만듭니다.
      16. Label and Name(레이블 및 이름) 필드에 Dynamic Input(동적 입력)을 입력합니다.
      17. Type( 유형 ) 필드에서 Dynamic Inputs(동적 입력)를 선택합니다.
      18. 작업 필드의 동적 옵션에서 동적 입력에 대한 데이터 수집 작업을 선택합니다.
      19. 데이터 수집 작업에서 제공하는 sys_user 기본값을 사용하려면 테이블 필드를 비워 둡니다.
      3단계의 입력 구성 예
    4. 입력 섹션 아래의 작업 개요에서 새 단계 추가 아이콘( 새 단계 아이콘)을 선택합니다.
    5. 통합 섹션에서 스크립트 단계를 선택하고 다음 필드 값을 입력합니다.
      1. 입력 변수 섹션에서 변수 생성을 선택합니다.
      2. 이름 필드에 table을 입력합니다.
      3. 필드 옆의 데이터 알약 선택기( 데이터 알약 선택기)를 선택하고 입력 > 테이블레이블이 표시됩니다.
      4. 변수 생성을 선택하여 다른 입력 변수를 생성합니다.
      5. 이름 필드에 필드를 입력합니다.
      6. 필드 옆의 데이터 알약 선택기( 데이터 알약 선택기)를 선택하고 입력 > 필드레이블이 표시됩니다.
      7. 변수 생성을 선택하여 다른 입력 변수를 생성합니다.
      8. 이름 필드에 payload를 입력합니다.
      9. 필드 옆의 데이터 알약 선택기( 데이터 알약 선택기)를 선택하고 입력 > 동적 입력레이블이 표시됩니다.
      10. 스크립트 필드에 다음 코드를 입력합니다.
        
        (function execute(inputs, outputs) {
            var payload = inputs.payload.referencetype; // match name from data gathering action
            var obj = JSON.parse(payload);
            var user = obj.value;
            var gr = new GlideRecord(inputs.table); // dynamic choice input
            gr.applyEncodedQuery(inputs.fields); // dynamic template input
            gr.applyEncodedQuery("caller_id=" + user); // dynamic inputs reference field
            gr.insert();
            outputs.record = gr;
            })(inputs, outputs);
      11. Output Variables(출력 변수) 섹션에서 Create Variable(변수 생성)을 선택합니다.
      12. 레이블이름 필드에 record를 입력합니다.
      13. 유형 필드에서 문서 ID를 선택합니다.
      4-5단계의 스크립트 단계 구성 예
    6. Action Outline(작업 개요)에서 Outputs(출력)를 선택합니다.
      1. Action Output(작업 출력) 헤더에서 Create Output(출력 생성)을 선택합니다.
      2. Label( 레이블 ) 및 Name(이름 ) 필드에 Record Created(레코드 생성됨)를 입력합니다.
      3. 유형 필드에서 문서 ID를 선택합니다.
      4. 편집 모드 종료를 선택합니다.
      5. 필드 옆에 있는 데이터 알약 선택기( 데이터 알약 선택기)를 선택한 다음 스크립트 단계 > 기록레이블이 표시됩니다.
      6단계의 출력 구성 예
    7. 작업 헤더에서 저장 을 선택한 다음, 테스트를 선택하여 작업을 테스트합니다.
      1. 테스트 조치 화면의 테이블 입력에서 동적으로 생성된 테이블 선택 옵션을 선택합니다.
        예를 들어 인시던트 테이블을 선택합니다.
      2. 필드 값 추가를 선택하고 필드를 선택한 다음 값을 입력합니다.
        예를 들어, 간단한 설명 필드를 선택하고 테스트 값을 입력합니다.
      3. 동적 입력 섹션과 참조 유형 입력 필드에서 참조 필드 값을 선택합니다.
        예를 들어, 사용자 Abel Tuter를 선택합니다.
      4. 테스트 실행을 선택합니다.
        주:
        Table API에서 만드는 레코드는 일반적으로 레코드 만들기와 관련된 데이터 정책 및 필수 필드를 바이패스합니다. 이 작업은 설명 목적으로만 사용됩니다. 표준 보호 및 확인이 있는 기록을 생성하려면 대신 사용하십시오 기록 작성 단계 .
      5. 작업의 실행 상세 정보를 봅니다.
        생성된 기록 출력을 사용하여 테이블필드 의 런타임 값이 입력한 테스트 값과 일치하는지 확인할 수 있습니다.
      7단계의 작업 실행 상세 정보 예
    8. 작업 헤더에서 게시 를 선택하여 전역 범위 내의 흐름에서 이 작업을 사용할 수 있도록 합니다.

    결과

    의 플로우 플로우 디자이너에 이 작업을 추가할 수 있습니다. 이 샘플 작업은 플로우 설계 중에 값을 할당할 수 있는 인스턴스의 테이블 및 관련 필드 목록을 동적으로 생성합니다.

    동적 입력에서 기록 생성 작업을 사용하는 플로우 예시