Sunteți pe pagina 1din 74

UNIVERSIDAD NACIONAL DE TRUJILLO

FACULTAD DE INGENIERIA
ESCUELA DE INGENIERIA INDUSTRIAL

INTEGRANTES:
 BEDON GONZALES JAIME
 CIEZA TIRADO MELBER OM
 REYES MOROCHO KEVIN
DOCENTE: ING. FRANCISCO RODRIGUEZ NOVOA
CICLO: X
SECCION: “A”

2019
TRUJILLO-PERÚ

0
Contenido
1. TITULO DEL PROYECTO ................................................................................................. 2
2. OBJETIVO GENEREAL ..................................................................................................... 2
3. PLANIFICACIÓN DEL PROYECTO .................................................................................. 2
3.1. SELECCIÓN DE LA ESTRATEGIA DE IMPLEMENTACIÓN ...................................... 2
3.2. SELECCIÓN DE LA METODOLOGIA DE DESARROLLO .......................................... 2
3.3. SELECCIÓN DEL ÁMBITO DE IMPLEMENTACIÓN .................................................. 2
3.4. DESCRIPCIÓN DE STAKEHOLDERS ........................................................................ 3
4. DETERMINACIÓN DE LOS REQUERIMIENTOS ............................................................. 4
4.1. REQUERIMIENTOS DE LOS STAKEHOLDERS ........................................................ 4
4.2. REQUERIMIENTOS FUNCIONALES DEL USUARIO FINAL...................................... 4
4.3. REQUERIMIENTOS NO FUNCIONALES.................................................................... 5
4.4. ANÁLISIS DE REQUERIMIENTOS ............................................................................. 6
5. DISEO TÉCNICO DE LA ARQUITECTURA ...................................................................... 8
5.1. NIVEL DE DATOS: Base de Datos fuente (transaccional)........................................... 8
6. MODELADO DIMENSIONAL ............................................................................................. 9
6.1. IDENTIFICACIÓN DE LOS COMPONENTES DEL MODELO..................................... 9
6.1.1. ELECCIÓN DEL DATAMART ............................................................................... 9
6.1.2. ELECCIÓN DEL OBJETIVO DE LA TABLA DE HECHOS .................................. 10
6.1.3. ELECCIÓN DE LAS DIMENSIONES .................................................................. 11
6.1.4. ELECCIÓN DE LOS HECHOS ............................................................................ 12
6.2. DIAGRAMA DE LA TABLA DE HECHOS .................................................................. 12
6.3. DIAGRAMA ESTRELLA............................................................................................. 18
7. DISEÑO FISICO .............................................................................................................. 19
8. PROCESO DE ETRACCIÓN, TRANSFORMACIÓN Y CARGA DE DATOS ................... 30
8.1. DEFINICIÓN DE LOS PASOS DE TRANSFORMACIÓN .......................................... 30
8.2. DEFINICIÓN DE LOS WORKFLOWS ....................................................................... 31
8.3. CREACIÓN DE LOS PAQUETES DE SERVICIO DE TRANSFORMACIÓN DE
DATOS ................................................................................................................................ 33
8.3.1. SENTENCIAS DE CADA PASO DE WORKFLOW ............................................. 33
9. REPORTES EN POWER BI ............................................................................................ 63

1
1. TITULO DEL PROYECTO
Solución de inteligencia de Negocio para mejorar la calidad del servicio en el área de ventas
de la empresa MADERERA VIVIANA E.I.R.L.
2. OBJETIVO GENEREAL
Mejorar la calidad en el Sistema de Ventas para que la empresa pueda tener una mejor
contabilidad de sus ventas e inventarios.
3. PLANIFICACIÓN DEL PROYECTO
3.1. SELECCIÓN DE LA ESTRATEGIA DE IMPLEMENTACIÓN
La estrategia de la implementación del proyecto tiene las siguientes tareas:
1. Informarnos sobre los aspectos básicos de la empresa y su cultura
organizacional.
2. Verificar los procedimientos y la documentación de la empresa MADERERA
VIVIANA E.I.R.L.
3. Analizar los sistemas transaccionales.
4. Recolectar los distintos tipos de requerimientos.
5. Analizar los requerimientos.
6. Implementar Dara Mart.
3.2. SELECCIÓN DE LA METODOLOGIA DE DESARROLLO
Implementar el sistema de Data Mart es un proceso complejo, en las cuales se debe
usar las prácticas existentes. La metodología que se va aplicar es propuesta por Ralph
Kimball, el cual se utilizará para el desarrollo de la metodología del trabajo, en la
cual se va adaptar al proyecto.
3.3. SELECCIÓN DEL ÁMBITO DE IMPLEMENTACIÓN
El ámbito de la implementación de un Data Mart se determina gracias a los distintos
requerimientos de información de los trabajadores o la Gerencia de la empresa
MADERERA VIVIANA E.I.R.L.
Para ello se formuló las siguientes preguntas:
a) ¿En qué área es más recomendable aplicar los Data Mart?
b) ¿Qué priorizará el Data Mart en los diferentes procesos de las principales áreas
de la empresa?
c) ¿Qué consultas se debe responder inicialmente los Data Mart?

2
3.4. DESCRIPCIÓN DE STAKEHOLDERS
Personal involucrado con el Proyecto
Nombre Representa Rol
Es el responsable legal  Ordenar y manipular.
de la empresa y en ese  Designar todas las posiciones de la
sentido deberá velar por estructura.
el cumplimiento de todos  Realizar evaluaciones periódicas del
los requisitos legales que cumplimiento de las funciones de los
Gerente afecten los negocios y diferentes departamentos
General operaciones de ésta. credenciales.
 Desarrollar metas a corto y largo plazo
junto con objetivos anuarios y entregar
las proposiciones de dichas metas
para la aprobación de los gerentes
administrativos.
 Tener la decisión de liderazgo.

Plantel administrativo  Prospección, búsqueda y negociación


encargado en supervisor de/con proveedores
el proceso de compra y  Analizar periódicamente los precios de las
materias primas, componentes o materiales
ventas, documentación y  Control de calidad de las materias primas y
Jefe de administración. componentes
Compra y  Controlar toda la gestión documental que
Ventas acompaña a cada compra
 Información a tiempo real del stock de la
organización
 Diseñar el área de compras

Coordinar las labores de  Planifica, coordina, dirige y supervisa las


contabilidad, registro y labores desarrolladas por el personal a su
control de bienes cargo.
 Realiza reuniones con integrantes de la
patrimoniales, unidad, para la fijación de las acciones a
planificando, seguir en el desarrollo de los programas
Jefe de
supervisando y asignados.
Inventarios
dirigiendo las acciones a  Define los sistemas, normas y
seguir. procedimientos para el registro, manejo y
control de los bienes muebles e inmuebles.
 Elabora informes técnicos finales de los
inventarios realizados.

