---
sourceDocument: 호주 API 참조
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ko-KR/api-reference

 Release :

    - australia

ft:locale :

    - ko-KR

ft:publication_title :

    - 호주 API 참조

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# 비즈니스 규칙 디버깅

# 비즈니스 규칙 디버깅 {#ariaid-title1}

* 릴리스 버전: Australia
* 
* 업데이트 날짜 2026년 03월 12일
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 소요 시간: 3분

비즈니스 규칙 디버깅은 제품에서 사용할 수 있는 자원을 사용하여 수행할 수 있습니다 ServiceNow .

## 1. 도구

프로세스의 첫 번째 단계는 무엇이 잘못되었는지 파악하는 데 도움이 되는 도구를 식별하는 것입니다.
{#r_DebuggingBusinessRules__table_ipc_pwl_jp__entry__2}

| 디버깅 도구 | 설명 |
|-|-|
| 시스템 딕셔너리 | 다음으로 이동 시스템 정의딕셔너리. 딕셔너리는 인스턴스 내의 모든 테이블 목록을 제공하며 정보를 찾으려고 할 때 매우 유용할 수 있습니다. |
| 시스템 로그 | 다음으로 이동 시스템 로그시스템 로그. 로그에 정보를 쓸 수 있는 경보 설명을 비즈니스 규칙에 배치할 수 있습니다. |
| 비즈니스 규칙 디버그(상세 정보) | 다음으로 이동 시스템 진단세션 디버그비즈니스 규칙 디버그(상세 정보). 이 디버깅 모듈은 비즈니스 규칙 결과를 표시합니다. 이 모듈을 사용하여 조건이 충족되고 값이 예상대로 설정되고 있는지 확인합니다. |
| 경보 메시지 | 페이지, 필드 또는 로그 파일에 메시지를 인쇄할 수 있는 여러 시스템 기능이 있습니다. [스크립팅 경보, 정보 및 오류 메시지](https://servicenow-prod.fluidtopics.net/QuUsvk3I9F5ChV8F6svaFg "고객에게 경보, 정보 메시지 또는 오류 메시지로 메시지를 보낼 수 있습니다.") 문서를 참조하십시오. |
| 비즈니스 규칙 예시 | 비즈니스 규칙 오류 메시지를 비롯하여 또는 OR 쿼리를 작성하여 다른 사용자가 작성한 스크립트에서 원하는 것을 찾을 수 있는 경우가 있습니다. |
| GlideRecord 정보 | 데이터베이스에 정보를 쿼리하는 데 사용되는 기본 구문입니다. [스크립트에서 테이블 쿼리](https://servicenow-prod.fluidtopics.net/m0vf2kDl_EIzsnZAFaz94g#c_UsingGlideRecordToQueryTables "GlideRecord API의 메서드를 사용하여 테이블에서 모든 기록을 반환하거나, 테이블에서 특정 조건을 만족하는 기록을 반환하거나, 단일 테이블 또는 텍스트 인덱스 그룹의 여러 테이블에서 문자열을 포함하는 기록을 반환할 수 있습니다.") 문서를 참조하십시오. GlideRecord에는 집계 지원도 포함되어 있습니다. |
[표 1. 디버깅 도구]

{#r_DebuggingBusinessRules__table_ipc_pwl_jp}

## 2. 변수

다음 단계는 비즈니스 규칙의 동작에 대한 인사이트를 얻는 것입니다. 삽입을 제외한 모든 작업에 대해 쿼리를 사용하여 기록을 가져올 가능성이 높습니다.

    var rec = new GlideRecord('incident');
    rec.addQuery('active',true); 
    rec.query();
    while (rec.next()) {
     gs.print(rec.number + ' exists');
     }

쿼리가 실제로 레코드를 반환하는지 확인하려면 <var class="keyword varname">gs.addInfoMessage</var> 를 사용하여 화면 맨 위에 정보를 표시할 수 있습니다.

    var rec = new GlideRecord('incident');
    rec.addQuery('active',true); 
    rec.query();
    gs.addInfoMessage("This is rec.next: " + rec.next());
    while (rec.next()) {
     gs.print(rec.number + ' exists');
     }

쿼리에서 레코드가 반환되지 않으면 다음이 표시됩니다.

    This is rec.next: false

이 기술을 사용하여 비즈니스 규칙 내의 모든 변수에 예상 값이 포함되어 있는지 확인합니다.  
팁:  
필요한 경우 스크립트를 개별 조각으로 나누고 각 조각이 전체와 별도로 작동하는지 확인한 다음 한 번에 한 단계씩 모두 다시 결합합니다.

## 3. 정보 찾기

마지막 단계는 규칙이 찾고 있는 정보를 어디서 찾을 수 있는지 확인하는 것입니다.

애플리케이션에서 ServiceNow 한 테이블이 다른 테이블을 확장할 수 있습니다. 즉, 정보를 검색할 때 상위 테이블에서 확장 테이블의 sys_id을 쿼리하여 원하는 항목을 찾아야 할 수도 있습니다.

좋은 예는 작업 테이블을 확장하는 sc_task 테이블입니다. 아래 스크립트는 확장 테이블(sc_task)에서 현재 sys_id을 쿼리한 다음 상위 테이블(작업)에서 일치하는 sys_id이 있는 기록을 쿼리한 다음 작업 메모 필드를 출력합니다.

    var kids = new GlideRecord('sc_task');
    kids.query();
     
    gs.addInfoMessage("This is requested item number: " + current.number);
    gs.print("This is the requested item number: " + current.number);
     
    while (kids.next()) { 
     var parents = new GlideRecord('task');
     parents.addQuery('sys_id', '=', kids.sys_id);
     parents.query();
     
     while(parents.next()) {
      gs.addInfoMessage("This is task number: " + parents.number);
      gs.print("This is task number: " + parents.number);
      gs.addInfoMessage("These are the work notes: " + parents.work_notes);
      gs.print("These are the work notes: " + parents.work_notes);
      }
     
     }


