2016-10-03 8 views
0

ビズトークマッパーでカスタムXSLTコードを使用してSQLサーバーデータベースにアクセスする方法はありますか?データベースからアクセスしてDBからexcat値を取得するには、databaselookupノードを使用できます。データベースアクセス用のXSLTコード

私はあなたがマップにデータベースを参照し、値抽出Functoidのを追加し、検証地図をクリックして、生成されたXSLファイルを見て、これを見つけることができXSLコードで

答えて

0

をSQLデータベースにアクセスするためのコードが必要です。

次のようになります。

<xsl:variable name="var:v1" select="ScriptNS0:DBLookup(0 , string(XPATHTOVALUETOLOOKUP/text()) , &quot;CONNECTIONSTRING&quot; , &quot;TABLENAME&quot; , &quot;COLUMNNAME&quot;)" /> 
<xsl:variable name="var:v2" select="ScriptNS0:DBValueExtract(string($var:v1) , &quot;EXTRACTCOLUMNNAME&quot;)" /> 

これは、検索された値を出力します。

<xsl:value-of select="$var:v2" /> 

テンプレートの終わりの直前には次もあります。

<xsl:variable name="var:v3" select="ScriptNS0:DBLookupShutdown()" /> 

注:

  1. すべての資本の項目は返すようにフィールドの値、接続文字列、テーブルとカラムが必要になります。
  2. 変数名v1〜v3は、すでに使用している変数によって異なる場合があります。
  3. 参照データを検索している場合は、XrefのFunctoidがあります。これにより、展開が簡単になるように接続文字列を作成する必要がなくなります。私のブログを参照してくださいBizTalk Pattern: Translating Reference Data in a Map using Xref
+0

グリッドのマップの内容を無視しながらあなたの右。名前空間エラーが来る。 –

+0

内部スクリプト関数を使用してデータベースにアクセスし、datalookupのfunctoidで行っていることと同じことを正確な値にすることができます。あなたの応答のためにDijkgraafにお礼を言います –

+0

マッピングfunctoidsからcustomxsltに移動する目的で –

関連する問題