Web サービス タスク

適用対象: SQL Server Azure Data Factory の SSIS 統合ランタイム

Web サービス タスクは、Web サービス メソッドを実行します。 Web サービス タスクは、次の目的で使用できます。

  • Web サービス メソッドが返す値を変数に書き込みます。 たとえば、Web サービス メソッドから 1 日の最高気温を取得し、その値を使用して、列の値を設定する式で使用する変数を更新できます。

  • Web サービス メソッドが返す値をファイルに書き込みます。 たとえば、見込み客の一覧をファイルに書き込み、データをデータベースに書き込む前にそのデータをクリーンにするためのパッケージのデータ ソースとして、そのファイルを使用できます。

WSDL ファイル

Web サービス タスクは、HTTP 接続マネージャーを使用して Web サービスに接続します。 HTTP 接続マネージャーは、Web サービス タスクとは別に構成され、タスク内で参照されます。 HTTP 接続マネージャーは、サーバーの URL、Web サービスのサーバーにアクセスするための資格情報、タイムアウト長などの、サーバーのプロキシ設定を指定します。 詳細については、「 HTTP 接続マネージャー」を参照してください。

重要

HTTP 接続マネージャーでは、匿名認証と基本認証のみがサポートされています。 Windows 認証はサポートされていません。

HTTP 接続マネージャーは、Web サイトまたは Web サービス記述言語 (WSDL) ファイルを参照できます。 WSDL ファイルを参照する HTTP 接続マネージャーの URL には、 ?WSDL パラメーターが含まれます。たとえば、 https://MyServer/MyWebService/MyPage.asmx?WSDLと指定します。

デザイナーで用意されている [Web サービス タスク エディター] SSIS ダイアログ ボックスを使用して Web サービス タスクを構成するには、WSDL ファイルがローカルで使用できる必要があります。

  • HTTP 接続マネージャーが Web サイトを参照する場合、WSDL ファイルを手動でローカル コンピューターにコピーする必要があります。

  • HTTP 接続マネージャーが WSDL ファイルを参照する場合、Web サービス タスクを使用して、Web サイトからその WSDL ファイルをローカル ファイルにダウンロードできます。

WSDL ファイルには、Web サービスが提供するメソッド、メソッドに必要な入力パラメーター、メソッドが返す応答、および Web サービスとの通信方法が一覧表示されます。

メソッドが入力パラメーターを使用する場合、Web サービス タスクにはパラメーター値が必要です。 たとえば、身長に基づいて購入するスキーの長さをアドバイスする Web サービス メソッドでは、入力パラメーターに身長を送信する必要があります。 パラメーター値は、タスク内で定義されている文字列、またはタスクのスコープか親コンテナーで定義されている変数によって指定できます。 変数を使用すると、パッケージ構成またはスクリプトを使用してパラメーター値を動的に更新できるという利点があります。 詳細については、「Integration Services (SSIS) の変数」と「パッケージ構成」を参照してください。

多くの Web サービス メソッドでは、入力パラメーターを使用しません。 たとえば、今月が誕生月の大統領の名前を取得する Web サービス メソッドでは、入力パラメーターは必要ありません。これは、Web サービスで現在の月をローカルに判別できるためです。

Web サービス メソッドの結果は、変数またはファイルに書き込むことができます。 結果を書き込むファイルを指定するか、変数の名前を指定するには、ファイル接続マネージャーを使用します。 詳細については、「ファイル接続マネージャー」および「Integration Services (SSIS) の変数」を参照してください。

Web サービス タスクで使用できるカスタム ログ メッセージ

次の表は、Web サービス タスクに対して有効にできるカスタム ログ エントリの一覧です。 詳細については、「 Integration Services (SSIS) のログ記録」を参照してください。

ログ エントリ 説明
WSTaskBegin タスクが Web サービスへのアクセスを開始しました。
WSTaskEnd タスクが Web サービス メソッドを完了しました。
WSTaskInfo タスクに関する説明情報を提供します。

Web サービス タスクの構成

プロパティを設定するには SSIS デザイナーから行うか、またはプログラムによって設定します。

SSIS デザイナーで設定できるプロパティの詳細については、次のトピックを参照してください。

SSIS デザイナーでこれらのプロパティを設定する方法については、次のトピックを参照してください。

プログラムによる Web サービス タスクの構成

プログラムによってこれらのプロパティを設定する方法の詳細については、次のトピックのいずれかを参照してください。

[Web サービス タスク エディター] ([全般] ページ)

