---
sourceDocument: オーストラリア API リファレンス
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ja-JP/api-reference

 Release :

    - australia

ft:locale :

    - ja-JP

ft:publication_title :

    - オーストラリア API リファレンス

ft:clusterId :

    - crapiref

bundleId :

    - crapiref

workflow :

    - Creator


---

# sb - スコープ対象、グローバル

# sb - スコープ対象、グローバル {#ariaid-title1}

* リリースバージョン: Australia
* 
* 更新日 2026年03月12日
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 所要時間：14分

sb スクリプトインクルードは、サービスエクスチェンジ設定レコードに対して操作を実行できるようにするメソッドを提供します。  
このスクリプトインクルードを使用して操作を実行できる 3 つのタイプの サービスエクスチェンジ 設定レコードがあります。

* 基盤データ同期 (FDS)
* リモートレコードプロデューサー (RRP)
* リモートタスク定義 (RTD)

これらの設定レコードでは、次のいずれかの サービスエクスチェンジ 操作を実行できます。

* チェックアウト:指定された設定レコードのドラフトバージョンを作成します。公開されたバージョンは、引き続きお客様が利用可能です。
* 公開:指定された設定レコードのドラフトバージョンを公開し、顧客が使用できるようにします。
* アーカイブ:指定された設定レコードの非アクティブなバージョンをアーカイブし、顧客が利用できないようにします。
* 廃止:指定された設定レコードのすべてのバージョンを廃止し、顧客が利用できないようにします。
* 仮想フィールドを更新: サービスエクスチェンジ リモートタスクを使用する場合に、ターゲットインスタンスのタスクテーブルに仮想フィールドを入力します。