3
4. DETERMINACIÓN DE LOS REQUERIMIENTOS
4.1. REQUERIMIENTOS DE LOS STAKEHOLDERS
Debemos de esclarecer las dudas que tienen los Stakeholders recopilando los
requerimientos con unas entrevistas que se hace.
¿Por qué construir un Data Mart?
Porque ayudará en disponer la estructura óptima de datos para analizar la información
al detalle desde todas las perspectivas que afecten a los procesos de dicho
departamento, haciendo que mejore y tenga más beneficios la empresa MADERERA
VIVIANA E.I.R.L.
¿Cuál será el impacto sobre la organización?
El impacto que tendrá el Data Mart de la empresa MADERERA VIVIANA E.I.R.L.
ayudará a largo plazo según las decisiones que se tome y las medidas que se emplee,
permitiendo que sea más rápido la obtención de los reportes solicitados por la
gerencia.
¿Cuáles son los riesgos?
Los riesgos al implementarse el Data Mart serian que la base de datos operacional
tenga complicaciones, es decir, genere problemas de consistencia.
4.2. REQUERIMIENTOS FUNCIONALES DEL USUARIO FINAL
Para determinar los diferentes tipos de requerimientos empresariales se realizaron
entrevistas a diferentes tipos de usuarios finales que utilizarán los Data Mart basados
en la metodología Ralpf Kimball.
Área de Compra y Venta
R1 ¿Cuántos tipos de maderas se compra por cada mes?
R2 ¿Cuántos tipos de maderas se vende por cada mes?
R3 ¿A cuál empresa vende más productos de madera y cuánto gana por cada
producto vendido?
R4 ¿Cuánto gana en general por la venta de compra en un mes?
R5 ¿Cuánto es la utilidad neta por la venta y compra de madera al mes?
Área de Inventarios
R6 ¿Cuánto es el costo de inventario por unidad?
R7 ¿Cuánto de material se puede guardar en el inventario?
R8 ¿Cuánto compra a cada proveedor por un mes determinado?

4
NRO CONSU UNIDAD
LTAS
¿Cuántos tipos de maderas se compra por cada mes?
01 Cantidad de productos

02 ¿Cuántos tipos de maderas se vende por cada mes? Cantidad de


productos
Cantidad de
03 ¿A cuál empresa vende más productos de madera y
cuánto gana por cada producto vendido? productos y
Venta de Soles
¿Cuánto gana en general por la venta de madera en
Ventas soles
04 un mes?

¿Cuánto es la utilidad neta por la venta y compra de


05 madera al mes? Ventas soles

06 ¿Cuánto es el costo de inventario por unidad? Costo soles

¿Cuánto de material se puede guardar en el Cantidad de


07
productos
inventario?

¿Cuánto compra a cada proveedor por un mes Cantidad


08 determinado? productos
Comprados

4.3. REQUERIMIENTOS NO FUNCIONALES


 Utilizar el Microsoft Excel 2016.
 A los distintos tipos de usuarios brindarles una mejor información.
 Manejar una mejor seguridad para la administración de los Datas Marts.
 Los Data Marts deben funcionar sobre la plataforma de Microsoft Windows, con
el manejador de base de datos Microsoft SQL Server 2018 R2 y utilizando el
Microsoft SQL Server 2017 Analysis Services como herramienta de diseño y
construcción de los cubos.

5
4.4. ANÁLISIS DE REQUERIMIENTOS
A. Área de Compra y Venta
R1 ¿Cuántos tipos de maderas se compra por cada mes?

Tipo

Compra

Tiempo

R2 ¿Cuántos tipos de maderas se vende por cada mes?

Tipos

Ventas

Tiempo

R3 ¿A cuál empresa vende más productos de madera y cuánto gana


por cada producto vendido?
Venta

Empresa

Producto
R4 ¿Cuánto gana en general por la venta de compra en un mes?
Producto

Venta en soles

Tiempo

6
R5 ¿Cuánto es la utilidad neta por la venta y compra de madera al mes?
Producto

Ganancia

Tiempo

R6 ¿Cuánto es el costo de inventario por unidad?

Costo Soles Inventario

R7 ¿Cuánto de material se puede guardar en el inventario?

Cantidad Producto Inventario

R8 ¿Cuánto compra a cada proveedor por un mes determinado?

Proveedor

Cantidad Compra

Tiempo

7
5. DISEO TÉCNICO DE LA ARQUITECTURA
5.1. NIVEL DE DATOS: Base de Datos fuente (transaccional)
Se utilizó la base de datos MADERERA VIVIANA E.I.R.L. cuyo modelo esta descrito
en la imagen de a continuación.
En este diagrama se muestran las tablas que se relacionan con el área de Ventas y
Compras, así como al área de Inventario, si bien es el modelo de datos es básico; pues,
en el transcurso del proyecto se realizará un refactoring lo que permitirá adquirir datos
relevantes para la empresa.

8
6. MODELADO DIMENSIONAL
A través del Modelamiento Dimensional, buscaremos presentar los datos en un marco de
trabajo estándar.
Identificado los componentes del modelo, desarrollando el método de los cuatro pasos.
Luego, se construirá el primer diagrama para el modelo y se detallará cada componente del
diagrama.
6.1. IDENTIFICACIÓN DE LOS COMPONENTES DEL MODELO
Para identificar los componentes utilizaremos el método propuesto por Ralph Kimball.
El Método de los cuatro pasos: Consiste en cuatro elecciones:
 Elección del DataMart
 Elección del Objetivo de la Tabla de Hechos
 Elección de las Dimensiones
 Elección de los Hechos
6.1.1. ELECCIÓN DEL DATAMART
En este paso identificaremos el posible Data Mart que se puede construir en la
empresa MADERERA VIVIANA E.I.R.L En nuestro caso identificaremos el área
que está en estudio por este proyecto, el cual ya tenemos conocimiento sobre su
modelo general de datos.
Entonces, para identificar nuestro Data Mart en estudio recurrimos al siguiente
método:
Método de la Matriz
Se mencionará los posibles hechos relacionados y que son usados juntos.
Listamos las entidades que apoyan a estos hechos.
Listado de los Data Marts
Según la situación general de la empresa, se identificó las posibles fuentes de
Data Marts que corresponderán a las filas de la matriz:

Area de Ventas (Comprobante_De_Pago_Venta)


Area de Inventario (Guía_Remitente)

Listado de las Dimensiones


Para los posibles Data Mart mencionados anteriormente listamos las siguientes
posibles dimensiones:
Usuario
Método_Pago
Tiempo
Tipo_Comprobante_Pago
Cliente

9
Producto
Sucursal
Proveedor
Tipo_Madera
Lugar_Procedencia
Transportista

Marcado de las Intersecciones


Ordenamos las filas y las columnas en una tabla, dando forma a la matriz, y
marcamos las intersecciones donde exista una dimensión relacionada a un Data
Mart.
Áreas
DIMENSIONES
Comprobante_de Guía_Remitente
Pago_Venta
USUARIO X

METODO DE PAGO X
TIEMPO X X
TIPO
COMPROBANTE X
DE PAGO
CLIENTE X
PRODUCTO X
SUCURSAL X X
PROVEEDOR X
TIPO MADERA X
LUGAR DE X
PROCEDENCIA
TRANSPORTISTA X

Para el fácil manejo de las consultas hechas por el usuario, en el Data Mart se
consideró dos Tablas de Hechos: Comprobante_de_pago_Venta (Area Ventas)
y Guia_Remitente (Area de Inventario).

6.1.2. ELECCIÓN DEL OBJETIVO DE LA TABLA DE HECHOS


Este paso consiste en declarar como es el registro del hecho en las tablas de
hechos, es decir, hay que definir claramente y exactamente que registros de
cada tabla de hechos figurará en el diseño del modelado del Data Mart.
Tomamos la siguiente definición para cada tabla de hechos:

10
Tabla de Hechos Objetivo
Comprobante_de_ “Tener un mejor control y manejo de las ventas”.
pago_Venta
“Controlar los traslados de los bienes, productos que
Guia_Remitente se compra o vende que maneja la empresa”.

Al enunciar el objetivo de cada Data Mart, van a intervenir las posibles


dimensiones que se explicarán a continuación.
6.1.3. ELECCIÓN DE LAS DIMENSIONES
Al establecer el objetivo para cada tabla de hechos, podemos escoger cuales
serán nuestras dimensiones para cada una de estas tablas. El objetivo por sí
mismo establece cuales serán nuestras dimensiones.
A continuación, por cada objetivo escogeremos las dimensiones:

Tabla de Hechos Objetivos Dimensiones


