비즈니스 규칙 및 스크립트 포함

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기2분
  • 비즈니스 규칙은 인스턴스 기록에 대한 CRUD(생성, 읽기, 업데이트, 삭제) 작업 중에 실행할 수 있는 서버 측 작업입니다.

    비즈니스 규칙을 사용할 때 좋은 방법은 다음과 같습니다.

    • 비즈니스 규칙을 작고 구체적으로 유지합니다.
    • 기본 시스템 비즈니스 규칙을 수정하지 마십시오.
    • 전역 비즈니스 규칙 대신 스크립트 포함을 사용하십시오.
    • 필요한 경우에만 스크립팅을 사용합니다.
    • 재사용 가능한 스크립트 논리를 Script Includes에 저장합니다.
    • 쿼리를 사용하여 비즈니스 규칙 내에서 처리되는 기록을 제한합니다.
    • 클라이언트 스크립트 실행 시 효율성을 높이기 위해 클라이언트 호출 가능 비즈니스 규칙을 피 하십시오.
    • 항상 비즈니스 규칙과 함께 조건을 사용하여 비즈니스 규칙이 실행되는 시기를 제어합니다. 조건이 있는 비즈니스 규칙을 실행하는 것도 디버깅에 도움이 될 수 있습니다. 비즈니스 규칙이 조건 없이 실행되는 경우는 거의 없습니다.

    비즈니스 규칙은 데이터베이스 작업 전후에 실행되도록 구성할 수 있습니다. 또한 양식을 표시하거나 쿼리를 실행하기 전에 비동기적으로 실행되도록 구성할 수도 있습니다.

    실행 사용 시기
    이전 데이터베이스 작업 전에 동기적으로 저장 작업의 일부로 현재 객체의 값을 설정하거나 업데이트합니다. 필요한 경우 실행을 확인하고 중단합니다. 개발자가 해당 기록의 다른 입력을 기반으로 현재 기록의 상태를 설정하려고 합니다.
    이후 데이터베이스 작업 후 동기적으로 데이터베이스 업데이트 후 이벤트 및 알림을 트리거하여 이전 객체에 액세스하거나 어떤 일이 순차적으로 발생하도록 합니다. 업데이트 중인 기본 테이블 이외의 관련 기록을 업데이트하여 이전 객체에 접근하거나 어떤 일이 순차적으로 일어나도록 합니다. 개발자가 현재 레코드의 값을 하위 레코드로 계단식으로 배열하려고 합니다.
    비동기 데이터베이스 작업이 완료된 후 별도의 프로세스로 비동기적으로 실행 규칙에 의해 트리거된 프로세스를 실행하는 데 시간이 걸릴 수 있습니다. 작업을 트리거한 사용자가 출력이 즉시 필요하지 않은 경우. 기록의 이전 값 또는 특정 작업 시퀀스에 대한 접근이 필요하지 않을 때 이벤트, 알림 또는 관련 기록 업데이트를 트리거합니다. 개발자는 시간이 걸리거나 많은 수의 기록을 업데이트할 수 있는 외부 프로세스를 트리거해야 합니다.
    표시 해당 폼이 표시될 때마다 실행됨 서버 쪽 개체를 클라이언트 쪽 스크립트에서 사용할 수 있도록 하는 데 사용됩니다. 개발자는 현재 레코드와 연결된 사용자에 대한 정보를 클라이언트 쪽 스크립트에서 사용할 g_scratchpad 개체에 쓰려고 합니다.
    주:
    current.update()는 비즈니스 규칙에서 사용해서는 안 됩니다. current.update()를 사용하면 추가 데이터베이스 작업이 트리거되어 중복 알림, 재귀 루프 등이 발생할 수 있습니다.

    스크립트 포함을 사용하여 서버 스크립트에서 사용할 JavaScript 함수 및 클래스를 저장합니다. 각 스크립트 포함은 서버측 스크립트 간에 다시 사용할 수 있는 객체 클래스 또는 함수를 정의합니다.

    스크립트 포함의 다른 곳에서 사용해야 할 수 있는 코드를 저장합니다. 비즈니스 규칙, UI 작업, 워크플로우 스크립트, 스크립팅된 REST API 등에서 스크립트 포함을 호출합니다. UI 작업에서 비즈니스 규칙을 호출하거나 Scripted REST API에서 UI 작업을 호출하는 대신, Script Include에 코드를 넣고 두 위치 모두에서 Script Include를 호출합니다.

    Script Include에 함수를 보관하면 다른 스크립트 영역에 함수를 배포하기 전에 함수를 테스트할 수 있으므로 전체 개발 및 테스트 시간을 줄일 수 있습니다.

    자세한 내용은 Business Rules를 참조하십시오.