私はSSISパッケージを実行するスケジュールされたSQLエージェントタスクを持っています。私は.netからSSISパッケージを実行できるようにしたい。 SSISパッケージを直接実行する方法と、少なくともSSISパッケージを実行するSQLエージェントタスクを実行する方法がありますか。.netからSSISタスクを実行できますか?
それは
おかげでC#で書かれた.NET 3.5のWebアプリケーションのためであることができます場合は!
私はSSISパッケージを実行するスケジュールされたSQLエージェントタスクを持っています。私は.netからSSISパッケージを実行できるようにしたい。 SSISパッケージを直接実行する方法と、少なくともSSISパッケージを実行するSQLエージェントタスクを実行する方法がありますか。.netからSSISタスクを実行できますか?
それは
おかげでC#で書かれた.NET 3.5のWebアプリケーションのためであることができます場合は!
SSISパッケージを実行するために利用可能なオプションがあります - プログラムでSSISオブジェクトモデルを使用して
アン例:
using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace RunFromClientAppCS
{
class Program
{
static void Main(string[] args)
{
string pkgLocation;
Package pkg;
Application app;
DTSExecResult pkgResults;
pkgLocation = "<package path>\CalculatedColumns.dtsx";
app = new Application();
pkg = app.LoadPackage(pkgLocation, null);
pkgResults = pkg.Execute();
Console.WriteLine(pkgResults.ToString());
Console.ReadKey();
}
}
}
スタートは、DTExec.exeプロセス。 DTEXECは、SSISパッケージを実行するコマンドラインユーティリティです。コマンドラインオプションhereを参照してください。
SQLエージェントを使用します。パッケージを実行するようにエージェントジョブを構成できます(パッケージが静的な場合は事前に手動で実行するか、パッケージを実行する直前にSMOを使用するかSQLストアドプロシージャを使用する)か、SMOまたはsp_start_jobを使用してプログラムで起動します。
DTEXECを起動するためのユーティリティをいくつか使用してください。
パッケージを実行するカスタムアプリケーションを作成します(方法1で説明したようにOMを使用するか、方法2でDTEXECを使用する)。 WebサービスまたはDCOMクラスとして公開し、プログラムからこのサービスを呼び出します。
あなた自身:) Inventの
はい。 Microsoft.SqlServer.Dts.Runtime
名前空間を参照してください。 Packageクラスは、それを実行するメソッドを提供します。
ImはWinフォームのためのソリューションを使用して。私は次のように赤い四角形を表示しています: 'Application app;'、 'app = new Application();'、 'pkg = app.LoadPackage(pkgLocation、null)'; 'Error 'Application'は 'System.Windows.Forms.Application'と 'Microsoft.SqlServer.Dts.Runtime.Application' \t'と 'Error \t'のあいまいな参照です。\t ' System.Windows.Forms.Applicationに 'コンストラクタが定義されていません.' - Winformのために何を変更する必要がありますか? –