SlideShare una empresa de Scribd logo
1 de 83
Descargar para leer sin conexión
20-10-2016
UNIVERSIDAD TÉCNICA DEL NORTE
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
INTELIGENCIA DE NEGOCIOS I
INTEGRANTES:
KAREN ANDRADE
EFRAÍN SARANSIG
TEMA: Tutorial de SSIS Crear un paquete ETL sencillo.
INSTALACIÓN DE BUSINESS INTELLIGENCE PARA SQL SERVER 2014
Ejecutamos el instalador Microsoft Businnes Intelligence.
Instamos las nuevas características
ANÁLISIS DE LA BASE DE DATOS DE PRUEBA
ADVENTUREWORKS
Escenarios empresariales de AdventureWorks Cycles
AdventureWorks Cycles, es una gran empresa de fabricación multinacional. La
empresa fabrica y vende bicicletas de metal y de metal compuesto en los
mercados de Norteamérica, Europa y Asia. Si bien su sede central de
operaciones se encuentra en Bothell, Washington, con 290 empleados, en toda
su base de mercado tiene distribuidos varios equipos regionales de ventas.
En el año 2000, AdventureWorks Cycles compró una pequeña planta de
fabricación, Importadores Neptuno, situada en México. Importadores Neptuno
fabrica varios subcomponentes muy importantes para la línea de productos de
AdventureWorks Cycles. Estos subcomponentes se envían a la sede de Bothell
para el ensamblado final del producto. En el año 2001, Importadores Neptuno
pasó a ser el único fabricante y distribuidor del grupo de productos de bicicletas
de paseo.
Tras un año fiscal con muy buenos resultados, AdventureWorks Cycles está
intentando ampliar su cuota de mercado dirigiendo sus ventas a sus mejores
clientes, ampliando la disponibilidad de sus productos en un sitio web externo, y
reduciendo los costos de venta a través de costos de producción más bajos.
Escenario de ventas y marketing
Se detalla acerca de los clientes representados en la base de datos de ejemplo,
un esquema de las tablas principales de clientes y ventas, y consultas de ejemplo
que muestran relaciones existentes entre las tablas.
Tipos de cliente
 Individuos: clientes que compran productos de la tienda en línea de
AdventureWorks Cycles.
 Tiendas: tiendas de venta al por menor o al por mayor que compran a los
representantes de ventas de AdventureWorks Cycles productos para la
reventa.
ESCENARIOS: manufactura, ventas, compras, gestión de producto, gestión de
contactos y recursos humanos.
Tipo de cliente Tablas principales
Individual (I) Person.Contact
Sales.Customer
Sales.Individual
Sales.SalesOrderHeader
Sales.SalesOrderDetail
Store (S) Person.Contact
Sales.Customer
Sales.Store
Sales.StoreContact
Sales.SalesOrderHeader
Sales.SalesOrderDetail
INFORMACIÓN GENERAL SOBRE EL PRODUCTO
AdventureWorks Cycles tiene las cuatro líneas de producto siguientes:
 Bicicletas
 Componentes de bicicleta
 Equipos para bicicleta
 Accesorios para bicicleta
Tablas de producto
La tabla siguiente contiene una breve descripción de los datos que se almacenan
en las tablas relacionadas con el producto.
Tabla Descripción
Production.BillOfMaterials Lista de todos los componentes que se utilizan para
fabricar bicicletas y subconjuntos de bicicleta.
Production.Culture Idiomas utilizados en las descripciones traducidas
del producto.
Production.Location Lista de las ubicaciones de Adventure Works Cycles
en las que los productos y las piezas se almacenan
como inventario.
Production.Product Información sobre cada producto vendido.
Production.ProductCategory Clasificación más general de los productos. Por
ejemplo, bicicleta o accesorio.
Production.ProductCostHistory Costo de los productos a lo largo del tiempo.
Production.ProductDescription Descripción completa de los productos en distintos
idiomas.
Production.ProductInventory Nivel de inventario de los productos por ubicación.
Production.ProductListPriceHist
ory
Precio listado de los productos a lo largo del tiempo.
Production.ProductModel Modelos del producto asociados a productos.
ProductModelProductDescriptio
nCulture
Referencia cruzada entre modelos de producto,
descripciones de producto y los idiomas a los que se
ha traducido la descripción.
Production.ProductPhoto Imágenes de los productos vendidos.
Production.ProductReview Nota de comentario de los clientes sobre los
productos de Adventure Works Cycles.
Production.ProductSubcategory Subcategorías de las categorías de los productos.
Por ejemplo, Mountain, Road y Touring son
subcategorías de la categoría Bike.
INFORMACIÓN GENERAL DEL PROVEEDOR Y COMPRAS
El departamento de compras adquiere las materias primas y las piezas que se
utilizan para fabricar las bicicletas. También adquiere productos para la reventa,
como equipamiento para bicicletas y complementos, como botellas para el agua
y bombas de aire.
Tabla Descripción
Person.Address Información sobre la dirección postal de todos los
clientes.
Person.Contact Nombre de los empleados del proveedor a
quienes los agentes de compras Adventure Works
Cycles solicitan productos.
Production.ProductVendor Correlaciona los proveedores con los productos
que suministran. Un mismo producto puede ser
suministrado por más de un proveedor, y un
proveedor puede suministrar más de un producto.
Purchasing.PurchaseOrderDetail Detalles del pedido de compra, como los
productos pedidos, la cantidad y el precio unitario.
Purchasing.PurchaseOrderHeader Información de resumen del pedido de compra,
como el importe total debido, la fecha del pedido y
el estado del pedido.
Purchasing.ShipMethod Tabla de búsqueda que se utiliza para mantener
métodos estándar de envío de productos.
Purchasing.Vendor Detalles sobre los proveedores, como el nombre
del proveedor y el número de cuenta.
Purchasing.VendorAddress Vincula los clientes con la información de
direcciones en la tablaAddress.
Purchasing.VendorContact Información sobre la dirección postal de todos los
clientes.
INFORMACIÓN GENERAL DE FABRICACIÓN
 Procesos de fabricación:
 Lista de materiales
 Pedidos de trabajo
 Ubicaciones
 Instrucciones de fabricación y ensamblado de productos por centro
de trabajo.
 Inventario de productos: ubicación física de un producto en el almacén o
el área de fabricación, y cantidad disponible en dicha área.
 Documentación de ingeniería: especificaciones técnicas y documentación
de mantenimiento para bicicletas o componentes de las bicicletas.
La tabla siguiente contiene una breve descripción de los datos que se almacenan
en las tablas de fabricación.
Tabla Descripción
Production.BillOfMaterials Lista de todos los componentes que se utilizan
para fabricar bicicletas y subconjuntos de bicicleta.
Production.Document Especificaciones de ingeniería y otros
documentos técnicos.
Production.Illustration Ilustraciones de fabricación de las bicicletas.
Production.Location Lista de áreas de inventario y fabricación de los
productos y las piezas se almacenan como
inventario o como finalizados.
Production.Product Información sobre cada producto vendido o
utilizado para fabricar bicicletas y componentes de
bicicleta de Adventure Works Cycles.
Production.ProductInventory Nivel de inventario de los productos por ubicación.
Production.ProductModel Modelos del producto asociados a productos. Por
ejemplo, Mountain-100 o LL Touring Frame.
Production.ScrapReason Lista de motivos comunes sobre el porqué del
rechazo de las bicicletas o piezas de bicicleta
durante el proceso de fabricación.
Production.WorkOrder Define los productos y la cantidad que debe
fabricarse para satisfacer las ventas actuales y las
previstas.
Production.WorkOrderRouting Detalles de cada pedido de trabajo.
Lecciones de este
tutorial
Lección 1:
Crear un proyecto y un
paquete básico con SSIS
En esta lección, creará un paquete ETL sencillo que extrae datos de un único
archivo plano, transforma los datos mediante transformaciones de búsqueda y,
por último, carga los resultados en un destino de tabla de hechos.
PROCEDIMIENTO
Tareas de la lección
Esta lección contiene las siguientes tareas:
Paso 1: Crear un nuevo proyecto de Integration
Services
En este tutorial se usa el Asistente para importación y exportación de SQL Server
para crear un paquete básico ejecutando el asistente en Business Intelligence
Development Studio. El asistente se inicia desde un proyecto de Integration
Services. En esta tarea creará el proyecto de Integration Services.
Para crear un proyecto de Integration Services
1. En el menú Inicio, elija Todos los programas, Microsoft SQL Server y,
a continuación, haga clic en SQL Server Data Tools.
2. En el menú Archivo, seleccione Nuevo y haga clic en Proyecto para
crear un proyecto de Integration Services.
3. En el cuadro de diálogo Nuevo proyecto, expanda el nodo Business
Intelligence bajo Plantillas instaladas y seleccione Proyecto de
Integration Services en el panel Plantillas.
4. En el cuadro Nombre, cambie el nombre predeterminado por SSIS
Tutorial. Opcionalmente, desactive la casilla Crear directorio para la
solución.
5. Acepte la ubicación predeterminada o haga clic en Examinar para
desplazarse a la carpeta que desee utilizar. En el cuadro de diálogo
Ubicación del proyecto, haga clic en la carpeta y, a continuación, haga
clic en Seleccionar carpeta.
6. Haga clic en Aceptar.
De forma predeterminada, se creará un paquete vacío,
denominado Package.dtsx, que se agregará al proyecto bajo Paquetes
SSIS.
7. En la barra de herramientas del Explorador de soluciones, haga clic con
el botón secundario en Package.dtsx, haga clic en Cambiar nombrey
cambie el nombre del paquete predeterminado por Lesson 1.dtsx
Paso 2: agregar y configurar un administrador de
conexiones de archivos planos
Para agregar un administrador de conexiones de
archivos planos al paquete SSIS
1. Haga clic con el botón secundario en cualquier punto del
área Administradores de conexión y luego haga clic en Nueva
conexión de archivos planos.
2. En el cuadro de diálogo Editor del administrador de conexiones de
archivos planos, en Nombre del administrador de conexiones,
escriba Sample Flat File Source Data.
3. Haga clic en Examinar.
4. En el cuadro de diálogo Abrir, busque el archivo SampleCurrencyData.txt
en el equipo.
5. Desmarque "Nombres de columna" de la primera fila de datos
Para establecer las propiedades dependientes de la
Configuración regional
1. En el cuadro de diálogo Editor del administrador de conexiones de
archivos planos, haga clic en General.
2. Establezca Configuración regional en Inglés (Estados Unidos) y Página
de códigos en 1252.
Para cambiar el nombre de las columnas del
administrador de conexiones de archivos planos
1. En el cuadro de diálogo Editor del administrador de conexiones de
archivos planos, haga clic en Avanzadas.
2. En el panel de propiedades, realice los cambios siguientes:
 Cambie la propiedad de nombre Columna 0 por AverageRate.
 Cambie la propiedad de nombre Columna 1 por CurrencyID.
 Cambie la propiedad de nombre Columna 2 por CurrencyDate.
 Cambie la propiedad de nombre Columna 3 por EndOfDayRate.
Para ver el artículo en inglés, active la casilla Inglés. También puede ver
el texto en inglés en una ventana emergente si pasa el puntero del mouse
por el texto.
Traducción
Inglés
Paso 2: agregar y configurar un administrador de
conexiones de archivos planos
SQL Server 2012
Otras versiones
En esta tarea, agregará un administrador de conexiones de archivos planos al
paquete que acaba de crear. Un administrador de conexiones de archivos planos
permite a un paquete extraer datos de un archivo plano. Mediante el
administrador de conexiones de archivos planos puede especificar el nombre y
la ubicación del archivo, la configuración regional y la página de códigos, y el
formato del archivo, incluyendo los delimitadores de columna, que deben
aplicarse cuando el paquete extrae datos del archivo plano. Además, puede
especificar manualmente el tipo de datos para columnas individuales, o utilizar
el cuadro de diálogo Sugerir tipos de columna para asignar automáticamente
las columnas de datos extraídos a los tipos de datos de Integration Services.
Debe crear un administrador de conexiones de archivos planos para cada
formato de archivo que utilice. En este tutorial se extraen datos de varios archivos
planos que tienen exactamente el mismo formato de datos, por lo que tendrá que
agregar y configurar solamente un administrador de conexiones de archivos
planos para el paquete.
En este tutorial, configurará las propiedades siguientes en el administrador de
conexiones de archivos planos:
 Nombres de columna: El archivo plano no tiene nombres de columna,
por lo que el administrador de conexiones de archivos planos crea
nombres de columna predeterminados. Estos nombres predeterminados
no son útiles para identificar qué representa cada columna. Para que
estos nombres predeterminados sean más útiles, debe cambiar los
nombres predeterminados por nombres que coincidan con la tabla de
hechos en la que deben cargarse los datos del archivo plano.
 Asignaciones de datos: Las asignaciones de tipo de datos que
especifique para el administrador de conexiones de archivos planos se
usarán en todos los componentes de origen de datos de archivo plano
que hagan referencia al administrador de conexiones. Puede asignar los
tipos de datos manualmente utilizando el administrador de conexiones de
archivos planos o utilizar el cuadro de diálogo Sugerir tipos de columna.
En este tutorial, verá las asignaciones sugeridas en el cuadro de
diálogo Sugerir tipos de columna y luego realizará manualmente las
asignaciones necesarias en el cuadro de diálogo Editor del
administrador de conexiones de archivos planos.
El administrador de conexiones de archivos planos proporciona información de
configuración regional acerca del archivo de datos. Si no tiene configurado el
equipo para usar la opción de configuración regional Inglés (Estados Unidos),
debe establecer propiedades adicionales en el cuadro de diálogo Editor del
administrador de conexiones de archivos planos.
Para agregar un administrador de conexiones de
archivos planos al paquete SSIS.
1. Haga clic con el botón secundario en cualquier punto del
área Administradores de conexión y luego haga clic en Nueva
conexión de archivos planos.
2. En el cuadro de diálogo Editor del administrador de conexiones de
archivos planos, en Nombre del administrador de conexiones,
escriba Sample Flat File Source Data.
3. Haga clic en Examinar.
4. En el cuadro de diálogo Abrir, busque el archivo SampleCurrencyData.txt
en el equipo.
Los datos de ejemplo se incluyen con los paquetes de lecciones de
SSIS. Para descargar los datos de ejemplo y los paquetes de lecciones,
haga lo siguiente.
a. Navegue en los ejemplos del producto Integration Services
b. Haga clic en la pestaña DOWNLOADS.
c. Haga clic en el archivo
SQL2012.Integration_Services.Create_Simple_ETL_Tutorial.Sam
ple.zip.
5. Desmarque "Nombres de columna" de la primera fila de datos.
Para establecer las propiedades dependientes de la
configuración regional
1. En el cuadro de diálogo Editor del administrador de conexiones de
archivos planos, haga clic en General.
2. Establezca Configuración regional en Inglés (Estados Unidos) y Página
de códigos en 1252.
Para cambiar el nombre de las columnas del
administrador de conexiones de archivos planos
1. En el cuadro de diálogo Editor del administrador de conexiones de
archivos planos, haga clic en Avanzadas.
2. En el panel de propiedades, realice los cambios siguientes:
 Cambie la propiedad de nombre Columna 0 por AverageRate.
 Cambie la propiedad de nombre Columna 1 por CurrencyID.
 Cambie la propiedad de nombre Columna 2 por CurrencyDate.
 Cambie la propiedad de nombre Columna 3 por EndOfDayRate.
Para volver a asignar tipos de datos de columna
1. En el cuadro de diálogo Editor del administrador de conexiones de
archivos planos, haga clic en Sugerir tipos.
Integration Services sugiere automáticamente los tipos de datos más
adecuados en función de las 200 primeras filas de datos. También puede
cambiar estas opciones de sugerencia para obtener más o menos datos
de ejemplo, especificar el tipo de datos predeterminado para datos
enteros o booleanos, o agregar espacios como relleno para las columnas
de cadena.
De momento, no cambie las opciones del cuadro de diálogo Sugerir tipos
de columna y haga clic en Aceptar para que Integration Services sugiera
los tipos de datos para las columnas. Esto le devuelve al
panel Avanzadas del cuadro de diálogo Editor del administrador de
conexiones de archivos planos, donde puede ver los tipos de datos de
columna sugeridos por Integration Services. (Si hace clic en Cancelar, no
se realizan sugerencias en los metadatos de columna y se usa el tipo de
datos predeterminado de cadena (DT_STR).)
Paso 3: agregar y configurar un administrador de
conexiones OLE DB
Una vez que haya agregado un administrador de conexiones de archivos planos
al origen de datos, la siguiente tarea consiste en agregar un administrador de
conexiones OLE DB para conectarse al destino. Un administrador de conexiones
OLE DB permite a un paquete extraer datos de un origen de datos compatible
con OLE DB o cargar datos en éste. Mediante el administrador de conexiones
OLE DB, puede especificar el servidor, el método de autenticación y la base de
datos predeterminada de la conexión.
En esta lección, creará un administrador de conexiones OLE DB que usa la
Autenticación de Windows para conectarse a la instancia local
deAdventureWorksDB2012. Otros componentes que creará más adelante en
este tutorial, como la transformación Búsqueda y el destino de OLE DB, también
harán referencia al administrador de conexiones OLE DB que cree.
Para agregar y configurar un administrador de
conexiones de OLE DB para el paquete SSIS
1. Haga clic con el botón secundario en cualquier punto del
área Administradores de conexión y luego haga clic en Nueva
conexión de OLE DB.
2. En el cuadro de diálogo Configurar el administrador de conexiones OLE
DB, haga clic en Nueva.
3. En Nombre de servidor, escriba localhost.
Cuando se especifica localhost como el nombre del servidor, el
administración de conexión se conecta a la instancia predeterminada de
SQL Server en el equipo local. Para usar una instancia remota de SQL
Server, sustituya localhost con el nombre del servidor al que desea
conectarse.
4. En el grupo Conexión con el servidor, compruebe que la opción Usar
autenticación de Windows esté seleccionada.
5. En el grupo Establecer conexión con una base de datos, en el
cuadro Seleccione o escriba el nombre de la base de datos, escriba o
seleccioneAdventureWorksDW2012.
6. Haga clic en Probar conexión para comprobar si los parámetros de
conexión que ha especificado son válidos.
7. Haga clic en Aceptar.
8. Haga clic en Aceptar.
9. En el panel Conexiones de datos del cuadro de diálogo Configurar el
administrador de conexiones OLE DB, compruebe que la
opciónlocalhost.AdventureWorksDW2012 está seleccionada.
10.Haga clic en Aceptar.
Paso 4: agregar una tarea de flujo de datos al
paquete
Una vez que ha creado los administradores de conexión para los datos de origen
y de destino, la siguiente tarea consiste en agregar una tarea de flujo de datos al
paquete. La tarea de flujo de datos encapsula el motor de flujo de datos que
mueve datos entre orígenes y destinos, y proporciona la funcionalidad para
transformar, limpiar y modificar los datos a medida que se mueven. En la tarea
de flujo de datos se lleva a cabo la mayor parte del proceso de extracción,
transformación y carga (ETL).
Para agregar una tarea de flujo de datos
1. Haga clic en la pestaña Flujo de control.
2. En el Cuadro de herramientas de SSIS, expanda Favoritos y arrastre
una Tarea Flujo de datos a la superficiede diseño de la pestaña Flujo de
control.
3. En la superficie de diseño Flujo de control, haga clic con el botón
secundario en la Tarea de flujo de datos que acaba de agregar, haga
clic enCambiar nombre y cambie el nombre por Extract Sample
Currency Data.
Es aconsejable proporcionar nombres únicos a todos los componentes que
se agregan a una superficie de diseño. Para facilitar su uso y mantenimiento,
los nombres deben describir la función que lleva a cabo cada
componente. Seguir estas directrices de nomenclatura permite que los
paquetes de Integration Services sean autodocumentados. Los paquetes
también pueden documentarse mediante anotaciones.
4. Haga clic con el botón secundario en la tarea Flujo de datos, haga clic
en Propiedades y, en la ventana Propiedades, compruebe que la
propiedad LocaleID esté establecida en Inglés (Estados Unidos).
Paso 5: agregar y configurar el origen de archivo
plano
En esta tarea, agregará un origen de archivo plano al paquete y configurará dicho
origen. Un origen de archivo plano es un componente de flujo de datos que
utiliza metadatos definidos por un administrador de conexiones de archivo
plano para especificar el formato y la estructura de los datos que deben
extraerse del archivo plano mediante un proceso de transformación. El
origen de archivo plano puede configurarse para extraer datos de un único
archivo plano utilizando la definición de formato de archivo proporcionada por el
administrador de conexiones de archivo plano.
Para este tutorial, configurará el origen de archivo plano para utilizar el
administrador de conexiones Sample Flat File Source Data creado con
anterioridad.
Para agregar un componente de origen de archivo plano
1. Abra el diseñador Flujo de datos haciendo doble clic en la tarea de flujo
de datos Extract Sample Currency Data o haciendo clic en la
pestaña Flujo de datos.
2. En el cuadro de herramientas de SSIS, expanda Otros Orígenes y, a
continuación, arrastre Origen de archivo plano a la superficie de diseño
de la pestaña Flujo de datos.
3. En la superficie de diseño Flujo de datos, haga clic con el botón
secundario en el Origen de archivo plano que acaba de agregar, haga
clic enCambiar nombre y cambie el nombre por Extract Sample
Currency Data.
4. Haga doble clic en el origen del archivo plano para abrir el cuadro de
diálogo Editor de origen de archivos planos.
5. En el cuadro Administrador de conexiones de archivos planos,
seleccione Sample Flat File Source Data.
6. Haga clic en Columnas y compruebe que los nombres de las columnas
son correctos.
7. Haga clic en Aceptar.
8. Haga clic con el botón secundario en el origen del archivo plano y haga
clic en Propiedades.
9. En la ventana Propiedades, compruebe que la propiedad LocaleID esté
establecida en Inglés (Estados Unidos).
Paso 6: agregar y configurar transformaciones
de búsqueda
Tras configurar el origen de archivo plano para extraer datos del archivo de
origen, la siguiente tarea consiste en definir las transformaciones de búsqueda
necesarias para obtener los valores para las
claves CurrencyKey y DateKey. Una transformación de búsqueda realiza
una búsqueda combinando datos de la columna de entrada especificada
en una columna de un conjunto de datos de referencia. El conjunto de datos
de referencia puede ser una tabla o una vista existente, una tabla nueva o el
resultado de una instrucción SQL. En este tutorial, la transformación de
búsqueda utiliza un administrador de conexiones OLE DB para conectar con la
base de datos que contiene los datos que constituyen el origen del conjunto de
datos de referencia.
Nota
También puede configurar la transformación de Búsqueda para conectar con
una caché que contiene el conjunto de datos de referencia.
Para este tutorial, agregará y configurará los dos componentes de la
transformación de Búsqueda en el paquete:
 Una transformación para realizar una búsqueda de valores de la
columna CurrencyKey de la tabla de dimensiones DimCurrency basada
en la coincidencia de valores de la columna CurrencyID del archivo plano.
 Una transformación para realizar una búsqueda de valores de la
