新しい Scripted SOAP Web Service の作成
新しい Scripted SOAP Web Service を作成するには、次の例に従ってください。
Web サービスプロバイダー - スクリプト化済みプラグインを有効にすると、システム Web サービスアプリケーションの下で新しいモジュールスクリプト化済み Web サービスが利用可能になります。
例 1:システムプロパティの取得
最初のステップは、受信パラメーターと戻りパラメーターを定義することです。これを行うには、[ 入力パラメーター] と [ 出力パラメーター] にエントリを追加します。これらのパラメーターは、意味のある WSDL を構築して表示するために使用され、実際の Web サービス自体を処理する機能には追加されません。
パラメーターは、Web サービスのスクリプトで参照されます。入力パラメーターはすべて、次の構文を使用して取得されます。
var a= request.property;出力パラメーターは、次の構文を使用して設定されます。
response.property="ABC";次の例は、システムプロパティを取得し、それを SOAP 応答の一部として返す方法を示しています。この例では、カスタムスクリプト Web サービスを作成して、ベース ServiceNow システムが直接 Web サービスで実行できない特定の処理を行う方法を示します。
例 2:Blackberry を注文する
ダイレクト Web サービス は、テーブルとそのデータを操作します。次の例は、スクリプト化された Web サービスを呼び出して、Blackberry の注文などのビジネスソリューションを開始する方法を示しています。次の入力パラメーターと出力パラメーターは、Blackberry の例をサポートしています。
このスクリプトは、上記のパラメーターを使用して Blackberry をサービスカタログの買い物かごに追加して注文する方法を示しています。要求番号は、SOAP 応答の request_number フィールドに返されます。
var cart = new Cart();
var item = cart.addItem('e2132865c0a8016500108d9cee411699');
cart.setVariable(item,'original', request.phone_number);
// set the requested for
var gr = new GlideRecord("sys_user");
gr.addQuery("user_name", request.requested_for);
gr.query();
if(gr.next()){
var cartGR = cart.getCart();
cartGR.requested_for = gr.getUniqueValue();
cartGR.update();
}
var rc = cart.placeOrder();
response.request_number= rc.getValue('number');