Usuario
Metodo de pago
“Tener un mejor Tiempo
Comprobante_de_p control y manejo de las Tipo comprobante de pago
ago_Venta
ventas”. Producto
Cliente
Sucursal

Tabla de Hechos Objetivos Dimensiones


Tiempo
“Controlar los traslados
Sucursal
Guia_Remitente de los bienes, productos
Proveedor
que se compra o vende
Tipo Madera
que maneja la empresa”.
Lugar de procedencia
Transportista

Como se puede ver la mayoría de las dimensiones elegidas pertenecen a las


Entidades del Modelo de Datos General descritos anteriormente. Otras
dimensiones son la unión de entidades.

11
6.1.4. ELECCIÓN DE LOS HECHOS
El Objetivo de cada tabla de hechos, permite definir los hechos y hace claro el
alcance que estos hechos deben tener. En nuestro caso tenemos:

Tabla de Hechos Hechos


Monto en Soles

Comprobante_de_pago Cantidad Vendida (pies3)


_Venta Código del comprobante

Guia_Remitente Cantidad de Madera (pies3)


Código de guía de remitente

6.2. DIAGRAMA DE LA TABLA DE HECHOS


Para esta etapa se prepara un diagrama lógico para cada Tabla de Hechos
completada. Cada Diagrama nombra a la Tabla de Hechos, establece su Objetivo y
muestra todas las dimensiones conectadas a la Tabla de Hechos.
Diagrama de la Tabla de Hechos Comprobante_de_pago_Venta


Diagrama de la Tabla de Hechos Guia_Remitente

12
Detalle de las Tablas de Hechos
Nombre de la Nombre de la
Tabla Columna Descripción de la Columna

Dimensión Usuario Cod_Usuario_key Llave primaria única para la


Dimensión Usuario
Dimensión Metodo Cod_Metodo_Pago Llave primaria única para la
de Pago _key Dimensión Metodo de Pago

Dimensión Cod_Tiempo_Key Llave primaria única para la


Tiempo Dimensión Tiempo

Dimensión Tipo Cod_ Llave primaria única para la


comprobante de Tipo_Comprobante_ Dimensión Tipo comprobante
pago pago _Key de pago

Dimensión Cod_Producto_Key Llave primaria única para la


Producto Dimensión Producto

Dimensión Cliente Cod_Cliente_Key Llave primaria única para la


Dimensión Cliente
Dimensión Sucursal Cod_Sucursal _Key Llave primaria única para la
Dimensión Sucursal
Dimensión Cod_Proveedor_Key Llave primaria única para la
Proveedor Dimensión Proveedor
Dimensión Cod_Tipo_Madera Llave primaria única para la
Tipo Madera _Key Dimensión Tipo Madera

Dimensión Cod_ Llave primaria única para la


Lugar de Lugar_Procedencia Dimensión Lugar de
procedencia _Key procedencia

Dimensión Cod_Transportista Llave primaria única para la


Transportista _Key Dimensión Transportista

Nombre de la Tabla Nombre de la Descripción de la


Columna Columna

Hecho Monto en Soles Costo Total


Comprobante_de_pago
_Venta
Hecho Cantidad Vendida Total de pies3 vendidos
Comprobante_de_pago (pies3)
_Venta
Hecho Código del Código del comprobante
Comprobante_de_pago comprobante de
_Venta pago

13
Hecho Guia_Remitente Cantidad de Madera Cantidad de Madera
(pies3) recibida (pies3)

Hecho Guia_Remitente Código de guía de Código de guía de


remitente remitente
Por consiguiente, de las dos tablas completadas anteriormente se obtienen las
siguientes Tablas de Hechos:

Detalle de las Tablas Dimensión


De acuerdo a nuestras Dimensiones elegidas anteriormente construimos los detalles y
sus jerarquías de cada una de ellas.
Dimensión Usuario
Nombre del Descripción del Cambiando Valores de
Atributo Atributo Política Muestra

Cod_usuario Código único para cada No


usuario que guarda Actualizar CU100,
información. CU101
Nombre Palabra que se designa No Zoila Cuevas,
para diferentes sujetos. Actualizar Olenka

Cod_Tipo_Usu Código único para cada No CTU100


ario tipo de usuario. Actualizar CTU101

Dimensión Método_Pago
Nombre del Descripción del Cambiando Valores de
Atributo Atributo Política Muestra

Descripcion Se definirá que método No Efectivo,


de paga se realizará. Actualizar Crédito

Cod_Metodo_P Código único para cada No MP101


ago método de pago. Actualizar MP102

14
Dimensión Tiempo
Nombre del Descripción del Cambiando Valores de
Atributo Atributo Política Muestra

Dia Representa los dias 1,2, 3


que posee una semana No
Actualizar
Semana Representa las semanas No 1,2,e
que posee un mes Actualizar

Mes Representa los meses No Julio,


que posee un año Actualizar Agosto,...

Año Representa el año. No 2019,2020,…


Actualizar

Fecha Indicación del tiempo y No 2 de julio del


a menudo del lugar en Actualizar 2019, 0 de
que se hace u ocurre julio del 2019
una cosa
MesNu Número del Mes del No Agosto,
Calendario Actualizar Setiembre

Dimensión Tipo_Comprobante_Pago
Nombre del Descripción del Cambiando Valores de
Atributo Atributo Política Muestra

Descripcion Tipo de comprobantes No


que se empleará (Boleta Actualizar Boleta
o Factura). Factura
Nota de Venta
Cod_Tipo_comp Código único para para No CTP101
robante_Pago el tipo de comprobante Actualizar CTP102
de pago.

Dimensión Cliente
Nombre del Descripción del Atributo Cambiando Valores de
Atributo Política Muestra

Describe el nombre del No Antonio


Nombre Cliente. Actualizar Garcia, Jose
Martinez
Celular Número telefónico del Cliente. No 945675849,
Actualizar 947526139

Tipo Cliente Representa el tipo de cliente Actualizar Natural,


Con el que trabaja la empresa. Jurídico

15
Dimensión Producto
Nombre del Cambiando Valores de
Atributo Descripción del Atributo Política Muestra

Código único de cada


Cod_producto producto. No Actualizar P100,P101

Representa a qué Tipo de


Descripcion producto pertenece un No Actualizar Catahua
Producto. Comercial,
Catahua Corta
Representa el precio de un
Precio producto. No Actualizar 2.8,2.2

Dimensión Sucursal
Nombre del Descripción del Cambiando Valores de
Atributo Atributo Política Muestra

Descripción Establecimientos Prolongacion


secundarios. No miraflores 1980,
Actualizar Jiron Huallaga
530
Cod_Sucursal Código único de cada No CS101,CS102
sucursal. Actualizar

Dimensión Proveedor
Nombre del Descripción del Cambiando Valores de
Atributo Atributo Política Muestra

Representa el codigo del No Actualizar PVR101,PVR102


Cod_proveedor proveedor

Representa el nombre del Coronel Portillo,


Nombre proveedor No Actualizar Iberia-
Tahuamanu

16
Dimensión Tipo_Madera
Nombre del Descripción del Cambiando Valores de
Atributo Atributo Política Muestra

Copaiba
Representa el motivo No Actualizar Comercial
Descripcion de la transferencia. Copaiba Corta
Código único del tipo No Actualizar CTM101,
Cod_tipo_made de Madera comprada o CTM102
ra vendida.
Código único de lugar No Actualizar CLP101,
Cod_lugar_pro que previene el CLP101
cedencia producto.

Dimensión Lugar_Procedencia
Nombre del Cambiando Valores de
Atributo Descripción del Atributo Política Muestra

Código único del lugar de