columna DateKey de la tabla de dimensiones DimDate basada en la
coincidencia de valores de la columna CurrencyDate del archivo plano.
En ambos casos, la transformación de búsqueda usará el administrador de
conexiones OLE DB creado anteriormente.
Para agregar y configurar la transformación Lookup
Currency Key
1. En el cuadro de herramientas de SSIS, expanda Comunes y
arrastre Búsqueda a la superficie de diseño de la pestaña Flujo de
datos.Coloque Búsqueda directamente bajo el origen Extract Sample
Currency Data.
2. Haga clic en el origen de archivo plano Extract Sample Currency Data y
arrastre la flecha verde a la transformación de Búsqueda que acaba de
agregar para conectar los dos componentes.
3. En la superficie de diseño Flujo de datos, haga clic en Búsqueda en la
transformación Búsqueda y cambie el nombre por Lookup Currency Key.
4. Haga doble clic en la transformación Lookup Currency Key para mostrar
el Editor de transformación Búsqueda.
5. En la página General, realice las selecciones siguientes:
a. Seleccione Caché completa.
b. En el área Tipo de conexión, seleccione Administrador de
conexiones OLE DB.
6. En la página Conexión, realice las selecciones siguientes:
a. En el cuadro de diálogo Administrador de conexiones OLE DB,
asegúrese de que se
muestra localhost.AdventureWorksDW2012.
b. Seleccione Usar los resultados de una consulta SQL y, a
continuación, escriba o copie la instrucción SQL siguiente:
select * from (select * from [dbo].[DimCurrency])
as refTable
where [refTable].[CurrencyAlternateKey] = 'ARS'
OR
[refTable].[CurrencyAlternateKey] = 'AUD'
OR
[refTable].[CurrencyAlternateKey] = 'BRL'
OR
[refTable].[CurrencyAlternateKey] = 'CAD'
OR
[refTable].[CurrencyAlternateKey] = 'CNY'
OR
[refTable].[CurrencyAlternateKey] = 'DEM'
OR
[refTable].[CurrencyAlternateKey] = 'EUR'
OR
[refTable].[CurrencyAlternateKey] = 'FRF'
OR
[refTable].[CurrencyAlternateKey] = 'GBP'
OR
[refTable].[CurrencyAlternateKey] = 'JPY'
OR
[refTable].[CurrencyAlternateKey] = 'MXN'
OR
[refTable].[CurrencyAlternateKey] = 'SAR'
7. En la página Columnas, realice las selecciones siguientes:
a. En el panel Columnas de entrada disponibles,
arrastre CurrencyID al panel Columnas de búsqueda
disponibles y suéltelo enCurrencyAlternateKey.
b. En la lista Columnas de búsqueda disponibles, active la casilla
situada a la izquierda de CurrencyKey.
8. Haga clic en Aceptar para volver a la superficie de diseño Flujo de datos.
9. Haga clic con el botón secundario en la transformación Lookup Currency
Key y haga clic en Propiedades.
10.En la ventana Propiedades, compruebe que la propiedad LocaleID esté
establecida en Inglés (Estados Unidos) y la
propiedadDefaultCodePage esté establecida en 1252.
Para agregar y configurar la transformación Lookup
Date Key
1. En el cuadro de herramientas de SSIS, arrastre Búsqueda a la
superficie de diseño Flujo de datos. Coloque Búsqueda justo debajo de
la transformación Lookup Currency Key.
2. Haga clic en la transformación Lookup Currency Key y arrastre la flecha
verde hasta la transformación Búsqueda que acaba de agregar para
conectar los dos componentes.
3. En el cuadro de diálogo Selección de entrada y salida, en el cuadro de
lista Salida, haga clic en Salida de entradas coincidentes de
búsqueda y, a continuación, haga clic en Aceptar.
4. En la superficie de diseño Flujo de datos, haga clic en Búsqueda en la
transformación Búsqueda recién agregada y cambie el nombre por
Lookup Date Key.
5. Haga doble clic en la transformación Lookup Date Key.
6. En la página General, seleccione Caché parcial.
7. En la página Conexión, realice las selecciones siguientes:
a. En el cuadro de diálogo Administrador de conexionesOLE DB,
asegúrese de que se
muestra localhost.AdventureWorksDW2012.
b. En el cuadro Usar una tabla o vista, escriba o
seleccione [dbo].[DimDate].
8. En la página Columnas, realice las selecciones siguientes:
a. En el panel Columnas de entrada disponibles,
arrastre CurrencyDate al panel Columnas de búsqueda
disponibles y suéltelo enFullDateAlternateKey.
b. En la lista Columnas de búsqueda disponibles, active la casilla
situada a la izquierda de DateKey.
9. En la página Avanzadas, revise las opciones de almacenamiento en
memoria caché.
10.Haga clic en Aceptar para volver a la superficie de diseño Flujo de datos.
11.Haga clic con el botón secundario en la transformación Lookup Date Key
y haga clic en Propiedades.
12.En la ventana Propiedades, compruebe que la propiedad LocaleID esté
establecida en Inglés (Estados Unidos) y la
propiedadDefaultCodePage esté establecida en 1252.
Paso 7: agregar y configurar el destino de OLE
DB
Ahora, el paquete puede extraer datos de un origen de archivo plano y
transformar dichos datos en un formato compatible con el destino. La tarea
siguiente consiste realmente en cargar los datos transformados en el
destino. Para cargar los datos, debe agregar un destino de OLE DB al flujo de
datos. El destino de OLE DB puede utilizar una tabla de bases de datos, una
vista o un comando SQL para cargar datos en distintas bases de datos
compatibles con OLE DB.
En este procedimiento, se agrega y configura un destino de OLE DB para utilizar
el administrador de conexiones de OLE DB creado con anterioridad.
Para agregar y configurar un destino de OLE DB de
ejemplo:
1. En el Cuadro de herramientas de SSIS, expanda Otros destinos y
arrastre Destino de OLE DB a la superficie de diseño de la pestaña Flujo
de datos. Coloque el destino de OLE DB directamente debajo de la
transformación Lookup Date Key.
2. Haga clic en la transformación Lookup Date Key y arrastre la flecha verde
hasta el Destino de OLE DB que acaba de agregar para conectar los dos
componentes entre sí.
3. En el cuadro de diálogo Selección de entrada y salida, en el cuadro de
lista Salida, haga clic en Salida de entradas coincidentes de
búsqueda y, a continuación, haga clic en Aceptar.
4. En la superficie de diseño Flujo de datos, haga clic en Destino de OLE
DB en el componente Destino de OLE DB recién agregado y cambie el
nombre por Sample OLE DB Destination.
5. Haga doble clic en Sample OLE DB Destination.
6. En el cuadro de diálogo Editor de destino de OLE DB, asegúrese de
que localhost.AdventureWorksDW2012 está seleccionado en el
cuadroAdministrador de conexiones OLE DB.
7. En el cuadro Nombre de la tabla o la vista, escriba o
seleccione [dbo].[FactCurrencyRate].
8. Haga clic en el botón Nuevo para crear una nueva tabla. Cambie el
nombre de la tabla en el script a NewFactCurrencyRate. Haga clic
enAceptar.
9. Al hacer clic en Aceptar, se cerrará el cuadro de diálogo y el Nombre de
la tabla o la vista cambiará automáticamente aNewFactCurrencyRate.
10.Haga clic en Asignaciones.
11.Compruebe que las columnas de
entrada AverageRate, CurrencyKey, EndOfDayRate y DateKey están
correctamente asignadas a las columnas de destino. Si hay columnas con
el mismo nombre asignadas, la asignación es correcta.
12.Haga clic en Aceptar.
13.Haga clic con el botón secundario en Sample OLE DB Destination y
haga clic en Propiedades.
14.En la ventana Propiedades, compruebe que la propiedad LocaleID está
establecida en Inglés (Estados Unidos) y la
propiedadDefaultCodePage está establecida en 1252.
Paso 8: facilitar la comprensión del paquete de la
lección 1
Ahora que ha terminado la configuración del paquete de la lección 1, es una
buena idea ordenar el diseño del paquete. Si las formas de los diseños de los
flujos de datos y de control tienen tamaños aleatorios o no están alineadas o
agrupadas, la funcionalidad del paquete puede resultar más difícil de
comprender.
SQL Server Data Tools proporciona herramientas que permiten aplicar formato
al diseño del paquete de forma rápida y sencilla. Las características de formato
incluyen la capacidad de hacer que las formas tengan el mismo tamaño, de
alinearlas y de manipular el espaciado horizontal y vertical entre las formas.
Otra forma de mejorar la comprensión de la funcionalidad de un paquete es
agregar anotaciones que la describan.
En esta tarea usará las características de formato de SQL Server Data Tools
para mejorar el diseño del flujo de datos y agregará una anotación al flujo de
datos.
Para aplicar formato al diseño del flujo de datos
1. Si el paquete de la lección 1 no está abierto todavía, haga doble clic en
Lesson 1.dtsx en el Explorador de soluciones.
2. Haga clic en la pestaña Flujo de datos.
3. Coloque el cursor en la parte superior derecha de la transformación
Extract Sample Currency, haga clic y, a continuación, arrastre el cursor
por todos los componentes de flujo de datos.
4. En el menú Formato, seleccione Igualar tamaño y, a continuación, haga
clic en Ambos.
5. Con los objetos del flujo de datos seleccionados, en el menú Formato,
seleccione Alinear y haga clic en Lados izquierdos.
Para agregar una anotación al flujo de datos
1. Haga clic con el botón secundario en cualquier parte de la superficie de
diseño del flujo de datos y haga clic en Agregar anotación.
2. Escriba o pegue el texto siguiente en el cuadro de anotación.
El flujo de datos extrae datos de un archivo, busca valores en la columna
CurrencyKey de la tabla DimCurrency y la columna DateKey de la tabla
DimDate, y escribe los datos en la tabla NewFactCurrencyRate.
Para ajustar el texto en el cuadro de anotación, coloque el cursor donde
desee empezar una nueva línea y presione la tecla Intro.
Si no agrega texto al cuadro de anotación, desaparecerá al hacer clic
fuera del cuadro.
Paso 9: probar el paquete del tutorial de la
lección 1
En esta lección, ha llevado a cabo las tareas siguientes:
 Ha creado un proyecto de SSIS.
 Ha configurado los administradores de conexión que el paquete necesita
para conectarse a los datos de origen y de destino.
 Ha agregado un flujo de datos que toma los datos de un origen de archivo
plano, realiza las transformaciones de búsqueda necesarias en los datos
y configura los datos para el destino.
El paquete ya se ha completado. Ha llegado el momento de probarlo.
Comprobar el diseño del paquete
Antes de probar el paquete, debe comprobar que los flujos de datos y de control
de la lección 1 contienen los objetos mostrados en los diagramas siguientes.
Flujo de control
Flujo de datos
Para ejecutar el paquete de tutorial de la lección 1
1. En el menú Depurar, haga clic en Iniciar depuración.
El paquete se ejecutará, dando lugar a la correcta inclusión de 1097 filas
en la tabla de hechos FactCurrency de AdventureWorksDW2012.
2. Una vez que se haya completado la ejecución del paquete, en el
menú Depurar, haga clic en Detener depuración.
Lección 2:
Agregar bucles
con SSIS
En esta lección, expandirá el paquete que ha creado en la lección 1 para
beneficiarse de las nuevas características de bucles para extraer varios archivos
planos en un único proceso de flujo de datos.
En la Lección 1: Crear el proyecto y el paquete básico, creó un paquete que
extraía datos de un solo origen de archivo plano, transformó los datos mediante
transformaciones de búsqueda y, por último, cargó los datos en la tabla de
hechos FactCurrency de la base de datos de
ejemploAdventureWorksDW2012.
No obstante, no es muy habitual utilizar un solo archivo plano para el proceso de
extracción, transformación y carga (ETL). Un proceso ETL típico utilizaría datos
extraídos de varios orígenes de archivos planos. Para extraer datos de varios
orígenes, se requiere un flujo de control iterativo. Una de las características más
esperadas de Microsoft Integration Services es la capacidad de agregar
fácilmente una iteración o un bucle a los paquetes.
Integration Services proporciona dos tipos de contenedores para crear bucles en
los paquetes: el contenedor de bucles Foreach y el contenedor de bucles For. El
contenedor de bucles Foreach usa un enumerador para crear el bucle, mientras
que el contenedor de bucles For suele emplear una expresión variable. En esta
lección se utiliza el contenedor de bucles Foreach.
El contenedor de bucles Foreach permite que un paquete repita el flujo de control
para cada miembro de un enumerador determinado. Con el contenedor de bucles
Foreach puede enumerar lo siguiente:
 Filas de conjuntos de registros ADO
 Información del esquema de ADO .Net
 Estructuras de archivos y directorios
 Variables del sistema, de paquete y de usuario
 Objetos enumerables contenidos en una variable
 Elementos de una colección
 Nodos de una expresión del lenguaje de rutas XML (XPath)
 SQL Server Objetos de administración (SMO)
En esta lección, modificará el paquete ETL simple creado en la lección 1 para
beneficiarse del contenedor de bucles Foreach. También establecerá variables
de paquete definidas por el usuario para que el paquete del tutorial pueda
iterarse en todos los archivos planos de la carpeta. Si no ha finalizado la lección
anterior, también puede copiar el paquete de la lección 1 finalizada incluido en el
tutorial.
En esta lección, no modificará el flujo de datos, solamente modificará el flujo de
control.
Tareas de la lección
Esta lección contiene las siguientes tareas:
Paso 1: copiar el paquete de la lección 1
En esta tarea, creará una copia del paquete que ha creado en la lección 1,
denominado Lesson 1.dtsx. Si no ha completado la lección 1, puede agregar al
proyecto el paquete completado de la lección 1 que se incluye con el tutorial y,
después, copiar dicho paquete. Usará esta nueva copia en toda la lección 2.
Para crear el paquete de la lección 2:
1. Si SQL Server Data Tools no está abierto, haga clic en Inicio,
seleccione Todos los programas, Microsoft SQL Server 2012 y,
después, haga clic en SQL Server Data Tools.
2. En el menú Archivo, haga clic en Abrir y en Proyecto o solución, haga
clic en la carpeta SSIS Tutorial, haga clic en Abrir y, después, haga doble
clic en SSIS Tutorial.sln.
3. En el Explorador de soluciones, haga clic con el botón derecho en Lesson
1.dtsx y luego haga clic en Copiar.
4. En el Explorador de soluciones, haga clic con el botón derecho
en Paquetes SSIS y, después, haga clic en Pegar.
De forma predeterminada, el paquete copiado se denominará Lesson 2.dtsx.
5. En el Explorador de soluciones, haga doble clic en Lesson 2.dtsx para
abrir el paquete
6. Haga clic con el botón derecho en cualquier parte del fondo de la
superficie de diseño de Flujo de control y haga clic en Propiedades.
7. En la ventana Propiedades, actualice la propiedad Nombre a Lesson 2.
8. Haga clic en el cuadro de la propiedad Id., haga clic en la flecha
desplegable y luego haga clic en .
Para agregar el paquete de la lección 1 completada
1. Abra SQL Server Data Tools y el proyecto SSIS Tutorial.
2. En el Explorador de soluciones, haga clic con el botón derecho
en Paquetes SSIS y haga clic en Agregar paquete existente.
3. En el cuadro de diálogo Agregar copia de paquete existente,
en Ubicación del paquete, seleccione Sistema de archivos.
4. Haga clic en el botón Examinar (…), vaya a Lesson 1.dtsx en el equipo
y, después, haga clic en Abrir.
Para descargar todos los paquetes de lecciones de este tutorial, haga lo
siguiente.
a. Navegue a los ejemplos del producto Integration Services
b. Haga clic en la pestaña DOWNLOADS .
c. Haga clic en el archivo
SQL2012.Integration_Services.Create_Simple_ETL_Tutorial.Sam
ple.zip.
5. Copie y pegue el paquete de la lección 1 tal como se describe en los pasos
3 a 8 del procedimiento anterior.
Paso 2: agregar y configurar el contenedor de
bucles Foreach
En esta tarea, agregará la capacidad de buscar en una carpeta de archivos
planos y aplicará la misma transformación de flujo de datos utilizada en la lección
1 a cada uno de dichos archivos planos. Para ello, agregará y configurará un
contenedor de bucles Foreach para el flujo de control.
El contenedor de bucles Foreach que agregue debe poder conectarse a cada
uno de los archivos planos de la carpeta. Puesto que todos los archivos de la
carpeta tienen el mismo formato, el contenedor de bucles Foreach puede utilizar
el mismo administrador de conexiones de archivos planos para conectarse a
cada uno de estos archivos. El administrador de conexiones de archivos planos
que el contenedor utilizará es el mismo administrador de conexiones de archivos
planos que creó en la lección 1.
Actualmente, el administrador de conexiones de archivos planos de la lección 1
se conecta a un único archivo plano específico. Para conectarse de forma
iterativa a cada uno de los archivos planos de la carpeta, deberá configurar el
contenedor de bucles Foreach y el administrador de conexiones de archivos
planos de este modo:
 Contenedor de bucles Foreach: Asignará el valor enumerado del
contenedor a una variable de paquete definida por el usuario. El
contenedor usará esta variable definida por el usuario para modificar de
forma dinámica la propiedad ConnectionString del administrador de
conexiones de archivos planos y conectar de forma iterativa cada uno de
los archivos planos de la carpeta.
 Administrador de conexiones de archivos planos: Modificará el
administrador de conexiones creado en la lección 1 mediante una variable
definida por el usuario para rellenar la propiedad ConnectionString del
administrador de conexiones.
En los procedimientos de esta tarea se muestra cómo crear y modificar el
contenedor de bucles Foreach para utilizar una variable de paquete definida por
el usuario y agregar la tarea de flujo de datos al bucle. Aprenderá a modificar el
administrador de conexiones de archivos planos para utilizar una variable
definida por el usuario en la siguiente tarea.
Una vez realizadas estas modificaciones en el paquete, cuando éste se ejecute,
el contenedor de bucles Foreach se iterará en la colección de archivos de la
carpeta Datos de ejemplo. Cada vez que se encuentre un archivo que coincida
con los criterios, el contenedor de bucles Foreach rellenará la variable definida
por el usuario con el nombre de archivo, asignará la variable definida por el
usuario a la propiedad ConnectionString del administrador de conexiones de
archivos planos Sample Currency Data y, después, ejecutará el flujo de datos en
ese archivo. Por consiguiente, en cada iteración del bucle Foreach la tarea de
flujo de datos utilizará un archivo plano distinto.
Nota
Puesto que MicrosoftIntegration Services separa el flujo de control del flujo
de datos, los bucles que agregue al flujo de control no precisarán ninguna
modificación en el flujo de datos. Por consiguiente, no es necesario modificar
el flujo de datos creado en la lección 1.
Para agregar un contenedor de bucles Foreach
1. En SQL Server Data Tools, haga clic en la pestaña Flujo de control.
2. En el Cuadro de herramientas de SSIS, expanda Contenedores y
arrastre un Contenedor de bucles Foreach a la superficie de diseño de
la pestaña Flujo de control.
3. Haga clic con el botón derecho en el Contenedor de bucles Foreach que
acaba de agregar y seleccione Editar.
4. En el cuadro de diálogo Editor de bucles Foreach, en la página General,
en Nombre, escriba Foreach File in Folder. Haga clic en Aceptar.
5. Haga clic con el botón derecho en el contenedor de bucles Foreach, haga
clic en Propiedades y, en la ventana Propiedades, compruebe que la
propiedad LocaleID esté establecida en Inglés (Estados Unidos).
Para configurar el enumerador para el contenedor de
bucles Foreach
1. Haga doble clic en Foreach File in Folder para volver a abrir el Editor de
bucles Foreach.
2. Haga clic en Colección.
3. En la página Colección, seleccione Enumerador de archivos Foreach.
4. En el grupo Configuración de enumerador, haga clic en Examinar.
5. En el cuadro de diálogo Buscar carpeta, busque la carpeta del equipo
que contenga los archivos Currency_*.txt.
Estos datos de ejemplo se incluyen con los paquetes de lecciones de
SSIS.
En el cuadro Archivos, escriba Currency_*.txt.
Para asignar el enumerador a una variable definida por
el usuario
1. Haga clic en Asignaciones de variables.
2. En la página Asignaciones de variables, en la columna Variable, haga
clic en la celda vacía y seleccione .
3. En el cuadro de diálogo Agregar variable, en Nombre,
escriba varFileName.
Importante
Los nombres de variables distinguen entre mayúsculas y minúsculas.
4. Haga clic en Aceptar.
5. Haga clic de nuevo en Aceptar para salir del cuadro de diálogo Editor de
bucles Foreach.
Para agregar la tarea de flujo de datos al bucle
 Arrastre la tarea Flujo de datos Extract Sample Currency Data al
contenedor de bucles Foreach que ahora se denomina Foreach File in
Folder.
Paso 3: Modificar el Administrador de conexiones
de archivos planos
En esta tarea, modificará el administrador de conexiones de archivos planos que
creó y configuró en la lección 1. Cuando se creó inicialmente, el administrador
de conexiones de archivos planos se configuró para cargar de forma estática un
único archivo. Para permitir que el Administrador de conexiones de archivos
planos cargue archivos de forma iterativa, debe modificar la propiedad
ConnectionString del administrador de conexiones de modo que acepte la
variable User:varFileName, definida por el usuario, que contiene la ruta de
acceso del archivo que se cargará en tiempo de ejecución.
Al modificar el administrador de conexiones para que use la variable definida por
el usuario User::varFileName para rellenar la propiedad ConnectionString del
administrador de conexiones, este podrá conectarse a distintos archivos planos.
En tiempo de ejecución, cada iteración del contenedor de bucles Foreach
actualizará dinámicamente la variable User::varFileName. A su vez, actualizar
esta variable da lugar a que el administrador de conexiones se conecte a un
archivo plano distinto, y que la tarea de flujo de datos procese un conjunto de
datos distinto.
Para configurar el Administrador de conexiones de
archivos planos de modo que utilice una variable para la
cadena de conexión
1. En el panel Administradores de conexión, haga clic con el botón
derecho en Sample Flat File Source Data y, después,
seleccionePropiedades.
2. En la ventana Propiedades, para Expresiones, haga clic en la celda vacía
y,después, haga clic en el botón de puntos suspensivos (…).
3. En el cuadro de diálogo Editor de expresiones de propiedad, en la
columna Propiedad, escriba o seleccione ConnectionString.
4. En la columna Expresión, haga clic en el botón de puntos
suspensivos (…) para abrir el cuadro de diálogo Generador de
expresiones.
5. En el cuadro de diálogo Generador de expresiones, expanda el
nodo Variables.
6. Arrastre la variable User::varFileName hasta el cuadro Expresión.
7. Haga clic en Aceptar para cerrar el cuadro de diálogo Generador de
expresiones.
8. Haga clic en Aceptar de nuevo para cerrar el cuadro de diálogo Editor
de expresiones de propiedad.
Paso 4: Probar el paquete del tutorial de la
lección 2
Con el contenedor de bucles Foreach y el administrador de conexiones de
archivo plano que ha configurado, el paquete de la lección 2 puede iterarse a
través de la colección de 14 archivos planos de la carpeta Datos de ejemplo.
Cada vez que se encuentra un archivo que coincide con los criterios de nombre
de archivo especificados, el contenedor de bucles Foreach rellena la variable
definida por el usuario con el nombre de archivo. Esta variable, a su vez,
actualiza la propiedad ConnectionString del administrador de conexiones de
archivos planos, y se establece una conexión con el archivo plano nuevo. A
continuación, el contenedor de bucles Foreach ejecuta la tarea de flujo de datos
sin modificar en los datos del nuevo archivo plano antes de establecer conexión
con el siguiente archivo de la carpeta.
Utilice el procedimiento siguiente para probar la nueva función del bucle que ha
agregado al paquete.
Nota
Si ejecutó el paquete desde la lección 1, necesitará eliminar los registros de
dbo.FactCurrency en AdventureWorksDW2012 antes de ejecutar el paquete
desde esta lección; de lo contrario, el paquete producirá errores que indican
la infracción de una restricción de clave principal. Recibirá los mismos errores
si ejecuta el paquete seleccionando Depurar/Iniciar la depuración (o presiona
F5) porque se ejecutarán las lecciones 1 y 2. La lección 2 intentará insertar
registros que ya se insertaron en la lección 1.
Comprobar el diseño del paquete
Antes de probar el paquete, debe comprobar que los flujos de datos y de control
de la lección 2 contienen los objetos mostrados en los diagramas siguientes. El
flujo de datos debe ser idéntico al flujo de datos de la lección 1.
Flujo de control
Flujo de datos
Para probar el paquete del tutorial de la lección 2
1. En el Explorador de soluciones, haga clic con el botón derecho
en Lesson 2.dtsx y, después, haga clic en Ejecutar paquete.
El paquete se ejecutará. Puede comprobar el estado de cada bucle en la
ventana Resultado o haciendo clic en la pestaña Progreso . Por ejemplo,
puede ver que se han agregado 1.097 líneas a la tabla de destino del
archivo Currency_VEB.txt.
2. Una vez que se haya completado la ejecución del paquete, en el
menú Depurar , haga clic en Detener depuración.
Lección 3: Agregar
Registro con SSIS
En esta lección, expandirá el paquete que creó en la lección 2 para
beneficiarse de las nuevas características de registro.
Microsoft Integration Services incluye características de registro que permiten
supervisar y solucionar los problemas de ejecución de paquetes mediante el
seguimiento de eventos de tarea y de contenedor. La características de registro
son flexibles, pueden habilitarse en el nivel de paquete o en tareas y contendores
individuales del paquete. Puede seleccionar qué eventos deben registrarse y
crear varios registros para un único paquete.
El registro lo proporciona un proveedor de registro. Cada proveedor de registro
puede escribir información de registro en distintos formatos y tipos de destino.
Integration Services proporciona los siguientes proveedores de registro:
 Archivo de texto
 SQL Server Profiler
 Registro de eventos de Windows
 SQL Server
 Archivo XML
