BIML <ScriptComponentProject> タグを使用して単純なフローを作成しようとしていますが、うまくいきません!
データ フローを手動で作成すると、完全に正常に動作します。
- 私のデータフローは: SRC > SCRIPT-COMPONENT > TGT
- 私が追加した唯一のロジックは、各受信行の行番号を計算することです (今のところ、ロジックを完全に単純に保ちます)。
手動ソリューションが実行された場合:
- 連続した行番号は TGT テーブル (test_np_02) に格納されます
- すごい!
ただし、添付の BIML を使用してまったく同じパッケージを作成しようとすると、次のエラーが発生します。
SSIS 出力ログ:
Error 0 The namespace '<global namespace>' already contains a definition for 'Input0Buffer'. ...\Designer\BufferWrapper.cs 14 14
Error 0 The namespace '<global namespace>' already contains a definition for 'UserComponent'. ...\Designer\ComponentWrapper.cs 12 14
Error 0 The namespace '<global namespace>' already contains a definition for 'Connections'. ...\Designer\ComponentWrapper.cs 49 14
Error 0 The namespace '<global namespace>' already contains a definition for 'Variables'. ...\Designer\ComponentWrapper.cs 60 14
EmitSsis. Internal Compiler Error: Workflow EmitSsis contains fatal errors. Phase execution halted.
BIML を使用して PKG を作成しようとすると、何が問題なのかわかりません。
- パッケージを手動で(同じコードで)作成したとき、これらのエラーは決してポップアップしませんでした
- 重要な C# ファイルを手動ソリューションから BIML にコピーして貼り付けました
質問/アイデア:
ProjectCoreName、AssemblyProduct、および AssemblyTitle に使用する必要がある GUID と関係がありますか?
- これは、BIML が展開されるたびに自動的に生成されますか?
- もしそうなら、これらのアイテムの BIML 自体に GUID を作成するにはどうすればよいですか?
<Files> タグ内の BIML で .cs ファイルを作成する順序に関係がありますか?
- <Files> タグ内の <File> 項目の実際の順序は、BIML には関係ないと現在想定しています。
BIML で "Resources.resx/Resources.Designer.cs" と "Settings.settings/Settings.Designer.cs" も生成する必要があるのでしょうか?
各 .cs ファイルに「#region Namespaces」セクションを含めることは本当に重要ですか?
- 私はそれをマニュアルソルンから削除しました..それでもうまくいきました!
助けてください。
ノート:
SSDT 2015 と Varigence BIMLExpress 2017 (ビルド 5.0.61915.0) を使用しています。
これは、SRC 自体の SQLServer 内で ROW_NUMBER() を使用して非常に簡単に実行できることを認識していますが、次のようになります。
- 簡単にするために、添付の例で OleDbSource を使用しています
- 最後に、BIML を使用して何百ものコード PKG を生成する必要があります。これには、OleDB ではなく、SRC がフラット ファイルとして含まれます。
- そして明らかに、生成された ScriptComponents を展開直後に動作させたいと思っています..それ以上の手動介入なし:)
ありがとう、
NP
BIML ファイル: https://drive.google.com/file/d/10O3aSL5IO34ULS44wl7IX4LUmPH_pI6V/view?usp=sharing