Esecuzione di un dtsx

venerdì 20 giugno 2008 - 13.24

memmo77 Profilo | Expert

Ciao. Stavo seguendo il terzo webcast sui ssis. Mi premeva molto la parte di esecuzione. Qui si parla di "Invocazione tramite applicazione esterna/custom". Solo che ho appeno sentito che non verrà trattato in questo webcast. Ce ne sono altri? Sapete dove posso trovare informazioni su questo argomento? Sostanzialmente ho fatto un dtsx che però ha in entrata una serie di variabili. Dovrei compilare un'applicazione asp net che invochi il dtsx passandogli le mie variabili.

Grazie mille dell'attenzione.

alx_81 Profilo | Guru

>Ciao.
Ciao!
>Stavo seguendo il terzo webcast sui ssis. Mi premeva molto
>la parte di esecuzione. Qui si parla di "Invocazione tramite
>applicazione esterna/custom". Solo che ho appeno sentito che
>non verrà trattato in questo webcast.
Diciamo che non è la migliore delle vie per lanciare un SSIS

>Ce ne sono altri? Sapete
>dove posso trovare informazioni su questo argomento?
Se non puoi fare a meno di lanciarlo da ASP.Net, puoi guardare questo link:

Loading and Running a Local Package Programmatically
http://msdn.microsoft.com/en-us/library/ms136090.aspx

Personalmente preferisco un'altra filosofia. Di solito ragiono nell'ottica del servizio. Quindi da ASP.Net riempio una mia coda delle chiamate, passando le variabili che servono. Poi, un JOB di SQL Server, lancia il SSIS che tramite un foreach legge le informazioni dalla coda ed esegue il SSIS che si aspetta le informazioni lette.

>Grazie mille dell'attenzione.
Di nulla!

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

memmo77 Profilo | Expert

Hai mica un esempio della tua filosofia?

ps. sei un grande

alx_81 Profilo | Guru

>Hai mica un esempio della tua filosofia?
Guarda, è semplice.. Procediamo per step:

1) Pagina ASP.Net che con ADO.NET esegue una stored procedure (o una insert, dipende dal tuo RDBMS) che si occupa di inserire un record in una coda, che ha la struttura disegnata da te (una colonna per il nome del SSIS, una per il percorso). La coda poi è in relazione con la tabella delle variabili in 1:N. In questo modo, quando inserisci un record in coda, ti segni anche le N variabili (nome, tipo e valore) nella tabellina relazionata.

2) Creazione di un SSIS che ha un Execute SQL a monte, che valorizza un resultset object da passare poi ad un for each loop container. l'SQL che popola il resultset è una join tra la coda e le sue variabili. Per ogni ciclo, lanci un SSIS esterno valorizzando prima delle variabili globali al pacchetto che contiene il for.

3) Creazione di un SSIS che come Configurations (Menu SSIS da Visual Studio BIDS --> Configurations) abbia la lettura di variabili del package padre. In questo modo mappi le variabili locali al package da usare poi. Poi metti la tua logica usando proprio le var prese dal padre.

4) JOB di SQL Server che lancia il SSIS col for (c'è la tipologia apposta negli STEP).

Attenzione a quello che fai con SSIS. Nel caso in cui ti serva uscire dal contesto di SQL Server, leggiti questo mio articolo sugli utenti Proxy:
http://www.microsoft.com/italy/technet/prodtechnol/sql/2005/ssis_proxy.mspx

>ps. sei un grande
lusingato, troppo gentile

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

alx_81 Profilo | Guru

Deduco che non hai trovato difficoltà
Vedrai che la soluzione ti porterà maggiore scalabilità

--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org

memmo77 Profilo | Expert

Più che non ho avuto difficoltà, diciamo che ancora non ci sono arrivato. Come leggerai su altro post, ora ne ho un altra di difficoltà, anzi un paio . Poi dovrò gestire come richiamarlo sto benedetto ssis :D.
grazie

alx_81 Profilo | Guru

>Più che non ho avuto difficoltà, diciamo che ancora non ci sono
>arrivato. Come leggerai su altro post, ora ne ho un altra di
>difficoltà, anzi un paio . Poi dovrò gestire come richiamarlo
>sto benedetto ssis :D.
Ti ho risposto..
--

Alessandro Alpi | SQL Server MVP

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5