Cod_lugar_procede procedencia. No Actualizar CLP101
ncia CLP102
Lugar donde proviene el
Ubicacion producto. No Actualizar PUCALLPA,
PUERTO
Valor monetario que cuesta
Precio_Flete transportar. No Actualizar 8000,
11000

Dimensión Transportista
Nombre del Cambiando Valores de
Atributo Descripción del Atributo Política Muestra

Representa el nombre de un
Nombre producto. No Actualizar Cesar Alberto
Vásquez Laiza,
Luis Alberto Ruiz
Números de 9 dígitos para
Celular poder contactarse. No Actualizar 941962225,
949580208
Código único que se otorga
Cod_transportista para cada transportista. No Actualizar CTR101
CTR102
Número de 8 dígitos de una 74705406
DNI combinación única. No Actualizar 27571112

17
6.3. DIAGRAMA ESTRELLA
Sabiendo el número de Tablas de Hechos y las dimensiones asociadas a estas,
orientamos nuestro Data Mart al Esquema Estrella para una mejor visualización del
Modelo para el Diseño Físico.
Para una mejor comprensión, listamos primero los componentes que intervendrán el
esquema, luego dividimos el Data Mart en dos gráficos: El esquema estrella de cada
Tabla de Hechos y el Diseño Lógico del Data Mart.
Modelo Estrella componente
Componente: TABLA DE HECHOS COMPROBANTE_PAGO_VENTA
Componente: TABLA DE HECHOS GUIA_REMITENTE
Componente: TABLA DE DIMENSIÓN USUARIO
Componente: TABLA DE DIMENSIÓN METODO_PAGO
Componente: TABLA DE DIMENSIÓN TIEMPO
Componente: TABLA DE DIMENSIÓN CLIENTE
Componente: TABLA DE DIMENSIÓN TIPO_COMPROBANTE_PAGO
Componente: TABLA DE DIMENSIÓN PRODUCTO
Componente: TABLA DE DIMENSIÓN SUCURSAL
Componente: TABLA DE DIMENSIÓN PROVEEDOR
Componente: TABLA DE DIMENSIÓN TIPO_PRODUCTO
Componente: TABLA DE DIMENSIÓN LUGAR_PROCEDENCIA
Componente: TABLA DE DIMENSIÓN TRANSPORTISTA

18
USUARIO_DIM METODO_PAGO_DIM
TIEMPO_DIM
Cod_UsuarioKey Cod_Metodo_Pago_Key
Tiempo_Key
Cod_Usuario Descripcion
Nombre Cod_Metodo_Pago Dia
Cod_Tipo_Usuario Semana
Mes
Año
Fecha
MesNu

TIPO_COMPROBANTE_PAGO_DIM
COMPROBANTE_DE_PAGO_VENTA_FACT CLIENTE_DIM
Cod_Tipo_comprobante_pago_Key
Tiempo_Key (FK) Cod_ClenteKey
Cod_Tipo_comprobante_pago Cod_Tipo_comprobante_pago_Key (FK) Nombre
Descripcion Producto_Key (FK) Celular
Cod_Sucursal_Key (FK) Cod_Cliente
Cod_Metodo_Pago_Key (FK)
Cod_ClenteKey (FK)
Cod_UsuarioKey (FK)
Monto
CantidadVendida
Cod_Comprobante_Pago
PRODUCTO_DIM
Producto_Key
SUCURSAL_DIM
Cod_Producto
Cod_Sucursal_Key Descripcion
Cod_Sucursal Precio
Descripcion

PROVEEDOR_DIM GUIA_REMITENTE_FACT
Cod_Proveedor_Key Tiempo_Key (FK)
Cod_Proveedor_Key (FK)
Cod_Proveedor Cod_Tipo_Madera_Key (FK)
Nombre Cod_Sucursal_Key (FK)
Cod_Lugar_Procedencia_Key (FK)
Cod_Transportista_Key (FK)
TIPO_MADERA_DIM
Cod_Guia_Remitente
Cantidad_Madera Cod_Tipo_Madera_Key
Descripcion
Cod_Tipo_Madera
Cod_Lugar_Procedencia

TRANSPORTISTA
LUGAR_PROCEDENCIA_DIM Cod_Transportista_Key
Cod_Lugar_Procedencia_Key
Nombre
Cod_Lugar_Procedencia Celular
Ubicacion Cod_Transportista
PrecioFlete DNI

7. DISEÑO FISICO
Se tiene que tener en cuenta lo siguiente:
Modificar nombres a nombres estándar, si fuera necesario. Para nuestro Data Mart se
realizaron los siguientes cambios:

DISEÑO LÓGICO DISEÑO FÍSICO

Tabla de Hecho Tabla_Hecho_


Comprobante_Pago_Venta Comprobante_Pago_Venta
Tabla de Hecho Guia_Remitente Tabla_Hecho_ Guia_Remitente

Dimensión_Usuario Dim_Usuario

Dimensión_Método_Pago Dim_Método_Pago

Dimensión_Tiempo Dim_Tiempo

Dimensión_Tipo_Comprobante_Pago Dim_Tipo_Comprobante_Pago

19
Dimensión_Cliente Dim_Cliente

Dimensión_Producto Dim_Producto

Dimensión_Sucursal Dim_Sucursal

Dimensión_Proveedor Dim_Proveedor

Dimensión_Tipo_Madera Dim_Tipo_Madera

Dimensión_Lugar_Procedencia Dim_Lugar_Procedencia

Dimensión_Transportista Dim_Transportista

NOMBRE DE LA TABLA DISEÑO LÓGICO DISEÑO FÍSICO

Dimensión_Usuario Cod_Usuario Cod_Usuario


Dimensión_Usuario Nombre Nombre
Dimensión_Usuario Cod_Tipo_Usuario Cod_Tipo_Usuario
Dimensión_Método_Pago Descripcion Descripcion
Dimensión_Método_Pago Cod_Metodo_Pago Cod_Metodo_Pago
Dimensión_Tiempo Dia Dia
Dimensión_Tiempo Semana Semana
Dimensión_Tiempo Mes Mes
Dimensión_Tiempo Año Año
Dimensión_Tiempo Fecha Fecha
Dimensión_Tiempo MesNu MesNu
Dimensión_Tipo_Comprobante Descripción Descripción
_Pago
Dimensión_Tipo_Comprobante Cod_ Cod_
_Pago Tipo_Comprobante_Pago Tipo_Comprobante_Pago
Dimensión_Cliente Nombre Nombre

Dimensión_Cliente Celular Celular

Dimensión_Cliente Cod_Cliente Cod_Cliente

Dimensión_Producto Cod_Producto Cod_Producto

Dimensión_Producto Descripción Descripción

20
Dimensión_Producto Precio Precio

Dimensión_Sucursal Cod_ Sucursal Cod_ Sucursal

Dimensión_Sucursal Descripción Descripción


Dimensión_Proveedor Nombre Nombre
Dimensión_Proveedor Cod_Proveedor Cod_Proveedor
Dimensión_Tipo_Madera Descripción Descripción
Dimensión_Tipo_Madera Cod_Tipo_Madera Cod_Tipo_Madera
Dimensión_Tipo_Madera Cod_Lugar_Procedencia Cod_Lugar_Procedencia
Dimensión_Lugar_Procedencia Cod_Lugar_Procedencia Cod_Lugar_Procedencia
Dimensión_Lugar_Procedencia Ubicacion Ubicacion
Dimensión_Lugar_Procedencia Precio_Flete Precio_Flete
Dimensión_Transportista Nombre Nombre
Dimensión_Transportista Celular Celular
Dimensión_Transportista Cod_Transportista Cod_Transportista
Dimensión_Transportista DNI DNI

NOMBRE DE LA
DISEÑO LÓGICO DISEÑO FÍSICO
TABLA

Tabla de Hecho Monto Monto