En esta lección, creará una copia del paquete que creó en la Lección 2: Agregar
bucles con SSIS. Utilizando este nuevo paquete, luego agregará y configurará el
registro para supervisar eventos específicos durante la ejecución del paquete. Si
no ha finalizado cualquiera de las lecciones anteriores, también puede copiar el
paquete de la lección 2 finalizada incluido en el tutorial.
Importante
Para este tutorial, se necesita la base de datos de
ejemplo AdventureWorksDW2012 . Para obtener más información sobre
cómo instalar e implementar AdventureWorksDW2012, consulte ejemplos
de producto de Reporting Services en CodePlex.
Tareas de la lección
Esta lección contiene las siguientes tareas:
Paso 1: Copiar el paquete de la Lección 2
En esta tarea, creará una copia del paquete que ha creado en la lección 2,
denominado Lesson 2.dtsx. También puede agregar al proyecto el paquete
completado de la lección 2 que se incluye con el tutorial y, después, copiar dicho
paquete. Usará esta nueva copia en toda la lección 3.
Para crear el paquete de la lección 3
1. Si SQL Server Data Tools no está abierto, haga clic en Inicio,
seleccione Todos los programas, Microsoft SQL Server 2012 y,
después, haga clic en SQL Server Data Tools.
2. En el menú Archivo, haga clic en Abrir, haga clic en Proyecto o
solución, seleccione SSIS Tutorial, haga clic en Abrir y, después, haga
doble clic en SSIS Tutorial.sln.
3. En el Explorador de soluciones, haga clic con el botón derecho en Lesson
2.dtsx y, después, haga clic en Copiar.
4. En el Explorador de soluciones, haga clic con el botón derecho
en Paquetes SSIS y, después, haga clic en Pegar.
De forma predeterminada, el paquete copiado se denomina Lesson
3.dtsx.
5. En el Explorador de soluciones, haga doble clic en Lesson 3.dtsx para
abrir el paquete.
6. Haga clic con el botón derecho en cualquier parte del fondo de la
pestaña Flujo de control y haga clic en Propiedades.
7. En la ventana Propiedades, actualice la propiedad Nombre a Lesson 3.
8. Haga clic en el cuadro para la propiedad ID y, en la lista, haga clic en .
Para agregar el paquete de la lección 2 completada
1. Abra SQL Server Data Tools (SSDT) y abra el proyecto SSIS Tutorial.
2. En el Explorador de soluciones, haga clic con el botón derecho
en Paquetes SSIS y haga clic en Agregar paquete existente.
3. En el cuadro de diálogo Agregar copia de paquete existente,
en Ubicación del paquete, seleccione Sistema de archivos.
4. Haga clic en el botón de búsqueda (…), vaya a Lesson 2.dtsx en el
equipo y, después, haga clic en Abrir.
Para descargar todos los paquetes de lecciones de este tutorial, haga lo
siguiente.
a. Navegue a los ejemplos del producto Integration Services
b. Haga clic en la pestaña DOWNLOADS .
c. Haga clic en el archivo
SQL2012.Integration_Services.Create_Simple_ETL_Tutorial.Sam
ple.zip.
5. Copie y pegue el paquete de la lección 3 tal como se describe en los pasos
del 3 a 8 del procedimiento anterior.
Paso 2: Agregar y configurar el registro
En esta tarea, habilitará el registro del flujo de datos del paquete Lesson 3.dtsx.
A continuación, configurará un proveedor de registro de archivos de texto para
registrar los eventos PipelineExecutionPlan y PipelineExecuteTrees. El
proveedor de registro de archivos de texto crea registros que pueden verse y
transportarse con facilidad. La sencillez de estos archivos de registro hace que
sean especialmente útiles durante la fase de prueba básica de un paquete.
También puede ver las entradas del archivo de registro en la ventana Registrar
eventos del Diseñador de SSIS .
Para agregar el registro al paquete
1. En el menú SSIS , haga clic en Registro.
2. En el cuadro de diálogo Configurar registros de SSIS , asegúrese de
que en el panel Contenedores el objeto situado en la posición superior,
que representa el paquete de la lección 3, está seleccionado.
3. En la pestaña Proveedores y registros , en el cuadro Tipo de
proveedor , seleccione Proveedor de registro SSIS para archivos de
textoy haga clic en Agregar.
Integration Services agrega un nuevo proveedor de registro para archivos
de texto al paquete con el nombre predeterminado Proveedor de registro
SSIS para archivos de texto. Ahora puede configurar el nuevo proveedor
de registro.
4. En la columna Nombre , escriba Lesson 3 Log File.
5. Si lo desea, modifique el campo Descripción.
6. En la columna Configuración haga clic en para especificar el destino en
el que se escribe la información de registro.
En el cuadro de diálogo Editor del administrador de conexiones de
archivos , en Tipo de uso, seleccione Crear archivoy, a continuación,
haga clic en Examinar. De forma predeterminada, el cuadro de
diálogo Seleccionar archivo abre la carpeta del proyecto, pero puede
guardar la información de registro en cualquier ubicación.
7. En el cuadro de diálogo Seleccionar archivo , en el cuadro Nombre de
archivo , escriba TutorialLog.logy haga clic en Abrir.
8. Haga clic en Aceptar para cerrar el cuadro de diálogo Editor del
administrador de conexiones de archivos .
9. En el panel Contenedores , expanda todos los nodos de la jerarquía del
contenedor de paquetes y, a continuación, desactive todas las casillas,
incluida Extract Sample Currency Data . Ahora, active la casilla Extract
Sample Currency Data para obtener solo los eventos de este nodo.
Importante
Si la casilla Extract Sample Currency Data está atenuada en lugar de
activada, la tarea usa la configuración de registro del contenedor primario y no
se pueden habilitar los eventos de registro específicos de la tarea.
10.En la columna Eventos de la pestaña Detalles , seleccione los
eventos PipelineExecutionPlan y PipelineExecutionTrees .
11.Haga clic en Avanzadas para revisar los detalles que el proveedor de
registro escribirá en el registro para cada evento. De forma
predeterminada, todas las categorías de información se seleccionan
automáticamente para los eventos que se especifiquen.
12.Haga clic en Básicas para ocultar las categorías de información.
13.En la pestaña Proveedores y registros , en la columna Nombre ,
seleccione Lesson 3 Log File. Una vez que haya creado un proveedor
de registro para el paquete, si lo desea, puede anular su selección para
desactivar temporalmente el registro, sin tener que eliminar un proveedor
de registro y crearlo de nuevo.
14.Haga clic en Aceptar
Paso 3: Probar el paquete del tutorial de la
lección 3
En esta tarea, ejecutará el paquete Lesson 3.dtsx. Al ejecutar el paquete, en la
ventana Registrar eventos se mostrará una lista de las entradas del registro que
se escriben en el archivo de registro. Una vez que haya finalizado la ejecución
del paquete, comprobará el contenido del archivo de registro generado por el
proveedor de registro.
Comprobar el diseño del paquete
Antes de probar el paquete, debe comprobar que los flujos de datos y de
control de la lección 3 contienen los objetos mostrados en los diagramas
siguientes. El flujo de control debe ser idéntico al flujo de datos de la lección 2.
El flujo de datos debe ser idéntico al flujo de datos de las lecciones 1 y 2.
Flujo de control
Flujo de datos
Para ejecutar el paquete de tutorial de la lección 4
1. En el menú SSIS, haga clic en Registrar eventos.
2. En el menú Depurar , haga clic en Iniciar depuración.
3. Una vez que se haya completado la ejecución del paquete, en el
menú Depurar , haga clic en Detener depuración.
Para examinar el archivo de registro generado
 Mediante el Bloc de notas o cualquier otro editor de texto, abra el archivo
TutorialLog.log.
 Aunque la semántica de la información generada para los
