- PR -

C#でDTSパッケージを作成したい

1
投稿者投稿内容
mon
会議室デビュー日: 2005/11/07
投稿数: 2
投稿日時: 2005-11-07 14:52
いつもお世話になっています。
初めて書き込みします。文章がおかしかったらスミマセン!

環境:
.NET 2003
SQL Server 2000

Webフォーム上のボタンクリック時、
DTSパッケージオブジェクトを作成し、画面で指定されたテキストファイルをインポートしたい。
インポート後、作成したDTSパッケージオブジェクトは破棄する。

SQLServer2000のDTSインポート/エクスポートウィザードから
「パッケージの保存、スケジュールの設定、およびプリケート」で
保存枠のオプションボタン:Visual Basicファイルを指定し、basファイルを作成しました。
そのbasファイルをC#になんとか置き換えてPackage.Executeを実行した直後、
Step2オブジェクトのExecutionResultプロパティでエラーを判定され、
Step2オブジェクトのGetExecutionErrorInfoでエラーの内容を調べたら
「ファイル フォーマット情報が不完全です - ファイルを開くことができません。」
とこ事でうまくいきませんでした。

作成されたbasファイルの記述以外にやった事は、接続2部分にパスワードプロパティを設定しました。

SQLServer2000に置いてあるパッケージをC#で実行できる事は確認できたのですが、
作成の方がうまくいきません。…と言うかC#で作成できるのでしょうか…???
接続2部分にパスワードプロパティを設定する以外にも何か書き加えなければならないのでしょうか?

.NET初心者ですのでできればわかり易くご教示頂きたいです。

どうぞ、よろしくお願いします。
mon
会議室デビュー日: 2005/11/07
投稿数: 2
投稿日時: 2005-11-07 16:57
すみません。書き忘れです。

SQLサーバはSQL Srever認証を使用しています。

些細な事でもいいのでよろしくお願いいたします。


ヤマハブラザーズ兄
会議室デビュー日: 2006/01/19
投稿数: 10
投稿日時: 2006-01-20 19:23
初めまして。
タイムリーな返答でなくて申し訳無いですが、別件で質問を投げたところ、
自分と同じく”C#+DTSパッケージ”を試みていらっしゃる様なので。。。

http://support.microsoft.com/?scid=kb;ja;319985&spid=2852&sid=global

上記マイクロソフトのページにサンプルコードが載っています。
これを使って、自分はSqlServer上のDTSパッケージをC#から起動する事が
出来ました。

但し、1点注意すべき事があり、

DTSパッケージに引数を渡す場合、
GlobalVariables.Item().valueに値を設定すると実行時にエラーが出て
しまったので、
GlobalVariables.Item().let_Value("")で、""の部分に値を設定すると
うまくいきました。
※ちなみにlet_Valueについてはマニュアルには載っておらず、Webでも
 日本のサイトでは見つける事が出来なくて、中国の掲示板サイトで
 探し当てました。よって、ホントに正しい設定なのかはちょっと
 疑問ですが、今のところ問題なく動いています。

以上です。
1

スキルアップ/キャリアアップ(JOB@IT)