Comprobante_Pago_
Venta
Tabla de Hecho Cantidad_Vendida Cantidad_Vendida
Comprobante_Pago_
Venta
Tabla de Hecho Código_Comprobante_pago Código_Comprobante_pago
Comprobante_Pago
_Venta
Tabla de Hecho Cantidad_Madera Cantidad_Madera
Guia_Remitente

Tabla de Hecho Código_guía_remitente Código_guía_remitente


Guia_Remitente

Determinar el Tipo de Dato para cada Tabla que intervendrá en el Data Mart. Estos
cuadros muestran el detalle de cada tabla:

21
Tabla: Dim_Usuario

NOMBRE DEL CAMPO TIPO DE DATO LONGITUD


Cod_Usuario Varchar 20

Nombre Varchar 50

Cod_Tipo_Usuario Varchar 20

Tabla: Dim_Metodo_Pago

NOMBRE DEL CAMPO TIPO DE DATO LONGITUD


Descripción Varchar 50

Cod_Metodo_Pago Varchar 20

Tabla: Dim_Tiempo

NOMBRE DEL CAMPO TIPO DE DATO LONGITUD


Día Varchar 40

Semana Varchar 40

Mes Nvarhar 50

Año Int -

Fecha Datetime -

MesNu Varchar 40

Tabla: Dim_Cliente

NOMBRE DEL CAMPO TIPO DE DATO LONGITUD


Nombre Varchar 50

Celular Varchar 20

Cod_Cliente Varchar 20

22
Tabla: Dim_Tipo_Comprobante_Pago

NOMBRE DEL CAMPO TIPO DE DATO LONGITUD


Cod_ Tipo_Comprobante_Pago Varchar 20

Descripcion Varchar 50

Tabla: Dim_Producto

NOMBRE DEL CAMPO TIPO DE DATO LONGITUD


Cod_Producto Varchar 20

Descripcion Varchar 50

Precio Float -

Tabla: Dim_Sucursal

NOMBRE DEL CAMPO TIPO DE DATO LONGITUD


Cod_Sucursal Varchar 20

Descripcion Varchar 50

Tabla: Dim_Proveedor

NOMBRE DEL CAMPO TIPO DE DATO LONGITUD


Cod_Proveedor Varchar 20

Nombre Varchar 50

Tabla: Dim_Tipo_Madera

NOMBRE DEL CAMPO TIPO DE DATO LONGITUD


Descripcion Varchar
50
Cod_Tipo_Mdera Varchar 20

Cod_Lugar_Procedencia Varchar 20

23
Tabla: Dim_Lugar_Procedencia

NOMBRE DEL CAMPO TIPO DE DATO LONGITUD


Cod_Lugar_Procedencia Varchar 20

Ubicacion Varchar 50

Precio Float -

Tabla: Dim_Transportista

NOMBRE DEL CAMPO TIPO DE DATO LONGITUD


Nombre varchar 50

Celular varchar 20

Cod_Transportista varchar 20

DNI varchar 20

Determinar el tipo de Datos de las claves Primarias. Para nuestro Data Mart se
generaran en forma automática y ordenada:

Tiempo_Key
Cod_Tipo_Comprobante_Pago_Key Producto_Key
Cod_Sucursal_Key
Cod_Metodo_Pago_Key
Cod_Cliente_Key
Cod_Usuario_Key Cod_Proveedor_Key Tipos de datos entero (12)
Cod_Tipo_Madera_Key
Cod_Sucursal_Key
Tipo de Datos Entero (12)
Cod_Luigar_Procedencias_Key
Cod_Transportista_Key

Especificar las claves foráneas para cada Tabla de Hechos:

24
Por consiguiente, con los Datos del diseño Lógico y los cambios en la estructura física, se
obtiene el siguiente Modelo de Base de Datos Física para el Data Mart.
TIEMPO_DIM
Tiempo_Key
Dia
Semana
TIPO_MADERA_DIM
Mes Cod_Tipo_Madera_Key
Año Descripcion
Fecha Cod_Tipo_Madera
TIPO_COMPROBANTE_PAGO_DIM
Cod_Tipo_comprobante_pago_Key MesNu Cod_Lugar_Procedencia

Cod_Tipo_comprobante_pago
Descripcion

GUIA_REMITENTE_FACT
Cod_Guia_Remitente
Tiempo_Key TRANSPORTISTA
COMPROBANTE_DE_PAGO_VENTA_FACT Cod_Transportista_Key
Tiempo_Key PROVEEDOR_DIM Cantidad_Madera
Cod_Proveedor_Key Nombre
Cod_Tipo_comprobante_pago_Key Cod_Proveedor_Key
Cod_Proveedor Celular
Producto_Key Cod_Tipo_Madera_Key
PRODUCTO_DIM Nombre Cod_Transportista
Producto_Key Cod_Sucursal_Key Cod_Sucursal_Key
DNI
Cod_Producto Cod_Metodo_Pago_Key Cod_Lugar_Procedencia_Key

Descripcion Cod_ClenteKey Cod_Transportista_Key

Precio Monto
CantidadVendida
Cod_Comprobante_Pago
Cod_UsuarioKey

SUCURSAL_DIM LUGAR_PROCEDENCIA_DIM
Cod_Sucursal_Key Cod_Lugar_Procedencia_Key
Cod_Sucursal Cod_Lugar_Procedencia
Descripcion Ubicacion
PrecioFlete
CLIENTE_DIM USUARIO_DIM
Cod_ClenteKey Cod_UsuarioKey
Nombre Cod_Usuario
Celular Nombre
Cod_Cliente Cod_Tipo_Usuario

METODO_PAGO_DIM
Cod_Metodo_Pago_Key
Descripcion
Cod_Metodo_Pago

25
Construcción de las Tablas y la Base de Datos en SQL
Después de haber realizado el Diseño Físico de las tablas pasamos a la etapa de
construcción de dichas tablas utilizando el SQL Server 2014 R2.

Tabla 1:Dim_Usuario

Tabla 2: Dim_Metodo_Pago

Tabla 3: Dim_Tiempo

26
Tabla 4:Dim_Cliente

Tabla 5: Dim_Tipo_Comprobante_Pago

Tabla 6: Dim_Producto

Tabla 7: Dim_Sucursal

27
Tabla 8: Dim_Proveedor

Tabla 9: Dim_Tipo_Madera

Tabla 10: Dim_Lugar_Procedencia

Tabla 11:Dim_Transportista

Una vez construido todas las tablas para el Data Mart, continuamos con la
construcción del Diagrama de la Base de Datos:

28
TIEMPO_DIM
Tiempo_Key
Dia
Semana
TIPO_MADERA_DIM
Mes Cod_Tipo_Madera_Key
Año Descripcion
Fecha Cod_Tipo_Madera
TIPO_COMPROBANTE_PAGO_DIM
Cod_Tipo_comprobante_pago_Key MesNu Cod_Lugar_Procedencia

Cod_Tipo_comprobante_pago
Descripcion

GUIA_REMITENTE_FACT
Cod_Guia_Remitente
Tiempo_Key TRANSPORTISTA
COMPROBANTE_DE_PAGO_VENTA_FACT Cod_Transportista_Key
Tiempo_Key PROVEEDOR_DIM Cantidad_Madera
Cod_Proveedor_Key Nombre
Cod_Tipo_comprobante_pago_Key Cod_Proveedor_Key
Cod_Proveedor Celular
Producto_Key Cod_Tipo_Madera_Key
PRODUCTO_DIM Nombre Cod_Transportista
Producto_Key Cod_Sucursal_Key Cod_Sucursal_Key
DNI
Cod_Producto Cod_Metodo_Pago_Key Cod_Lugar_Procedencia_Key

Descripcion Cod_ClenteKey Cod_Transportista_Key

