주문 가이드 자동 실행

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 읽기6분
  • 서비스 카탈로그 주문 가이드를 통해 고객은 단일 서비스 카탈로그를 요청하여 순서한 항목 몇 가지를 생성할 수 있습니다. 관리자는 서비스 카탈로그 요청을 수동으로 제출하지 않고도 주문 가이드가 워크플로우 또는 스크립트에서 자동으로 실행되도록 구성하여 순서된 항목 집합을 생성할 수 있습니다. 관리자는 주문 가이드 실패를 검토하고 다시 처리할 수도 있습니다.

    사용 사례로 신입 직원에 대한 온보딩 워크플로우는 주문 가이드를 실행하여 해당 직원의 항목을 자동으로 주문할 수 있습니다.

    주:
    카탈로그 항목만 저장할 수 있으며 주문 가이드(초기 방문 페이지 옵션)는 저장할 수 없습니다.

    스크립트에서 주문 가이드 실행

    서버 측 스크립트로 주문 가이드를 실행하는 것은 워크플로우를 사용하는 것보다 복잡하지만 유연성이 더 뛰어나고 워크플로우 이외의 상황에서도 사용할 수 있습니다.

    예를 들어, 주문 가이드 스크립트를 UI 작업 또는 서버 측 비즈니스 규칙과 함께 사용할 수 있습니다.
    주:
    주문 가이드가 자동으로 실행되면 주문 가이드 UI 정책이 적용되지 않습니다. 또한 옵션 선택 화면의 옵션은 선택할 수 없으므로 주문 가이드 규칙에서 이러한 옵션에 대해 적절한 기본값을 정의하여 처리 실패를 방지해야 합니다.

    SNC를 사용합니다. 스크립트로 주문 가이드를 실행하는 ScriptableOrderGuide Java 클래스입니다.

    SNC를 사용합니다. ScriptableOrderGuide(String orderGuideId) 생성자를 사용하여 새 ScriptableOrderGuide 객체를 만들 수 있습니다.

    메서드 요약

    방법 값 반환 설명
    프로세스(문자열 json) 부울 JSON 인코딩 문자열 매개변수를 주문 가이드의 입력으로 사용하여 주문 가이드를 실행합니다. 처리의 성공 여부에 따라 true 또는 false 를 반환합니다.
    주:
    AND requested_for 매개변수는 모두 opened_by 주문 가이드에 전달되어야 하며, 유효한 사용자 기록 sys_id 값을 가져야 합니다.

    처리가 성공적으로 완료되고 주문 가이드에서 요청이 생성된 경우 getRequest()를 사용하여 요청 GlideRecord를 검색할 수 있습니다.

    처리에 실패하면 getFailure()를 사용하여 실패 GlideRecord를 검색한 다음 reprocess를 사용하여 재처리할 스크립트를 제출할 수 있습니다.

    다시 처리(GlideRecord 실패) 부울 실패 GlideRecord에 저장된 JSON 인코딩 문자열 매개변수를 사용하여 주문 가이드를 다시 실행합니다.
    getMessage()를 호출합니다. 문자열 처리 또는 재처리 후 채워진 메시지를 조회합니다.
    getRequest()를 호출합니다. GlideRecord 요청 GlideRecord를 검색합니다.
    getFailure()를 호출합니다. GlideRecord 스크립트 가능한 주문 가이드 장애 [sc_script_order_guide_failure] 테이블에서 장애 GlideRecord를 검색합니다.

    스크립트 예시

    이 스크립트는 IT 온보딩 SOG라는 주문 가이드를 처리합니다.
    // Creating the object to later be JSON encoded 
    var json = {"opened_by":"62826bf03710200044e0bfc8bcbe5df1","requested_for":"06826bf03710200044e0bfc8bcbe5d8a","department":"221f3db5c6112284009f4becd3039cc9"};
     
    var now_GR = new GlideRecord("sc_cat_item_guide");
    if (gr.get("name","IT Onboarding SOG")) {
      var sog = new SNC.ScriptableOrderGuide(gr.getValue("sys_id"));
      var result = sog.process(new JSON().encode(json));
      if(!result)
        gs.log("Processing the scriptable order guide failed with message: " + sog.getMessage());
      else { 
        var request = sog.getRequest();
        gs.log("Request created - " + request.sys_id); } }

    워크플로우에서 주문 가이드 실행

    워크플로우에서 주문 가이드를 실행하는 것은 광범위한 워크플로우 기반 프로세스의 일부로 주문 가이드를 포함하는 경우에 적합합니다.

    예를 들어, 신입 직원의 온보딩 워크플로우 내 활동은 해당 직원을 위한 항목을 주문하는 주문 가이드를 자동으로 실행할 수 있습니다.
    주:
    주문 가이드가 자동으로 실행되면 주문 가이드 UI 정책이 적용되지 않습니다. 또한 옵션 선택 화면의 옵션은 선택할 수 없으므로 주문 가이드 규칙에서 이러한 옵션에 대해 적절한 기본값을 정의하여 처리 실패를 방지해야 합니다.
    워크플로우에서 주문 가이드를 실행하려면 스크립트 가능한 주문 가이드 워크플로우 활동을 사용합니다.
    표 1. 워크플로우에서 주문 가이드 실행
    필드 설명
    주문 가이드 이 활동이 처리하는 주문 가이드의 이름입니다. 예를 들어 직원 온보딩 IT의 예입니다.
    스크립트 주문 가이드에 정보를 전달하는 스크립트 이 정보는 응답 변수에 할당된 JSON 인코딩 문자열 매개변수로 전송됩니다.
    스크립트는 다음 요구 사항을 충족해야 합니다.
    • 스크립트의 변수 이름은 주문 가이드에 사용된 이름과 일치해야 합니다. 예를 들어, 주문 가이드가 규칙 조건에서 department 변수를 사용하는 경우 스크립트도 매개변수를 department 전달해야 합니다.
    • AND requested_for 매개변수는 모두 opened_by 주문 가이드에 전달되어야 하며, 유효한 사용자 기록 sys_id 값을 가져야 합니다.

    결과

    • 성공: 활동이 주문 가이드를 성공적으로 처리했습니다. 그렇다고 해서 요청이 생성되었다는 의미는 아닙니다. 요청이 생성되면 요청 sys_id가 워크플로우 스크래치패드의 sc_request 변수 아래에 추가됩니다.
    • 실패: 주문 가이드를 처리하는 동안 오류가 발생하여 실패 기록이 작성되었습니다. 처리에 실패하면 실패 기록을 보고 편집할 수 있습니다.

    워크플로우 예

    직원 온보딩 IT 워크플로우 예시 워크플로우는 이 예제를 사용하여 온보딩 프로세스의 일부로 새 직원에 대한 IT 카탈로그 항목을 생성합니다.

    활동은 이 스크립트를 사용하여 다음을 수행합니다.
    1. HR 변경 기록에서 이전에 생성된 JSON 문자열을 가져옵니다.
    2. 필수 opened_byrequested_for 매개변수를 해당 문자열에 추가합니다.
    3. 주문 가이드에서 처리할 수 있도록 새 문자열을 제출합니다.
    var parameters  = new JSON().decode(current.payload);
     
    // Need to amend the json object to include additional values.
    parameters.opened_by = current.opened_by + "";
    parameters.requested_for = current.opened_for + "";
     
    answer = new JSON().encode(parameters);

    주문 가이드 실패 보기

    실행 중인 주문 가이드가 없는 경우 주문 가이드 처리에 실패할 수 있습니다. 주문 가이드 처리 중에 오류가 발생하면 스크립트 가능한 주문 가이드 장애 하위 모듈을 사용하여 실패를 검토하고 다시 처리할 수 있습니다. 실패할 때마다 기록이 생성되며, 최초 실패의 원인이 된 오류를 수정한 후에는 실패한 주문 가이드를 다시 처리할 수 있습니다.

    이 태스크 정보

    오류가 발생하면 스크립트 가능한 주문 가이드 장애 [sc_script_order_guide_failure] 테이블에 장애 기록이 생성됩니다.

    실패의 상세 정보를 보려면 다음으로 이동하십시오. 서비스 카탈로그 > 카탈로그 관리 > 스크립트 가능한 주문 가이드 장애을 클릭한 다음, 실패 기록을 엽니다.

    재처리 실패: 초기 실패의 원인이 된 오류를 수정한 경우 실패한 주문 가이드를 다시 처리할 수 있습니다.

    프로시저

    1. 다음으로 이동 서비스 카탈로그 > 카탈로그 관리 > 스크립트 가능한 주문 가이드 장애.
    2. 실패 기록을 엽니다.
    3. 다시 처리 관련 링크를 클릭합니다.
      하나 이상의 실패를 다시 처리하려면 다음을 수행합니다.
      1. 다음으로 이동 서비스 카탈로그 > 카탈로그 관리 > 스크립트 가능한 주문 가이드 장애.
      2. 다시 처리할 기록 옆에 있는 확인란을 하나 이상 선택합니다.
      3. 작업 선택 목록에서 다시 처리를 선택합니다.