0% encontró este documento útil (0 votos)
38 vistas9 páginas

Ssis

Este documento describe los pasos para generar un identificador clave sustituto incremental (id_cliente) para los clientes y agregar sus direcciones desde diferentes tablas. Primero se configuran orígenes de datos, transformaciones para ordenar y generar el id_cliente, y un destino. Luego, se agregan direcciones de clientes de tablas mediante orígenes adicionales, divisiones condicionales, una unión y búsquedas antes de enviarlos a un destino. Finalmente, se crea la tabla destino para las direcciones.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
38 vistas9 páginas

Ssis

Este documento describe los pasos para generar un identificador clave sustituto incremental (id_cliente) para los clientes y agregar sus direcciones desde diferentes tablas. Primero se configuran orígenes de datos, transformaciones para ordenar y generar el id_cliente, y un destino. Luego, se agregan direcciones de clientes de tablas mediante orígenes adicionales, divisiones condicionales, una unión y búsquedas antes de enviarlos a un destino. Finalmente, se crea la tabla destino para las direcciones.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 9

!

"#$%&'$(()($
$
*+,+$ -&.&/$ 0&/$ 1#!$ 23$ %&'4%%-5&'$ 6+'+74,$ 8-505%4$ /8$ 9,&95+$
%&'4:5;'$+$/8$32<$
$

!
Configuración del origen de datos

Configuración de la Transformación Ordenar (por apellido y luego nombre)

Configuración de la Transformación Componente de Secuencia de Comandos

Generaremos la clave sustituta como salida (en inglés surrogate key). Se llamará
id_cliente.
En el Script (Script - Design Script) escribiremos lo siguiente:

Imports System
Imports System.Data
Imports System.Math
Imports Microsoft.SqlServer.Dts.Pipeline.Wrapper
Imports Microsoft.SqlServer.Dts.Runtime.Wrapper

Public Class ScriptMain


Inherits UserComponent
Private NextKey As Integer = 0

Public Overrides Sub Entrada0_ProcessInputRow(ByVal Row As


Entrada0Buffer)

' Use NextKey +1 here because we are now relying on


' our counter within this script task.
NextKey = NextKey + 1

Row.idcliente = NextKey ' Assign NextKey to our id_cliente


field on our data row
End Sub

End Class

Esto generará un número de clave que será incremental de acuerdo al número de fila.

Configuración del Destino de OLE DB

¡IMPORTANTE!: No usar el Destino de SQL Server, porque arroja un error al hacer


inserción masiva desde conexiones remotas.

Antes deben crear la tabla dim_cliente


dim_cliente(id_cliente, nombre, apellido, profesion)
Realizar los mapeos de las columnas.

Luego de realizado esto, procederemos con un ejemplo ilustrativo.

Paso 2: Agregar las direcciones de cada cliente

Las direcciones de los clientes pueden estar en el campo “direccion” de la tabla


“unifamiliar”, ó en el campo “direccion” de la tabla edificio y el campo “numero” de la
tabla vivienda.

¿Qué necesitamos?

x Una tarea de flujo de datos posterior a la de clientes


x Dos orígenes de OLE DB, dos Transformaciones de División Condicional, una
Transformación de Columna Derivada, una Transformación de Unión de Todo,
dos Transformaciones de Búsqueda y un Destino de OLE DB.

Configuración de los orígenes de OLE DB

Para las unifamiliares es sencillo:


Para los departamentos no tanto

Configuración de la División Condicional

En ambos casos se filtran solamente las viviendas compradas


Configuración de columna derivada

Se agrega un atributo “numero” con valor nulo, del mismo tipo de dato que el
proveniente de los departamentos.

Configuración de Unión de Todo

Configuración de las Búsquedas

Buscando el nombre y apellido


Buscando el id_cliente
Configuración del Destino de OLE DB

No olvidar crear antes la tabla en la base de datos destino. Podemos crear la tabla aquí
mismo.

También podría gustarte