Precio Monto
CantidadVendida
Cod_Comprobante_Pago
Cod_UsuarioKey

SUCURSAL_DIM LUGAR_PROCEDENCIA_DIM
Cod_Sucursal_Key Cod_Lugar_Procedencia_Key
Cod_Sucursal Cod_Lugar_Procedencia
Descripcion Ubicacion
PrecioFlete
CLIENTE_DIM USUARIO_DIM
Cod_ClenteKey Cod_UsuarioKey
Nombre Cod_Usuario
Celular Nombre
Cod_Cliente Cod_Tipo_Usuario

METODO_PAGO_DIM
Cod_Metodo_Pago_Key
Descripcion
Cod_Metodo_Pago

29
8. PROCESO DE ETRACCIÓN, TRANSFORMACIÓN Y CARGA DE DATOS
Para completar la construcción del DataMart (DM_MADERERA) debemos poblar cada Tabla
de la Base de Datos (BD_MADERERA).
Como ya conocemos la estructura de cada tabla, ahora demos seguir los siguientes pasos
para el poblamiento:
 Definición de los pasos de transformación.
 Definición de los WorkFlows (Flujos de Trabajo).
 Creación de los paquetes de servicio de transformación de datos (DTS).
8.1. DEFINICIÓN DE LOS PASOS DE TRANSFORMACIÓN
Para un correcto poblamiento de los datos debemos definir los pasos de
transformación, con la unidad de trabajo como parte de un proceso de
transformación. Para poblar el DataMart (DM_MADERERA) se tiene que realizar los
siguientes pasos:
Paso 1: Limpiando Dimensiones, consiste en eliminar los datos de todas las
Dimensiones y Tablas de Hechos, paso que nos permite asegurar de que no pueda
existir algún dato que se pudiera duplicar.
Paso 2: Poblamiento de la Dimensión CLIENTE, consiste en mover los datos de la
Tabla CLIENTE para poblar la Dimensión CLIENTE_DIM.
Paso 3: Poblamiento de la Dimensión PROVEEDOR, consiste en mover los datos
de la Tabla PROVEEDOR para poblar la Dimensión PROVEEDOR_DIM.
Paso 4: Poblamiento de la Dimensión SUCURSAL, consiste en mover los datos de
la Tabla SUCURSAL para poblar la Dimensión SUCURSAL_DIM
Paso 5: Poblamiento de la Dimensión TIPO_COMPROBANTE_PAGO, consiste en
mover los datos de la Tabla TIPO_COMPROBANTE_PAGO para poblar la
Dimensión TIPO_COMPROBANTE_PAGO_DIM.
Paso 6: Poblamiento de la Dimensión TRANSPORTISTA, consiste en mover los
datos de la Tabla TRANSORTISTA para poblar la Dimensión
TRASNPORTISTA_DIM.
Paso 7: Poblamiento de la Dimensión PRODUCTO, consiste en mover los datos de
la Tabla PRODUCTO para poblar la Dimensión PRODUCTO_DIM
Paso 8: Poblamiento de la Dimensión TIPO_MADERA, consiste en mover los datos
de la Tabla TIPO_MADERA para poblar la Dimensión TIPO_MADERA_DIM.
Paso 9: Poblamiento de la Dimensión METODO_PAGO, consiste en mover los
datos de la Tabla METODO_PAGO para poblar la Dimensión METODO_PAGO
_DIM.
Paso 10: Poblamiento de la Dimensión USUARIO, consiste en ejecutar una
sentencia SQL, para transferir datos a la Dimensión USUARIO _DIM.
Paso 11: Poblamiento de la Dimensión LUGAR_PROCEDENCIA, consiste en mover
los datos de la Tabla METODO_PAGO para poblar la Dimensión
LUGAR_PROCEDENCIA _DIM.
Paso 12: Poblamiento de la Dimensión TIEMPO, consiste en ejecutar una sentencia
SQL, para transferir datos a la Dimensión TIEMPO_DIM.

30
Paso 13: Poblamiento de las Tablas de Hechos.
8.2. DEFINICIÓN DE LOS WORKFLOWS

PASO 1 PASO 2 PASO 3

PASO 4 PASO 5 PASO 6

PASO 7 PASO 8 PASO 9

PASO 10 PASO 11 PASO 12

PASO 13

a) La Limpieza de las Dimensiones (Paso 1) debe realizarse al inicio del proceso.


b) El Poblamiento de la Dimensión CLIENTE (Paso 2) debe realizarse sólo cuando
se tenga la seguridad de que el paso 1 se ha ejecutado con éxito.
c) El Poblamiento de la Dimensión PROVEEDOR (Paso 3) debe realizarse sólo
cuando se tenga la seguridad de que el paso 1 se ha ejecutado con éxito.
d) El Poblamiento de la Dimensión SUCURSAL (Paso 4) debe realizarse sólo
cuando se tenga la seguridad de que el paso 1 se ha ejecutado con éxito.
e) El Poblamiento de la Dimensión TIPO_COMPROBANTE_PAGO (Paso 5) debe
realizarse sólo cuando se tenga la seguridad de que el paso 1 se ha ejecutado
con éxito.
f) El Poblamiento de la Dimensión TRANSPORTISTA (Paso 6) debe realizarse
sólo cuando se tenga la seguridad de que el paso 1 se ha ejecutado con éxito.
g) El Poblamiento de la Dimensión PRODUCTO (Paso 7) debe realizarse sólo
cuando se tenga la seguridad de que el paso 1 se ha ejecutado con éxito.
h) El Poblamiento de la Dimensión TIPO_MADERA (Paso 8) debe realizarse sólo
cuando se tenga la seguridad de que el paso 1 se ha ejecutado con éxito.
i) El Poblamiento de las Tablas de METODO_PAGO (Paso 9) debe realizarse sólo
cuando se tenga la seguridad de que el paso 1 se ha ejecutado con éxito.
j) El Poblamiento de las Tablas de USUARIO (Paso10) debe realizarse sólo
cuando se tenga la seguridad de que el paso 1 se ha ejecutado con éxito.
k) El Poblamiento de las Tablas de LUGAR_PROCEDENCIA (Paso 11) debe
realizarse sólo cuando se tenga la seguridad de que el paso 1 se ha ejecutado
con éxito.

31
l) El Poblamiento de las Tablas de TIEMPO (Paso 12) debe realizarse sólo
cuando se tenga la seguridad de que el paso 1 se ha ejecutado con éxito.
m) El Poblamiento de las Tablas de Hecho
(COMPROBANTE_PAGO_VENTA_FACT Y GUIA_REMITENTE_FACT) (Paso
13) debe realizarse sólo cuando se tenga la seguridad de que el paso
2,3,4,5,6,7,8,9,10,11,12 se hallan ejecutado con éxito.

Una vez conocido las relaciones de precedencias diagramaremos el WorkFlows que


se necesitará realizar al construir el paquete de poblamiento del Data Mart, para el
proceso de Venta e Inventario de la empresa “MADERERA VIVIANA E.I.R.L”.

