- - PR -
ジョブで外部プログラム実行
1
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2005-11-16 12:05
・パッケージ作成ーパッケージ名:impftp
プロセス実行タスクのWin32プロセスに"c:\temp\testftp.exe"入力 ・ジョブ作成ーパッケージを実行するため 全般タブ:所有者 sa ステップタブー>全般タブ:種類 オペレーティングシステムコマンド(cmdExec) コマンド DTSrun /S FTPSVR /E /N impftp の状態で、 ジョブ名マウス右クリックで、ジョブの開始を選択すると、 状態欄に実行中表示のままです。終了しません。 testftp.exeの画面が立ち上がらないといけないですが、、 アドバイスお願いします。 | ||||
|
投稿日時: 2005-11-20 14:36
お疲れ様です。 まず, SQL Server の DTS と Agent Job に関する投稿であると書かれたほうがよいと思います。 投稿の背景が明確になりますので。 さて, SQL Server 2000 でのお話として続けさせていただきます。 DTS パッケージの単体実行では画面が立ち上がるが, Job に DTSRun を指定して実行するとプロセスが終わらない。 という状態だと思います。 これは,Job からの CmdExec が 例えば VBS などで, [code]----- Dim WshShell Set WshShell = WScript.CreateObject("Wscript.Shell") WshShell.Run "DTSrun /S raziel\sandalphon /E /N test",0 ←これ,False [code]----- などとして,「非表示のウィンドウ」状態で起動されているのと同じ状態です。 非表示の画面として立ち上がっているので,プロセスはきちんと起動しています。 画面の応答待ちになっていますから,当然実行中のままになります。 Agent Job はバッチ処理などを定期的に実行するシナリオを目指して用意されています。 このため,画面応答を含むシナリオとは本来相容れないと思います。 TestFTP とありますので,何らかの FTP 処理でしょうが, ・サーバー上のプロセスで,画面応答を含む FTP 処理 を ・定期的に実行できるように Job に登録する シナリオは,実際にはどのようなものでしょうか? シナリオによっては,別の解決策がとれると思います。 ---------- TimberLandChapel http://blogs.timberlandchapel.com/blogs/timberlandchapel/ | ||||
1
