SQL Integration Services - SSIS: Contenedor de bucles Foreach
El contenedor de bucles Foreach define un flujo de control que se repite en un paquete. Este es un componente definido en el SSIS (SQL Server Integration Services). La ejecución del bucle en el contendor For Each es similar al bucle Foreach de varios lenguajes de programación conocidos.
Existen diferentes tipos de enumeradores disponibles que son:
* Enumerador de archivos para Foreach
El enumerador de archivos enumera los archivos en una carpeta. Por ejemplo, podemos obtener todos los archivos que tienen la extensión *. Txt en una carpeta de Windows y sus subcarpetas.
* Enumerador ADO para Foreach
Permite enumerar las filas de una tabla. Por ejemplo, podemos obtener las filas de los registros ADO.
* Enumerador de conjunto de filas del esquema Foreach de ADO.Net
El enumerador ADO.Net enumera la información del esquema. Por ejemplo, podemos obtener la una lista de tablas de la base de datos.
* Enumerador de elementos para Foreach
Utilizado para enumerar elementos que son colecciones. Por ejemplo, podemos enumerar los nombres de los ejecutables y directorios de trabajo que utiliza una tarea Ejecutar proceso.
* Enumerador de lista de nodos para Foreach
La lista de nodos que permite Enumera el resultado de una expresión XPath.
* Enumerador de variable para Foreach
El enumerador de variable enumera los objetos que contienen variables especificadas. Aquí los objetos enumerador no son más que una matriz o tabla de datos, como por ejemplo un DataSet de ADO.Net
* Enumerador de SMO para Foreach
El enumerador de SMO enumera los objetos de administración de SQL Server (SMO). Por ejemplo, se puede obtener la lista de funciones o vistas de una base de datos SQL Server.
Ejemplo :
Para usar el enumerador de archivos Foreach, proporcione la carpeta que contiene los archivos que se deben enumerar, especifique un filtro para el nombre y tipo de archivo, y especifique si se debe devolver el nombre de archivo completo.
PASO 02
Paso 03
Paso 04
Por defecto figura en C#, cambiar a Basic
Al pulsar el botón "Editar Script" digitar el siguiente código
Dim variables As Variables
If Dts.Variables.Contains("FileName") = True Then
Dts.VariableDispenser.LockOneForRead("FileName", variables)
Dim FileName As Object = variables("FileName").Value
End If
MsgBox("Encontrando el archivo : " & CStr(variables("FileName").Value))
REFERENCIAS :
http://bifase.blogspot.pe/2013/11/ssis-basico-bucles-foreach-para.html
http://devcate.blogspot.pe/2012/11/sql-integration-services-ssis.html
Comentarios
Publicar un comentario