StaticMethods - 전역
정적 메서드는 서버 측 JavaScript 내에서 사용할 수 있지만 클래스나 API의 일부가 아닌 메서드입니다.
사용하기 전에 생성자 또는 다른 유형의 인스턴스화 없이 서버 스크립트 내에서 이러한 메서드에 직접 액세스할 수 있습니다.
정적 메서드 - updateVirtualField(GlideRecord remoteTaskGr, string virtualField, string virtualValue, string virtualDisplayValue)
원격 작업을 사용하는 서비스 브리지 경우 대상 인스턴스의 작업 테이블에 가상 필드를 채웁니다.
가상 필드는 대상 작업 테이블에는 있지만 원본 작업 테이블에는 없는 필드입니다. 이 메서드를 사용하여 소스 인스턴스에서 대상 인스턴스로 가상 필드의 값을 전달합니다. 이 메서드는 가상 필드에 대해 지정된 값을 지정된 원격 작업의 양식 섹션에 JSON으로 저장합니다. 그런 다음 이 원격 작업은 대상 인스턴스와 동기화되어 대상 작업 테이블의 매핑된 필드에 값이 저장됩니다.
가상 필드는 원격 작업 정의에 정의되어 있습니다. 원격 작업 정의에는 소스와 대상 인스턴스의 작업 테이블 간 필드를 매핑하는 인바운드 및 아웃바운드 매핑 테이블이 포함됩니다. 소스 테이블에 대상 테이블에 존재하는 필드가 포함되어 있지 않으면 해당 필드는 원격 작업 정의에서 가상 필드로 구성됩니다. 그런 다음 소비자는 변환 또는 이 방법을 사용하여 서비스 브리지 연결된 대상 작업 기록에서 이러한 가상 필드의 값을 업데이트할 수 있습니다.
- 제공자는 제공자 케이스 테이블 및 소비자 인시던트 테이블에 대한 원격 작업 정의를 생성합니다.
- 원격 작업 정의의 관련 링크에 있는 인바운드 필드 탭에서 제공자는 인시던트 테이블과 케이스 테이블 간에 필드를 매핑합니다.영향을 받는 인스턴스 필드를 정의할 때 제공자는 가상 확인란을 선택한 다음 대상 매핑 탭의 대상 필드에서 영향을 받는 인스턴스를 선택합니다.주:가상 필드를 정의할 때 소스 필드가 존재하지 않으므로 정의되지 않습니다.
- 그런 다음 제공자는 소비자 인스턴스에 동기화되는 원격 작업 정의를 게시합니다.
- 소비자가 인시던트 테이블에 대한 원격 작업을 생성합니다. 가상 필드에 대한 정보를 포함하여 매핑된 필드에 대한 모든 값을 보유하는 JSON 페이로드가 원격 작업의 양식 섹션에 포함됩니다.
- 소비자 인스턴스는 인시던트 테이블의 기록이 업데이트될 때 실행되는 비즈니스 규칙에서와 같이 updateVirtualField() 메서드를 호출하여 원격 작업에서 영향을 받는 인스턴스 필드의 값을 설정합니다.주:언제든지 대상 테이블에 데이터를 채울 수 있더라도 원격 작업이 생산자 인스턴스로 전송되기 전에 가상 필드로 구성된 필수 필드를 원격 작업에 채워야 합니다.
- 원격 작업이 제공자 인스턴스에 동기화되고 제공자 인스턴스에 케이스 기록이 작성됩니다.
원격 작업 정의를 만드는 방법에 대한 자세한 내용은 을 참조하십시오 Create remote task definitions in Service Bridge for Providers.
변환을 만드는 서비스 브리지 방법에 대한 자세한 내용은 을 참조하십시오 Transform data with the Service Bridge transform framework.
| 이름 | 유형 | 설명 |
|---|---|---|
| 원격 작업Gr | GlideRecord | 지정된 가상 필드 값을 설정할 원격 작업의 GlideRecord 객체입니다. |
| 가상 필드 | 문자열 | 연관 정보를 업데이트할 가상 필드의 필드 이름입니다. 연결된 원격 작업 정의의 아웃바운드 필드 관련 탭에 정의됩니다. |
| 가상값 | 문자열 | 대상 인스턴스에서 이 필드에 대해 설정할 값입니다. |
| virtualDisplayValue | 문자열 | 대상 인스턴스에서 이 필드에 대해 설정할 값을 표시합니다. |
| 유형 | 설명 |
|---|---|
| 없음 |
다음 예제에서는 이 메서드를 호출하는 방법을 보여 줍니다.
var remoteTaskGr = new GlideRecord("");
/** Remote Task table name,
** Table name vary based on which instance the script is being executed.
**/
remoteTaskGr.get(""); // Remote Task record sys_id
global.sb.updateVirtualField(remoteTaskGr,"<virtual outbound field name>", "<value to set on target field>", "<display value to set on target field>");