サードパーティ配送業者アプリケーション用の統合スクリプトインクルードの作成

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:2分
  • ServiceNow インスタンスと統合するには、サードパーティの配送業者アプリケーションに、ServiceNowインスタンスに基底クラスの ITAMShipmentIntegration スクリプトを拡張するスクリプトインクルードを用意し、顧客のServiceNowインスタンスから出荷追跡番号を受信し、配送業者関連の詳細で応答する必要があります。

    スクリプトインクルードを作成するときは、次の点を考慮してください。
    • アプリケーションリソースレコードの次の設定を調整して、 資産管理 共通アプリケーションスコープからスクリプトインクルードにアクセスできることを確認します。
      • [アクセス可能] フィールドを [すべてのアプリケーションスコープ] に設定します。
      • 発信者アクセスが制限されていないことを確認するには、[ 発信者アクセス ] フィールドを [なし ] に設定します。
    • 追跡番号に基づいて購入者の ServiceNow インスタンスと通信するためのコードは、 fetchShipmentInfo 関数内に含める必要があります。
    • 購入者の ServiceNow インスタンスとの接続を検証するためにAPIがテストモードで呼び出された場合、 fetchShipmentInfo メソッドからの応答は、次のようにHTTP応答コードと応答メッセージを含むJSONオブジェクトである必要があります。
      {
      httpResponseCode: 200, httpResponseMessage: ‘SUCCESS’
      }
      
    • テストモードでない場合は、出荷を照会し、次の応答形式で processResponse メソッドを呼び出します。
      [
      {
      trackingNumber: ‘’,
      deliveryDate: ‘’,
      pickupDate: ‘’,
      packageStatus: ‘’.
      statusDetail: ‘’,
      trackingURL: ‘’,
      parcelWeight: ‘’,
      deliveryServicesCost: ‘’,
      currency: ‘’
      }
      	]
      

    ITAMShipmentIntegration スクリプトインクルードのサンプルコード

    図 : 1. サンプルの ITAMShipmentIntegration スクリプトインクルードと、 IT Asset Management アプリケーションによって提供されるデフォルトの processResponse 関数
    ITAM processResponse 関数を使用した ITAMShipmentIntegration スクリプトインクルード
    図 : 2. カスタム processResponse 関数を含むサンプルの ITAMShipmentIntegration スクリプトインクルード
    カスタム processResponse 関数を含む ITAMShipmentIntegration スクリプトインクルード

    fetchShipmentInfo 関数

    fetchShipmentInfo 関数は、顧客のServiceNowインスタンスから追跡番号を受け取り、配送業者 API を呼び出してすべての追跡番号の出荷の詳細をフェッチします。この関数内では、顧客が追跡番号に基づいて配送業者 API と通信できるようにするビジネスロジックを定義する必要があります。この関数は、キャリア API から受信した応答を処理し、後処理関数を呼び出します。

    processResponse 関数

    processResponse 関数は、配送業者 API からの応答を受信し、次の配送業者関連の詳細で出荷レコードを更新します。
    • 配送業者リンク
    • 配送業者ステータス
    • 配送業者ステータスの詳細
    • 配送業者の集荷日
    • 配送業者配送日
    • 通貨
    • 配送サービスコスト
    • パーセルの重み付け

    デフォルトの processResponse 関数を使用するか、カスタムロジックを定義して出荷レコードを更新できます。