サービスエクスチェンジ設定レコードの詳細については、「[Create configuration revisions](https://www.servicenow.com/docs/access?context=service-bridge-v2-create-config-rev&version=australia&pubname=australia-service-exchange&ft:locale=en-US)」を参照してください。

この API にアクセスするには、 サービスエクスチェンジ for Providers アプリケーション (sn_sb_pro) プラグインと サービスエクスチェンジ Base (sn_sb) プラグインをインスタンスにインストールする必要があります。

この API のメソッドは、 sb スクリプトインクルードを使用して呼び出します。ただし、これらのメソッドのコードは PSBPublicAPIUtil スクリプトインクルードにあります。  
グローバルスコープからこれらのメソッドを呼び出す場合は、次の構文を使用します。

    sb.checkout(glideRecord);
    sb.publish(glideRecord);
    sb.archive(glideRecord);
    sb.retire(glideRecord);

スコープ対象のアプリケーションから呼び出す場合は、次の構文を使用します。

    global.sb.checkout(glideRecord);
    global.sb.publish(glideRecord);
    global.sb.archive(glideRecord);
    global.sb.retire(glideRecord);

## sb:アーカイブ (glideRecord) {#ariaid-title2}

指定された GlideRecord が有効な サービスエクスチェンジ 設定レコードであることを検証し、レコードが「非アクティブ」ステータスであることを確認します。この検証に合格すると、指定された設定レコードがアーカイブされ、同じ設定レコードの他のすべてのバージョンはそのまま残されます。
構成リビジョンとそれに関連するステータスの詳細については、「 [Create configuration revisions](https://www.servicenow.com/docs/access?context=service-bridge-v2-create-config-rev&version=australia&pubname=australia-service-exchange&ft:locale=en-US)」を参照してください。
{#PSBPubUtil-archive_GR__table_wlx_2cn_zbc__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| glideRecord | GlideRecord | アーカイブする設定レコード。 このレコードは次のいずれかになります。 * 基盤データ同期 (FDS):基盤データプロバイダーオファリング \[sn_fds_pro_offering\] テーブルにあるレコード。 * リモートレコードプロデューサー (RRP):リモートレコードプロデューサー \[sn_sb_pro_remote_record_producer\] テーブルにあるレコード。 * リモートタスク定義 (RTD):リモートタスク定義 \[sn_sb_pro_remote_task_def\] テーブルにあるレコード。 |
[表 : 1. パラメーター]

{#PSBPubUtil-archive_GR__table_wlx_2cn_zbc} {#PSBPubUtil-archive_GR__table_xlx_2cn_zbc__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | 設定レコードがアーカイブされたかどうかを示すフラグ。 可能な値： * true:構成レコードがアーカイブされました。 * false:エラーが発生しました。構成レコードはアーカイブされませんでした。 |
[表 : 2. 返される内容]

{#PSBPubUtil-archive_GR__table_xlx_2cn_zbc}  
次のコード例は、FDS 構成レコードのグローバルスコープからこのメソッドを呼び出す方法を示しています。

    var grConfig = new GlideRecord('sn_fds_pro_offering'''); // Configuration table that contains the desired record 
    grConfig.get('0ed11101ff6aca10c1befe258c4fd99e'); // Sys_id of the configuration record to publish
    var isExecuted = sb.archive(grConfig);

## sb:チェックアウト (glideRecord) {#ariaid-title3}

指定された GlideRecord が有効な サービスエクスチェンジ 設定レコードであることを検証し、レコードが「公開済み」ステータスであることを確認します。この検証に合格すると、指定された設定レコードの新しいバージョンが作成され、ステータスフィールドが「ドラフト」に設定されます。
{#PSBPubUtil-checkout_GR__table_x5b_yxm_zbc__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| glideRecord | GlideRecord | チェックアウトする構成レコード。 このレコードは次のいずれかになります。 * 基盤データ同期 (FDS):基盤データプロバイダーオファリング \[sn_fds_pro_offering\] テーブルにあるレコード。 * リモートレコードプロデューサー (RRP):リモートレコードプロデューサー \[sn_sb_pro_remote_record_producer\] テーブルにあるレコード。 * リモートタスク定義 (RTD):リモートタスク定義 \[sn_sb_pro_remote_task_def\] テーブルにあるレコード。 |
[表 : 3. パラメーター]

{#PSBPubUtil-checkout_GR__table_x5b_yxm_zbc} {#PSBPubUtil-checkout_GR__table_y5b_yxm_zbc__entry__2}

| タイプ | 説明 |
|-|-|
| GlideRecord | 成功すると、ステータスフィールドが「ドラフト」に設定された新しく作成された設定レコードが返されます。 エラーが発生した場合は null を返します。 |
[表 : 4. 返される内容]

{#PSBPubUtil-checkout_GR__table_y5b_yxm_zbc}  
次のコード例は、RTD 構成レコードのグローバルスコープからこのメソッドを呼び出す方法を示しています。

    var grConfig = new GlideRecord('sn_sb_pro_remote_task_def'); // Configuration table that contains the desired record 
    grConfig.get('0ed11101ff6aca10c1befe258c4fd99e'); // Sys_id of the configuration record to checkout
    var checkoutGr = sb.checkout(grConfig);

## sb:公開 (glideRecord) {#ariaid-title4}

指定された GlideRecord が有効な サービスエクスチェンジ 設定レコードであることを検証し、レコードが「ドラフト」ステータスであることを確認します。この検証に合格すると、設定レコードのドラフトバージョンが公開されます。
{#PSBPubUtil-publish_GR__table_mqz_mbn_zbc__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| glideRecord | GlideRecord | 公開する構成レコード。 このレコードは次のいずれかになります。 * 基盤データ同期 (FDS):基盤データプロバイダーオファリング \[sn_fds_pro_offering\] テーブルにあるレコード。 * リモートレコードプロデューサー (RRP):リモートレコードプロデューサー \[sn_sb_pro_remote_record_producer\] テーブルにあるレコード。 * リモートタスク定義 (RTD):リモートタスク定義 \[sn_sb_pro_remote_task_def\] テーブルにあるレコード。 |
[表 : 5. パラメーター]

{#PSBPubUtil-publish_GR__table_mqz_mbn_zbc} {#PSBPubUtil-publish_GR__table_nqz_mbn_zbc__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | 設定レコードが公開されたかどうかを示すフラグ。 可能な値： * true:構成レコードが公開されました。 * false:エラーが発生しました。構成情報レコードは公開されませんでした。 |
[表 : 6. 返される内容]

{#PSBPubUtil-publish_GR__table_nqz_mbn_zbc}  
次のコード例は、RRP 設定レコードのグローバルスコープからこのメソッドを呼び出す方法を示しています。

    var grConfig = new GlideRecord('sn_sb_pro_remote_record_producer''); // Configuration table that contains the desired record 
    grConfig.get('0ed11101ff6aca10c1befe258c4fd99e'); // Sys_id of the configuration record to publish
    var isExecuted = sb.publish(grConfig);

## sb:廃止 (GlideRecord) {#ariaid-title5}

指定された GlideRecord が有効な サービスエクスチェンジ 設定レコードであることを検証し、レコードが有効なステータスであることを確認します。この検証に合格すると、指定されたバージョンの設定レコードが、同じ設定レコードの他のすべてのリビジョンとともに廃止されます。
構成リビジョンとそれに関連するステータスの詳細については、「 [Create configuration revisions](https://www.servicenow.com/docs/access?context=service-bridge-v2-create-config-rev&version=australia&pubname=australia-service-exchange&ft:locale=en-US)」を参照してください。
{#PSBPubUtil-retire_GR__table_kqj_hcn_zbc__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| glideRecord | GlideRecord | 廃止する構成レコード。 このレコードは次のいずれかになります。 * 基盤データ同期 (FDS):基盤データプロバイダーオファリング \[sn_fds_pro_offering\] テーブルにあるレコード。 * リモートレコードプロデューサー (RRP):リモートレコードプロデューサー \[sn_sb_pro_remote_record_producer\] テーブルにあるレコード。 * リモートタスク定義 (RTD):リモートタスク定義 \[sn_sb_pro_remote_task_def\] テーブルにあるレコード。 |
[表 : 7. パラメーター]

{#PSBPubUtil-retire_GR__table_kqj_hcn_zbc} {#PSBPubUtil-retire_GR__table_lqj_hcn_zbc__entry__2}

| タイプ | 説明 |
|-|-|
| ブーリアン | 設定レコードが廃止されたかどうかを示すフラグ。 可能な値： * true:構成レコードは廃止されました。 * false:エラーが発生しました。構成レコードは廃止されませんでした。 |
[表 : 8. 返される内容]

{#PSBPubUtil-retire_GR__table_lqj_hcn_zbc}  
次のコード例は、RTD 構成レコードのグローバルスコープからこのメソッドを呼び出す方法を示しています。

    var grConfig = new GlideRecord('sn_sb_pro_remote_task_def'); // Configuration table that contains the desired record 
    grConfig.get('0ed11101ff6aca10c1befe258c4fd99e'); // Sys_id of the configuration record to checkout
    var isExecuted = sb.retire(grConfig);

## sb - updateVirtualField(GlideRecord remoteTaskGr, 文字列 virtualField, 文字列 virtualValue, 文字列 virtualDisplayValue) {#ariaid-title6}

サービスエクスチェンジリモートタスクを使用する場合、ターゲットインスタンスのタスクテーブルに仮想フィールドを入力します。
仮想フィールドは、ターゲットタスクテーブルには存在するが、ソースタスクテーブルには存在しないフィールドです。このメソッドを使用して、仮想フィールドの値をソースインスタンスからターゲットインスタンスに渡します。このメソッドは、仮想フィールドの指定された値を、指定された [リモートタスク](https://www.servicenow.com/docs/access?context=service-bridge-v2-remote-task-overview&version=australia&pubname=australia-service-exchange&ft:locale=en-US)のフォームセクションに JSON として保存します。その後、このリモートタスクはターゲットインスタンスに同期され、ターゲットタスクテーブルのマッピングされたフィールドに値が格納されます。

仮想フィールドは、リモートタスク定義で定義されます。リモートタスク定義には、ソースインスタンスとターゲットインスタンスのタスクテーブル間でフィールドをマッピングする受信および送信マッピングテーブルが含まれています。ソーステーブルにターゲットテーブルに存在するフィールドが含まれていない場合、そのフィールドはリモートタスク定義で仮想フィールドとして構成されます。コンシューマーは、 サービスエクスチェンジ 変換またはこのメソッドのいずれかを使用して、関連するターゲットタスクレコード内のこれらの仮想フィールドの値を更新できます。  
次のセクションでは、仮想フィールドを実装し、 updateVirtualField() メソッドを使用して仮想フィールドに値を入力する方法に関するユースケースの例について説明します。この例では、リモートタスク定義によってバインドされている 2 つのタスクテーブルは、プロバイダーケーステーブルとコンシューマーインシデントテーブルです。コンシューマーインスタンスでインシデントレコードが作成または更新されると、プロバイダーのケーステーブルと同期するように構成されます。ケーステーブルの \[影響を受けるインスタンス\] フィールドは必須フィールドですが、インシデントテーブルには存在しません。この状況を処理するには、関連付けられたリモートタスク定義の受信マッピングで \[影響を受けるインスタンス\] フィールドを仮想フィールドとして定義する必要があります。

1. プロバイダーは、プロバイダーの \[ケース\] テーブルとコンシューマーの \[インシデント\] テーブルのリモートタスク定義を作成します。
2. プロバイダーは、リモートタスク定義の \[関連リンク\] の \[受信フィールド\] タブで、インシデントテーブルとケーステーブルの間でフィールドをマッピングします。  
   \[影響を受けるインスタンス\] フィールドを定義するときに、プロバイダーは \[仮想\] チェックボックスをオンにし、\[ターゲットマッピング\] タブの \[ターゲット\] フィールドから \[影響を受けるインスタンス\] を選択します。  
   注:  
   仮想フィールドを定義する場合、ソースフィールドは存在しないため定義されません。
3. その後、プロバイダーはリモートタスク定義を公開し、コンシューマーインスタンスに同期します。
4. コンシューマーは、インシデントテーブルのリモートタスクを作成します。仮想フィールドに関する情報を含む、マッピングされたフィールドのすべての値を保持する JSON ペイロードが、リモートタスクのフォームセクションに含まれています。
5. コンシューマーインスタンスは、インシデントテーブルのレコードが更新されたときに実行されるビジネスルールなどで、 updateVirtualField() メソッドを呼び出して、リモートタスクの \[影響を受けるインスタンス\] フィールドの値を設定します。  
   注:  
   ターゲットテーブルにいつでもデータを入力できますが、リモートタスクをプロデューサーインスタンスに送信する前に、仮想フィールドとして設定された必須フィールドをリモートタスクに入力する必要があります。
6. リモートタスクがプロバイダーインスタンスに同期され、プロバイダーインスタンスにケースレコードが作成されます。
{#updateVirtualField_GR_S_S_S__ul_h45_dvq_dzb}

リモートタスク定義の作成方法については、「 [Create a remote task definition in Service Exchange for Providers](https://www.servicenow.com/docs/access?context=service-bridge-v2-create-remote-tasks-defs&version=australia&pubname=australia-service-exchange&ft:locale=en-US)」を参照してください。

サービスエクスチェンジ変換の作成方法については、「[Transform data with the Service Exchange transform framework](https://www.servicenow.com/docs/access?context=service-bridge-v2-transform-about&version=australia&pubname=australia-service-exchange&ft:locale=en-US)」を参照してください。  
警告:  
このメソッドは、呼び出されたリモートタスクを更新する前のビジネスルールでのみ呼び出す必要があります。このメソッドを事後ビジネスルールで呼び出す場合は、無限ループが発生する可能性があるため、リモートタスクの仮想フィールドの更新によってビジネスルールがトリガーされないようにする厳格な条件を含める必要があります。
{#updateVirtualField_GR_S_S_S__table_l1v_jpm_dzb__entry__3}

| 名前 | タイプ | 説明 |
|-|-|-|
| remoteTaskGr | GlideRecord | 指定された仮想フィールド値を設定するリモートタスクの GlideRecord オブジェクト。 |
| 仮想フィールド | 文字列 | 関連付け情報を更新する仮想フィールドのフィールド名。関連付けられたリモートタスク定義の \[ 送信フィールド \] 関連タブで定義します。 |
| 仮想値 | 文字列 | ターゲットインスタンスのこのフィールドに設定する値。 |
| 仮想表示値 | 文字列 | ターゲットインスタンスのこのフィールドに設定する表示値 |
[表 : 9. パラメーター]

{#updateVirtualField_GR_S_S_S__table_l1v_jpm_dzb} {#updateVirtualField_GR_S_S_S__table_m1v_jpm_dzb__entry__2}

| タイプ | 説明 |
|-|-|
| なし |   |
[表 : 10. 返される内容]

{#updateVirtualField_GR_S_S_S__table_m1v_jpm_dzb}  
次の例は、このメソッドを呼び出す方法を示しています。

    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>");


