SSIS: dataflow e storedprocedure

giovedì 17 settembre 2009 - 09.00

the_driver Profilo | Senior Member

Ciao a tutti, quando uso i DATAFLOW per trasferire dati da una tabella ad un altra (o in un excel), faccio a volte riferimento a tabelle che vengono create durante il processo SSIS,attraverso SQL TASK. Quando tento di eseguire (la prima volta) un progetto simile, incappo (ovviamente) in un errore, in quanto nel DATAFLOW ,l' OLE DB destination cerca colonne che non ci sono ancora, il debug non si avvia e mi si presenta un msgbox con "...check that the object exists .... " . C' è modo di dire a questi componenti che le tabelle non sono già presenti ma saranno create durante l'esecuzione del pacchetto?idem con gli sheet di un excel destination ....

Inoltre ieri stavo progettando un nuovo package e ho una query abbastanza grossa, che comprende molti CASE in quanto devo decodificare delle colonne di una specifica tabella. La query ha una clausola WHERE con un id passato attraverso una variabile definita in SSIS.

Per effettuare questo trasferimento, ho creato una variabile stringa, utilizzata come expression, quindi ho incollato nell'editor delle expression la mia query e il sistema mi ha avvisato che non poteva validare la stringa in quanto > di 4000

Come posso risolvere il problema? Mi scoccerebbe passare attraverso Script Component.....

Secondo voi si può usare una stored procedure e passargli una variabile SSIS? E' una grossa SELECT e restituisce N colonne ...

grazie!

speedx Profilo | Junior Member

Puoi usare la proprieta DelayValidation sul FlowTask per evitare la validazione, ma perchè la tabella non la fai creare da un SQL Task, prima del dataflow? Le stored richiamate possono accettare parametri, io generalmente uso anche gli scrip per comporre le query, in particolare query che fanno riferimento a funzioni con parametri.
//// Marcello C.

the_driver Profilo | Senior Member

M a infatti la creo prima del dataflow,il problema è che poi lui al primo avvio se l'aspetta ....

Dopo trovo il delay?

the_driver Profilo | Senior Member

In ogni EXCEL DESTINATION o OLED DB DESTINATION ho impostato ValidateExternalMetadata a false.

speedx Profilo | Junior Member

Trovi il delay tra le proprietà del DataFlow Task
//// Marcello C.
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