[Web サービス タスク エディター] ダイアログ ボックスの [全般] ページを使用すると、HTTP 接続マネージャーの指定、Web サービス タスクで使用する WSDL (Web サービス記述言語) ファイルの場所の指定、Web サービス タスクの記述、WSDL ファイルのダウンロードなどの操作を実行できます。

Options

[HTTPConnection]
接続マネージャーを一覧から選択するか、<[新しい接続...]> をクリックして新しい接続マネージャーを作成します。

重要

HTTP 接続マネージャーでは、匿名認証と基本認証のみがサポートされています。 Windows 認証はサポートされていません。

関連項目: HTTP 接続マネージャー[HTTP 接続マネージャー エディター] ([サーバー] ページ)

[WSDLFile]
コンピューターのローカルにある WSDL ファイルの完全修飾パスを入力するか、参照ボタン ( [...] ) をクリックしてファイルを指定します。

WSDL ファイルを既に手動でコンピューターにダウンロードしている場合は、そのファイルを選択します。 ただし、WSDL ファイルをまだダウンロードしていない場合は、次の手順に従います。

  • ファイル名拡張子が ".wsdl" の空のファイルを作成します。

  • [WSDLFile] オプションで、この空のファイルを選択します。

  • [OverwriteWSDLFile] の値を True に設定して、空のファイルを実際の WSDL ファイルで上書きできるようにします。

  • [WSDL のダウンロード] をクリックして実際の WSDL ファイルをダウンロードし、空のファイルを上書きします。

    Note

    [WSDL のダウンロード] オプションは、 [WSDLFile] ボックスに既存のローカル ファイルの名前を指定するまで有効になりません。

[OverwriteWSDLFile]
Web サービス タスクの WSDL ファイルを上書きできるかどうかを示します。

[WSDL のダウンロード] ボタンを使用して WSDL ファイルをダウンロードする場合は、この値を Trueに設定します。

名前
Web サービス タスクの一意な名前を指定します。 この名前は、タスク アイコンのラベルとして使用されます。

Note

タスク名はパッケージ内で一意である必要があります。

説明
Web サービス タスクの説明を入力します。

[WSDL のダウンロード]
WSDL ファイルをダウンロードします。

このボタンは、 [WSDLFile] ボックスに既存のローカル ファイルの名前を指定するまで有効になりません。

[Web サービス タスク エディター] ([入力] ページ)

[Web サービス タスク エディター] ダイアログ ボックスの [入力] ページを使用すると、Web サービス、Web メソッド、および Web メソッドの入力値を指定できます。 値を指定するには、[値] 列に直接文字列を入力するか、[値] 列から変数を選択します。

Options

サービス
Web メソッドを実行するために使用する Web サービスを一覧から選択します。

方法
タスクで実行する Web メソッドを一覧から選択します。

[WebMethodDocumentation]
Web メソッドの説明を入力するか、参照ボタン ( [...] ) をクリックして [Web メソッド ドキュメント] ダイアログ ボックスに説明を入力します。

名前
Web メソッドへの入力の名前を一覧表示します。

Type
入力のデータ型を一覧表示します。

Note

Web サービス タスクがサポートするパラメーターのデータ型は、整数や文字列などのプリミティブ型、プリミティブ型の配列とシーケンス、および列挙型のみです。

変数
変数を使って入力値を指定する場合は、チェック ボックスをオンにします。

Value
[Variable] のチェック ボックスをオンにした場合、一覧から変数を選択して入力値を指定します。それ以外の場合は、入力値として使用する値をキーボードから入力します。

[Web サービス タスク エディター] ([出力] ページ)

[Web サービス タスク エディター] ダイアログ ボックスの [出力] ページを使用すると、Web メソッドから返された結果を格納する場所を指定できます。

静的オプション

[OutputType]
結果を格納するときに使用するストレージ型を選択します。 このプロパティのオプションを次の表に示します。

説明
[ファイル接続] 結果をファイルに格納します。 この値を選択すると、動的オプションの [ファイル] が表示されます。
変数 結果を変数に格納します。 この値を選択すると、動的オプションの [変数] が表示されます。

[OutputType] の動的オプション

[OutputType] = [ファイル接続]

[最近使ったファイル]
ファイル接続マネージャーを一覧から選択するか、[<新しい接続...>] をクリックして新しい接続マネージャーを作成します。

関連トピック: 接続マネージャー、ファイル接続マネージャー エディター

[OutputType] = [変数]

変数
一覧で変数を選択するか、[<新しい変数...>] をクリックして新しい変数を作成します。

関連トピック: Integration Services (SSIS) の変数変数の追加

MSDN ライブラリのビデオ「Web サービス タスクを使用して Web サービスを呼び出す方法 (SQL Server ビデオ) (technet.microsoft.com)