スクリプト Functoid
Scripting Functoid を使用すると、実行時にカスタム スクリプトまたはコードを使用して、使用できない関数を実行できます。 たとえば、スクリプト functoid を使用し、独自のカスタム関数を記述することで、実行時に .NET アセンブリ を 呼び出すことができます。
スクリプト Functoid では、次の言語がサポートされています。
C# .NET
JScript .NET
Visual Basic .NET
XSLT (Extensible Stylesheet Language Transformations)
XSLT 呼び出しテンプレート
現在の Scripting Functoid と以前のバージョンのもう 1 つの大きな違いは、スクリプトを作成して Functoid 自体に格納する必要がなくなった点です。 代わりに、別の .NET アセンブリにスクリプトを作成し、 Script プロパティを使用してアセンブリを参照できます。 個別のアセンブリにスクリプトを格納すると、1 つ以上のマップで同じスクリプトを使用できます。 さらに、サードパーティベンダーからスクリプト Functoid アセンブリ を 購入できる場合があります。
以前のバージョンの BizTalk マッパーで作成された スクリプト Functoid は、BizTalk マッパーの現在のバージョンで使用できます。 ただし、最初に Functoid を移行する必要があります。 スクリプト Functoid を移行する 方法の詳細については、「 Functoid の移行」を参照してください。
スクリプト Functoid を マップに追加する場合は、Functoid で使用されるスクリプトを構成する必要があります。 Scripting Functoid を選択すると、[プロパティ] ウィンドウで Script プロパティが有効になります。 このプロパティの省略記号 (...) ボタンをクリックすると、[ スクリプト Functoid の構成 ] ダイアログ ボックスが開きます。 または、[スクリプト] Functoid を ダブルクリックすることもできます。
次の表は、このダイアログ ボックスのフィールドを示しています。
[スクリプト Functoid の構成] ダイアログ ボックスのフィールド | 説明 |
---|---|
[スクリプトの種類の選択] | このフィールドを使用して、このスクリプト Functoid で使用する スクリプトの種類を 選択します。 値: - 外部アセンブリ。 スクリプト functoid をグローバル アセンブリ キャッシュ (GAC) 内のアセンブリに関連付ける場合は、この値を使用します。 警告: 外部アセンブリのコードはスレッド セーフである必要があります。 ストレス条件下では、マップの複数のインスタンスが同時に実行される場合があります。 - インライン C# スクリプト functoid をインライン スクリプト バッファー内の C# コードに関連付ける場合は、この値を使用します。 - インライン JScript .NET。 スクリプト functoid をインライン スクリプト バッファー内の JScript .NET スクリプトに関連付ける場合は、この値を使用します。 - インライン Visual Basic .NET。 スクリプト functoid をインライン スクリプト バッファー内の Visual Basic .NET コードに関連付ける場合は、この値を使用します。 - インライン XSLT。 スクリプト functoid をインライン スクリプト バッファー内の XSLT に関連付ける場合は、この値を使用します。 - インライン XSLT 呼び出しテンプレート。 スクリプト functoid をインライン スクリプト バッファー内の XSLT 呼び出しテンプレートに関連付ける場合は、この値を使用します。 |
スクリプト アセンブリ | スクリプト Functoid に関連付けるアセンブリ を 選択します。 プロジェクト ウィンドウで参照されるアセンブリのみ、この一覧に表示されます。 また、GAC にアセンブリを登録する必要があることに注意してください。 このフィールドは、[ スクリプトの種類の選択] が [外部アセンブリ] に設定されている場合にのみ使用できます。 |
スクリプト クラス | 選択したアセンブリ内で、この Scripting Functoid で使用するクラスを選択します。 このフィールドは、[ スクリプトの種類の選択] が [外部アセンブリ] に設定されている場合にのみ使用できます。 |
[スクリプト メソッド] | 選択したクラス内で、この Scripting Functoid で使用するメソッドを選択します。 メモ: メソッドで予期される入力パラメーターの数が、[ スクリプト Functoid の構成 ] ダイアログ ボックスで指定された入力パラメーターの数と一致していることを確認します。 |
インライン スクリプト | 使用するインライン スクリプトをこのテキスト ボックスに書き込みまたはコピーします。 有効な言語とスクリプトには、C#、JScript .NET、Visual Basic .NET、XSLT、XSLT 呼び出しテンプレートが含まれます。 このフィールドは、[ スクリプトの種類の選択] が [インライン ] 設定のいずれかに設定されている場合にのみ使用できます。 注意: 同じメソッド シグネチャを複数回使用しないでください。 複数のスクリプト Functoid が同じメソッド シグネチャを持つ場合、BizTalk は、最初の実装を選択し、他の実装を無視します。 |
次の図は、C# .Net スクリプトを使用して電話番号を再フォーマットする スクリプト Functoid をマップに表示する方法を示しています。
スクリプト Functoid のマップ