eventos PipelineExecutionPlan y PipelineExecutionTrees queda fuera del
ámbito de este tutorial, puede ver que la primera línea enumera los campos de
información especificados en la pestaña Detalles del cuadro de
diálogo Configurar registros de SSIS . Además, puede comprobar que los dos
eventos que ha seleccionado, PipelineExecutionPlan y PipelineExecutionTrees,
se han registrado para cada iteración del bucle Foreach.
Lección 4: Agregar redirección de
flujo de errores con SSIS
En esta lección, expandirá el paquete que creó en la lección 3 para beneficiarse
de las nuevas configuraciones de salida de error.
Para administrar los errores que puedan aparecer en el proceso de
transformación, Microsoft Integration Services ofrece la posibilidad de decidir
para cada componente y cada columna cómo administrar los datos que no
pueden transformarse. Puede optar por omitir un error en determinadas
columnas, redireccionar toda la fila que ha generado el error o simplemente
rechazar el componente debido a un error. De forma predeterminada, todos los
componentes de Integration Services están configurados para ser rechazados si
se produce un error. Rechazar el componente debido a un error, causa, a su vez,
que el paquete también genere un error y que todos los procesos subsiguientes
se detengan.
En lugar de dejar que los errores detengan la ejecución de los paquetes, es
recomendable configurar y administrar los posibles errores de procesamiento
como si se produjeran en la transformación. Si bien puede optar por omitir los
errores a fin de garantizar que el paquete se ejecute correctamente,
generalmente es mejor redireccionar la fila que genera el error a otra ruta de
proceso en la que los datos y el error puedan persistir, puedan examinarse y
puedan procesarse de nuevo más adelante.
En esta lección, creará una copia del paquete que ha desarrollado en la Lección
3: Agregar registro con SSIS. Trabajando con este paquete nuevo, creará una
versión dañada de los archivos de datos de ejemplo. El archivo dañado forzará
la aparición de un error de proceso al ejecutar el paquete.
Para administrar los datos del error, agregará y configurará un destino de archivo
plano que escribirá en un archivo las filas que no puedan encontrar un valor de
búsqueda en la transformación Lookup Currency Key.
Antes de escribir los datos del error en el archivo, incluirá un componente de
script que utiliza un script para obtener descripciones de error. A continuación,
volverá a configurar la transformación Lookup Currency Key para redireccionar
los datos que no hayan podido procesarse en la transformación Script.
Importante
Para este tutorial, se necesita la base de datos de
ejemplo AdventureWorksDW2012 . Para obtener más información sobre
cómo instalar e implementar AdventureWorksDW2012, consulte ejemplos de
producto de Reporting Services en CodePlex.
Tareas de la lección
Esta lección contiene las siguientes tareas:
Paso 1: copiar el paquete de la lección 3
En esta tarea, creará una copia del paquete que ha creado en la lección 3,
denominado Lesson 3.dtsx. Por otra parte, si no ha completado la lección 3,
puede agregar al proyecto el paquete completado de la lección 3 que se incluye
con el tutorial y, a continuación, copiar dicho paquete para trabajar. Usará esta
nueva copia en toda la lección 4.
Para crear el paquete de la lección 4
1. Si SQL Server Data Tools no está abierto, haga clic en Inicio,
seleccione Todos los programas, Microsoft SQL Server y, después,
haga clic enSQL Server Data Tools.
2. En el menú Archivo, haga clic en Abrir, haga clic en Proyecto o
solución, seleccione SSIS Tutorial, haga clic en Abrir y, después, haga
doble clic en SSIS Tutorial.sln.
3. En el Explorador de soluciones, haga clic con el botón derecho en Lesson
3.dtsx y, después, haga clic en Copiar.
4. En el Explorador de soluciones, haga clic con el botón derecho
en Paquetes SSIS y, después, haga clic en Pegar.
De forma predeterminada, el paquete copiado se denomina Lesson
4.dtsx.
5. En el Explorador de soluciones, haga doble clic en Lesson 4.dtsx para
abrir el paquete.
6. Haga clic con el botón derecho en cualquier parte del fondo de la
pestaña Flujo de control y haga clic en Propiedades.
7. En la ventana Propiedades, actualice la propiedad Name a Lesson 4.
8. Haga clic en el cuadro para la propiedad ID y, en la lista, haga clic en .
Para agregar el paquete de la lección 3 completada
1. Abra SQL Server Data Tools (SSDT) y abra el proyecto SSIS Tutorial.
2. En el Explorador de soluciones, haga clic con el botón derecho
en Paquetes SSIS y haga clic en Agregar paquete existente.
3. En el cuadro de diálogo Agregar copia de paquete existente,
en Ubicación del paquete, seleccione Sistema de archivos.
4. Haga clic en el botón para examinar (…), vaya a Lesson 3.dtsx en la
máquina y, después, haga clic en Abrir.
Para descargar todos los paquetes de lecciones de este tutorial, haga lo
siguiente.
a. Navegue a los ejemplos del producto Integration Services
b. Haga clic en la pestaña DOWNLOADS .
c. Haga clic en el archivo
SQL2012.Integration_Services.Create_Simple_ETL_Tutorial.Sam
ple.zip.
5. Copie y pegue el paquete de la lección 3 tal como se describe en los pasos
del 3 a 8 del procedimiento anterior.
Paso 2: Crear un archivo dañado
Para demostrar los errores de configuración y el control de los errores de
transformación, debe crear un archivo plano de ejemplo que, cuando se procese,
genere un error en un componente.
En esta tarea, creará una copia de un archivo plano de ejemplo existente. Luego
abrirá el archivo en el Bloc de notas y modificará la columnaCurrencyID para
garantizar que no pueda producir una coincidencia durante la búsqueda de
transformaciones. Cuando se procese el archivo nuevo, el error de búsqueda
hará que se produzca un error en la transformación Lookup Currency Key y, por
consiguiente, el resto del paquete generará un error. Una vez que haya creado
el archivo de ejemplo dañado, ejecutará el paquete para ver su error.
Para crear un archivo plano de ejemplo dañado
1. En el Bloc de notas o en cualquier otro editor de texto, abra el archivo
Currency_VEB.txt.
Los datos de ejemplo se incluyen con los paquetes de lecciones de SSIS.
Para descargar los datos de ejemplo y los paquetes de lecciones, haga lo
siguiente.
a. Navegue a los ejemplos del producto Integration Services.
b. Haga clic en la pestaña DOWNLOADS .
c. Haga clic en el archivo
SQL2012.Integration_Services.Create_Simple_ETL_Tutorial.Sam
ple.zip.
2. Utilice la función de búsqueda y sustitución del editor de texto para buscar
todas las instancias de VEB y sustituirlas por BAD.
3. Guarde el archivo modificado en la misma carpeta que los otros archivos
de datos de ejemplo con el nombre Currency_BAD.txt.
Importante
Asegúrese de que Currency_BAD.txt se guarde en la misma carpeta
que los demás archivos de datos de ejemplo.
4. Cierre el editor de texto.
UUUPara comprobar que se producirá un error durante
la ejecución
1. En el menú Depurar , haga clic en Iniciar depuración.
En la tercera iteración del flujo de datos, la transformación Lookup
Currency Key intenta procesar el archivo Currency_BAD.txt y la
transformación generará un error. El error de la transformación hará que
todo el paquete genere un error.
2. En el menú Depurar , haga clic en Detener depuración.
3. En la superficie de diseño, haga clic en la pestaña Resultados de la
ejecución .
4. Examine el registro y compruebe que se ha producido el siguiente error
no controlado:
[Lookup Currency Key[27]] Error: Row yielded no match during lookup.
Paso 3: Agregar redirección de flujo de errores
Como se ha mostrado en la tarea anterior, la transformación Lookup Currency
Key no puede generar una coincidencia cuando la transformación intenta
procesar el archivo plano de ejemplo dañado que ha generado un error. Puesto
que la transformación utiliza la configuración de salida de error predeterminada,
cualquier error da lugar a un error de la transformación. Cuando se produce un
error en la transformación, también se produce un error en el resto del paquete.
En lugar de permitir que se produzca un error en la transformación, puede
configurar el componente de modo que la fila que genera el error se redirija a
otra ruta de procesamiento mediante la salida de error. El uso de una ruta de
procesamiento independiente permite hacer varias cosas. Por ejemplo, puede
intentar eliminar los datos y luego volver a procesar la fila con error. O bien,
puede guardar la fila con error junto con otra información adicional sobre el error
para comprobarla y procesarla de nuevo más adelante.
En esta tarea configurará la transformación Lookup Currency Key para redirigir
cualquier fila con errores a la salida de errores. En la rama de errores del flujo de
datos, estas filas se escribirán en un archivo.
De forma predeterminada, las dos columnas adicionales en una salida de errores
de Integration Services , ErrorCode y ErrorColumn, solo contienen códigos
numéricos que representan un número de error y el Id. de la columna en la que
se produjo el error. Estos valores numéricos pueden tener un uso limitado sin la
correspondiente descripción del error.
Para mejorar la utilidad de la salida de errores, antes de que el paquete escriba
las filas con errores en el archivo, se utilizará un componente de script para
obtener acceso a la API de Integration Services y obtener una descripción del
error.
Para configurar una salida de error
1. En el Cuadro de herramientas de SSIS, expanda Comunesy, a
continuación, arrastre Componente de script a la superficie de diseño de
la pestaña Flujo de datos . Coloque Script a la derecha de la
transformación Lookup Currency Key .
2. En el cuadro de diálogo Seleccionar el tipo de componente de script ,
haga clic en Transformacióny luego en Aceptar.
3. Haga clic en la transformación Lookup Currency Key y luego arrastre la
flecha roja hasta la transformación Script que acaba de agregar para
conectar los dos componentes.
La flecha roja representa la salida de errores de la transformación Lookup
Currency Key . Utilizando la flecha roja para conectar la transformación
con el componente de script, puede redirigir cualquier error de
procesamiento a dicho componente, que, a continuación, lo procesará y
enviará al destino.
4. En el cuadro de diálogo Configurar la salida de errores , en la
columna Error , seleccione Redirigir filay, a continuación, haga clic
enAceptar.
5. En la superficie de diseño Flujo de datos, haga clic en Componente de
script en el Componente de script recién agregado y cambie el nombre
por Get Error Description.
6. Haga doble clic en la transformación Get Error Description.
7. En el cuadro de diálogo Editor de transformación Script , en la
página Columnas de entrada , seleccione la columna ErrorCode .
8. En la página Entradas y salidas , expanda Salida 0, haga clic
en Columnas de saliday, a continuación, en Agregar columna.
9. En la propiedad Nombre, escriba ErrorDescription y establezca la
propiedad DataType en Cadena Unicode [DT_WSTR].
10.En la página Script, compruebe que la propiedad LocaleID esté
establecida en Inglés (Estados Unidos).
11.Haga clic en Editar script para abrir Microsoft Visual Studio Tools for
Applications (VSTA). En el método Input0_ProcessInputRow, escriba o
pegue el código siguiente.
[Visual Basic]
Row.ErrorDescription =
Me.ComponentMetaData.GetErrorDescription(Row.ErrorCode)
[Visual C#]
Row.ErrorDescription =
this.ComponentMetaData.GetErrorDescription(Row.ErrorCode);
La subrutina completada será como el código siguiente.
[Visual Basic]
Public Overrides Sub Input0_ProcessInputRow(ByVal Row As
Input0Buffer)
Row.ErrorDescription =
Me.ComponentMetaData.GetErrorDescription(Row.ErrorCode)
End Sub
[Visual C#]
public override void Input0_ProcessInputRow(Input0Buffer Row)
{
Row.ErrorDescription =
this.ComponentMetaData.GetErrorDescription(Row.ErrorCode);
}
12.En el menú Compilar , haga clic en Compilar solución para compilar el
script y guardar los cambios y, a continuación, cierre VSTA.
13.Haga clic en Aceptar para cerrar el cuadro de diálogo Editor de
transformación Script .
Paso 4: Agregar un destino de archivo plano
La salida de errores de la transformación Lookup Currency Key redirige a la
transformación Script cualquier fila de datos que haya generado un error durante
la operación de búsqueda. Para mejorar la información acerca de los errores
producidos, la transformación Script ejecuta un script que obtiene una
descripción de los errores.
En esta tarea guardará toda esta información acerca de las filas con errores en
un archivo delimitado para su procesamiento posterior. Para guardar las filas con
errores, es preciso agregar y configurar un administrador de conexiones de
archivos planos para el archivo de texto que contendrá los datos de error y un
destino de archivo plano. Al establecer propiedades en el administrador de
conexiones de archivos planos que usa el destino de archivo plano, puede
especificar la manera en que el destino de archivo plano establece el formato y
escribe el archivo de texto. Para obtener más información, vea Flat File
Connection Manager y Flat File Destination.
Para agregar y configurar un destino de archivo plano
1. Haga clic en la pestaña Flujo de datos.
2. En el Cuadro de herramientas de SSIS, expanda Otrosy
arrastre Destino de archivo plano a la superficie de diseño del flujo de
datos. Coloque el Destino de archivo plano directamente debajo de la
transformación Get Error Description .
3. Haga clic en la transformación Get Error Description y arrastre la flecha
verde hasta el nuevo Destino de archivo plano.
4. En la superficie de diseño Flujo de datos , haga clic en Destino de
archivo plano en la transformación Destino de archivo plano recién
agregada y cambie el nombre a Failed Rows.
5. Haga clic con el botón derecho en la transformación Failed Rows, haga
clic en Editar y, después, en el Editor de destino de archivos planos,
haga clic en Nuevo.
6. En el cuadro de diálogo Formato de archivo plano , compruebe que esté
seleccionado Delimitado y haga clic en Aceptar.
7.
8. En el cuadro Nombre del administrador de conexionesdel Editor del
administrador de conexiones de archivos planos , escriba Error Data.
9. En el cuadro de diálogo Editor del administrador de conexiones de
archivos planos , haga clic en Examinary busque la carpeta en la que
se almacenará el archivo.
10.En el cuadro de diálogo Abrir , en Nombre de archivo,
escriba ErrorOutput.txty haga clic en Abrir.
11.En el cuadro de diálogo Editor del administrador de conexiones de
archivos planos, compruebe que el cuadro Configuración
regionalcontiene Inglés (Estados Unidos) y la Página de
códigos contiene 1252 (ANSI -Latin I).
12.En el panel de opciones, haga clic en Columnas.
Observe que, además de las columnas del archivo de datos de origen,
existen tres columnas nuevas: ErrorCode, ErrorColumn y
ErrorDescription. Estas columnas las generan la salida de errores de la
transformación Lookup Currency Key y el script de la transformación Get
Error Description y pueden utilizarse para solucionar el problema de la fila
que genera el error.
13.Haga clic en Aceptar.
14.En el Editor de destino de archivos planos, desactive la
casilla Sobrescribir los datos del archivo .
Al desactivar esta casilla, se conservan los errores sobre múltiples
ejecuciones del paquete.
15.En el Editor de destino de archivos planos, haga
clic Asignaciones para comprobar que todas las columnas son correctas.
Si lo desea, puede cambiar el nombre de las columnas en el destino.
16.Haga clic en Aceptar.
Paso 5: Probar el paquete del tutorial de la
lección 4
En tiempo de ejecución, el archivo dañado, Currency_BAD.txt, no podrá generar
una coincidencia en la transformación Lookup Currency Key. Puesto que la
salida de errores de Lookup Currency Key se ha configurado para redirigir las
filas con errores al nuevo destino de filas con errores, el componente no genera
ningún error y el paquete se ejecuta correctamente. Todas las filas que generan
un error se escriben en el archivo ErrorOutput.txt.
En esta tarea, probará la configuración de la salida de error revisada ejecutando
el paquete. Tras ejecutar correctamente el paquete, verá el contenido del archivo
ErrorOutput.txt.
Nota
Si no desea acumular filas con errores en el archivo ErrorOutput.txt, debe
eliminar manualmente el contenido del archivo entre ejecuciones de paquetes.
Comprobar el diseño del paquete
Antes de probar el paquete, debe comprobar que los flujos de datos y de control
del paquete de la lección 4 contienen los objetos mostrados en los diagramas
siguientes. El flujo de control debe ser idéntico al flujo de datos de las lecciones
2 a 4.
Flujo de control
Flujo de datos
Para ejecutar el paquete de tutorial de la lección 4
1. En el menú Depurar, haga clic en Iniciar depuración.
2. Una vez que se haya completado la ejecución del paquete, en el
menú Depurar, haga clic en Detener depuración.
Para comprobar el contenido del archivo ErrorOutput.txt
 En el Bloc de notas o en cualquier otro editor de texto, abra el archivo
ErrorOutput.txt. El orden predeterminado de columna es: AverageRate,
CurrencyID, CurrencyDate, EndOfDateRate, ErrorCode, ErrorColumn,
ErrorDescription.
Observe que todas las filas del archivo contienen el valor BAD de
CurrencyID sin coincidencia, el valor -1071607778 de ErrorCode, el valor
0 de ErrorColumn y el valor "La fila no produjo ninguna coincidencia
durante la búsqueda" de ErrorDescription. El valor de ErrorColumn se
establece en 0 porque el error no es específico de columna. Es la
operación de búsqueda la que ha generado el error.
Lección 5: Agregar configuraciones
de paquete para el modelo de
implementación de paquetes
En esta lección, expandirá el paquete que creó en la lección 4 para beneficiarse
de las nuevas opciones de configuración del paquete.
Tareas de la lección
Esta lección contiene las siguientes tareas:
 Paso 1: Copiar el paquete de la lección 4
 Paso 2: Habilitar y configurar las
configuraciones de paquetes
En esta tarea, convertirá el proyecto al modelo de implementación de paquetes y
habilitará las configuraciones de paquetes mediante el Asistente para
configuración de paquetes. Usará este asistente para generar un archivo de
configuración XML que contiene parámetros de configuración para la
propiedad Directory del contenedor de bucles Foreach. El valor de la propiedad
Directory se proporciona a través de una variable nueva de nivel de paquete que
puede actualizarse durante la ejecución. Además, rellenará una carpeta nueva de
datos de ejemplo que utilizará durante las pruebas.
Para crear una variable nueva de nivel de paquete asignada a la propiedad
Directory
1. Haga clic en el fondo de la pestaña Flujo de control del Diseñador SSIS.
De este modo se establece en el paquete el ámbito de la variable que se
va a crear.
2. En el menú SSIS, seleccione Variables.
3. En la ventana Variables, haga clic en el icono Agregar variable.
4. En el cuadro Nombre, escriba varFolderName.
Importante
Los nombres de variables distinguen entre mayúsculas y minúsculas.
5. Compruebe que en el cuadro Ámbito se muestra el nombre del paquete
(Lección 5).
6. Establezca el valor del cuadro Tipo de datos de la
variable varFolderName en String.
7. Vuelva a la pestaña Flujo de control y haga doble clic en el
contenedor Foreach File in Folder.
8. En la página Colección del Editor de bucles Foreach, haga clic
en Expresiones y, después, haga clic en el botón de puntos
suspensivos (…).
9. En el Editor de expresiones de propiedad, haga clic en la
lista Propiedad y seleccione Directorio.
10. En el cuadro Expresión, haga clic en el botón de puntos suspensivos (…).
11. En el Generador de expresiones, expanda la carpeta Variables y arrastre
la variable User:varFolderName al cuadro Expresión.
12. Haga clic en Aceptar para salir del Generador de expresiones.
13. Haga clic en Aceptar para salir del Editor de expresiones de propiedad.
14. Haga clic en Aceptar para salir del Editor de bucles Foreach.
Para habilitar las configuraciones de paquetes
1. En el menú Proyecto, haga clic en Convertir al modelo de
implementación de paquetes.
2. Haga clic en Aceptar en el mensaje de advertencia y, una vez completada
la conversión, haga clic en Aceptar en el cuadro de diálogoConvertir al
modelo de implementación de paquetes.
3. Haga clic en el fondo de la pestaña Flujo de control del Diseñador SSIS.
4. En el menú SSIS , haga clic en Configuraciones de paquetes.
5. En el cuadro de diálogo Organizador de configuraciones de paquetes,
seleccione Habilitar configuraciones de paquetes y, después, haga clic
en Agregar.
6. En la página de bienvenida del Asistente para la configuración de
paquetes, haga clic en Siguiente.
7. En la página Seleccionar tipo de configuración, compruebe que el Tipo
de configuración está establecido en Archivo de configuración XML.
8. En la página Seleccionar tipo de configuración, haga clic en Examinar.
9. De forma predeterminada, el cuadro de diálogo Seleccionar ubicación
del archivo de configuración se abrirá en la carpeta del proyecto.
10. En el cuadro de diálogo Seleccionar ubicación del archivo de
configuración, escriba SSISTutorial en Nombre de archivo y haga clic
enGuardar.
11. En la página Seleccionar tipo de configuración, haga clic en Siguiente.
12. En la página Seleccionar propiedades para la exportación, en el
panel Objetos, expanda Variables,
luego varFolderName y Propiedades y, después, seleccione Valor.
13. En la página Seleccionar propiedades para la exportación, haga clic
en Siguiente.
14. En la página Finalización del asistente, escriba un nombre para la
configuración, por ejemplo, Configuración del directorio del Tutorial de
SSIS. Este es el nombre de configuración que se muestra en el cuadro de
diálogo Organizador de configuraciones de paquetes.
15. Haga clic en Finalizar.
16. Haga clic en Cerrar.
17. El asistente crea un archivo de configuración, denominado
SSISTutorial.dtsConfig, que contiene parámetros de configuración para
el valor de la variable que, a su vez, establece la propiedad Directory del
enumerador.
Nota
Generalmente, un archivo de configuración contiene información compleja
sobre las propiedades de un paquete, pero en este tutorial la única información
de configuración debería ser
<Configuration ConfiguredType="Property"
Path="Package.Variables[User::varFolderName].Properties[Value]"
ValueType="String">
</ConfiguredValue>
</Configuration>.
Para crear y rellenar una carpeta nueva de datos de ejemplo
1. En el Explorador de Windows, en el nivel raíz de la unidad (por ejemplo,
C:), cree una carpeta nueva denominada Nuevos datos de ejemplo.
2. Busque los archivos de ejemplo en su equipo y copie tres de los archivos
de la carpeta.
3. En la carpeta Nuevos datos de ejemplo, pegue los archivos copiados.
 Paso 3: Modificar el valor de configuración de la propiedad Directory
 Paso 4: Probar el paquete del tutorial de la lección 5
Lección 6: Uso de parámetros con el modelo de implementación de
proyectos en SSIS
En esta lección, expandirá el paquete que creó en la lección 5 para beneficiarse
de usar los nuevos parámetros con el modelo de implementación del proyecto.
Con el Asistente para la conversión de proyectos de Integration Services,
convertirá el proyecto al modelo de implementación de proyectos y usará un
parámetro en lugar de un valor de configuración para establecer la propiedad
Directory. Esta lección abarca parcialmente los pasos que se seguiría para
convertir paquetes SSIS existentes al nuevo modelo de implementación de
proyectos.
Cuando ejecute el paquete de nuevo, el servicio Integration Services usará el
parámetro para rellenar el valor de la variable y la variable actualizará a su vez la
propiedad Directory. Como resultado, el paquete iterará por los archivos de la
nueva carpeta de datos especificada por el valor del parámetro, en lugar de iterar
por la carpeta que se estableció en el archivo de configuración del paquete.
Tareas de la lección
Esta lección contiene las siguientes tareas:
1. Paso 1: copiar el paquete de la lección 5
2. Paso 2: Convertir el proyecto al modelo de implementación de proyectos
Convertir el proyecto al modelo de implementación del proyectos
1. En el menú Proyecto, haga clic en Convertir al modelo de implementación
de proyectos.
2. En la página de introducción del Asistente para conversión de proyectos
de Integration Services, revise los pasos y haga clic en Siguiente.
3. En la página Seleccionar paquetes, en la lista de paquetes, desactive todas
las casillas de verificación excepto Lesson 6.dtsx y haga clic en Siguiente.
4. En la página Especificar propiedades del proyecto, haga clic en Siguiente.
5. En la página Actualizar tarea Ejecutar paquete, haga clic en Siguiente.
6. En la página Seleccionar configuración, asegúrese de que el paquete
Lesson 6.dtsx está seleccionado en la lista de configuraciones y haga clic
en Siguiente.
7. En la página Crear parámetros, asegúrese de que el paquete Lesson 6.dtsx
está seleccionado y el ámbito está configurado en Paquete, en la lista de
propiedades de configuración, y haga clic en Siguiente.
8. En la página Configurar parámetros, compruebe que los valores de
Nombre y Valor son el mismo nombre y el mismo valor especificados en
Lesson 5 para la variable y el valor de configuración, y haga clic en
Siguiente.
9. En la página Revisar, en el panel de resumen, tenga en cuenta que el
asistente ha usado la información del archivo de configuración para
establecer las propiedades que se van a convertir.
10. Haga clic en Convertir.
Cuando la conversión finaliza, se muestra un mensaje que advierte que los
cambios no se guardarán hasta que el proyecto se guarde en Visual Studio.
Haga clic en Aceptar del cuadro de diálogo de advertencia.
11. En el Asistente para conversión de proyectos de Integration Services, haga
clic en Cerrar.
12. En Herramientas de datos de SQL Server, haga clic en el menú Archivo y
haga clic en Guardar para guardar el paquete convertido.
13. Haga clic en la ficha Parámetros y compruebe que el paquete contiene un
parámetro para VarFolderName, y que el valor es la misma ruta de acceso
especificada para la carpeta Nuevos datos de ejemplo del archivo de
configuración Lesson 5.
3. Paso 3: Probar el paquete de la lección 6
4. Paso 4: Implementar y probar el paquete de la lección 6

Más contenido relacionado

La actualidad más candente

Fire Bird
Fire BirdFire Bird
Fire Birdlejogu
 
Documento arquitectura de software
Documento arquitectura de softwareDocumento arquitectura de software
Documento arquitectura de softwareAURA SYSTEMS S.A.C
 
S06.s1 - Material.pdf
S06.s1 - Material.pdfS06.s1 - Material.pdf
S06.s1 - Material.pdfSariFash
 
Ejercicio de Análisis de Sistemas
Ejercicio de Análisis de SistemasEjercicio de Análisis de Sistemas
Ejercicio de Análisis de SistemasVictor Escamilla
 
Diagramas de paquetes
Diagramas de paquetesDiagramas de paquetes
Diagramas de paquetesMoises Cruz
 
proyecto conexion netbeans con Mysql
proyecto conexion netbeans con Mysqlproyecto conexion netbeans con Mysql
proyecto conexion netbeans con MysqlBrenditaLr
 
Caso practico de ing. software
Caso practico de ing. softwareCaso practico de ing. software
Caso practico de ing. softwareByrna Carmona
 
2 1 vistas arquitectonicas
2 1 vistas arquitectonicas2 1 vistas arquitectonicas
2 1 vistas arquitectonicaslandeta_p
 
Bd ferreteria
Bd ferreteriaBd ferreteria
Bd ferreteriadapaes
 
Lenguaje estructurado sql
Lenguaje estructurado sqlLenguaje estructurado sql
Lenguaje estructurado sqlDiego Sánchez
 
Requerimiento funcional y no funcional
Requerimiento funcional y no funcional Requerimiento funcional y no funcional
Requerimiento funcional y no funcional CristobalFicaV
 
Guia trabajo visual basic (parte I)
Guia trabajo   visual basic (parte I)Guia trabajo   visual basic (parte I)
Guia trabajo visual basic (parte I)ColegioUpb
 
Exportar datos con oracle sql developer a excel
Exportar datos con oracle sql developer a excelExportar datos con oracle sql developer a excel
Exportar datos con oracle sql developer a excelFredys Nieto
 
Casos prácticos de uml
Casos prácticos de umlCasos prácticos de uml
Casos prácticos de umlsemillachile
 
SmartDB Office Hours: Connection Pool Sizing Concepts
SmartDB Office Hours: Connection Pool Sizing ConceptsSmartDB Office Hours: Connection Pool Sizing Concepts
SmartDB Office Hours: Connection Pool Sizing ConceptsKoppelaars
 
Añadir un cliente Ubuntu a un Dominio 2008 Server
Añadir un cliente Ubuntu a un Dominio 2008 ServerAñadir un cliente Ubuntu a un Dominio 2008 Server
Añadir un cliente Ubuntu a un Dominio 2008 Servereduenlasiberia
 

La actualidad más candente (20)

Fire Bird
Fire BirdFire Bird
Fire Bird
 
Documento arquitectura de software
Documento arquitectura de softwareDocumento arquitectura de software
Documento arquitectura de software
 
S06.s1 - Material.pdf
S06.s1 - Material.pdfS06.s1 - Material.pdf
S06.s1 - Material.pdf
 
Ejercicio de Análisis de Sistemas
Ejercicio de Análisis de SistemasEjercicio de Análisis de Sistemas
Ejercicio de Análisis de Sistemas
 
Objeto SqlDataAdapter
Objeto SqlDataAdapterObjeto SqlDataAdapter
Objeto SqlDataAdapter
 
Diagramas de paquetes
Diagramas de paquetesDiagramas de paquetes
Diagramas de paquetes
 
proyecto conexion netbeans con Mysql
proyecto conexion netbeans con Mysqlproyecto conexion netbeans con Mysql
proyecto conexion netbeans con Mysql
 
Ejercicios sql
Ejercicios sqlEjercicios sql
Ejercicios sql
 
Caso practico de ing. software
Caso practico de ing. softwareCaso practico de ing. software
Caso practico de ing. software
 
2 1 vistas arquitectonicas
2 1 vistas arquitectonicas2 1 vistas arquitectonicas
2 1 vistas arquitectonicas
 
Sql presentacion
Sql presentacionSql presentacion
Sql presentacion
 
Bd ferreteria
Bd ferreteriaBd ferreteria
Bd ferreteria
 
Lenguaje estructurado sql
Lenguaje estructurado sqlLenguaje estructurado sql
Lenguaje estructurado sql
 
Requerimiento funcional y no funcional
Requerimiento funcional y no funcional Requerimiento funcional y no funcional
Requerimiento funcional y no funcional
 
Guia trabajo visual basic (parte I)
Guia trabajo   visual basic (parte I)Guia trabajo   visual basic (parte I)
Guia trabajo visual basic (parte I)
 
Exportar datos con oracle sql developer a excel
Exportar datos con oracle sql developer a excelExportar datos con oracle sql developer a excel
Exportar datos con oracle sql developer a excel
 
Casos prácticos de uml
Casos prácticos de umlCasos prácticos de uml
Casos prácticos de uml
 
SmartDB Office Hours: Connection Pool Sizing Concepts
SmartDB Office Hours: Connection Pool Sizing ConceptsSmartDB Office Hours: Connection Pool Sizing Concepts
SmartDB Office Hours: Connection Pool Sizing Concepts
 
Arquitectura fisica y logica
Arquitectura fisica y logicaArquitectura fisica y logica
Arquitectura fisica y logica
 
Añadir un cliente Ubuntu a un Dominio 2008 Server
Añadir un cliente Ubuntu a un Dominio 2008 ServerAñadir un cliente Ubuntu a un Dominio 2008 Server
Añadir un cliente Ubuntu a un Dominio 2008 Server
 

Destacado

Taller de integración de Datos con SQL Server 2014 Integration Services SSIS
Taller de integración de Datos con SQL Server 2014 Integration Services SSISTaller de integración de Datos con SQL Server 2014 Integration Services SSIS
Taller de integración de Datos con SQL Server 2014 Integration Services SSISLPI ONG
 
Microsoft sql server 2008 - ETL
Microsoft sql server 2008 - ETL Microsoft sql server 2008 - ETL
Microsoft sql server 2008 - ETL Fanny Pita
 
บทความจอย
บทความจอยบทความจอย
บทความจอยruth12874
 
โครงงานคอมพ วเตอร
โครงงานคอมพ วเตอร โครงงานคอมพ วเตอร
โครงงานคอมพ วเตอร ruth12874
 
The membership conundrum
The membership conundrumThe membership conundrum
The membership conundrumJo Walters
 
0224_01_2005_0098_0068_1727892
0224_01_2005_0098_0068_17278920224_01_2005_0098_0068_1727892
0224_01_2005_0098_0068_1727892Salvatore Esposito
 
How_To_Influence_Shoppers_Behaviour
How_To_Influence_Shoppers_BehaviourHow_To_Influence_Shoppers_Behaviour
How_To_Influence_Shoppers_BehaviourRomeo Richards
 
โปรเจกงานคอม1
โปรเจกงานคอม1โปรเจกงานคอม1
โปรเจกงานคอม1ruth12874
 
Lab7 tutorial de análisis services parte 2
Lab7 tutorial de análisis services parte 2Lab7 tutorial de análisis services parte 2
Lab7 tutorial de análisis services parte 2Efrain Criss
 
โครงงานคอม
โครงงานคอมโครงงานคอม
โครงงานคอมruth12874
 
Communications for non communications people
Communications for non communications peopleCommunications for non communications people
Communications for non communications peopleJo Walters
 
SE_Portfolio_2016.01.compressed
SE_Portfolio_2016.01.compressedSE_Portfolio_2016.01.compressed
SE_Portfolio_2016.01.compressedSalvatore Esposito
 

Destacado (20)

Fundamentos de Integración de Datos (SSIS)
Fundamentos de Integración de Datos (SSIS)Fundamentos de Integración de Datos (SSIS)
Fundamentos de Integración de Datos (SSIS)
 
Taller de integración de Datos con SQL Server 2014 Integration Services SSIS
Taller de integración de Datos con SQL Server 2014 Integration Services SSISTaller de integración de Datos con SQL Server 2014 Integration Services SSIS
Taller de integración de Datos con SQL Server 2014 Integration Services SSIS
 
Microsoft sql server 2008 - ETL
Microsoft sql server 2008 - ETL Microsoft sql server 2008 - ETL
Microsoft sql server 2008 - ETL
 
PHD_Esposito2013
PHD_Esposito2013PHD_Esposito2013
PHD_Esposito2013
 
บทความจอย
บทความจอยบทความจอย
บทความจอย
 
042_ESPOSITO_VER con foto
042_ESPOSITO_VER con foto042_ESPOSITO_VER con foto
042_ESPOSITO_VER con foto
 
โครงงานคอมพ วเตอร
โครงงานคอมพ วเตอร โครงงานคอมพ วเตอร
โครงงานคอมพ วเตอร
 
Greece
GreeceGreece
Greece
 
The membership conundrum
The membership conundrumThe membership conundrum
The membership conundrum
 
0224_01_2005_0098_0068_1727892
0224_01_2005_0098_0068_17278920224_01_2005_0098_0068_1727892
0224_01_2005_0098_0068_1727892
 
How_To_Influence_Shoppers_Behaviour
How_To_Influence_Shoppers_BehaviourHow_To_Influence_Shoppers_Behaviour
How_To_Influence_Shoppers_Behaviour
 
โปรเจกงานคอม1
โปรเจกงานคอม1โปรเจกงานคอม1
โปรเจกงานคอม1
 
Lab7 tutorial de análisis services parte 2
Lab7 tutorial de análisis services parte 2Lab7 tutorial de análisis services parte 2
Lab7 tutorial de análisis services parte 2
 
06 e
06 e06 e
06 e
 
โครงงานคอม
โครงงานคอมโครงงานคอม
โครงงานคอม
 
Communications for non communications people
Communications for non communications peopleCommunications for non communications people
Communications for non communications people
 
Exchange server
Exchange serverExchange server
Exchange server
 
SE_Portfolio_2016.01.compressed
SE_Portfolio_2016.01.compressedSE_Portfolio_2016.01.compressed
SE_Portfolio_2016.01.compressed
 
06 art50
06 art5006 art50
06 art50
 
P_Torri OK_BR
P_Torri OK_BRP_Torri OK_BR
P_Torri OK_BR
 

Similar a Tutorial SSIS Crear paquete ETL sencillo

sdasdasdasdasdasda
sdasdasdasdasdasdasdasdasdasdasdasda
sdasdasdasdasdasdajayerxD
 
Creación de reportes de la compañía multinacional “MODATEX” mediante el uso d...
Creación de reportes de la compañía multinacional “MODATEX” mediante el uso d...Creación de reportes de la compañía multinacional “MODATEX” mediante el uso d...
Creación de reportes de la compañía multinacional “MODATEX” mediante el uso d...LUIS ALBERTO CUNALATA BOMBON
 
taller incontec
taller incontec taller incontec
taller incontec juanjo1412
 
Mcvs ad-04 diseño del sistema de informacion v1
Mcvs ad-04 diseño del sistema de informacion v1Mcvs ad-04 diseño del sistema de informacion v1
Mcvs ad-04 diseño del sistema de informacion v1lnavarros
 
Mcvs ad-05 documento de analisis y diseño de cus
Mcvs ad-05 documento de analisis y diseño de cusMcvs ad-05 documento de analisis y diseño de cus
Mcvs ad-05 documento de analisis y diseño de cuslnavarros
 
Mcvs ad-05 documento de analisis y diseño de cus
Mcvs ad-05 documento de analisis y diseño de cusMcvs ad-05 documento de analisis y diseño de cus
Mcvs ad-05 documento de analisis y diseño de cuslnavarros
 
TRABAJO ACCESS
TRABAJO ACCESSTRABAJO ACCESS
TRABAJO ACCESSCAMSAN
 
PLANTILLA NORMA INCONTEC
PLANTILLA NORMA INCONTEC PLANTILLA NORMA INCONTEC
PLANTILLA NORMA INCONTEC juanjo1412
 
plantilla norma incontec
plantilla norma incontec plantilla norma incontec
plantilla norma incontec juanjo1412
 
Plantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizadoPlantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizadoAfelipe901
 
PLAN DE OPERACIONES Y PRODUCCION- ING INDUSTRIAL
PLAN DE OPERACIONES Y PRODUCCION- ING INDUSTRIALPLAN DE OPERACIONES Y PRODUCCION- ING INDUSTRIAL
PLAN DE OPERACIONES Y PRODUCCION- ING INDUSTRIALBitiaNeira
 
Plantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizadoPlantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizadoEsteban Varon
 
Plantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizadoPlantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizadoEsteban Varon
 
InstalacióN Bd De Prueba
InstalacióN Bd De PruebaInstalacióN Bd De Prueba
InstalacióN Bd De Pruebaguest90a2784
 

Similar a Tutorial SSIS Crear paquete ETL sencillo (20)

sdasdasdasdasdasda
sdasdasdasdasdasdasdasdasdasdasdasda
sdasdasdasdasdasda
 
Creación de reportes de la compañía multinacional “MODATEX” mediante el uso d...
Creación de reportes de la compañía multinacional “MODATEX” mediante el uso d...Creación de reportes de la compañía multinacional “MODATEX” mediante el uso d...
Creación de reportes de la compañía multinacional “MODATEX” mediante el uso d...
 
taller incontec
taller incontec taller incontec
taller incontec
 
Mcvs ad-04 diseño del sistema de informacion v1
Mcvs ad-04 diseño del sistema de informacion v1Mcvs ad-04 diseño del sistema de informacion v1
Mcvs ad-04 diseño del sistema de informacion v1
 
Mcvs ad-05 documento de analisis y diseño de cus
Mcvs ad-05 documento de analisis y diseño de cusMcvs ad-05 documento de analisis y diseño de cus
Mcvs ad-05 documento de analisis y diseño de cus
 
Mcvs ad-05 documento de analisis y diseño de cus
Mcvs ad-05 documento de analisis y diseño de cusMcvs ad-05 documento de analisis y diseño de cus
Mcvs ad-05 documento de analisis y diseño de cus
 
TRABAJO ACCESS
TRABAJO ACCESSTRABAJO ACCESS
TRABAJO ACCESS
 
PLANTILLA NORMA INCONTEC
PLANTILLA NORMA INCONTEC PLANTILLA NORMA INCONTEC
PLANTILLA NORMA INCONTEC
 
plantilla norma incontec
plantilla norma incontec plantilla norma incontec
plantilla norma incontec
 
Bhpdkcjs
BhpdkcjsBhpdkcjs
Bhpdkcjs
 
Bd
BdBd
Bd
 
Plantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizadoPlantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizado
 
PLAN DE OPERACIONES Y PRODUCCION- ING INDUSTRIAL
PLAN DE OPERACIONES Y PRODUCCION- ING INDUSTRIALPLAN DE OPERACIONES Y PRODUCCION- ING INDUSTRIAL
PLAN DE OPERACIONES Y PRODUCCION- ING INDUSTRIAL
 
Plantilla con-normas-icontec
Plantilla con-normas-icontec  Plantilla con-normas-icontec
Plantilla con-normas-icontec
 
base de datos de access
base de datos de accessbase de datos de access
base de datos de access
 
Plantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizadoPlantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizado
 
Plantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizadoPlantilla con-normas-icontec finalizado
Plantilla con-normas-icontec finalizado
 
normas incoctec
normas incoctec normas incoctec
normas incoctec
 
InstalacióN Bd De Prueba
InstalacióN Bd De PruebaInstalacióN Bd De Prueba
InstalacióN Bd De Prueba
 
AUTOCAD 2007.pdf
AUTOCAD 2007.pdfAUTOCAD 2007.pdf
AUTOCAD 2007.pdf
 

Último

Rendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de CondominiosRendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de CondominiosCondor Tuyuyo
 
PRESENTACIÓN NOM-009-STPS-2011 TRABAJOS EN ALTURA
PRESENTACIÓN NOM-009-STPS-2011 TRABAJOS EN ALTURAPRESENTACIÓN NOM-009-STPS-2011 TRABAJOS EN ALTURA
PRESENTACIÓN NOM-009-STPS-2011 TRABAJOS EN ALTURAgisellgarcia92
 
La electrónica y electricidad finall.pdf
La electrónica y electricidad finall.pdfLa electrónica y electricidad finall.pdf
La electrónica y electricidad finall.pdfDiegomauricioMedinam
 
SISTEMA FINANCIERO PERÚ. Institución privada
SISTEMA FINANCIERO PERÚ. Institución privadaSISTEMA FINANCIERO PERÚ. Institución privada
SISTEMA FINANCIERO PERÚ. Institución privadaBetlellyArteagaAvila
 
VAMOS MANAOS, análisis e historia de la empresa Manaos
VAMOS MANAOS, análisis e historia de la empresa ManaosVAMOS MANAOS, análisis e historia de la empresa Manaos
VAMOS MANAOS, análisis e historia de la empresa Manaosmalenasilvaet7
 
Tema Documentos mercantiles para uso de contabilidad.pdf
Tema Documentos mercantiles para uso de contabilidad.pdfTema Documentos mercantiles para uso de contabilidad.pdf
Tema Documentos mercantiles para uso de contabilidad.pdfmaryisabelpantojavar
 
Habilidades de un ejecutivo y sus caracteristicas.pptx
Habilidades de un ejecutivo y sus caracteristicas.pptxHabilidades de un ejecutivo y sus caracteristicas.pptx
Habilidades de un ejecutivo y sus caracteristicas.pptxLUISALEJANDROPEREZCA1
 
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptx
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptxT.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptx
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptxLizCarolAmasifuenIba
 
Evaluación y Mejora Continua Guía de Seguimiento y Monitoreo para Cursos de C...
Evaluación y Mejora Continua Guía de Seguimiento y Monitoreo para Cursos de C...Evaluación y Mejora Continua Guía de Seguimiento y Monitoreo para Cursos de C...
Evaluación y Mejora Continua Guía de Seguimiento y Monitoreo para Cursos de C...Oxford Group
 
El MCP abre convocatoria de Monitoreo Estratégico y apoyo técnico
El MCP abre convocatoria de Monitoreo Estratégico y apoyo técnicoEl MCP abre convocatoria de Monitoreo Estratégico y apoyo técnico
El MCP abre convocatoria de Monitoreo Estratégico y apoyo técnicoTe Cuidamos
 
estadistica basica ejercicios y ejemplos basicos
estadistica basica ejercicios y ejemplos basicosestadistica basica ejercicios y ejemplos basicos
estadistica basica ejercicios y ejemplos basicosVeritoIlma
 
Derechos de propiedad intelectual lo mejor
Derechos de propiedad intelectual lo mejorDerechos de propiedad intelectual lo mejor
Derechos de propiedad intelectual lo mejorMarcosAlvarezSalinas
 
FORMATO ASISTENCIA DE CAPACITACION.doc..
FORMATO ASISTENCIA DE CAPACITACION.doc..FORMATO ASISTENCIA DE CAPACITACION.doc..
FORMATO ASISTENCIA DE CAPACITACION.doc..angelicacardales1
 
EL CAMBIO PLANEADO todo acerca de cambio .pptx
EL CAMBIO PLANEADO todo acerca de cambio .pptxEL CAMBIO PLANEADO todo acerca de cambio .pptx
EL CAMBIO PLANEADO todo acerca de cambio .pptxec677944
 
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdfRamon Costa i Pujol
 
Elección supervisor y comité SST 2020.pptx
Elección supervisor y comité SST 2020.pptxElección supervisor y comité SST 2020.pptx
Elección supervisor y comité SST 2020.pptxDiegoQuispeHuaman
 
Coca cola organigrama de proceso empresariales.pptx
Coca cola organigrama de proceso empresariales.pptxCoca cola organigrama de proceso empresariales.pptx
Coca cola organigrama de proceso empresariales.pptxJesDavidZeta
 
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdfT.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdfLizCarolAmasifuenIba
 
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIA
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIAPRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIA
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIAgisellgarcia92
 
CADENA DE SUMINISTROS DIAPOSITIVASS.pptx
CADENA DE SUMINISTROS DIAPOSITIVASS.pptxCADENA DE SUMINISTROS DIAPOSITIVASS.pptx
CADENA DE SUMINISTROS DIAPOSITIVASS.pptxYesseniaGuzman7
 

Último (20)

Rendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de CondominiosRendicion de cuentas del Administrador de Condominios
Rendicion de cuentas del Administrador de Condominios
 
PRESENTACIÓN NOM-009-STPS-2011 TRABAJOS EN ALTURA
PRESENTACIÓN NOM-009-STPS-2011 TRABAJOS EN ALTURAPRESENTACIÓN NOM-009-STPS-2011 TRABAJOS EN ALTURA
PRESENTACIÓN NOM-009-STPS-2011 TRABAJOS EN ALTURA
 
La electrónica y electricidad finall.pdf
La electrónica y electricidad finall.pdfLa electrónica y electricidad finall.pdf
La electrónica y electricidad finall.pdf
 
SISTEMA FINANCIERO PERÚ. Institución privada
SISTEMA FINANCIERO PERÚ. Institución privadaSISTEMA FINANCIERO PERÚ. Institución privada
SISTEMA FINANCIERO PERÚ. Institución privada
 
VAMOS MANAOS, análisis e historia de la empresa Manaos
VAMOS MANAOS, análisis e historia de la empresa ManaosVAMOS MANAOS, análisis e historia de la empresa Manaos
VAMOS MANAOS, análisis e historia de la empresa Manaos
 
Tema Documentos mercantiles para uso de contabilidad.pdf
Tema Documentos mercantiles para uso de contabilidad.pdfTema Documentos mercantiles para uso de contabilidad.pdf
Tema Documentos mercantiles para uso de contabilidad.pdf
 
Habilidades de un ejecutivo y sus caracteristicas.pptx
Habilidades de un ejecutivo y sus caracteristicas.pptxHabilidades de un ejecutivo y sus caracteristicas.pptx
Habilidades de un ejecutivo y sus caracteristicas.pptx
 
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptx
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptxT.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptx
T.A CONSTRUCCION DEL PUERTO DE CHANCAY.pptx
 
Evaluación y Mejora Continua Guía de Seguimiento y Monitoreo para Cursos de C...
Evaluación y Mejora Continua Guía de Seguimiento y Monitoreo para Cursos de C...Evaluación y Mejora Continua Guía de Seguimiento y Monitoreo para Cursos de C...
Evaluación y Mejora Continua Guía de Seguimiento y Monitoreo para Cursos de C...
 
El MCP abre convocatoria de Monitoreo Estratégico y apoyo técnico
El MCP abre convocatoria de Monitoreo Estratégico y apoyo técnicoEl MCP abre convocatoria de Monitoreo Estratégico y apoyo técnico
El MCP abre convocatoria de Monitoreo Estratégico y apoyo técnico
 
estadistica basica ejercicios y ejemplos basicos
estadistica basica ejercicios y ejemplos basicosestadistica basica ejercicios y ejemplos basicos
estadistica basica ejercicios y ejemplos basicos
 
Derechos de propiedad intelectual lo mejor
Derechos de propiedad intelectual lo mejorDerechos de propiedad intelectual lo mejor
Derechos de propiedad intelectual lo mejor
 
FORMATO ASISTENCIA DE CAPACITACION.doc..
FORMATO ASISTENCIA DE CAPACITACION.doc..FORMATO ASISTENCIA DE CAPACITACION.doc..
FORMATO ASISTENCIA DE CAPACITACION.doc..
 
EL CAMBIO PLANEADO todo acerca de cambio .pptx
EL CAMBIO PLANEADO todo acerca de cambio .pptxEL CAMBIO PLANEADO todo acerca de cambio .pptx
EL CAMBIO PLANEADO todo acerca de cambio .pptx
 
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf
20240418-CambraSabadell-SesInf-AdopTecnologica-CasoPractico.pdf
 
Elección supervisor y comité SST 2020.pptx
Elección supervisor y comité SST 2020.pptxElección supervisor y comité SST 2020.pptx
Elección supervisor y comité SST 2020.pptx
 
Coca cola organigrama de proceso empresariales.pptx
Coca cola organigrama de proceso empresariales.pptxCoca cola organigrama de proceso empresariales.pptx
Coca cola organigrama de proceso empresariales.pptx
 
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdfT.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
T.A- CONTRUCCION DEL PUERTO DE CHANCAY.pdf
 
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIA
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIAPRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIA
PRESENTACIÓN NOM-004-STPS-2020 SEGURIDAD EN MAQUINARIA
 
CADENA DE SUMINISTROS DIAPOSITIVASS.pptx
CADENA DE SUMINISTROS DIAPOSITIVASS.pptxCADENA DE SUMINISTROS DIAPOSITIVASS.pptx
CADENA DE SUMINISTROS DIAPOSITIVASS.pptx
 

Tutorial SSIS Crear paquete ETL sencillo

  • 1. 20-10-2016 UNIVERSIDAD TÉCNICA DEL NORTE CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES INTELIGENCIA DE NEGOCIOS I INTEGRANTES: KAREN ANDRADE EFRAÍN SARANSIG
  • 2. TEMA: Tutorial de SSIS Crear un paquete ETL sencillo. INSTALACIÓN DE BUSINESS INTELLIGENCE PARA SQL SERVER 2014 Ejecutamos el instalador Microsoft Businnes Intelligence. Instamos las nuevas características
  • 3.
  • 4. ANÁLISIS DE LA BASE DE DATOS DE PRUEBA ADVENTUREWORKS Escenarios empresariales de AdventureWorks Cycles AdventureWorks Cycles, es una gran empresa de fabricación multinacional. La empresa fabrica y vende bicicletas de metal y de metal compuesto en los mercados de Norteamérica, Europa y Asia. Si bien su sede central de operaciones se encuentra en Bothell, Washington, con 290 empleados, en toda su base de mercado tiene distribuidos varios equipos regionales de ventas. En el año 2000, AdventureWorks Cycles compró una pequeña planta de fabricación, Importadores Neptuno, situada en México. Importadores Neptuno fabrica varios subcomponentes muy importantes para la línea de productos de AdventureWorks Cycles. Estos subcomponentes se envían a la sede de Bothell para el ensamblado final del producto. En el año 2001, Importadores Neptuno pasó a ser el único fabricante y distribuidor del grupo de productos de bicicletas de paseo. Tras un año fiscal con muy buenos resultados, AdventureWorks Cycles está intentando ampliar su cuota de mercado dirigiendo sus ventas a sus mejores clientes, ampliando la disponibilidad de sus productos en un sitio web externo, y reduciendo los costos de venta a través de costos de producción más bajos. Escenario de ventas y marketing Se detalla acerca de los clientes representados en la base de datos de ejemplo, un esquema de las tablas principales de clientes y ventas, y consultas de ejemplo que muestran relaciones existentes entre las tablas. Tipos de cliente  Individuos: clientes que compran productos de la tienda en línea de AdventureWorks Cycles.  Tiendas: tiendas de venta al por menor o al por mayor que compran a los representantes de ventas de AdventureWorks Cycles productos para la reventa.
  • 5. ESCENARIOS: manufactura, ventas, compras, gestión de producto, gestión de contactos y recursos humanos. Tipo de cliente Tablas principales Individual (I) Person.Contact Sales.Customer Sales.Individual Sales.SalesOrderHeader Sales.SalesOrderDetail Store (S) Person.Contact Sales.Customer Sales.Store Sales.StoreContact Sales.SalesOrderHeader Sales.SalesOrderDetail INFORMACIÓN GENERAL SOBRE EL PRODUCTO AdventureWorks Cycles tiene las cuatro líneas de producto siguientes:  Bicicletas  Componentes de bicicleta  Equipos para bicicleta  Accesorios para bicicleta Tablas de producto La tabla siguiente contiene una breve descripción de los datos que se almacenan en las tablas relacionadas con el producto. Tabla Descripción Production.BillOfMaterials Lista de todos los componentes que se utilizan para fabricar bicicletas y subconjuntos de bicicleta. Production.Culture Idiomas utilizados en las descripciones traducidas del producto.
  • 6. Production.Location Lista de las ubicaciones de Adventure Works Cycles en las que los productos y las piezas se almacenan como inventario. Production.Product Información sobre cada producto vendido. Production.ProductCategory Clasificación más general de los productos. Por ejemplo, bicicleta o accesorio. Production.ProductCostHistory Costo de los productos a lo largo del tiempo. Production.ProductDescription Descripción completa de los productos en distintos idiomas. Production.ProductInventory Nivel de inventario de los productos por ubicación. Production.ProductListPriceHist ory Precio listado de los productos a lo largo del tiempo. Production.ProductModel Modelos del producto asociados a productos. ProductModelProductDescriptio nCulture Referencia cruzada entre modelos de producto, descripciones de producto y los idiomas a los que se ha traducido la descripción. Production.ProductPhoto Imágenes de los productos vendidos. Production.ProductReview Nota de comentario de los clientes sobre los productos de Adventure Works Cycles. Production.ProductSubcategory Subcategorías de las categorías de los productos. Por ejemplo, Mountain, Road y Touring son subcategorías de la categoría Bike. INFORMACIÓN GENERAL DEL PROVEEDOR Y COMPRAS El departamento de compras adquiere las materias primas y las piezas que se utilizan para fabricar las bicicletas. También adquiere productos para la reventa, como equipamiento para bicicletas y complementos, como botellas para el agua y bombas de aire. Tabla Descripción Person.Address Información sobre la dirección postal de todos los clientes.
  • 7. Person.Contact Nombre de los empleados del proveedor a quienes los agentes de compras Adventure Works Cycles solicitan productos. Production.ProductVendor Correlaciona los proveedores con los productos que suministran. Un mismo producto puede ser suministrado por más de un proveedor, y un proveedor puede suministrar más de un producto. Purchasing.PurchaseOrderDetail Detalles del pedido de compra, como los productos pedidos, la cantidad y el precio unitario. Purchasing.PurchaseOrderHeader Información de resumen del pedido de compra, como el importe total debido, la fecha del pedido y el estado del pedido. Purchasing.ShipMethod Tabla de búsqueda que se utiliza para mantener métodos estándar de envío de productos. Purchasing.Vendor Detalles sobre los proveedores, como el nombre del proveedor y el número de cuenta. Purchasing.VendorAddress Vincula los clientes con la información de direcciones en la tablaAddress. Purchasing.VendorContact Información sobre la dirección postal de todos los clientes. INFORMACIÓN GENERAL DE FABRICACIÓN  Procesos de fabricación:  Lista de materiales  Pedidos de trabajo  Ubicaciones  Instrucciones de fabricación y ensamblado de productos por centro de trabajo.  Inventario de productos: ubicación física de un producto en el almacén o el área de fabricación, y cantidad disponible en dicha área.  Documentación de ingeniería: especificaciones técnicas y documentación de mantenimiento para bicicletas o componentes de las bicicletas.
  • 8. La tabla siguiente contiene una breve descripción de los datos que se almacenan en las tablas de fabricación. Tabla Descripción Production.BillOfMaterials Lista de todos los componentes que se utilizan para fabricar bicicletas y subconjuntos de bicicleta. Production.Document Especificaciones de ingeniería y otros documentos técnicos. Production.Illustration Ilustraciones de fabricación de las bicicletas. Production.Location Lista de áreas de inventario y fabricación de los productos y las piezas se almacenan como inventario o como finalizados. Production.Product Información sobre cada producto vendido o utilizado para fabricar bicicletas y componentes de bicicleta de Adventure Works Cycles. Production.ProductInventory Nivel de inventario de los productos por ubicación. Production.ProductModel Modelos del producto asociados a productos. Por ejemplo, Mountain-100 o LL Touring Frame. Production.ScrapReason Lista de motivos comunes sobre el porqué del rechazo de las bicicletas o piezas de bicicleta durante el proceso de fabricación. Production.WorkOrder Define los productos y la cantidad que debe fabricarse para satisfacer las ventas actuales y las previstas. Production.WorkOrderRouting Detalles de cada pedido de trabajo.
  • 9. Lecciones de este tutorial Lección 1: Crear un proyecto y un paquete básico con SSIS En esta lección, creará un paquete ETL sencillo que extrae datos de un único archivo plano, transforma los datos mediante transformaciones de búsqueda y, por último, carga los resultados en un destino de tabla de hechos.
  • 10. PROCEDIMIENTO Tareas de la lección Esta lección contiene las siguientes tareas: Paso 1: Crear un nuevo proyecto de Integration Services En este tutorial se usa el Asistente para importación y exportación de SQL Server para crear un paquete básico ejecutando el asistente en Business Intelligence Development Studio. El asistente se inicia desde un proyecto de Integration Services. En esta tarea creará el proyecto de Integration Services. Para crear un proyecto de Integration Services 1. En el menú Inicio, elija Todos los programas, Microsoft SQL Server y, a continuación, haga clic en SQL Server Data Tools. 2. En el menú Archivo, seleccione Nuevo y haga clic en Proyecto para crear un proyecto de Integration Services. 3. En el cuadro de diálogo Nuevo proyecto, expanda el nodo Business Intelligence bajo Plantillas instaladas y seleccione Proyecto de Integration Services en el panel Plantillas.
  • 11. 4. En el cuadro Nombre, cambie el nombre predeterminado por SSIS Tutorial. Opcionalmente, desactive la casilla Crear directorio para la solución. 5. Acepte la ubicación predeterminada o haga clic en Examinar para desplazarse a la carpeta que desee utilizar. En el cuadro de diálogo Ubicación del proyecto, haga clic en la carpeta y, a continuación, haga clic en Seleccionar carpeta. 6. Haga clic en Aceptar. De forma predeterminada, se creará un paquete vacío, denominado Package.dtsx, que se agregará al proyecto bajo Paquetes SSIS. 7. En la barra de herramientas del Explorador de soluciones, haga clic con el botón secundario en Package.dtsx, haga clic en Cambiar nombrey cambie el nombre del paquete predeterminado por Lesson 1.dtsx
  • 12. Paso 2: agregar y configurar un administrador de conexiones de archivos planos Para agregar un administrador de conexiones de archivos planos al paquete SSIS 1. Haga clic con el botón secundario en cualquier punto del área Administradores de conexión y luego haga clic en Nueva conexión de archivos planos. 2. En el cuadro de diálogo Editor del administrador de conexiones de archivos planos, en Nombre del administrador de conexiones, escriba Sample Flat File Source Data.
  • 13. 3. Haga clic en Examinar. 4. En el cuadro de diálogo Abrir, busque el archivo SampleCurrencyData.txt en el equipo. 5. Desmarque "Nombres de columna" de la primera fila de datos
  • 14. Para establecer las propiedades dependientes de la Configuración regional 1. En el cuadro de diálogo Editor del administrador de conexiones de archivos planos, haga clic en General. 2. Establezca Configuración regional en Inglés (Estados Unidos) y Página de códigos en 1252. Para cambiar el nombre de las columnas del administrador de conexiones de archivos planos 1. En el cuadro de diálogo Editor del administrador de conexiones de archivos planos, haga clic en Avanzadas. 2. En el panel de propiedades, realice los cambios siguientes:  Cambie la propiedad de nombre Columna 0 por AverageRate.  Cambie la propiedad de nombre Columna 1 por CurrencyID.  Cambie la propiedad de nombre Columna 2 por CurrencyDate.  Cambie la propiedad de nombre Columna 3 por EndOfDayRate. Para ver el artículo en inglés, active la casilla Inglés. También puede ver el texto en inglés en una ventana emergente si pasa el puntero del mouse por el texto. Traducción Inglés
  • 15. Paso 2: agregar y configurar un administrador de conexiones de archivos planos SQL Server 2012 Otras versiones En esta tarea, agregará un administrador de conexiones de archivos planos al paquete que acaba de crear. Un administrador de conexiones de archivos planos permite a un paquete extraer datos de un archivo plano. Mediante el administrador de conexiones de archivos planos puede especificar el nombre y la ubicación del archivo, la configuración regional y la página de códigos, y el formato del archivo, incluyendo los delimitadores de columna, que deben aplicarse cuando el paquete extrae datos del archivo plano. Además, puede especificar manualmente el tipo de datos para columnas individuales, o utilizar el cuadro de diálogo Sugerir tipos de columna para asignar automáticamente las columnas de datos extraídos a los tipos de datos de Integration Services. Debe crear un administrador de conexiones de archivos planos para cada formato de archivo que utilice. En este tutorial se extraen datos de varios archivos planos que tienen exactamente el mismo formato de datos, por lo que tendrá que agregar y configurar solamente un administrador de conexiones de archivos planos para el paquete. En este tutorial, configurará las propiedades siguientes en el administrador de conexiones de archivos planos:  Nombres de columna: El archivo plano no tiene nombres de columna, por lo que el administrador de conexiones de archivos planos crea nombres de columna predeterminados. Estos nombres predeterminados no son útiles para identificar qué representa cada columna. Para que estos nombres predeterminados sean más útiles, debe cambiar los nombres predeterminados por nombres que coincidan con la tabla de hechos en la que deben cargarse los datos del archivo plano.  Asignaciones de datos: Las asignaciones de tipo de datos que especifique para el administrador de conexiones de archivos planos se usarán en todos los componentes de origen de datos de archivo plano que hagan referencia al administrador de conexiones. Puede asignar los tipos de datos manualmente utilizando el administrador de conexiones de archivos planos o utilizar el cuadro de diálogo Sugerir tipos de columna. En este tutorial, verá las asignaciones sugeridas en el cuadro de diálogo Sugerir tipos de columna y luego realizará manualmente las asignaciones necesarias en el cuadro de diálogo Editor del administrador de conexiones de archivos planos. El administrador de conexiones de archivos planos proporciona información de configuración regional acerca del archivo de datos. Si no tiene configurado el equipo para usar la opción de configuración regional Inglés (Estados Unidos), debe establecer propiedades adicionales en el cuadro de diálogo Editor del administrador de conexiones de archivos planos.
  • 16. Para agregar un administrador de conexiones de archivos planos al paquete SSIS. 1. Haga clic con el botón secundario en cualquier punto del área Administradores de conexión y luego haga clic en Nueva conexión de archivos planos. 2. En el cuadro de diálogo Editor del administrador de conexiones de archivos planos, en Nombre del administrador de conexiones, escriba Sample Flat File Source Data. 3. Haga clic en Examinar. 4. En el cuadro de diálogo Abrir, busque el archivo SampleCurrencyData.txt en el equipo. Los datos de ejemplo se incluyen con los paquetes de lecciones de SSIS. Para descargar los datos de ejemplo y los paquetes de lecciones, haga lo siguiente. a. Navegue en los ejemplos del producto Integration Services b. Haga clic en la pestaña DOWNLOADS. c. Haga clic en el archivo SQL2012.Integration_Services.Create_Simple_ETL_Tutorial.Sam ple.zip. 5. Desmarque "Nombres de columna" de la primera fila de datos. Para establecer las propiedades dependientes de la configuración regional 1. En el cuadro de diálogo Editor del administrador de conexiones de archivos planos, haga clic en General. 2. Establezca Configuración regional en Inglés (Estados Unidos) y Página de códigos en 1252. Para cambiar el nombre de las columnas del administrador de conexiones de archivos planos 1. En el cuadro de diálogo Editor del administrador de conexiones de archivos planos, haga clic en Avanzadas. 2. En el panel de propiedades, realice los cambios siguientes:  Cambie la propiedad de nombre Columna 0 por AverageRate.  Cambie la propiedad de nombre Columna 1 por CurrencyID.  Cambie la propiedad de nombre Columna 2 por CurrencyDate.  Cambie la propiedad de nombre Columna 3 por EndOfDayRate.
  • 17. Para volver a asignar tipos de datos de columna 1. En el cuadro de diálogo Editor del administrador de conexiones de archivos planos, haga clic en Sugerir tipos. Integration Services sugiere automáticamente los tipos de datos más adecuados en función de las 200 primeras filas de datos. También puede cambiar estas opciones de sugerencia para obtener más o menos datos de ejemplo, especificar el tipo de datos predeterminado para datos enteros o booleanos, o agregar espacios como relleno para las columnas de cadena. De momento, no cambie las opciones del cuadro de diálogo Sugerir tipos de columna y haga clic en Aceptar para que Integration Services sugiera los tipos de datos para las columnas. Esto le devuelve al panel Avanzadas del cuadro de diálogo Editor del administrador de conexiones de archivos planos, donde puede ver los tipos de datos de columna sugeridos por Integration Services. (Si hace clic en Cancelar, no se realizan sugerencias en los metadatos de columna y se usa el tipo de datos predeterminado de cadena (DT_STR).)
  • 18. Paso 3: agregar y configurar un administrador de conexiones OLE DB Una vez que haya agregado un administrador de conexiones de archivos planos al origen de datos, la siguiente tarea consiste en agregar un administrador de conexiones OLE DB para conectarse al destino. Un administrador de conexiones OLE DB permite a un paquete extraer datos de un origen de datos compatible con OLE DB o cargar datos en éste. Mediante el administrador de conexiones OLE DB, puede especificar el servidor, el método de autenticación y la base de datos predeterminada de la conexión. En esta lección, creará un administrador de conexiones OLE DB que usa la Autenticación de Windows para conectarse a la instancia local deAdventureWorksDB2012. Otros componentes que creará más adelante en este tutorial, como la transformación Búsqueda y el destino de OLE DB, también harán referencia al administrador de conexiones OLE DB que cree.
  • 19. Para agregar y configurar un administrador de conexiones de OLE DB para el paquete SSIS 1. Haga clic con el botón secundario en cualquier punto del área Administradores de conexión y luego haga clic en Nueva conexión de OLE DB. 2. En el cuadro de diálogo Configurar el administrador de conexiones OLE DB, haga clic en Nueva. 3. En Nombre de servidor, escriba localhost. Cuando se especifica localhost como el nombre del servidor, el administración de conexión se conecta a la instancia predeterminada de SQL Server en el equipo local. Para usar una instancia remota de SQL Server, sustituya localhost con el nombre del servidor al que desea conectarse. 4. En el grupo Conexión con el servidor, compruebe que la opción Usar autenticación de Windows esté seleccionada. 5. En el grupo Establecer conexión con una base de datos, en el cuadro Seleccione o escriba el nombre de la base de datos, escriba o seleccioneAdventureWorksDW2012.
  • 20. 6. Haga clic en Probar conexión para comprobar si los parámetros de conexión que ha especificado son válidos. 7. Haga clic en Aceptar. 8. Haga clic en Aceptar. 9. En el panel Conexiones de datos del cuadro de diálogo Configurar el administrador de conexiones OLE DB, compruebe que la opciónlocalhost.AdventureWorksDW2012 está seleccionada. 10.Haga clic en Aceptar.
  • 21. Paso 4: agregar una tarea de flujo de datos al paquete Una vez que ha creado los administradores de conexión para los datos de origen y de destino, la siguiente tarea consiste en agregar una tarea de flujo de datos al paquete. La tarea de flujo de datos encapsula el motor de flujo de datos que mueve datos entre orígenes y destinos, y proporciona la funcionalidad para transformar, limpiar y modificar los datos a medida que se mueven. En la tarea de flujo de datos se lleva a cabo la mayor parte del proceso de extracción, transformación y carga (ETL). Para agregar una tarea de flujo de datos 1. Haga clic en la pestaña Flujo de control. 2. En el Cuadro de herramientas de SSIS, expanda Favoritos y arrastre una Tarea Flujo de datos a la superficiede diseño de la pestaña Flujo de control. 3. En la superficie de diseño Flujo de control, haga clic con el botón secundario en la Tarea de flujo de datos que acaba de agregar, haga clic enCambiar nombre y cambie el nombre por Extract Sample Currency Data. Es aconsejable proporcionar nombres únicos a todos los componentes que se agregan a una superficie de diseño. Para facilitar su uso y mantenimiento, los nombres deben describir la función que lleva a cabo cada componente. Seguir estas directrices de nomenclatura permite que los paquetes de Integration Services sean autodocumentados. Los paquetes también pueden documentarse mediante anotaciones.
  • 22. 4. Haga clic con el botón secundario en la tarea Flujo de datos, haga clic en Propiedades y, en la ventana Propiedades, compruebe que la propiedad LocaleID esté establecida en Inglés (Estados Unidos). Paso 5: agregar y configurar el origen de archivo plano En esta tarea, agregará un origen de archivo plano al paquete y configurará dicho origen. Un origen de archivo plano es un componente de flujo de datos que utiliza metadatos definidos por un administrador de conexiones de archivo plano para especificar el formato y la estructura de los datos que deben extraerse del archivo plano mediante un proceso de transformación. El origen de archivo plano puede configurarse para extraer datos de un único archivo plano utilizando la definición de formato de archivo proporcionada por el administrador de conexiones de archivo plano. Para este tutorial, configurará el origen de archivo plano para utilizar el administrador de conexiones Sample Flat File Source Data creado con anterioridad.
  • 23. Para agregar un componente de origen de archivo plano 1. Abra el diseñador Flujo de datos haciendo doble clic en la tarea de flujo de datos Extract Sample Currency Data o haciendo clic en la pestaña Flujo de datos. 2. En el cuadro de herramientas de SSIS, expanda Otros Orígenes y, a continuación, arrastre Origen de archivo plano a la superficie de diseño de la pestaña Flujo de datos. 3. En la superficie de diseño Flujo de datos, haga clic con el botón secundario en el Origen de archivo plano que acaba de agregar, haga clic enCambiar nombre y cambie el nombre por Extract Sample Currency Data. 4. Haga doble clic en el origen del archivo plano para abrir el cuadro de diálogo Editor de origen de archivos planos. 5. En el cuadro Administrador de conexiones de archivos planos, seleccione Sample Flat File Source Data. 6. Haga clic en Columnas y compruebe que los nombres de las columnas son correctos.
  • 24. 7. Haga clic en Aceptar. 8. Haga clic con el botón secundario en el origen del archivo plano y haga clic en Propiedades. 9. En la ventana Propiedades, compruebe que la propiedad LocaleID esté establecida en Inglés (Estados Unidos). Paso 6: agregar y configurar transformaciones de búsqueda Tras configurar el origen de archivo plano para extraer datos del archivo de origen, la siguiente tarea consiste en definir las transformaciones de búsqueda necesarias para obtener los valores para las claves CurrencyKey y DateKey. Una transformación de búsqueda realiza una búsqueda combinando datos de la columna de entrada especificada en una columna de un conjunto de datos de referencia. El conjunto de datos de referencia puede ser una tabla o una vista existente, una tabla nueva o el resultado de una instrucción SQL. En este tutorial, la transformación de búsqueda utiliza un administrador de conexiones OLE DB para conectar con la base de datos que contiene los datos que constituyen el origen del conjunto de datos de referencia.
  • 25. Nota También puede configurar la transformación de Búsqueda para conectar con una caché que contiene el conjunto de datos de referencia. Para este tutorial, agregará y configurará los dos componentes de la transformación de Búsqueda en el paquete:  Una transformación para realizar una búsqueda de valores de la columna CurrencyKey de la tabla de dimensiones DimCurrency basada en la coincidencia de valores de la columna CurrencyID del archivo plano.  Una transformación para realizar una búsqueda de valores de la columna DateKey de la tabla de dimensiones DimDate basada en la coincidencia de valores de la columna CurrencyDate del archivo plano. En ambos casos, la transformación de búsqueda usará el administrador de conexiones OLE DB creado anteriormente. Para agregar y configurar la transformación Lookup Currency Key 1. En el cuadro de herramientas de SSIS, expanda Comunes y arrastre Búsqueda a la superficie de diseño de la pestaña Flujo de datos.Coloque Búsqueda directamente bajo el origen Extract Sample Currency Data. 2. Haga clic en el origen de archivo plano Extract Sample Currency Data y arrastre la flecha verde a la transformación de Búsqueda que acaba de agregar para conectar los dos componentes. 3. En la superficie de diseño Flujo de datos, haga clic en Búsqueda en la transformación Búsqueda y cambie el nombre por Lookup Currency Key.
  • 26. 4. Haga doble clic en la transformación Lookup Currency Key para mostrar el Editor de transformación Búsqueda. 5. En la página General, realice las selecciones siguientes: a. Seleccione Caché completa. b. En el área Tipo de conexión, seleccione Administrador de conexiones OLE DB. 6. En la página Conexión, realice las selecciones siguientes: a. En el cuadro de diálogo Administrador de conexiones OLE DB, asegúrese de que se muestra localhost.AdventureWorksDW2012. b. Seleccione Usar los resultados de una consulta SQL y, a continuación, escriba o copie la instrucción SQL siguiente: select * from (select * from [dbo].[DimCurrency]) as refTable where [refTable].[CurrencyAlternateKey] = 'ARS' OR [refTable].[CurrencyAlternateKey] = 'AUD' OR [refTable].[CurrencyAlternateKey] = 'BRL' OR [refTable].[CurrencyAlternateKey] = 'CAD' OR [refTable].[CurrencyAlternateKey] = 'CNY' OR [refTable].[CurrencyAlternateKey] = 'DEM' OR [refTable].[CurrencyAlternateKey] = 'EUR' OR [refTable].[CurrencyAlternateKey] = 'FRF' OR [refTable].[CurrencyAlternateKey] = 'GBP' OR [refTable].[CurrencyAlternateKey] = 'JPY' OR [refTable].[CurrencyAlternateKey] = 'MXN' OR [refTable].[CurrencyAlternateKey] = 'SAR'
  • 27. 7. En la página Columnas, realice las selecciones siguientes: a. En el panel Columnas de entrada disponibles, arrastre CurrencyID al panel Columnas de búsqueda disponibles y suéltelo enCurrencyAlternateKey. b. En la lista Columnas de búsqueda disponibles, active la casilla situada a la izquierda de CurrencyKey. 8. Haga clic en Aceptar para volver a la superficie de diseño Flujo de datos. 9. Haga clic con el botón secundario en la transformación Lookup Currency Key y haga clic en Propiedades. 10.En la ventana Propiedades, compruebe que la propiedad LocaleID esté establecida en Inglés (Estados Unidos) y la propiedadDefaultCodePage esté establecida en 1252. Para agregar y configurar la transformación Lookup Date Key 1. En el cuadro de herramientas de SSIS, arrastre Búsqueda a la superficie de diseño Flujo de datos. Coloque Búsqueda justo debajo de la transformación Lookup Currency Key. 2. Haga clic en la transformación Lookup Currency Key y arrastre la flecha verde hasta la transformación Búsqueda que acaba de agregar para conectar los dos componentes.
  • 28. 3. En el cuadro de diálogo Selección de entrada y salida, en el cuadro de lista Salida, haga clic en Salida de entradas coincidentes de búsqueda y, a continuación, haga clic en Aceptar. 4. En la superficie de diseño Flujo de datos, haga clic en Búsqueda en la transformación Búsqueda recién agregada y cambie el nombre por Lookup Date Key. 5. Haga doble clic en la transformación Lookup Date Key. 6. En la página General, seleccione Caché parcial. 7. En la página Conexión, realice las selecciones siguientes: a. En el cuadro de diálogo Administrador de conexionesOLE DB, asegúrese de que se muestra localhost.AdventureWorksDW2012. b. En el cuadro Usar una tabla o vista, escriba o seleccione [dbo].[DimDate].
  • 29. 8. En la página Columnas, realice las selecciones siguientes: a. En el panel Columnas de entrada disponibles, arrastre CurrencyDate al panel Columnas de búsqueda disponibles y suéltelo enFullDateAlternateKey. b. En la lista Columnas de búsqueda disponibles, active la casilla situada a la izquierda de DateKey.
  • 30. 9. En la página Avanzadas, revise las opciones de almacenamiento en memoria caché. 10.Haga clic en Aceptar para volver a la superficie de diseño Flujo de datos. 11.Haga clic con el botón secundario en la transformación Lookup Date Key y haga clic en Propiedades. 12.En la ventana Propiedades, compruebe que la propiedad LocaleID esté establecida en Inglés (Estados Unidos) y la propiedadDefaultCodePage esté establecida en 1252. Paso 7: agregar y configurar el destino de OLE DB Ahora, el paquete puede extraer datos de un origen de archivo plano y transformar dichos datos en un formato compatible con el destino. La tarea siguiente consiste realmente en cargar los datos transformados en el destino. Para cargar los datos, debe agregar un destino de OLE DB al flujo de datos. El destino de OLE DB puede utilizar una tabla de bases de datos, una vista o un comando SQL para cargar datos en distintas bases de datos compatibles con OLE DB. En este procedimiento, se agrega y configura un destino de OLE DB para utilizar el administrador de conexiones de OLE DB creado con anterioridad. Para agregar y configurar un destino de OLE DB de ejemplo: 1. En el Cuadro de herramientas de SSIS, expanda Otros destinos y arrastre Destino de OLE DB a la superficie de diseño de la pestaña Flujo de datos. Coloque el destino de OLE DB directamente debajo de la transformación Lookup Date Key. 2. Haga clic en la transformación Lookup Date Key y arrastre la flecha verde hasta el Destino de OLE DB que acaba de agregar para conectar los dos componentes entre sí. 3. En el cuadro de diálogo Selección de entrada y salida, en el cuadro de lista Salida, haga clic en Salida de entradas coincidentes de búsqueda y, a continuación, haga clic en Aceptar. 4. En la superficie de diseño Flujo de datos, haga clic en Destino de OLE DB en el componente Destino de OLE DB recién agregado y cambie el nombre por Sample OLE DB Destination. 5. Haga doble clic en Sample OLE DB Destination. 6. En el cuadro de diálogo Editor de destino de OLE DB, asegúrese de que localhost.AdventureWorksDW2012 está seleccionado en el cuadroAdministrador de conexiones OLE DB. 7. En el cuadro Nombre de la tabla o la vista, escriba o seleccione [dbo].[FactCurrencyRate].
  • 31. 8. Haga clic en el botón Nuevo para crear una nueva tabla. Cambie el nombre de la tabla en el script a NewFactCurrencyRate. Haga clic enAceptar. 9. Al hacer clic en Aceptar, se cerrará el cuadro de diálogo y el Nombre de la tabla o la vista cambiará automáticamente aNewFactCurrencyRate. 10.Haga clic en Asignaciones. 11.Compruebe que las columnas de entrada AverageRate, CurrencyKey, EndOfDayRate y DateKey están correctamente asignadas a las columnas de destino. Si hay columnas con el mismo nombre asignadas, la asignación es correcta.
  • 32. 12.Haga clic en Aceptar. 13.Haga clic con el botón secundario en Sample OLE DB Destination y haga clic en Propiedades. 14.En la ventana Propiedades, compruebe que la propiedad LocaleID está establecida en Inglés (Estados Unidos) y la propiedadDefaultCodePage está establecida en 1252. Paso 8: facilitar la comprensión del paquete de la lección 1 Ahora que ha terminado la configuración del paquete de la lección 1, es una buena idea ordenar el diseño del paquete. Si las formas de los diseños de los flujos de datos y de control tienen tamaños aleatorios o no están alineadas o agrupadas, la funcionalidad del paquete puede resultar más difícil de comprender. SQL Server Data Tools proporciona herramientas que permiten aplicar formato al diseño del paquete de forma rápida y sencilla. Las características de formato incluyen la capacidad de hacer que las formas tengan el mismo tamaño, de alinearlas y de manipular el espaciado horizontal y vertical entre las formas. Otra forma de mejorar la comprensión de la funcionalidad de un paquete es agregar anotaciones que la describan. En esta tarea usará las características de formato de SQL Server Data Tools para mejorar el diseño del flujo de datos y agregará una anotación al flujo de datos. Para aplicar formato al diseño del flujo de datos 1. Si el paquete de la lección 1 no está abierto todavía, haga doble clic en Lesson 1.dtsx en el Explorador de soluciones. 2. Haga clic en la pestaña Flujo de datos. 3. Coloque el cursor en la parte superior derecha de la transformación Extract Sample Currency, haga clic y, a continuación, arrastre el cursor por todos los componentes de flujo de datos. 4. En el menú Formato, seleccione Igualar tamaño y, a continuación, haga clic en Ambos. 5. Con los objetos del flujo de datos seleccionados, en el menú Formato, seleccione Alinear y haga clic en Lados izquierdos. Para agregar una anotación al flujo de datos 1. Haga clic con el botón secundario en cualquier parte de la superficie de diseño del flujo de datos y haga clic en Agregar anotación. 2. Escriba o pegue el texto siguiente en el cuadro de anotación. El flujo de datos extrae datos de un archivo, busca valores en la columna CurrencyKey de la tabla DimCurrency y la columna DateKey de la tabla DimDate, y escribe los datos en la tabla NewFactCurrencyRate. Para ajustar el texto en el cuadro de anotación, coloque el cursor donde desee empezar una nueva línea y presione la tecla Intro. Si no agrega texto al cuadro de anotación, desaparecerá al hacer clic fuera del cuadro.
  • 33. Paso 9: probar el paquete del tutorial de la lección 1 En esta lección, ha llevado a cabo las tareas siguientes:  Ha creado un proyecto de SSIS.  Ha configurado los administradores de conexión que el paquete necesita para conectarse a los datos de origen y de destino.  Ha agregado un flujo de datos que toma los datos de un origen de archivo plano, realiza las transformaciones de búsqueda necesarias en los datos y configura los datos para el destino. El paquete ya se ha completado. Ha llegado el momento de probarlo. Comprobar el diseño del paquete Antes de probar el paquete, debe comprobar que los flujos de datos y de control de la lección 1 contienen los objetos mostrados en los diagramas siguientes. Flujo de control Flujo de datos Para ejecutar el paquete de tutorial de la lección 1 1. En el menú Depurar, haga clic en Iniciar depuración. El paquete se ejecutará, dando lugar a la correcta inclusión de 1097 filas en la tabla de hechos FactCurrency de AdventureWorksDW2012.
  • 34. 2. Una vez que se haya completado la ejecución del paquete, en el menú Depurar, haga clic en Detener depuración.
  • 35. Lección 2: Agregar bucles con SSIS En esta lección, expandirá el paquete que ha creado en la lección 1 para beneficiarse de las nuevas características de bucles para extraer varios archivos planos en un único proceso de flujo de datos.
  • 36. En la Lección 1: Crear el proyecto y el paquete básico, creó un paquete que extraía datos de un solo origen de archivo plano, transformó los datos mediante transformaciones de búsqueda y, por último, cargó los datos en la tabla de hechos FactCurrency de la base de datos de ejemploAdventureWorksDW2012. No obstante, no es muy habitual utilizar un solo archivo plano para el proceso de extracción, transformación y carga (ETL). Un proceso ETL típico utilizaría datos extraídos de varios orígenes de archivos planos. Para extraer datos de varios orígenes, se requiere un flujo de control iterativo. Una de las características más esperadas de Microsoft Integration Services es la capacidad de agregar fácilmente una iteración o un bucle a los paquetes. Integration Services proporciona dos tipos de contenedores para crear bucles en los paquetes: el contenedor de bucles Foreach y el contenedor de bucles For. El contenedor de bucles Foreach usa un enumerador para crear el bucle, mientras que el contenedor de bucles For suele emplear una expresión variable. En esta lección se utiliza el contenedor de bucles Foreach. El contenedor de bucles Foreach permite que un paquete repita el flujo de control para cada miembro de un enumerador determinado. Con el contenedor de bucles Foreach puede enumerar lo siguiente:  Filas de conjuntos de registros ADO  Información del esquema de ADO .Net  Estructuras de archivos y directorios  Variables del sistema, de paquete y de usuario  Objetos enumerables contenidos en una variable  Elementos de una colección  Nodos de una expresión del lenguaje de rutas XML (XPath)  SQL Server Objetos de administración (SMO) En esta lección, modificará el paquete ETL simple creado en la lección 1 para beneficiarse del contenedor de bucles Foreach. También establecerá variables de paquete definidas por el usuario para que el paquete del tutorial pueda iterarse en todos los archivos planos de la carpeta. Si no ha finalizado la lección anterior, también puede copiar el paquete de la lección 1 finalizada incluido en el tutorial. En esta lección, no modificará el flujo de datos, solamente modificará el flujo de control.
  • 37. Tareas de la lección Esta lección contiene las siguientes tareas: Paso 1: copiar el paquete de la lección 1 En esta tarea, creará una copia del paquete que ha creado en la lección 1, denominado Lesson 1.dtsx. Si no ha completado la lección 1, puede agregar al proyecto el paquete completado de la lección 1 que se incluye con el tutorial y, después, copiar dicho paquete. Usará esta nueva copia en toda la lección 2. Para crear el paquete de la lección 2: 1. Si SQL Server Data Tools no está abierto, haga clic en Inicio, seleccione Todos los programas, Microsoft SQL Server 2012 y, después, haga clic en SQL Server Data Tools. 2. En el menú Archivo, haga clic en Abrir y en Proyecto o solución, haga clic en la carpeta SSIS Tutorial, haga clic en Abrir y, después, haga doble clic en SSIS Tutorial.sln. 3. En el Explorador de soluciones, haga clic con el botón derecho en Lesson 1.dtsx y luego haga clic en Copiar. 4. En el Explorador de soluciones, haga clic con el botón derecho en Paquetes SSIS y, después, haga clic en Pegar. De forma predeterminada, el paquete copiado se denominará Lesson 2.dtsx. 5. En el Explorador de soluciones, haga doble clic en Lesson 2.dtsx para abrir el paquete 6. Haga clic con el botón derecho en cualquier parte del fondo de la superficie de diseño de Flujo de control y haga clic en Propiedades. 7. En la ventana Propiedades, actualice la propiedad Nombre a Lesson 2.
  • 38. 8. Haga clic en el cuadro de la propiedad Id., haga clic en la flecha desplegable y luego haga clic en . Para agregar el paquete de la lección 1 completada 1. Abra SQL Server Data Tools y el proyecto SSIS Tutorial. 2. En el Explorador de soluciones, haga clic con el botón derecho en Paquetes SSIS y haga clic en Agregar paquete existente. 3. En el cuadro de diálogo Agregar copia de paquete existente, en Ubicación del paquete, seleccione Sistema de archivos. 4. Haga clic en el botón Examinar (…), vaya a Lesson 1.dtsx en el equipo y, después, haga clic en Abrir. Para descargar todos los paquetes de lecciones de este tutorial, haga lo siguiente. a. Navegue a los ejemplos del producto Integration Services b. Haga clic en la pestaña DOWNLOADS . c. Haga clic en el archivo SQL2012.Integration_Services.Create_Simple_ETL_Tutorial.Sam ple.zip. 5. Copie y pegue el paquete de la lección 1 tal como se describe en los pasos 3 a 8 del procedimiento anterior. Paso 2: agregar y configurar el contenedor de bucles Foreach En esta tarea, agregará la capacidad de buscar en una carpeta de archivos planos y aplicará la misma transformación de flujo de datos utilizada en la lección 1 a cada uno de dichos archivos planos. Para ello, agregará y configurará un contenedor de bucles Foreach para el flujo de control. El contenedor de bucles Foreach que agregue debe poder conectarse a cada uno de los archivos planos de la carpeta. Puesto que todos los archivos de la carpeta tienen el mismo formato, el contenedor de bucles Foreach puede utilizar el mismo administrador de conexiones de archivos planos para conectarse a
  • 39. cada uno de estos archivos. El administrador de conexiones de archivos planos que el contenedor utilizará es el mismo administrador de conexiones de archivos planos que creó en la lección 1. Actualmente, el administrador de conexiones de archivos planos de la lección 1 se conecta a un único archivo plano específico. Para conectarse de forma iterativa a cada uno de los archivos planos de la carpeta, deberá configurar el contenedor de bucles Foreach y el administrador de conexiones de archivos planos de este modo:  Contenedor de bucles Foreach: Asignará el valor enumerado del contenedor a una variable de paquete definida por el usuario. El contenedor usará esta variable definida por el usuario para modificar de forma dinámica la propiedad ConnectionString del administrador de conexiones de archivos planos y conectar de forma iterativa cada uno de los archivos planos de la carpeta.  Administrador de conexiones de archivos planos: Modificará el administrador de conexiones creado en la lección 1 mediante una variable definida por el usuario para rellenar la propiedad ConnectionString del administrador de conexiones. En los procedimientos de esta tarea se muestra cómo crear y modificar el contenedor de bucles Foreach para utilizar una variable de paquete definida por el usuario y agregar la tarea de flujo de datos al bucle. Aprenderá a modificar el administrador de conexiones de archivos planos para utilizar una variable definida por el usuario en la siguiente tarea. Una vez realizadas estas modificaciones en el paquete, cuando éste se ejecute, el contenedor de bucles Foreach se iterará en la colección de archivos de la carpeta Datos de ejemplo. Cada vez que se encuentre un archivo que coincida con los criterios, el contenedor de bucles Foreach rellenará la variable definida por el usuario con el nombre de archivo, asignará la variable definida por el usuario a la propiedad ConnectionString del administrador de conexiones de archivos planos Sample Currency Data y, después, ejecutará el flujo de datos en ese archivo. Por consiguiente, en cada iteración del bucle Foreach la tarea de flujo de datos utilizará un archivo plano distinto. Nota Puesto que MicrosoftIntegration Services separa el flujo de control del flujo de datos, los bucles que agregue al flujo de control no precisarán ninguna modificación en el flujo de datos. Por consiguiente, no es necesario modificar el flujo de datos creado en la lección 1. Para agregar un contenedor de bucles Foreach 1. En SQL Server Data Tools, haga clic en la pestaña Flujo de control. 2. En el Cuadro de herramientas de SSIS, expanda Contenedores y arrastre un Contenedor de bucles Foreach a la superficie de diseño de la pestaña Flujo de control.
  • 40. 3. Haga clic con el botón derecho en el Contenedor de bucles Foreach que acaba de agregar y seleccione Editar. 4. En el cuadro de diálogo Editor de bucles Foreach, en la página General, en Nombre, escriba Foreach File in Folder. Haga clic en Aceptar. 5. Haga clic con el botón derecho en el contenedor de bucles Foreach, haga clic en Propiedades y, en la ventana Propiedades, compruebe que la propiedad LocaleID esté establecida en Inglés (Estados Unidos). Para configurar el enumerador para el contenedor de bucles Foreach 1. Haga doble clic en Foreach File in Folder para volver a abrir el Editor de bucles Foreach. 2. Haga clic en Colección. 3. En la página Colección, seleccione Enumerador de archivos Foreach. 4. En el grupo Configuración de enumerador, haga clic en Examinar.
  • 41. 5. En el cuadro de diálogo Buscar carpeta, busque la carpeta del equipo que contenga los archivos Currency_*.txt. Estos datos de ejemplo se incluyen con los paquetes de lecciones de SSIS. En el cuadro Archivos, escriba Currency_*.txt.
  • 42. Para asignar el enumerador a una variable definida por el usuario 1. Haga clic en Asignaciones de variables. 2. En la página Asignaciones de variables, en la columna Variable, haga clic en la celda vacía y seleccione . 3. En el cuadro de diálogo Agregar variable, en Nombre, escriba varFileName. Importante Los nombres de variables distinguen entre mayúsculas y minúsculas. 4. Haga clic en Aceptar. 5. Haga clic de nuevo en Aceptar para salir del cuadro de diálogo Editor de bucles Foreach.
  • 43. Para agregar la tarea de flujo de datos al bucle  Arrastre la tarea Flujo de datos Extract Sample Currency Data al contenedor de bucles Foreach que ahora se denomina Foreach File in Folder. Paso 3: Modificar el Administrador de conexiones de archivos planos En esta tarea, modificará el administrador de conexiones de archivos planos que creó y configuró en la lección 1. Cuando se creó inicialmente, el administrador de conexiones de archivos planos se configuró para cargar de forma estática un único archivo. Para permitir que el Administrador de conexiones de archivos planos cargue archivos de forma iterativa, debe modificar la propiedad ConnectionString del administrador de conexiones de modo que acepte la variable User:varFileName, definida por el usuario, que contiene la ruta de acceso del archivo que se cargará en tiempo de ejecución. Al modificar el administrador de conexiones para que use la variable definida por el usuario User::varFileName para rellenar la propiedad ConnectionString del administrador de conexiones, este podrá conectarse a distintos archivos planos. En tiempo de ejecución, cada iteración del contenedor de bucles Foreach actualizará dinámicamente la variable User::varFileName. A su vez, actualizar esta variable da lugar a que el administrador de conexiones se conecte a un archivo plano distinto, y que la tarea de flujo de datos procese un conjunto de datos distinto. Para configurar el Administrador de conexiones de archivos planos de modo que utilice una variable para la cadena de conexión 1. En el panel Administradores de conexión, haga clic con el botón derecho en Sample Flat File Source Data y, después, seleccionePropiedades. 2. En la ventana Propiedades, para Expresiones, haga clic en la celda vacía y,después, haga clic en el botón de puntos suspensivos (…). 3. En el cuadro de diálogo Editor de expresiones de propiedad, en la columna Propiedad, escriba o seleccione ConnectionString. 4. En la columna Expresión, haga clic en el botón de puntos suspensivos (…) para abrir el cuadro de diálogo Generador de expresiones. 5. En el cuadro de diálogo Generador de expresiones, expanda el nodo Variables. 6. Arrastre la variable User::varFileName hasta el cuadro Expresión.
  • 44. 7. Haga clic en Aceptar para cerrar el cuadro de diálogo Generador de expresiones. 8. Haga clic en Aceptar de nuevo para cerrar el cuadro de diálogo Editor de expresiones de propiedad. Paso 4: Probar el paquete del tutorial de la lección 2 Con el contenedor de bucles Foreach y el administrador de conexiones de archivo plano que ha configurado, el paquete de la lección 2 puede iterarse a través de la colección de 14 archivos planos de la carpeta Datos de ejemplo. Cada vez que se encuentra un archivo que coincide con los criterios de nombre de archivo especificados, el contenedor de bucles Foreach rellena la variable definida por el usuario con el nombre de archivo. Esta variable, a su vez, actualiza la propiedad ConnectionString del administrador de conexiones de archivos planos, y se establece una conexión con el archivo plano nuevo. A continuación, el contenedor de bucles Foreach ejecuta la tarea de flujo de datos sin modificar en los datos del nuevo archivo plano antes de establecer conexión con el siguiente archivo de la carpeta. Utilice el procedimiento siguiente para probar la nueva función del bucle que ha agregado al paquete.
  • 45. Nota Si ejecutó el paquete desde la lección 1, necesitará eliminar los registros de dbo.FactCurrency en AdventureWorksDW2012 antes de ejecutar el paquete desde esta lección; de lo contrario, el paquete producirá errores que indican la infracción de una restricción de clave principal. Recibirá los mismos errores si ejecuta el paquete seleccionando Depurar/Iniciar la depuración (o presiona F5) porque se ejecutarán las lecciones 1 y 2. La lección 2 intentará insertar registros que ya se insertaron en la lección 1. Comprobar el diseño del paquete Antes de probar el paquete, debe comprobar que los flujos de datos y de control de la lección 2 contienen los objetos mostrados en los diagramas siguientes. El flujo de datos debe ser idéntico al flujo de datos de la lección 1. Flujo de control Flujo de datos
  • 46. Para probar el paquete del tutorial de la lección 2 1. En el Explorador de soluciones, haga clic con el botón derecho en Lesson 2.dtsx y, después, haga clic en Ejecutar paquete. El paquete se ejecutará. Puede comprobar el estado de cada bucle en la ventana Resultado o haciendo clic en la pestaña Progreso . Por ejemplo, puede ver que se han agregado 1.097 líneas a la tabla de destino del archivo Currency_VEB.txt. 2. Una vez que se haya completado la ejecución del paquete, en el menú Depurar , haga clic en Detener depuración.
  • 47. Lección 3: Agregar Registro con SSIS En esta lección, expandirá el paquete que creó en la lección 2 para beneficiarse de las nuevas características de registro.
  • 48. Microsoft Integration Services incluye características de registro que permiten supervisar y solucionar los problemas de ejecución de paquetes mediante el seguimiento de eventos de tarea y de contenedor. La características de registro son flexibles, pueden habilitarse en el nivel de paquete o en tareas y contendores individuales del paquete. Puede seleccionar qué eventos deben registrarse y crear varios registros para un único paquete. El registro lo proporciona un proveedor de registro. Cada proveedor de registro puede escribir información de registro en distintos formatos y tipos de destino. Integration Services proporciona los siguientes proveedores de registro:  Archivo de texto  SQL Server Profiler  Registro de eventos de Windows  SQL Server  Archivo XML En esta lección, creará una copia del paquete que creó en la Lección 2: Agregar bucles con SSIS. Utilizando este nuevo paquete, luego agregará y configurará el registro para supervisar eventos específicos durante la ejecución del paquete. Si no ha finalizado cualquiera de las lecciones anteriores, también puede copiar el paquete de la lección 2 finalizada incluido en el tutorial. Importante Para este tutorial, se necesita la base de datos de ejemplo AdventureWorksDW2012 . Para obtener más información sobre cómo instalar e implementar AdventureWorksDW2012, consulte ejemplos de producto de Reporting Services en CodePlex. Tareas de la lección Esta lección contiene las siguientes tareas: Paso 1: Copiar el paquete de la Lección 2 En esta tarea, creará una copia del paquete que ha creado en la lección 2, denominado Lesson 2.dtsx. También puede agregar al proyecto el paquete completado de la lección 2 que se incluye con el tutorial y, después, copiar dicho paquete. Usará esta nueva copia en toda la lección 3. Para crear el paquete de la lección 3 1. Si SQL Server Data Tools no está abierto, haga clic en Inicio, seleccione Todos los programas, Microsoft SQL Server 2012 y, después, haga clic en SQL Server Data Tools. 2. En el menú Archivo, haga clic en Abrir, haga clic en Proyecto o solución, seleccione SSIS Tutorial, haga clic en Abrir y, después, haga doble clic en SSIS Tutorial.sln. 3. En el Explorador de soluciones, haga clic con el botón derecho en Lesson 2.dtsx y, después, haga clic en Copiar.
  • 49. 4. En el Explorador de soluciones, haga clic con el botón derecho en Paquetes SSIS y, después, haga clic en Pegar. De forma predeterminada, el paquete copiado se denomina Lesson 3.dtsx. 5. En el Explorador de soluciones, haga doble clic en Lesson 3.dtsx para abrir el paquete. 6. Haga clic con el botón derecho en cualquier parte del fondo de la pestaña Flujo de control y haga clic en Propiedades. 7. En la ventana Propiedades, actualice la propiedad Nombre a Lesson 3. 8. Haga clic en el cuadro para la propiedad ID y, en la lista, haga clic en . Para agregar el paquete de la lección 2 completada 1. Abra SQL Server Data Tools (SSDT) y abra el proyecto SSIS Tutorial. 2. En el Explorador de soluciones, haga clic con el botón derecho en Paquetes SSIS y haga clic en Agregar paquete existente. 3. En el cuadro de diálogo Agregar copia de paquete existente, en Ubicación del paquete, seleccione Sistema de archivos. 4. Haga clic en el botón de búsqueda (…), vaya a Lesson 2.dtsx en el equipo y, después, haga clic en Abrir. Para descargar todos los paquetes de lecciones de este tutorial, haga lo siguiente. a. Navegue a los ejemplos del producto Integration Services b. Haga clic en la pestaña DOWNLOADS . c. Haga clic en el archivo SQL2012.Integration_Services.Create_Simple_ETL_Tutorial.Sam ple.zip. 5. Copie y pegue el paquete de la lección 3 tal como se describe en los pasos del 3 a 8 del procedimiento anterior. Paso 2: Agregar y configurar el registro En esta tarea, habilitará el registro del flujo de datos del paquete Lesson 3.dtsx. A continuación, configurará un proveedor de registro de archivos de texto para registrar los eventos PipelineExecutionPlan y PipelineExecuteTrees. El proveedor de registro de archivos de texto crea registros que pueden verse y transportarse con facilidad. La sencillez de estos archivos de registro hace que sean especialmente útiles durante la fase de prueba básica de un paquete. También puede ver las entradas del archivo de registro en la ventana Registrar eventos del Diseñador de SSIS .
  • 50. Para agregar el registro al paquete 1. En el menú SSIS , haga clic en Registro. 2. En el cuadro de diálogo Configurar registros de SSIS , asegúrese de que en el panel Contenedores el objeto situado en la posición superior, que representa el paquete de la lección 3, está seleccionado. 3. En la pestaña Proveedores y registros , en el cuadro Tipo de proveedor , seleccione Proveedor de registro SSIS para archivos de textoy haga clic en Agregar. Integration Services agrega un nuevo proveedor de registro para archivos de texto al paquete con el nombre predeterminado Proveedor de registro SSIS para archivos de texto. Ahora puede configurar el nuevo proveedor de registro. 4. En la columna Nombre , escriba Lesson 3 Log File. 5. Si lo desea, modifique el campo Descripción. 6. En la columna Configuración haga clic en para especificar el destino en el que se escribe la información de registro. En el cuadro de diálogo Editor del administrador de conexiones de archivos , en Tipo de uso, seleccione Crear archivoy, a continuación, haga clic en Examinar. De forma predeterminada, el cuadro de diálogo Seleccionar archivo abre la carpeta del proyecto, pero puede guardar la información de registro en cualquier ubicación. 7. En el cuadro de diálogo Seleccionar archivo , en el cuadro Nombre de archivo , escriba TutorialLog.logy haga clic en Abrir. 8. Haga clic en Aceptar para cerrar el cuadro de diálogo Editor del administrador de conexiones de archivos . 9. En el panel Contenedores , expanda todos los nodos de la jerarquía del contenedor de paquetes y, a continuación, desactive todas las casillas,
  • 51. incluida Extract Sample Currency Data . Ahora, active la casilla Extract Sample Currency Data para obtener solo los eventos de este nodo. Importante Si la casilla Extract Sample Currency Data está atenuada en lugar de activada, la tarea usa la configuración de registro del contenedor primario y no se pueden habilitar los eventos de registro específicos de la tarea. 10.En la columna Eventos de la pestaña Detalles , seleccione los eventos PipelineExecutionPlan y PipelineExecutionTrees . 11.Haga clic en Avanzadas para revisar los detalles que el proveedor de registro escribirá en el registro para cada evento. De forma predeterminada, todas las categorías de información se seleccionan automáticamente para los eventos que se especifiquen. 12.Haga clic en Básicas para ocultar las categorías de información. 13.En la pestaña Proveedores y registros , en la columna Nombre , seleccione Lesson 3 Log File. Una vez que haya creado un proveedor de registro para el paquete, si lo desea, puede anular su selección para desactivar temporalmente el registro, sin tener que eliminar un proveedor de registro y crearlo de nuevo.
  • 52. 14.Haga clic en Aceptar Paso 3: Probar el paquete del tutorial de la lección 3 En esta tarea, ejecutará el paquete Lesson 3.dtsx. Al ejecutar el paquete, en la ventana Registrar eventos se mostrará una lista de las entradas del registro que se escriben en el archivo de registro. Una vez que haya finalizado la ejecución del paquete, comprobará el contenido del archivo de registro generado por el proveedor de registro. Comprobar el diseño del paquete Antes de probar el paquete, debe comprobar que los flujos de datos y de control de la lección 3 contienen los objetos mostrados en los diagramas siguientes. El flujo de control debe ser idéntico al flujo de datos de la lección 2. El flujo de datos debe ser idéntico al flujo de datos de las lecciones 1 y 2.
  • 54. Para ejecutar el paquete de tutorial de la lección 4 1. En el menú SSIS, haga clic en Registrar eventos. 2. En el menú Depurar , haga clic en Iniciar depuración. 3. Una vez que se haya completado la ejecución del paquete, en el menú Depurar , haga clic en Detener depuración. Para examinar el archivo de registro generado  Mediante el Bloc de notas o cualquier otro editor de texto, abra el archivo TutorialLog.log.  Aunque la semántica de la información generada para los eventos PipelineExecutionPlan y PipelineExecutionTrees queda fuera del ámbito de este tutorial, puede ver que la primera línea enumera los campos de información especificados en la pestaña Detalles del cuadro de diálogo Configurar registros de SSIS . Además, puede comprobar que los dos eventos que ha seleccionado, PipelineExecutionPlan y PipelineExecutionTrees, se han registrado para cada iteración del bucle Foreach.
  • 55. Lección 4: Agregar redirección de flujo de errores con SSIS En esta lección, expandirá el paquete que creó en la lección 3 para beneficiarse de las nuevas configuraciones de salida de error.
  • 56. Para administrar los errores que puedan aparecer en el proceso de transformación, Microsoft Integration Services ofrece la posibilidad de decidir para cada componente y cada columna cómo administrar los datos que no pueden transformarse. Puede optar por omitir un error en determinadas columnas, redireccionar toda la fila que ha generado el error o simplemente rechazar el componente debido a un error. De forma predeterminada, todos los componentes de Integration Services están configurados para ser rechazados si se produce un error. Rechazar el componente debido a un error, causa, a su vez, que el paquete también genere un error y que todos los procesos subsiguientes se detengan. En lugar de dejar que los errores detengan la ejecución de los paquetes, es recomendable configurar y administrar los posibles errores de procesamiento como si se produjeran en la transformación. Si bien puede optar por omitir los errores a fin de garantizar que el paquete se ejecute correctamente, generalmente es mejor redireccionar la fila que genera el error a otra ruta de proceso en la que los datos y el error puedan persistir, puedan examinarse y puedan procesarse de nuevo más adelante. En esta lección, creará una copia del paquete que ha desarrollado en la Lección 3: Agregar registro con SSIS. Trabajando con este paquete nuevo, creará una versión dañada de los archivos de datos de ejemplo. El archivo dañado forzará la aparición de un error de proceso al ejecutar el paquete. Para administrar los datos del error, agregará y configurará un destino de archivo plano que escribirá en un archivo las filas que no puedan encontrar un valor de búsqueda en la transformación Lookup Currency Key. Antes de escribir los datos del error en el archivo, incluirá un componente de script que utiliza un script para obtener descripciones de error. A continuación, volverá a configurar la transformación Lookup Currency Key para redireccionar los datos que no hayan podido procesarse en la transformación Script. Importante Para este tutorial, se necesita la base de datos de ejemplo AdventureWorksDW2012 . Para obtener más información sobre cómo instalar e implementar AdventureWorksDW2012, consulte ejemplos de producto de Reporting Services en CodePlex. Tareas de la lección Esta lección contiene las siguientes tareas: Paso 1: copiar el paquete de la lección 3 En esta tarea, creará una copia del paquete que ha creado en la lección 3, denominado Lesson 3.dtsx. Por otra parte, si no ha completado la lección 3, puede agregar al proyecto el paquete completado de la lección 3 que se incluye con el tutorial y, a continuación, copiar dicho paquete para trabajar. Usará esta nueva copia en toda la lección 4.
  • 57. Para crear el paquete de la lección 4 1. Si SQL Server Data Tools no está abierto, haga clic en Inicio, seleccione Todos los programas, Microsoft SQL Server y, después, haga clic enSQL Server Data Tools. 2. En el menú Archivo, haga clic en Abrir, haga clic en Proyecto o solución, seleccione SSIS Tutorial, haga clic en Abrir y, después, haga doble clic en SSIS Tutorial.sln. 3. En el Explorador de soluciones, haga clic con el botón derecho en Lesson 3.dtsx y, después, haga clic en Copiar. 4. En el Explorador de soluciones, haga clic con el botón derecho en Paquetes SSIS y, después, haga clic en Pegar. De forma predeterminada, el paquete copiado se denomina Lesson 4.dtsx. 5. En el Explorador de soluciones, haga doble clic en Lesson 4.dtsx para abrir el paquete. 6. Haga clic con el botón derecho en cualquier parte del fondo de la pestaña Flujo de control y haga clic en Propiedades. 7. En la ventana Propiedades, actualice la propiedad Name a Lesson 4. 8. Haga clic en el cuadro para la propiedad ID y, en la lista, haga clic en . Para agregar el paquete de la lección 3 completada 1. Abra SQL Server Data Tools (SSDT) y abra el proyecto SSIS Tutorial. 2. En el Explorador de soluciones, haga clic con el botón derecho en Paquetes SSIS y haga clic en Agregar paquete existente. 3. En el cuadro de diálogo Agregar copia de paquete existente, en Ubicación del paquete, seleccione Sistema de archivos. 4. Haga clic en el botón para examinar (…), vaya a Lesson 3.dtsx en la máquina y, después, haga clic en Abrir. Para descargar todos los paquetes de lecciones de este tutorial, haga lo siguiente. a. Navegue a los ejemplos del producto Integration Services b. Haga clic en la pestaña DOWNLOADS . c. Haga clic en el archivo SQL2012.Integration_Services.Create_Simple_ETL_Tutorial.Sam ple.zip. 5. Copie y pegue el paquete de la lección 3 tal como se describe en los pasos del 3 a 8 del procedimiento anterior. Paso 2: Crear un archivo dañado Para demostrar los errores de configuración y el control de los errores de transformación, debe crear un archivo plano de ejemplo que, cuando se procese, genere un error en un componente. En esta tarea, creará una copia de un archivo plano de ejemplo existente. Luego abrirá el archivo en el Bloc de notas y modificará la columnaCurrencyID para garantizar que no pueda producir una coincidencia durante la búsqueda de transformaciones. Cuando se procese el archivo nuevo, el error de búsqueda hará que se produzca un error en la transformación Lookup Currency Key y, por
  • 58. consiguiente, el resto del paquete generará un error. Una vez que haya creado el archivo de ejemplo dañado, ejecutará el paquete para ver su error. Para crear un archivo plano de ejemplo dañado 1. En el Bloc de notas o en cualquier otro editor de texto, abra el archivo Currency_VEB.txt. Los datos de ejemplo se incluyen con los paquetes de lecciones de SSIS. Para descargar los datos de ejemplo y los paquetes de lecciones, haga lo siguiente. a. Navegue a los ejemplos del producto Integration Services. b. Haga clic en la pestaña DOWNLOADS . c. Haga clic en el archivo SQL2012.Integration_Services.Create_Simple_ETL_Tutorial.Sam ple.zip. 2. Utilice la función de búsqueda y sustitución del editor de texto para buscar todas las instancias de VEB y sustituirlas por BAD. 3. Guarde el archivo modificado en la misma carpeta que los otros archivos de datos de ejemplo con el nombre Currency_BAD.txt. Importante Asegúrese de que Currency_BAD.txt se guarde en la misma carpeta que los demás archivos de datos de ejemplo. 4. Cierre el editor de texto.
  • 59. UUUPara comprobar que se producirá un error durante la ejecución 1. En el menú Depurar , haga clic en Iniciar depuración. En la tercera iteración del flujo de datos, la transformación Lookup Currency Key intenta procesar el archivo Currency_BAD.txt y la transformación generará un error. El error de la transformación hará que todo el paquete genere un error. 2. En el menú Depurar , haga clic en Detener depuración. 3. En la superficie de diseño, haga clic en la pestaña Resultados de la ejecución . 4. Examine el registro y compruebe que se ha producido el siguiente error no controlado: [Lookup Currency Key[27]] Error: Row yielded no match during lookup.
  • 60. Paso 3: Agregar redirección de flujo de errores Como se ha mostrado en la tarea anterior, la transformación Lookup Currency Key no puede generar una coincidencia cuando la transformación intenta procesar el archivo plano de ejemplo dañado que ha generado un error. Puesto que la transformación utiliza la configuración de salida de error predeterminada, cualquier error da lugar a un error de la transformación. Cuando se produce un error en la transformación, también se produce un error en el resto del paquete. En lugar de permitir que se produzca un error en la transformación, puede configurar el componente de modo que la fila que genera el error se redirija a otra ruta de procesamiento mediante la salida de error. El uso de una ruta de procesamiento independiente permite hacer varias cosas. Por ejemplo, puede intentar eliminar los datos y luego volver a procesar la fila con error. O bien, puede guardar la fila con error junto con otra información adicional sobre el error para comprobarla y procesarla de nuevo más adelante. En esta tarea configurará la transformación Lookup Currency Key para redirigir cualquier fila con errores a la salida de errores. En la rama de errores del flujo de datos, estas filas se escribirán en un archivo. De forma predeterminada, las dos columnas adicionales en una salida de errores de Integration Services , ErrorCode y ErrorColumn, solo contienen códigos numéricos que representan un número de error y el Id. de la columna en la que se produjo el error. Estos valores numéricos pueden tener un uso limitado sin la correspondiente descripción del error. Para mejorar la utilidad de la salida de errores, antes de que el paquete escriba las filas con errores en el archivo, se utilizará un componente de script para obtener acceso a la API de Integration Services y obtener una descripción del error. Para configurar una salida de error 1. En el Cuadro de herramientas de SSIS, expanda Comunesy, a continuación, arrastre Componente de script a la superficie de diseño de la pestaña Flujo de datos . Coloque Script a la derecha de la transformación Lookup Currency Key . 2. En el cuadro de diálogo Seleccionar el tipo de componente de script , haga clic en Transformacióny luego en Aceptar.
  • 61. 3. Haga clic en la transformación Lookup Currency Key y luego arrastre la flecha roja hasta la transformación Script que acaba de agregar para conectar los dos componentes. La flecha roja representa la salida de errores de la transformación Lookup Currency Key . Utilizando la flecha roja para conectar la transformación con el componente de script, puede redirigir cualquier error de procesamiento a dicho componente, que, a continuación, lo procesará y enviará al destino.
  • 62. 4. En el cuadro de diálogo Configurar la salida de errores , en la columna Error , seleccione Redirigir filay, a continuación, haga clic enAceptar. 5. En la superficie de diseño Flujo de datos, haga clic en Componente de script en el Componente de script recién agregado y cambie el nombre por Get Error Description. 6. Haga doble clic en la transformación Get Error Description. 7. En el cuadro de diálogo Editor de transformación Script , en la página Columnas de entrada , seleccione la columna ErrorCode . 8. En la página Entradas y salidas , expanda Salida 0, haga clic en Columnas de saliday, a continuación, en Agregar columna. 9. En la propiedad Nombre, escriba ErrorDescription y establezca la propiedad DataType en Cadena Unicode [DT_WSTR]. 10.En la página Script, compruebe que la propiedad LocaleID esté establecida en Inglés (Estados Unidos). 11.Haga clic en Editar script para abrir Microsoft Visual Studio Tools for Applications (VSTA). En el método Input0_ProcessInputRow, escriba o pegue el código siguiente. [Visual Basic] Row.ErrorDescription = Me.ComponentMetaData.GetErrorDescription(Row.ErrorCode) [Visual C#]
  • 63. Row.ErrorDescription = this.ComponentMetaData.GetErrorDescription(Row.ErrorCode); La subrutina completada será como el código siguiente. [Visual Basic] Public Overrides Sub Input0_ProcessInputRow(ByVal Row As Input0Buffer) Row.ErrorDescription = Me.ComponentMetaData.GetErrorDescription(Row.ErrorCode) End Sub [Visual C#] public override void Input0_ProcessInputRow(Input0Buffer Row) { Row.ErrorDescription = this.ComponentMetaData.GetErrorDescription(Row.ErrorCode); } 12.En el menú Compilar , haga clic en Compilar solución para compilar el script y guardar los cambios y, a continuación, cierre VSTA. 13.Haga clic en Aceptar para cerrar el cuadro de diálogo Editor de transformación Script .
  • 64. Paso 4: Agregar un destino de archivo plano La salida de errores de la transformación Lookup Currency Key redirige a la transformación Script cualquier fila de datos que haya generado un error durante la operación de búsqueda. Para mejorar la información acerca de los errores producidos, la transformación Script ejecuta un script que obtiene una descripción de los errores. En esta tarea guardará toda esta información acerca de las filas con errores en un archivo delimitado para su procesamiento posterior. Para guardar las filas con errores, es preciso agregar y configurar un administrador de conexiones de archivos planos para el archivo de texto que contendrá los datos de error y un destino de archivo plano. Al establecer propiedades en el administrador de conexiones de archivos planos que usa el destino de archivo plano, puede especificar la manera en que el destino de archivo plano establece el formato y escribe el archivo de texto. Para obtener más información, vea Flat File Connection Manager y Flat File Destination. Para agregar y configurar un destino de archivo plano 1. Haga clic en la pestaña Flujo de datos. 2. En el Cuadro de herramientas de SSIS, expanda Otrosy arrastre Destino de archivo plano a la superficie de diseño del flujo de datos. Coloque el Destino de archivo plano directamente debajo de la transformación Get Error Description . 3. Haga clic en la transformación Get Error Description y arrastre la flecha verde hasta el nuevo Destino de archivo plano. 4. En la superficie de diseño Flujo de datos , haga clic en Destino de archivo plano en la transformación Destino de archivo plano recién agregada y cambie el nombre a Failed Rows. 5. Haga clic con el botón derecho en la transformación Failed Rows, haga clic en Editar y, después, en el Editor de destino de archivos planos, haga clic en Nuevo. 6. En el cuadro de diálogo Formato de archivo plano , compruebe que esté seleccionado Delimitado y haga clic en Aceptar. 7.
  • 65. 8. En el cuadro Nombre del administrador de conexionesdel Editor del administrador de conexiones de archivos planos , escriba Error Data. 9. En el cuadro de diálogo Editor del administrador de conexiones de archivos planos , haga clic en Examinary busque la carpeta en la que se almacenará el archivo. 10.En el cuadro de diálogo Abrir , en Nombre de archivo, escriba ErrorOutput.txty haga clic en Abrir. 11.En el cuadro de diálogo Editor del administrador de conexiones de archivos planos, compruebe que el cuadro Configuración regionalcontiene Inglés (Estados Unidos) y la Página de códigos contiene 1252 (ANSI -Latin I). 12.En el panel de opciones, haga clic en Columnas. Observe que, además de las columnas del archivo de datos de origen, existen tres columnas nuevas: ErrorCode, ErrorColumn y ErrorDescription. Estas columnas las generan la salida de errores de la transformación Lookup Currency Key y el script de la transformación Get Error Description y pueden utilizarse para solucionar el problema de la fila que genera el error.
  • 66. 13.Haga clic en Aceptar. 14.En el Editor de destino de archivos planos, desactive la casilla Sobrescribir los datos del archivo . Al desactivar esta casilla, se conservan los errores sobre múltiples ejecuciones del paquete. 15.En el Editor de destino de archivos planos, haga clic Asignaciones para comprobar que todas las columnas son correctas. Si lo desea, puede cambiar el nombre de las columnas en el destino. 16.Haga clic en Aceptar. Paso 5: Probar el paquete del tutorial de la lección 4 En tiempo de ejecución, el archivo dañado, Currency_BAD.txt, no podrá generar una coincidencia en la transformación Lookup Currency Key. Puesto que la salida de errores de Lookup Currency Key se ha configurado para redirigir las filas con errores al nuevo destino de filas con errores, el componente no genera ningún error y el paquete se ejecuta correctamente. Todas las filas que generan un error se escriben en el archivo ErrorOutput.txt. En esta tarea, probará la configuración de la salida de error revisada ejecutando el paquete. Tras ejecutar correctamente el paquete, verá el contenido del archivo ErrorOutput.txt. Nota
  • 67. Si no desea acumular filas con errores en el archivo ErrorOutput.txt, debe eliminar manualmente el contenido del archivo entre ejecuciones de paquetes. Comprobar el diseño del paquete Antes de probar el paquete, debe comprobar que los flujos de datos y de control del paquete de la lección 4 contienen los objetos mostrados en los diagramas siguientes. El flujo de control debe ser idéntico al flujo de datos de las lecciones 2 a 4. Flujo de control Flujo de datos Para ejecutar el paquete de tutorial de la lección 4 1. En el menú Depurar, haga clic en Iniciar depuración. 2. Una vez que se haya completado la ejecución del paquete, en el menú Depurar, haga clic en Detener depuración.
  • 68. Para comprobar el contenido del archivo ErrorOutput.txt  En el Bloc de notas o en cualquier otro editor de texto, abra el archivo ErrorOutput.txt. El orden predeterminado de columna es: AverageRate, CurrencyID, CurrencyDate, EndOfDateRate, ErrorCode, ErrorColumn, ErrorDescription. Observe que todas las filas del archivo contienen el valor BAD de CurrencyID sin coincidencia, el valor -1071607778 de ErrorCode, el valor 0 de ErrorColumn y el valor "La fila no produjo ninguna coincidencia durante la búsqueda" de ErrorDescription. El valor de ErrorColumn se establece en 0 porque el error no es específico de columna. Es la operación de búsqueda la que ha generado el error.
  • 69. Lección 5: Agregar configuraciones de paquete para el modelo de implementación de paquetes En esta lección, expandirá el paquete que creó en la lección 4 para beneficiarse de las nuevas opciones de configuración del paquete.
  • 70. Tareas de la lección Esta lección contiene las siguientes tareas:  Paso 1: Copiar el paquete de la lección 4  Paso 2: Habilitar y configurar las configuraciones de paquetes En esta tarea, convertirá el proyecto al modelo de implementación de paquetes y habilitará las configuraciones de paquetes mediante el Asistente para configuración de paquetes. Usará este asistente para generar un archivo de configuración XML que contiene parámetros de configuración para la propiedad Directory del contenedor de bucles Foreach. El valor de la propiedad Directory se proporciona a través de una variable nueva de nivel de paquete que puede actualizarse durante la ejecución. Además, rellenará una carpeta nueva de datos de ejemplo que utilizará durante las pruebas. Para crear una variable nueva de nivel de paquete asignada a la propiedad Directory 1. Haga clic en el fondo de la pestaña Flujo de control del Diseñador SSIS. De este modo se establece en el paquete el ámbito de la variable que se va a crear. 2. En el menú SSIS, seleccione Variables. 3. En la ventana Variables, haga clic en el icono Agregar variable. 4. En el cuadro Nombre, escriba varFolderName. Importante Los nombres de variables distinguen entre mayúsculas y minúsculas. 5. Compruebe que en el cuadro Ámbito se muestra el nombre del paquete (Lección 5). 6. Establezca el valor del cuadro Tipo de datos de la variable varFolderName en String.
  • 71. 7. Vuelva a la pestaña Flujo de control y haga doble clic en el contenedor Foreach File in Folder. 8. En la página Colección del Editor de bucles Foreach, haga clic en Expresiones y, después, haga clic en el botón de puntos suspensivos (…). 9. En el Editor de expresiones de propiedad, haga clic en la lista Propiedad y seleccione Directorio.
  • 72. 10. En el cuadro Expresión, haga clic en el botón de puntos suspensivos (…). 11. En el Generador de expresiones, expanda la carpeta Variables y arrastre la variable User:varFolderName al cuadro Expresión. 12. Haga clic en Aceptar para salir del Generador de expresiones. 13. Haga clic en Aceptar para salir del Editor de expresiones de propiedad. 14. Haga clic en Aceptar para salir del Editor de bucles Foreach. Para habilitar las configuraciones de paquetes 1. En el menú Proyecto, haga clic en Convertir al modelo de implementación de paquetes.
  • 73. 2. Haga clic en Aceptar en el mensaje de advertencia y, una vez completada la conversión, haga clic en Aceptar en el cuadro de diálogoConvertir al modelo de implementación de paquetes.
  • 74. 3. Haga clic en el fondo de la pestaña Flujo de control del Diseñador SSIS. 4. En el menú SSIS , haga clic en Configuraciones de paquetes. 5. En el cuadro de diálogo Organizador de configuraciones de paquetes, seleccione Habilitar configuraciones de paquetes y, después, haga clic en Agregar. 6. En la página de bienvenida del Asistente para la configuración de paquetes, haga clic en Siguiente. 7. En la página Seleccionar tipo de configuración, compruebe que el Tipo de configuración está establecido en Archivo de configuración XML. 8. En la página Seleccionar tipo de configuración, haga clic en Examinar. 9. De forma predeterminada, el cuadro de diálogo Seleccionar ubicación del archivo de configuración se abrirá en la carpeta del proyecto. 10. En el cuadro de diálogo Seleccionar ubicación del archivo de configuración, escriba SSISTutorial en Nombre de archivo y haga clic enGuardar. 11. En la página Seleccionar tipo de configuración, haga clic en Siguiente. 12. En la página Seleccionar propiedades para la exportación, en el panel Objetos, expanda Variables, luego varFolderName y Propiedades y, después, seleccione Valor. 13. En la página Seleccionar propiedades para la exportación, haga clic en Siguiente.
  • 75. 14. En la página Finalización del asistente, escriba un nombre para la configuración, por ejemplo, Configuración del directorio del Tutorial de SSIS. Este es el nombre de configuración que se muestra en el cuadro de diálogo Organizador de configuraciones de paquetes. 15. Haga clic en Finalizar. 16. Haga clic en Cerrar. 17. El asistente crea un archivo de configuración, denominado SSISTutorial.dtsConfig, que contiene parámetros de configuración para el valor de la variable que, a su vez, establece la propiedad Directory del enumerador. Nota Generalmente, un archivo de configuración contiene información compleja sobre las propiedades de un paquete, pero en este tutorial la única información de configuración debería ser <Configuration ConfiguredType="Property" Path="Package.Variables[User::varFolderName].Properties[Value]" ValueType="String"> </ConfiguredValue> </Configuration>.
  • 76. Para crear y rellenar una carpeta nueva de datos de ejemplo 1. En el Explorador de Windows, en el nivel raíz de la unidad (por ejemplo, C:), cree una carpeta nueva denominada Nuevos datos de ejemplo. 2. Busque los archivos de ejemplo en su equipo y copie tres de los archivos de la carpeta. 3. En la carpeta Nuevos datos de ejemplo, pegue los archivos copiados.  Paso 3: Modificar el valor de configuración de la propiedad Directory  Paso 4: Probar el paquete del tutorial de la lección 5
  • 77. Lección 6: Uso de parámetros con el modelo de implementación de proyectos en SSIS En esta lección, expandirá el paquete que creó en la lección 5 para beneficiarse de usar los nuevos parámetros con el modelo de implementación del proyecto.
  • 78. Con el Asistente para la conversión de proyectos de Integration Services, convertirá el proyecto al modelo de implementación de proyectos y usará un parámetro en lugar de un valor de configuración para establecer la propiedad Directory. Esta lección abarca parcialmente los pasos que se seguiría para convertir paquetes SSIS existentes al nuevo modelo de implementación de proyectos. Cuando ejecute el paquete de nuevo, el servicio Integration Services usará el parámetro para rellenar el valor de la variable y la variable actualizará a su vez la propiedad Directory. Como resultado, el paquete iterará por los archivos de la nueva carpeta de datos especificada por el valor del parámetro, en lugar de iterar por la carpeta que se estableció en el archivo de configuración del paquete. Tareas de la lección Esta lección contiene las siguientes tareas: 1. Paso 1: copiar el paquete de la lección 5 2. Paso 2: Convertir el proyecto al modelo de implementación de proyectos Convertir el proyecto al modelo de implementación del proyectos 1. En el menú Proyecto, haga clic en Convertir al modelo de implementación de proyectos.
  • 79. 2. En la página de introducción del Asistente para conversión de proyectos de Integration Services, revise los pasos y haga clic en Siguiente. 3. En la página Seleccionar paquetes, en la lista de paquetes, desactive todas las casillas de verificación excepto Lesson 6.dtsx y haga clic en Siguiente.
  • 80. 4. En la página Especificar propiedades del proyecto, haga clic en Siguiente. 5. En la página Actualizar tarea Ejecutar paquete, haga clic en Siguiente.
  • 81. 6. En la página Seleccionar configuración, asegúrese de que el paquete Lesson 6.dtsx está seleccionado en la lista de configuraciones y haga clic en Siguiente. 7. En la página Crear parámetros, asegúrese de que el paquete Lesson 6.dtsx está seleccionado y el ámbito está configurado en Paquete, en la lista de propiedades de configuración, y haga clic en Siguiente. 8. En la página Configurar parámetros, compruebe que los valores de Nombre y Valor son el mismo nombre y el mismo valor especificados en Lesson 5 para la variable y el valor de configuración, y haga clic en Siguiente.
  • 82. 9. En la página Revisar, en el panel de resumen, tenga en cuenta que el asistente ha usado la información del archivo de configuración para establecer las propiedades que se van a convertir. 10. Haga clic en Convertir. Cuando la conversión finaliza, se muestra un mensaje que advierte que los cambios no se guardarán hasta que el proyecto se guarde en Visual Studio. Haga clic en Aceptar del cuadro de diálogo de advertencia. 11. En el Asistente para conversión de proyectos de Integration Services, haga clic en Cerrar. 12. En Herramientas de datos de SQL Server, haga clic en el menú Archivo y haga clic en Guardar para guardar el paquete convertido.
  • 83. 13. Haga clic en la ficha Parámetros y compruebe que el paquete contiene un parámetro para VarFolderName, y que el valor es la misma ruta de acceso especificada para la carpeta Nuevos datos de ejemplo del archivo de configuración Lesson 5. 3. Paso 3: Probar el paquete de la lección 6 4. Paso 4: Implementar y probar el paquete de la lección 6