32
8.3. CREACIÓN DE LOS PAQUETES DE SERVICIO DE TRANSFORMACIÓN DE
DATOS
Definidos los pasos de la transformación de datos y las restricciones de precedencia,
podemos crear el paquete Servicio de Transformación de Datos (DTS);
recordaremos que un DTS tiene como objetivos importar, exportar y realizar cambios
en el formato de datos. Para su construcción utilizaremos el Paquete de SQL Server
Integration Services 2017 (SSDT), aquí los datos pueden ser almacenado en varios
formatos y en muchos lugares diferentes lo cual no es ningún problema.
Basándonos en Workflow con restricciones de la figura anterior, creamos el paquete
DTS al cual llamamos “PROYECTO_MADERERA”, con los pasos previos definidos
así como todas sus restricciones.
8.3.1. SENTENCIAS DE CADA PASO DE WORKFLOW
Paso 1: Limpiando Dimensiones
Añadimos una tarea al paquete al cual tendrá por nombre “Tarea ejecutar
SQL”, con la siguiente sentencia:
DELETE COMPROBANTE_DE_PAGO_VENTA_FACT
DELETE GUIA_REMITENTE_FACT
DELETE PRODUCTO_DIM
DBCC CHECKIDENT('PRODUCTO_DIM',reseed,0)
DELETE CLIENTE_DIM
DBCC CHECKIDENT('CLIENTE_DIM',reseed,0)
DELETE METODO_PAGO_DIM
DBCC CHECKIDENT('METODO_PAGO_DIM',reseed,0)
DELETE TIEMPO_DIM
DBCC CHECKIDENT('TIEMPO_DIM',reseed,0)
DELETE USUARIO_DIM
DBCC CHECKIDENT('USUARIO_DIM',reseed,0)
DELETE TIPO_COMPROBANTE_PAGO_DIM
DBCC CHECKIDENT('TIPO_COMPROBANTE_PAGO_DIM',reseed,0)
DELETE SUCURSAL_DIM
DBCC CHECKIDENT('SUCURSAL_DIM',reseed,0)
DELETE PROVEEDOR_DIM
DBCC CHECKIDENT('PROVEEDOR_DIM',reseed,0)
DELETE LUGAR_PROCEDENCIA_DIM
DBCC CHECKIDENT('LUGAR_PROCEDENCIA_DIM',reseed,0)
DELETE TRANSPORTISTA_DIM
DBCC CHECKIDENT('TRANSPORTISTA_DIM',reseed,0)
DELETE TIPO_MADERA_DIM
DBCC CHECKIDENT('TIPO_MADERA_DIM',reseed,0)

33
Esta sentencia nos permite limpiar los datos de todas las tablas de nuestro
Data Mart. Esta limpieza asegura que no se dupliquen los datos.

34
Paso 2: Poblamiento de la Dimensión CLIENTE
Para Transferir los datos a la dimensión CLIENTE, se efectúan los
siguientes pasos:
a) Definimos a la Tabla CLIENTE de la base de datos
BD_MADERERA como origen de datos

b) Determinamos la Dimensión Cliente Como destino de Datos.

35
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión CLIENTE

d) Presionamos F5 para correr y detectar algún error.

36
Paso 3: Poblamiento de la Dimensión PROVEEDOR
Para Transferir los datos a la dimensión PROVEEDOR, se efectúan los
siguientes pasos:
a) Definimos a la Tabla PROVEEDOR de la base de datos
BD_MADERERA como origen de datos.

b) Determinamos la Dimensión Cliente Como destino de Datos.

37
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión PROVEEDOR

d) Presionamos F5 para correr y detectar algún error

38
Paso 4: Poblamiento de la Dimensión SUCURSAL
Para Transferir los datos a la dimensión SUCURSAL, se efectúan los
siguientes pasos:
a) Definimos a la Tabla SUCURSAL de la base de datos
BD_MADERERA como origen de datos.

b) Determinamos la Dimensión Cliente Como destino de Datos.

39
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión SUCURSAL

d) Presionamos F5 para correr y detectar algún error

40
Paso 5: Poblamiento de la Dimensión TIPO_COMPROBANTE_PAGO
Para Transferir los datos a la dimensión TIPO_COMPROBANTE_PAGO,
se efectúan los siguientes pasos:
a) Definimos a la Tabla TIPO_COMPROBANTE_PAGO de la base de
datos BD_MADERERA como origen de datos.

b) Determinamos la Dimensión Cliente Como destino de Datos.

41
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión
TIPO_COMPROBANTE_PAGO

d) Presionamos F5 para correr y detectar algún error

42
Paso 6: Poblamiento de la Dimensión TRANSPORTISTA
Para Transferir los datos a la dimensión TRANSPORTISTA, se efectúan
los siguientes pasos:
a) Definimos a la Tabla TRANSPORTISTA de la base de datos
BD_MADERERA como origen de datos.

b) Determinamos la Dimensión Cliente Como destino de Datos.

43
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión TRANSPORTISTA

d) Presionamos F5 para correr y detectar algún error

44
Paso 7: Poblamiento de la Dimensión PRODUCTO
Para Transferir los datos a la dimensión PRODUCTO, se efectúan los
siguientes pasos:
a) Definimos a la Tabla PRODUCTO de la base de datos
BD_MADERERA como origen de datos.

b) Determinamos la Dimensión Cliente Como destino de Datos.

45
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión PRODUCTO

d) Presionamos F5 para correr y detectar algún error

46
Paso 8: Poblamiento de la Dimensión TIPO_MADERA
Para Transferir los datos a la dimensión TIPO_MADERA, se efectúan los
siguientes pasos:
a) Definimos a la Tabla TIPO_MADERA de la base de datos
BD_MADERERA como origen de datos.

b) Determinamos la Dimensión Cliente Como destino de Datos.

47
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión TIPO_MADERA

d) Presionamos F5 para correr y detectar algún error

48
Paso 9: Poblamiento de la Dimensión METODO_PAGO
Para Transferir los datos a la dimensión METODO_PAGO, se efectúan
los siguientes pasos:
a) Definimos a la Tabla METODO_PAGO de la base de datos
BD_MADERERA como origen de datos.

b) Determinamos la Dimensión Cliente Como destino de Datos.

49
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión METODO_PAGO

d) Presionamos F5 para correr y detectar algún error

50
Paso 10: Poblamiento de la Dimensión USUARIO
Para Transferir los datos a la dimensión USUARIO, se efectúan los
siguientes pasos:
a) Definimos una sentencia SQL de la base de datos
BD_MADERERA como origen de datos.
SELECT TIPO_USUARIO.Descripcion, USUARIO.Nombre, USUARIO.Cod_Usuario
from USUARIO INNER JOIN TIPO_USUARIO ON
USUARIO.Cod_Tipo_Usuario=TIPO_USUARIO.Cod_Tipo_Usuario

b) Determinamos la Dimensión USUARIO Como destino de Datos.

51
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión USUARIO.

d) Presionamos F5 para correr y detectar algún error

52
Paso 11: Poblamiento de la Dimensión LUGAR_PROCEDENCIA
Para Transferir los datos a la dimensión LUGAR_PROCEDENCIA, se
efectúan los siguientes pasos:
a) Definimos a la Tabla LUGAR_PROCEDENCIA de la base de datos
BD_MADERERA como origen de datos.

b) Determinamos la Dimensión Cliente Como destino de Datos.

53
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión LUGAR_PROCEDENCIA.

d) Presionamos F5 para correr y detectar algún error

54
Paso 12: Poblamiento de la Dimensión TIEMPO
Para Transferir los datos a la dimensión TIEMPO, se efectúan los
siguientes pasos:
a) Definimos una sentencia SQL de la base de datos
BD_MADERERA como origen de datos.
Select DISTINCT DAY (FECHA) AS DIA,
YEAR(FECHA) AÑO,
DATEPART(WEEK,FECHA) SEMANA,
DATENAME(MONTH, FECHA) MES,FECHA
from COMPROBANTE_PAGO ORDER BY FECHA

b) Determinamos la Dimensión TIEMPO Como destino de Datos.

55
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión TIEMPO.

d) Presionamos F5 para correr y detectar algún error

