SoR 内のリモート情報を更新
この統合シナリオは、銀行アプリケーション内の SoR を更新する方法を示しています。
このシナリオでは、 ServiceNow ワークフローのスクリプトが、顧客のクレジットカード限度額を更新するようにリモート銀行アプリケーションに要求します。新しい限度額が承認されると、銀行アプリケーション (SoR of Record) で顧客限度額が更新されます。
注:
顧客のクレジットカード限度額など、同じ情報がリモートシステムの記録システムと ServiceNow データベースの両方にある場合があります。このタイプの情報を照会する場合は、 ServiceNow データベース内の情報が最新でない可能性があるため、常に SoR 内の情報を使用するようにしてください。両方のデータストアでこの情報を更新するかどうかについては、独自の裁量で行ってください。このユースケースでは、クレジットカード口座 [sn_bom_cred_card] テーブルの情報は更新されません。
注:
このシナリオでは、銀行アプリケーションが、ServiceNow ワークフローからの更新要求を処理する REST エンドポイント POST /api/card/updateLimit を公開していることを前提としています。
このシナリオでアクセスされるテーブルは、企業間レコードを含む コンシューマー [csm_consumer] テーブルです。
次の図は、このユースケースの REST API 呼び出しのフローを示し、必要な処理について簡単に説明します。SoR 内のリモート情報をルックアップで説明されている手順を使用して顧客のアカウント情報を取得していることを前提としています。
|
コード例
以下は、上記の手順を実行する JavaScript の例です。
// Shows how to request the increase the credit limit for a specified card
// This code assumes there is a REST endpoint 'api/card/updateLimit' on the bank application system
// REST call to the /api/card/updateLimit endpoint to request
// an update to the customer's credit card limit
function updateCreditLimit(requestBody) {
var request = new sn_ws.RESTMessageV2();
request.setHttpMethod('post');
request.setEndpoint('/api/card/updateLimit');
request.setRequestBody(JSON.stringify(requestBody));
var response = request.execute();
var responseBody = response.getBody();
var responseObj = JSON.parse(responseBody);
return responseObj;
}
// The following is the data object sent to the /api/card/updateLimit endpoint
// to increase the credit limit for the card
var requestBody = {
'cardNumber': 'xxxx-xxxx-xxxx-5896',
'accountNumber': 'xxxxxxxxxxxx9590',
'oldLimit': 'USD 5000',
'newLimit': 'USD 10000',
'requestType': 'Increase_limit',
};
updateCreditLimit (requestBody);