2016-07-20 19 views
0

私は同様のプロセスの例を挙げたいくつかの記事を読んでいます。 私はこの仕事をしようと多くの時間をかけてきました。私は本当にこれが働くようにしたいので、この時間を "私は何かを学んだ"カテゴリに入れることができます しかし、私は少なくともそれを学ぶでしょう。SSISは、実行プロセスタスクを介してすべてのファイルを可変の宛先にコピーします。

私は、ssis 2008r2を使用して、フォルダから別のフォルダにすべてのファイルをコピーしています。 - 実行中のプロセスタスク - 実行可能フィールドのC:\ Windows \ System32 \ cmd.exeを使用 - コピー先のフォルダは、starttime変数を使用して作成したい変数です - これは動作しています - すべての作業ファイルをそのフォルダにコピーします。 - このdestフォルダは2番目までの開始時刻を使用しているため、最小限のエラーまたは上書きで試行された各実行をキャプチャできます

私はストレート変数を使用して、変数を使用する最も単純な方法ですべてのファイル。私は現在、私のみとめで使用しています 変数は試みがある失敗した...

[user::testtofolder] = p:\Utilities\SWUMOps\Archive\20160720-0921-03-SAWSImports 
[user::testtofolder1] = p:\\Utilities\\SWUMOps\\Archive\\20160720-0921-03-SAWSImports 
[user::testtofolder2] = p:\\Utilities\\SWUMOps\\Archive\\20160720-0921-03-SAWSImports 

以下このことについて不満の事がある私は、引数フィールドにしようとした試み

/c copy /y p:\utilities\swumops\backend\saws p:\utilities\swumops\archive\20160720-0921-03-sawsimports -- works (no variables) 

/c copy /y p:\utilities\swumops\backend\saws + @[user::testtofolder] -- fails 

"/c copy /y \"p:\utilities\swumops\backend\saws\" + @[user::testtofolder] -- fails 

"/c copy /y \"p:\utilities\swumops\backend\saws\"" + @[user::testtofolder] -- fails 

"/c copy /y \"p:\utilities\swumops\backend\saws \"" + @[user::testtofolder] -- fails 

"/c copy /y \"p:\\utilities\\swumops\\backend\\saws \"" + @[user::testtofolder] --fails 

/c copy /y p:\\utilities\\swumops\\backend\\saws + @[user::testtofolder] --fails 

"/c copy /y \"p:\\utilities\\swumops\\backend\\saws \" + @[user::testtofolder] --fails feel this is the closest 

"/c copy /y \"p:\\utilities\\swumops\\backend\\saws \" + @[user::testtofolder1] -- fails 

"/c copy /y \"p:\\utilities\\swumops\\backend\\saws \" + @[user::testtofolder2] -- fails 

の一部ですウィンドウが高速に点滅し、エラーが引数フィールドにある行だけを過去の文字列ではないので、cmdに本当に渡されているものを見ることができません。エラーは次のようになります...

エラー:0xC0029151 atファイルをアーカイブにアーカイブし、プロセスを実行します。タスク: "C:\ Windows \ System32 \ cmd.exe"を実行しています "/ c copy/y" \ utilities \ swumops \ backend \ saws \ "+ @ [user :: testtofolder] at" "、プロセス終了コードは" 1 "、期待値は" 0 "です。

あなたがより多くを必要とするなら、私は知っている。 は、SSISファイルシステムタスクで

+0

私は過去にこの方法を使っていましたが、うまくいきました。私はそれを掘りましょう。 IMHO SSISファイルシステムタスクは、あまりにも多くの変数を必要とし、十分な柔軟性がありません。 –

+0

OK残念ながらパッケージはありません。トラブルシューティングの最初のステップは、_Evaluate Expression_タスク内の別の変数でコマンドラインを事前に評価することです。ここでは、評価ボタンを押して、(/ Cを付けずに)cmdウィンドウに直接コピー&ペーストし、エラーを確認することができます。 –

+0

私はこのメソッドを使用しています。あなたはそれが引数行がそれを読む方法と一致するはずであることを確認しました。私は私の問題が他の文法であるかもしれないと思う。私はcqiのようにxcopy.exeに切り替える(それはより単純で、まっすぐ進む)と私は変数に全体の文字列を入れ、ちょうどそれを引数で変数を入れて、それは同じように失敗します。 – Kaz

答えて

0

注目をいただきありがとうございました。私の問題を他の場所で見てもらうのに役立ちました。私は前にタスクの表現領域を使用していません。 iNoob。私はどこでも、書式付きの行を引数に置いて調査しました。だから、私は引数の行に直接置いています。引数の行を追加することで、式ウィンドウにはありません。最初の簡単なテストが機能しました。だから今は大丈夫だろうと思う。
私はそれが私が必要な場所に私を持っている時間を感謝します!

0

は、あなたのタスクを実行する方がはるかに簡単な方法でなければなりません。私はあなたがファイルをコピー/移動するには、コマンドラインを使用する必要がどのように来ることを確認していない、ありがとうございました。

あなたの質問には、cmd.exeの代わりにxcopy.exeを使う必要があると思います。実行可能ファイルは、 "C:\ WINDOWS \ System32に\のXCOPY.EXE" でなければならず、

" /y p:\utilities\swumops\backend\saws " + @[user::testtofolder] 

はそれが役に立てば幸いように引数が見えたしなければなりません。

+0

Nick.McDermaidのコメントに入れてみましたが、私はxcopyに甘んじましたが、引数に変数を読み込ませることはできません。私はスクリーンショットを投稿します - 多分私はタスクや変数のプロパティで簡単な間違いをしています。 – Kaz

+0

cantはスクリーンショットを行う、私はイメージファイルを公開する場所がありません。議論に関する他の提案。誰が実際に何が引数として渡されているかを知る方法を知っていますか? – Kaz

関連する問題