How to show progress of SSIS Package Execution in .net web application?

  • Using .net web application it is possible to execute a SSIS package but how to show a progress of a package (Percentage Completion etc..) on the same web page.

  • I'm not sure about the % complete.. i don't think it can be done as it would mean the DTSExec process knowing how much was to be done before the package started. Given that the amount of work done can be dynamic depending on certain conditions being met during run time it could be impossible to work out.

    What you can do is add logging tasks within the SSIS package which write to eaither a database table or a temp file giving you something like

    10:39 validated package

    10.40 started copy of customers table from server1 to server2

    10.41 completed copy of customers table from server1 to server2

    10.41 started transformation of customer data to datawarehouse

    The ASP .NET application will then need to pick up this data and present it to the user.

    The problem you're going to face is getting the real time updates to the user... I don't know what the best way to do this is, but then I'm not an ASP expert 🙂

  • The ASP .NET application will then need to pick up this data and present it to the user.

    The problem you're going to face is getting the real time updates to the user... I don't know what the best way to do this is, but then I'm not an ASP expert 🙂

    The base requirement for consuming SSIS package in Asp.net is to execute it in a job and because a job executes in the context of the Agent the Agent must run with admin permissions which includes proxy account.

    Kind regards,
    Gift Peddie

  • Gift Peddie (5/14/2009)


    The ASP .NET application will then need to pick up this data and present it to the user.

    The problem you're going to face is getting the real time updates to the user... I don't know what the best way to do this is, but then I'm not an ASP expert 🙂

    The base requirement for consuming SSIS package in Asp.net is to execute it in a job and because a job executes in the context of the Agent the Agent must run with admin permissions which includes proxy account.

    How does that impact showing real time table or file updates on an ASP page?

  • execute it in a file upload object which require adjusting the Asp.net application maxlength property because it defaults to 4meg. The other option is to use Response.TransmiteFile and the last option is to use Httphandler.

    So the long and the short of it is to consume it in the response object.

    Kind regards,
    Gift Peddie

  • Thanks for the suggestion.

  • Hi,

    My requirement is: I need to start the SSIS package execution from click one button in the front end web applicaiton. I need to get the status of the package execution, when the user refreshes the page.

    My question is: can we log the status of the SSIS package exceution status to any of the database table? Status like: Started, In-progress, Completed. If there is a problem, then error code and error messages.

    How does the SSIS in-built logging works? How the database logging is carried out? Is there any DB system table logs the status info?

    If anybody knows about this, please guide me.

    Thanks.

  • I am assuming if you want progress report you need to write code for it because my SSIS automation use is ETL moving data from any RDBMS vendor to SQL Server and back. You need to know SSIS instance is required to be running in the server your application is using to execute your packages. SSIS comes without Redist so you need to make sure your web application SQL Server is running SSIS. Here are articles doing SSIS Admin tasks you could add to the existing code to get what you want.

    http://www.sqlservercentral.com/Forums/Topic445734-283-1.aspx

    Kind regards,
    Gift Peddie

Viewing 8 posts - 1 through 7 (of 7 total)

You must be logged in to reply to this topic. Login to reply