Faccio prima a farti un esempio:
1) creo un foreach che scorre n file di testo
2) per ogni file di testo imposto la sorgente del dataflow
3) se il dataflow va in errore scrivo un log e riparto senza dare errore
Ogni parte del tuo control flow che genera l'errore deve avere la proprietà MaximumErrorCount a 0 (infiniti).
Attenzione che l'esempio scorre una cartella precisa: C:\Temp.
E ogni file contiene i seguenti record:
Alessandro Alpi, 27, Via Villani 10
Michael Denny, 25, Via Roma 20
Vincenzo Violante, 39, Via Verdi 30
Inoltre la struttura di destinazione è la seguente su tempdb:
CREATE TABLE dbo.Indirizzi
(
[Nome] varchar(50),
[Eta] smallint,
[Indirizzo] varchar(50)
)
GO
CREATE UNIQUE INDEX UK_dboIndirizzi ON dbo.Indirizzi (Nome)
GO
L'indice serve per far andare in errore il dataflow. Quindi:
1) lancia l'sql sopra per creare la tabella su tempdb.
2) crea la cartella C:\temp e poni 3 file di esempio (.txt) che contengano tutti i tre record che ti ho passato sopra.
3) lancia il package e controlla che faccia quello che ti serve.
L'esempio è allegato.
Ciao!
--
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