메인 콘텐츠로 건너뛰기
Script activity는 다양한 추출 activity에서 제공되는 규칙과는 별도로 스킬에 스크립트 규칙을 구현하도록 설계되었습니다. 스크립트에는 다른 activity에서 추출한 데이터를 처리하거나 수정하기 위한 규칙을 포함할 수 있습니다. 다음과 같은 작업을 수행할 때 스크립트 규칙이 필요할 수 있습니다:
  • field 값을 정규화하는 경우. 예를 들어, 문서에 지정된 통화 금액에서 알파 코드(세 글자의 통화 코드)를 분리하는 경우입니다.
  • 여러 field 값 중 하나를 선택하는 경우. 예를 들어, 하나의 field 값이 둘 이상의 activity에 의해 추출된 경우, 결과 field에 어떤 값을 선택하여 기록할지 지정하는 경우입니다.
  • 문서에서 찾을 수 없었던 field 값들을 계산하는 경우. 예를 들어, 과세 금액이 포함된 모든 field가 추출된 상태에서, 알려진 세율을 이용해 납부 세액을 계산하는 경우입니다.
비즈니스 규칙과 달리, 스크립트 규칙은 수동 검토 중 오류가 포함된 값을 강조 표시하지 않습니다. 이는 스크립트 규칙이 문서를 처리할 때 얻은 다양한 데이터를 보완하고 수정하도록 설계되었으며, Document skill의 필수 구성 요소이기 때문입니다. Script activity를 설정하려면 다음 단계를 따르십시오.
  1. Activities 탭에서 문서 처리 흐름에 Script activity를 추가합니다. 규칙에 포함될 수 있는 다른 field 추출 activity 이후에 이 activity를 추가해야 한다는 점에 유의하십시오.
  2. Activity Properties 창에서 Script Editor를 클릭합니다.
  3. 열리는 대화 상자에서 JavaScript를 사용하여 필요한 모든 작업을 수행하는 스크립트를 만들어 스크립트 형태로 규칙을 설정합니다. 화면 상단의 빠른 편집 버튼을 사용하여 미리 정의된 코드 스니펫을 스크립트에 추가할 수 있습니다. 아래에는 사용할 수 있는 몇 가지 스크립트 규칙 예제가 나와 있습니다.

샘플 스크립트 규칙

  • 이 스크립트 규칙은 합계 field의 값에 세 자리 통화 코드를 추가하도록 작성된 것입니다. 규칙은 먼저 Country field의 값을 확인합니다. 해당 field의 값이 “USA” 또는 “United States”인 경우, “USD” 코드가 합계 field의 숫자 값에 추가됩니다. Country field의 값이 “United Kingdom” 또는 “Great Britain”인 경우, “GBP” 코드가 합계 field의 숫자 값에 추가됩니다.
if ( Context.GetField("Country").Value == "USA"|"United States" ) {
               Context.GetField("Total").Value = Context.GetField("Total").Value + " USD";
} else 
if( Context.GetField("Country").Value == "United Kingdom"|"Great Britain" ) {
               Context.GetField("Total").Value = Context.GetField("Total").Value + " GBP";
}
  • 이 스크립트 규칙은 선택된 조직 이름을 지정된 field에 추가하도록 설계되었습니다. Preamble Org 반복 field에는 문서 서문(preamble)에 나열된 모든 조직 이름이 포함되며, 이는 Named Entities (NER) activity에서 추출합니다. 스크립트 규칙은 Preamble Org field에 조직 이름이 두 개를 초과하여 포함된 경우, 첫 번째로 추출된 값은 Party 1 field에, 마지막 값은 Party 2 field에 배치되도록 설정되어 있습니다.
var preambleOrgsFields = Context.GetFields("Preamble Org");
 
if (preambleOrgsFields.length > 2)
{
   Context.GetField("Party 1").Value = preambleOrgsFields[1].Value;
   Context.GetField("Party 2").Value = preambleOrgsFields[preambleOrgsFields.length - 1].Value;
}
  1. 스크립트 준비가 완료되면 Save를 클릭합니다. 그러면 스크립트에서 사용된 모든 field가 포함된 목록이 Activity Properties 창에 표시됩니다. 이 목록에 필요한 모든 field가 포함되어 있는지 확인합니다.
  2. Test Activity를 클릭하여 스킬을 테스트하고 추출 결과를 분석합니다. 규칙이 의도한 대로 작동하지 않았다면 스크립트가 올바르게 작성되었는지 확인합니다. 또한 스크립트 규칙에서 사용된 모든 field의 추출 품질도 확인합니다.