Voglio verificare se esiste un file in una particolare cartella da SSIS. Come posso realizzare questo?Attività Script SSIS per verificare se il file esiste nella cartella oppure no
risposta
Non ci sono task nativi all'interno di SSIS che possono eseguire questo controllo ma è possibile farlo utilizzando un'attività Script ma suggerisco di controllare i seguenti collegamenti per i semplici passaggi richiesti per raggiungere tale obiettivo.
http://www.bidn.com/blogs/DevinKnight/ssis/76/does-file-exist-check-in-ssis
Variabili:
cartella - stringa - C :: \ Temp \
di file - stringa - 1.txt
FileExists - booleana - False
public void Main()
{
string folder = Dts.Variables["User::folder"].Value.ToString(); //@"C:\temp\";
string file = Dts.Variables["User::file"].Value.ToString(); //"a.txt";
string fullPath = string.Format(@"{0}\{1}", folder, file);
Dts.Variables["User::fileExists"].Value = File.Exists(fullPath);
Dts.TaskResult = (int)ScriptResults.Success;
}
Ho provato la risposta sopra, ma ho riscontrato un errore durante l'esecuzione di ssis nel nostro ambiente. L'eccezione è stata lanciata dall'invocazione del target. – user2756589
Assicurati che quelle variabili siano passate allo script; cartella e file come ReadOnly, fileExiste come ReadWrite –
In alternativa all'utilizzo di una variabile "out", è anche possibile modificare Dts.TaskResult
in base alla presenza o meno del file. Lo snippet seguente non riesce l'attività di script se il file non esiste. (Inoltre, crea una voce di registro se la registrazione è abilitata.)
public void Main()
{
string fileName = Dts.Variables["User::sourcePath"].Value.ToString() + Dts.Variables["User::fileName"].Value.ToString();
if (File.Exists(fileName))
{
Dts.TaskResult = (int)ScriptResults.Success;
}
else
{
Dts.Log(string.Format("File {0} was not found.",fileName),0,null);
Dts.TaskResult = (int)ScriptResults.Failure;
}
}
È possibile utilizzare Foreach Loop Container
e semplicemente mettere tutti i tuoi oggetti in esso. Verrà eseguito se il file esiste e non lo sarà se non lo è. Molto semplice :)
Molto bello! Stavo cercando qualcosa di semplice e facile da implementare e che funzioni bene. – Vladimir
- 1. Come verificare se il file esiste già nella cartella
- 2. Come verificare se un file esiste in una cartella?
- 3. Verificare se il file esiste in ksh
- 4. Attività script SSIS Ottieni nomi file e archivia su una variabile oggetto SSIS
- 5. Come posso verificare se una risorsa incorporata esiste o no?
- 6. Django - filtro personalizzato per verificare se il file esiste
- 7. Tentativo di verificare se un file esiste nella memoria interna
- 8. Come verificare utilizzando la funzionalità FTP PHP se la cartella esiste sul server o no?
- 9. test se un argomento di una funzione è impostata oppure no nella R
- 10. Come posso verificare se la riga esiste o no?
- 11. Verificare se esiste un file in Yii
- 12. Verificare se il servizio esiste con Ansible
- 13. Verificare se il file esiste in asp.net mvc 5
- 14. Come verificare se un div esiste o no?
- 15. Come verificare se una cartella contiene file usando python 3
- 16. Underscore.js per verificare se l'elemento nella matrice esiste?
- 17. Verificare se il valore esiste già nella lista dei dizionari?
- 18. Script Python per verificare se un file zip è corrotto
- 19. Come verificare se esiste un file
- 20. Verifica UWP se il file esiste
- 21. Imposta codice attività Script in modo dinamico in SSIS 2012
- 22. Come verificare se il file esiste in Qt in C++
- 23. come posso verificare se esiste un file?
- 24. Verifica se il file di risorse esiste
- 25. Come verificare se il frammento esiste?
- 26. percorsi angularjs, come verificare se il file modello esiste
- 27. Ruby on Rails: come verificare se il modello esiste
- 28. Come verificare se esiste un file nel percorso definito dall'utente?
- 29. Verificare se la cartella contiene i file con determinate estensioni
- 30. Il modo più veloce per verificare se un oggetto esiste in Core Data o no?
È possibile utilizzare questo come punto di partenza. http://stackoverflow.com/questions/7385251/how-to-check-if-a-file-exists-in-a-folder –
Sto usando il codice sottostante Dts.Variables ("FileExists"). Value = File.Exists (Dts.Variables ("FileLocation"). Value) dove FileExists è una variabile booleana e "FileLocation" è una variabile stringa con percorso file Anche se il file è presente nella cartella, continua a fornire un valore False . – user1429135
Solo curioso di sapere se la soluzione indicata di seguito ti è stata utile e se sei riuscito a risolvere il problema. Il tuo feedback sarà utile per me e anche per i futuri visitatori che hanno problemi simili. Grazie. –