56
Paso 13: Poblamiento de las Tablas de Hechos.
Para poblar la Tabla COMPROBANTE_PAGO_VENTA_FACT se
efectúan los siguientes pasos:
a) Definimos una sentencia SQL de la base de datos
BD_MADERERA como origen de datos.
SELECT DISTINCT TD.Tiempo_Key, DPRO.Cod_Producto_KEY,
UD.Cod_Usuario_Key, SD.Cod_Sucursal_KEY, CLID.[cod_Cliente_Key],
CDI.Cod_Metodo_Pago_Key,TCP.Cod_Tipo_Comprobante_pago_Key,
(DD.CANTIDAD*DD.PRECIOUNIT)AS MONTO, DD.CANTIDAD AS
CANTIDAD_VENDIDA,
D.Cod_comprobante_pago FROM COMPROBANTE_PAGO D INNER JOIN
DETALLE_COMPROBANTE_PAGO DD ON
D.COD_COMPROBANTE_PAGO=DD.COD_COMPROBANTE_PAGO
INNER JOIN USUARIO US ON D.COD_USUARIO=US.COD_USUARIO
INNER JOIN CLIENTE C ON C.Cod_Cliente=D.Cod_Cliente
INNER JOIN PRODUCTO PD ON
PD.COD_PRODUCTO=DD.COD_PRODUCTO
INNER JOIN METODO_PAGO CAT ON
CAT.COD_METODO_PAGO=D.COD_METODO_PAGO
INNER JOIN TIPO_COMPROBANTE_PAGO TIP ON
TIP.COD_TIPO_COMPROBANTE_PAGO=D.COD_TIPO_COMPROBANTE_PA
GO
INNER JOIN SUCURSAL SUC ON SUC.COD_SUCURSAL
=D.COD_SUCURSAL INNER JOIN [DM_MADERERA].DBO.TIEMPO_DIM TD
ON D.FECHA=TD.FECHA
INNER JOIN [DM_MADERERA].DBO.PRODUCTO_DIM DPRO ON
DPRO.COD_PRODUCTO=DD.[COD_PRODUCTO]
INNER JOIN [DM_MADERERA].DBO.USUARIO_DIM UD ON
UD.COD_USUARIO =D.COD_USUARIO
INNER JOIN [DM_MADERERA].DBO.SUCURSAL_DIM SD ON
SD.COD_SUCURSAL=D.COD_SUCURSAL
INNER JOIN [DM_MADERERA].DBO.CLIENTE_DIM CLID ON
CLID.[Cod_Cliente]=D.Cod_Cliente
INNER JOIN [DM_MADERERA].DBO.METODO_PAGO_DIM CDI ON
CDI.COD_METODO_PAGO=D.COD_METODO_PAGO
INNER JOIN [DM_MADERERA].DBO.TIPO_COMPROBANTE_PAGO_DIM TCP
ON
TCP.COD_TIPO_COMPROBANTE_PAGO=D.COD_TIPO_COMPROBANTE_P
AGO

57
b) Determinamos la Dimensión
COMPROBANTE_PAGO_VENTA_FACT Como destino de Datos.

58
c) En las transformaciones se determina que columnas del origen
corresponderán con las de la Dimensión
COMPROBANTE_PAGO_VENTA_FACT.

d) Presionamos F5 para correr y detectar algún error

59
Para poblar la Tabla GUIA_REMITENTE_FACT se efectúan los
siguientes pasos:
a) Definimos una sentencia SQL de la base de datos
BD_MADERERA como origen de datos.
SELECT DISTINCT TD.Tiempo_Key, DPRO.Cod_Tipo_Madera_Key,
UD.Cod_Transportista_Key, SD.Cod_Sucursal_Key, VE.Cod_Proveedor_Key,
CLID.Cod_Lugar_Procedencia_Key, DD.CANTIDAD_MADERA AS
CANTIDAD_MADERA,
D.Cod_Guia_Remitente FROM GUIA_REMITENTE D
INNER JOIN DETALLE_GUIA_REMITENTE DD ON
D.COD_GUIA_REMITENTE=DD.COD_GUIA_REMITENTE
INNER JOIN TRANSPORTISTA US ON D.Cod_Transportista=US.Cod_transportista
INNER JOIN TIPO_MADERA PD ON
PD.COD_TIPO_MADERA=DD.COD_TIPO_MADERA
INNER JOIN LUGAR_PROCEDENCIA C ON
PD.Cod_Lugar_Procedencia=PD.Cod_Lugar_Procedencia
INNER JOIN SUCURSAL SUC ON SUC.COD_SUCURSAL =DD.COD_SUCURSAL
INNER JOIN PROVEEDOR RO ON RO.Cod_Proveedor=D.Cod_Proveedor
INNER JOIN [DM_MADERERA].DBO.PROVEEDOR_DIM VE ON
VE.Cod_Proveedor=D.Cod_Proveedor
INNER JOIN [DM_MADERERA].DBO.TIEMPO_DIM TD ON D.FECHA=TD.FECHA
INNER JOIN [DM_MADERERA].DBO.TIPO_MADERA_DIM DPRO ON
DPRO.COD_TIPO_MADERA=DD.COD_TIPO_MADERA
INNER JOIN [DM_MADERERA].DBO.TRANSPORTISTA_DIM UD ON
UD.Cod_Transportista=D.Cod_Transportista
INNER JOIN [DM_MADERERA].DBO.SUCURSAL_DIM SD ON
SD.COD_SUCURSAL=DD.COD_SUCURSAL
INNER JOIN [DM_MADERERA].DBO.LUGAR_PROCEDENCIA_DIM CLID ON
CLID.Cod_Lugar_Procedencia=PD.Cod_Lugar_Procedencia

60
b) Determinamos la Dimensión GUIA_REMITENTE_FACT Como
destino de Datos.

c) En las transformaciones se determina que columnas del origen


corresponderán con las de la Dimensión
GUIA_REMITENTE_FACT.

61
d) Presionamos F5 para correr y detectar algún error

62
9. REPORTES EN POWER BI
Los datos seleccionados provienen del datamart DM_MADERERA

Se cargan las tablas pertenecientes al datamart DM_MADERERA

Los datos son cargados para realizar los reportes

63
64
REPORTE 1: Las Tablas asociadas son: producto, tiempo, Cantidad Vendida

Muestra las ventas por producto de cada mes y de cada año.

65
REPORTE 2: Las tablas asociadas son: Cantidad_maderda, nombre de proveedor,
tiempo.

Muestra la cantidad de madera recibida por proveedor y por mes

66
REPORTE 3: Las tablas asociadas son: monto de venta, nombre de usuario, producto
y tiempo.

Muestra los montos vendidos por cada usuario de ventas, además de el producto
vendido y montos vendidos por mes

67
REPORTE 4: Las columnas asociadas son: cantidad_madera, nombre del tipo de
madera, tiempo y ubicación.

Muestra la cantidad de madera recibida por tipo de madera, según la ubicación y el


mes

68
REPORTE 5: las columnas asociadas son cantidad vendida por método de pago, el
tipo de comprobante de pago y tiempo.

Muestra la cantidad de pagos al crédito y en efectivo, además de los montos vendidos


por comprobante de pago organizados por mes.

69
REPORTE 6: Las columnas asociadas al reporte son: cantidad de madera, nombre de
transportista, descripción del tipo de madera, tiempo por mes

Muestra la cantidad de madera transportada por Transportista, además de la cantidad de


madera por tipo de madera, organizada por mes.

70
Reporte 7: Las columnas asociadas al reporte son: cantidad de madera, sucursal, tiempo y
nombre de transportista.

Muestra la cantidad de madera dejada por el transportista en cada sucursal, además de la


cantidad de madera recibida por mes.

71
Reporte 8: Las columnas asociada monto de la venta, nombre del cliente, tiempo

Muestra el monto de las compras realizadas por los clientes en un determinado mes, además
de la venta total del mes.

72

S-ar putea să vă placă și