잠재적으로 노출된 접촉자의 직장 복귀에 대한 요구사항 생성

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기7분
  • 잠재적으로 노출된 직원이 직장에 복귀할 수 있는지 검증하기 위해 충족해야 하는 요구사항을 생성합니다.

    시작하기 전에

    • ServiceNow® 직원 준비 상태 코어 애플리케이션이 설치되어 있어야 안전보건 요구사항을 사용할 수 있습니다.
    • 건강 및 안전 요구 사항은 를 사용하여 ServiceNow® 워크플로우 스튜디오빌드되므로 Flow Designer 기본 사항을 숙지해야 합니다.

    필요한 역할: sn_imt_core.admin

    이 태스크 정보

    직원의 직장 복귀에 대한 안전보건 요구사항을 정의합니다. 직원은 노출되었을 가능성이 있는 접촉자 조사 케이스에 포함되어 있으면 안 됩니다. 직원이 활성 케이스 조사에 포함된 경우에는 명확한 상태 요건을 충족해야 직장에 복귀할 수 있습니다. 자세한 내용은 노출되었을 가능성이 있는 접촉자에 대한 후속 조치 문서를 참조하십시오.
    주:

    이 절차에서는 기본 시스템의 노출된 접촉자 요구사항을 사용하여 요구사항을 생성하는 방법에 대해 설명합니다.

    프로시저

    1. 워크플로우 스튜디오에서 케이스의 잠재적으로 노출된 접촉자 목록에 추가된 직원에 대한 요구사항 상태를 추가하거나 업데이트하는 작업을 생성합니다.
      1. 작업을 생성하고 직원 준비 상태 코어 애플리케이션에 저장합니다.
      2. 작업 개요의 입력 섹션에서 직원이 요구사항을 충족했는지 확인하기 위해 사용할 기록 유형에 대한 입력을 생성합니다.

        예를 들어 노출된 접촉자 요구사항을 충족하려면 직원에게 노출된 접촉자 테이블[sn_imt_tracing_exposed_contact] 기록이 있어야 합니다.

        레이블 이름 유형 필수
        노출된 접촉자 exposed_contact Reference.Exposed Contacts[sn_imt_tracing_exposed_contact]
      3. 작업 개요에 스크립트 단계를 추가합니다.
      4. 필요한 런타임 필드에서 인스턴스를 선택합니다.
      5. 작업에 대해 생성한 입력을 값으로 사용하여 입력 변수를 생성합니다.

        이 변수를 사용하여 스크립트에서 작업에 대한 입력을 사용할 수 있습니다.

        표 1. 입력 변수
        이름
        exposed_contact 입력 섹션에서 생성한 노출된 접촉자 입력입니다.
      6. 스크립트 필드에서 직원의 요구사항 상태가 cleared 또는 not_cleared일 때 조건을 정의하는 스크립트를 추가합니다.

        노출된 접촉자 요구사항의 경우, 해당 직원에 대한 노출된 모든 접촉자 기록의 건강 상태가 under_investigation 또는 infected이고 다른 모든 응답에 대해 cleared면 요구사항이 not cleared 상태가 됩니다.

        (function execute(inputs, outputs) {
          
          outputs.requirement_status = 'cleared'; 
          if (!inputs.exposed_contact.is_primary_exposed_contact) {
            var now_GR = new GlideRecord('sn_imt_tracing_exposed_contact');
            now_GR.addQuery('exposure_case.active',true);
            now_GR.addQuery('is_primary_exposed_contact',true);
            now_GR.addQuery('user',inputs.exposed_contact.user);
            now_GR.setLimit(1);
            now_GR.query();
            if (now_GR.next()) {
            	if(now_GR.status == 'under_investigation' || now_GR.status == 'infected'){    
            		outputs.requirement_status = 'not_cleared';  
          		}else{  	
            		outputs.requirement_status = 'cleared';  
          		}
            }else{
              var gr2 = new GlideRecord('sn_imt_tracing_exposed_contact');
              gr2.addQuery('exposure_case.active',true);
              gr2.addQuery('user',inputs.exposed_contact.user);
              gr2.query(); 
              while(gr2.next()){
                if(gr2.status == 'under_investigation' || gr2.status == 'infected'){    
            		outputs.requirement_status = 'not_cleared';
                    break;
                }
              } 
            }
          }else{
          	if(inputs.exposed_contact.status == 'under_investigation' || inputs.exposed_contact.status == 'infected'){    
            	outputs.requirement_status = 'not_cleared';  
          	}else{  	
            	outputs.requirement_status = 'cleared';  
          	}
          }
        })(inputs, outputs);
        
      7. 요구사항 상태에 대한 출력 변수를 생성합니다.

        스크립트에서 사용한 requirement_status 변수를 정의합니다.

        표 2. 출력 변수
        레이블 이름 유형 필수 선택(고급 옵션)
        requirement_status requirement_status 선택 드롭다운(--없음-- 포함)
      8. 작업 개요의 출력 섹션에서 요구사항 상태에 대한 출력을 생성합니다.

        이 출력을 생성하면 스크립트의 requirement_status 출력 변수를 작업에 의해 반환되는 출력으로 사용할 수 있습니다.

        표 3. 출력 변수
        레이블 이름 유형 필수 선택(고급 옵션)
        요구사항 상태 requirement_status 선택 아니요 드롭다운(--없음-- 포함)
      9. Requirement_status 값을 출력에 할당합니다.
        표 4. 출력 변수
        레이블
        요구사항 상태 스크립트 단계의 requirement_status 출력 변수입니다.

        이 작업은 직원(cleared 또는 not_cleared)에 대한 requirement_status를 출력으로 반환합니다.

      10. 게시를 클릭합니다.
    2. 노출된 접촉자 요구사항을 생성합니다.
      1. 다음으로 이동 직원 건강 및 안전 상태 > 건강 및 안전 요구 사항.
      2. 새로 만들기를 클릭합니다.
      3. 양식의 필드에 내용을 입력합니다.

        이전의 적용 가능한 기록 포함 섹션에는 이미 생성되었지만 요구사항 플로우를 트리거하는 기록 세트가 정의되어 있습니다. 이전 기록을 포함하면 요구사항이 활성화되기 전에 요구사항을 완료한 직원들의 요구사항 상태가 통과되지 않음으로 설정됩니다.

        표 5. 안전보건 요구사항 양식
        필드 설명
        이름 보고서의 고유한 이름입니다. 예를 들면 노출된 접촉자 요구사항입니다.
        요구사항 플로우 잠재적으로 노출된 직원의 요구사항 상태를 업데이트하는 플로우입니다.

        이 필드를 비워 둡니다. 요구사항 기록으로 돌아가 플로우를 생성한 후 이 필드를 채웁니다.

        활성 이 필드는 읽기 전용입니다. 요구사항에 대한 모든 필드를 업데이트한 후에는 활성화 버튼을 사용하여 요구사항을 활성화할 수 있습니다.
        기본 상태 잠재적으로 노출된 접촉자 목록에 없는 직원에게 안전보건 요구사항을 충족하도록 할당된 기본 상태입니다. 옵션은 통과 및 통과되지 않음입니다.

        예를 들어 노출된 접촉자 기록이 없는 직원에게는 노출된 접촉자 요구사항에 대한 기본 상태가 통과되지 않음으로 할당됩니다.

        사용 기간 요구사항 상태의 유효 제한 시간을 설정하는 옵션입니다.

        직원의 노출된 접촉자 작업 상태가 업데이트되면 직원의 상태가 자동으로 업데이트되므로 이 필드를 선택하지 마십시오.

        이전 적용 가능한 기록 포함
        테이블 요구사항 플로우를 트리거하는 이전에 생성된 기록을 참조하기 위한 테이블입니다.

        예를 들어 노출된 접촉자 요구사항은 노출된 접촉자 테이블[sn_imt_tracing_exposed_contact]을 사용합니다.

        조건 플로우를 트리거하는 테이블에서 기록을 필터링하는 조건입니다.
      4. 제출을 클릭합니다.
    3. 워크플로우 스튜디오에서 직원의 요구사항 상태를 업데이트하는 플로우를 생성합니다.
      1. 플로우를 생성하고 직원 준비 상태 코어 애플리케이션에 저장합니다.
      2. 요구사항 상태를 확인하는 데 사용하는 기록 유형이 만들어지거나 업데이트될 때마다 플로우가 실행되도록 트리거를 추가합니다.

        예를 들어 노출된 접촉자 요구사항의 경우 케이스의 노출된 접촉자 기록이 만들어지거나 업데이트될 때마다 플로우가 실행됩니다.

        표 6. 트리거
        트리거 테이블 조건 트리거 실행
        생성 또는 업데이트됨 노출된 접촉자 [sn_imt_tracing_exposed_contact] 없음. 한 번
      3. 트리거의 기록을 입력으로 하여 플로우에 생성한 작업을 추가합니다.
        예를 들어 노출된 접촉자 입력의 경우 트리거 이벤트에서 생성되었거나 업데이트된 노출된 접촉자 기록을 추가합니다.
      4. 직원 준비 상태 코어에서 플로우에 대해 제공된 업데이트 사용자 요구사항 작업을 추가합니다.
        표 7. 사용자 요구사항 입력 업데이트
        사용자 [User] 안전보건 요구사항 [Health and Safety Requirement] 요구사항 상태 트리거 날짜/시간
        트리거 기록의 직원 또는 사용자 필드입니다. 예를 들면 노출된 접촉자 기록의 사용자 필드입니다. 잠재적으로 노출된 접촉자에 대해 생성한 안전보건 요구사항입니다. 생성한 작업에 의해 반환된 requirement_status입니다. 날짜/시간을 선택합니다.
      5. 활성화를 클릭합니다.
    4. 안전보건 요구사항을 완료합니다.
      1. 다음으로 이동 직원 건강 및 안전 상태 > 건강 및 안전 요구 사항.
      2. 요구사항을 클릭합니다.
      3. 요구사항 플로우 필드에서 직원의 요구 상태를 업데이트하기 위해 생성한 플로우를 추가합니다.
      4. 업데이트를 클릭합니다.

    다음에 수행할 작업

    직원이 요구사항을 충족했는지 여부를 추적하려면 먼저 요구사항을 활성화해야 합니다. 지침은 안전보건 요구사항 활성화 문서를 참조하십시오.