monografia data werehouse
TRANSCRIPT
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 1/102
Universidade Estadual deMaringáCentro de TecnologiaDepartamento de Informática
Data Warehouse para Sistemas de Gestão Empresarial
Douglas Rodrigo Ferreira
TFC-09-05
Maringá - Paraná
Brasil
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 2/102
Universidade Estadual de MaringáCentro de Tecnologia
Departamento de Informática
Data Warehouse para Sistemas de Gestão Empresarial
Douglas Rodrigo Ferreira
TFC-09-05
Trabalho Final de Curso apresentado ao Curso deInformática, do Centro de Tecnologia, da Universidade
Estadual de Maringá.Orientador: Prof. Dra. Maria Madalena Dias
Maringá - Paraná
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 3/102
2005
3
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 4/102
Douglas Rodrigo Ferreira
Data Warehouse para Sistemas de Gestão Empresarial
Este exemplar corresponde à redação final da monografia aprovada como requisito parcial para obtenção do grau de Bacharel em Informática da Universidade Estadual de Maringá,
pela banca examinadora formada pelos seguintes membros:
________________________________________
Orientador: Profa. Dra. Maria Madalena DiasDepartamento de Informática, CTC, DIN
________________________________________ Profa. Sarajane Marques Peres
Departamento de Informática, CTC, DIN
________________________________________ Prof. Jucimar de Almeida Mendes
Departamento de Informática, CTC, DIN
Maringá, Dezembro de 2005
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 5/102
Universidade Estadual de MaringáDepartamento de Informática
Av. Colombo 5790, Maringá-PR CEP 87020-900
Tel: (44) 2614324 Fax: (44) 2635874
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 6/102
Agradecimentos
Agradeço aos meus amigos que me estimularam a continuar. Agradeço de uma forma
especial ao diretor da empresa em que eu trabalho Ademir Sanches Faria que acreditou no
meu trabalho e na minha capacidade de chegar até o fim. Presto ainda meus
agradecimentos a professora Dra. Maria Madalena Dias que me guiou no desenvolvimento
deste trabalho.
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 7/102
Resumo
Atualmente os Sistemas de Gestão Empresarial vem concentrando um grande volume de
dados baseados em operações transacionais realizadas no sistema. Entre esses dados existe
uma séries informações que influenciam na tomada de decisão dos gestores da empresa.
Estes sistemas não são capazes de oferecer a flexibilidade e a agilidade para o cruzamento
de informações e levantamento de dados históricos, seja visualizando os dados de uma
forma sintética ou de uma forma detalhada.
Desta forma, este trabalho propõe o desenvolvimento de um Data Warehouse para um
Sistema de Gestão. Data Warehouse é um banco de dados contendo dados preparados para
facilitar a busca de informações para o suporte à tomada de decisões. Esta forma a
construção de um DW visa transformar dados brutos operacionais em dados analíticos
possibilitando definir metas, encontrar objetos de foco, extrair oportunidades, decisões
sobre estratégias futuras, interpretar comportamentos por meio de dados históricos, entre
outras mais necessidades de uma empresa.
O objetivo desta proposta é a construção de um DW para agilizar o processo de tomada de
decisão, e definição de estratégias a partir de determinados comportamentos identificados
no Data Warehouse e amparar as ações tomadas em informações concisas.O resultado deste projeto é um DW para gestão empresarial. Além disto, são geradas
visões do DW através de ferramentas OLAP como o Microsoft Excel ou o Oracle
Discoverer.
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 8/102
Abstract
Currently the Systems of Enterprise Management come concentrating a great volume of
data based on operations do business carried through in the system. Between these data it
exists series information that influence in the taking of decision of the managers of the
company. These systems are not capable to offer to flexibility and the agility for the
crossing of information and historical data-collecting, either visualizing the data of one
form synthetic or of a detailed form. Of this form, this work considers the development of
one Warehouse Date for a System of Management. Data Warehouse is a data base
contends given prepared to facilitate the search of information for the support to the taking
of decisions. This form the construction of a DW aims at to transform given rude
operational into analytical data making possible to define goals, to find focus objects, to
extract chances, decisions on future strategies, to interpret behaviors by means of historical
data, among others more necessities of a company. The objective of this proposal is the
construction of a DW to speed the process of decision taking, and definition of strategies
from determined behaviors identified in the Date Warehouse and to support the actions
taken in concise information. The result of this project is a DW for enterprise
management. Moreover, views of the DW through tools OLAP are generated as theMicrosoft Excel or the Oracle Discoverer.
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 9/102
Índice
INTRODUÇÃO ...............................................................................................................................1
UMA VISÃO GERAL DE DATA WAREHOUSE .......................................................................2
2.1 CONCEITO DE DATA WAREHOUSE......................................................................................................22.2 CARACTERÍSTICAS DO DATA WAREHOUSE ..........................................................................................22.3 MODELAGEM DOS DADOS...................................................................................................................32.4 GRANULARIDADE..............................................................................................................................42.5 DATA MART....................................................................................................................................42.6 AMBIENTE DE DATA WAREHOUSE......................................................................................................52.7 MOTIVOS PARA CONSTRUÇÃO DE UM DW EM UMA ORGANIZAÇÃO.........................................................5
2.8 COMPONENTES DE UM DATA WAREHOUSE..........................................................................................62.9 CONSIDERAÇÕES FINAIS.....................................................................................................................6
FERRAMENTAS DE APOIO ........................................................................................................7
3.1 MATERIAIS E MÉTODOS....................................................................................................................73.2 SGBD ORACLE...............................................................................................................................73.3 ORACLE WAREHOUSE BUILDER .........................................................................................................73.4 ANALYSIS MANAGER .........................................................................................................................83.5 MICROSOFT EXCEL...........................................................................................................................83.6 CONSIDERAÇÕES FINAIS.....................................................................................................................8
DESENVOLVIMENTO DO DATA WAREHOUSE ....................................................................9
4.1 FONTE DE DADOS..............................................................................................................................94.2 DEFINIÇÃO DA ARQUITETURA..............................................................................................................94.3 DEFINIÇÃO DA MATRIZ DE BARRAMENTO.........................................................................................104.4 DEFINIÇÃO DAS TABELAS DE DIMENSÕES E FATOS.............................................................................104.5 DEFINIÇÃO DE ETL COM ORACLE WAREHOUSE BUILDER .................................................................12
ANALISANDO OS DADOS DO DATA WAREHOUSE ...........................................................32
CONCLUSÃO ..............................................................................................................................38
REFERÊNCIAS BIBLIOGRÁFICAS ........................................................................................39
ARQUIVOS DE IMPORTAÇÃO ................................................................................................40
A.1 MODELOS DOS ARQUIVOS DE IMPORTAÇÃO........................................................................................40
CÓDIGO FONTE .........................................................................................................................41
B.1 SQL – TABELAS EXTERNAS............................................................................................................41B.2 SQL – DIMENSÕES........................................................................................................................66
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 10/102
B.3 SQL – CUBO................................................................................................................................70B.4 SQL – MAPEAMENTOS..................................................................................................................72
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 11/102
Lista de Figuras
FIGURA 1: RELAÇÃO DE ARQUIVOS PARA IMPORTAÇÃO .............................................9
FIGURA 2: MATRIZ DE BARRAMENTO DO DW................................................................. 10
FIGURA 3: FATOS E DIMENSÕES DO DW............................................................................ 10
FIGURA 4: ARQUIVOS DE IMPORTAÇÃO - OWB............................................................... 13
FIGURA 5: ASSISTENTE DE IMPORTAÇÃO DE ARQUIVOS - OWB...............................14
FIGURA 6: ASSISTENTE DE IMPORTAÇÃO DE ARQUIVOS - OWB...............................15
FIGURA 7: TABELAS EXTERNAS - OWB.............................................................................. 16
FIGURA 8: PROPRIEDADES DAS TABELAS EXTERNAS - OWB.....................................17
FIGURA 9: DEFINIÇÃO DOS NÍVEIS DAS DIMENSÕES - OWB .......................................18
FIGURA 10: DEFINIÇÃO DOS ATRIBUTOS DOS NÍVEIS DAS DIMENSÕES - OWB.. . .19
FIGURA 11: DIMENSÃO DE PRODUTOS - OWB.................................................................. 20
FIGURA 12: CHAVES ESTRANGEIRAS DO CUBO - OWB................................................21
FIGURA 13: ATRIBUTOS DO CUBO – OWB.......................................................................... 22
FIGURA 14: CUBO_VENDA - OWB......................................................................................... 23
FIGURA 15: MAPEAMENTO DE CLIENTES -OWB .............................................................24
FIGURA 16: MAPEAMENTO DE PRODUTOS - OWB..........................................................24
FIGURA 17: MAPEAMENTO DA DIMENSÃO TEMPO - OWB...........................................25
FIGURA 18: EDIÇÃO DE EXPRESSÕES - OWB....................................................................26
FIGURA 19: GERENCIADOR DE DISPONIBILIZAÇÃO - OWB......................................... 27
FIGURA 20: EXECUÇÃO DE MAPEAMENTO NO GERENCIADOR DEDISPONIBILIZAÇÃO - OWB..................................................................................................... 27
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 12/102
FIGURA 21: TABELAS NO ORACLE ENTERPRISE MANAGER.......................................28
FIGURA 22: RESULTADO DE UMA CONSULTA - SQL PLUS WORKSHEET................29
FIGURA 23: INTERFACE - ANALYSIS MANAGER.............................................................. 30
FIGURA 24: PROCESSAMENTO DE CUBO - ANALYSIS MANAGER..............................31
FIGURA 25: CUBOS OLAP – MICROSOFT EXCEL.............................................................. 32
FIGURA 26: FONTE DE DADOS – MICROSOFT EXCEL....................................................32
FIGURA 27: TABELA DINÂMICA – MICROSOFT EXCEL................................................. 33
FIGURA 28: DIMENSÃO TEMPO – MICROSOFT EXCEL..................................................34
FIGURA 29: DIMENSÃO PRODUTOS – MICROSOFT EXCEL........................................... 35
FIGURA 30: VENDAS POR VENDEDOR EM UM PERÍODO – MICROSOFT EXCEL... .36
FIGURA 31: VENDAS DE CLIENTES POR VENDEDOR MÊS A MÊS – MICROSOFTEXCEL........................................................................................................................................... 37
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 13/102
Lista de Tabelas
TABELA 1: DIMENSAO_EMPRESA ........................................................................................11
TABELA 2: DIMENSAO_CLIENTEFORNEC .........................................................................11
TABELA 3: DIMENSAO_VENDEDOR .....................................................................................11
TABELA 4: DIMENSAO_TEMPO .............................................................................................11
TABELA 5: DIMENSAO_PRODUTO ........................................................................................11
TABELA 6: CUB_COMPRAVENDA ................................................................................. ........12
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 14/102
Lista de siglas
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 15/102
DW Data Warehouse
DM Data MartETL Extração, Transformação e Carga
OLAP On-Line Analytic Processing
SGBD Sistema Gerenciador de Banco de Dados
SQL Struct Query Language
OWB Oracle Warehouse Builder
CASE Computer-Aided Software Engineering
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 16/102
Capítulo 1
Introdução
Com a ampla utilização de sistemas transacionais nas empresas, as sistematizações dos
processos vêm ocorrendo gradualmente, integrando os sistemas organizacionais
administrativos e operacionais com sistemas de informação. No entanto, os sistemas
transacionais nem sempre atendem a demanda exigida pelas necessidades da área de gestão
da informação. Nas empresas que necessitam de informações para definições e estratégias
de trabalho, são encontrados problemas claros na falta de um sistema de apoio à decisão.
Muitas vezes a tomada de decisão é baseada em “achismos”, expondo ainda mais as
decisões a erros. O processo de extração das informações tende a aumentar
geometricamente de acordo com a complexidade e a granularidade das informações,
podendo tornar inviáveis certos levantamentos de dados.
A visão para a exploração das informações é totalmente baseada no conhecimento dos
gestores. Mesmo com levantamento de informações, nem sempre são obtidas
informações precisas, não garantindo segurança para realização das análises.
Os sistemas transacionais são baseados nos ciclos da operação; um sistema de faturamento,
por exemplo, pode ter um ciclo mensal de venda. Em alguns casos, devido a esta situação,
estes sistemas não oferecem um suporte adequado à consulta de dados históricos.
Estes problemas podem retardar o crescimento das empresas pela não exploração de
segmentos identificados por um Data Warehouse, tornando-as menos competitivas.
Diante de todos estes problemas, identificou-se então a necessidade da construção de um
DW para servir como base de dados de sistemas de apoio à decisão.
1
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 17/102
Capítulo 2
Uma visão geral de Data Warehouse
2.1 Conceito de Data Warehouse
Um Data Warehouse (DW) é um banco de dados contendo dados extraídos do ambiente de
produção da empresa, que foram selecionados, transformados e otimizados para processamento de consulta.
Ambiente de Data Warehouse combina métodos e ferramentas destinados ao suporte à
decisão com uma modelagem de dados que permite gerenciar e controlar uma quantidade
de dados robusta. O DW oferece uma fácil navegação entre dados resumidos e dados
primitivos, provendo ao usuário a capacidade de aprofundar-se num determinado tópico,
investigando níveis de agregação menores ou mesmo o próprio dado primitivo, que muitas
vezes pode vir a ser essencial para a tomada de decisão.
Logo, o DW é o processo de integração de dados corporativos de uma empresa em um
único repositório, a partir do qual os usuários finais podem, facilmente, realizar consultas,
gerar relatórios e fazer análises. Um DW é um ambiente de suporte à tomada de decisão
que alavanca os dados armazenados em diferentes fontes e os organiza e entrega aos
tomadores de decisões da empresa (Singh, 2001).
2.2 Características do Data Warehouse
O DW possui as seguintes características (Inmon, 1997):
• Orientado por assuntos: um DW sempre armazena dados importantes sobre temas
específicos da organização e conforme o interesse das pessoas que irão utilizá-lo;
• Integrado: um DW deve ser capaz de integrar dados provenientes de fontes de
dados distintas para obter uma representação única;
2
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 18/102
• Variante no tempo: os dados são dependentes do tempo. A cada mudança ocorrida
na base de dados operacional, uma nova entrada deve ser criada no DW, a fim de
representar essa mudança. Dessa forma garante-se o histórico das alteraçõesocorridas nos dados. Esta característica pode ser exemplificada com as mudanças
de endereço de um cliente. Em uma época as vendas para o cliente foram realizadas
em um endereço, em outra época, ele pode ter mudado o seu endereço.
• Não volátil: uma vez que o dado é inserido no DW, ele não pode ser modificado ou
excluído. Sempre que houver atualização do mesmo, um novo item de dado é
criado para representar essa mudança.
2.3 Modelagem dos dados
Um dos assuntos mais críticos na construção de um DW é a compreensão dos dados. A
criação de um modelo de dados é o melhor caminho para entender os dados.
O DW utiliza a modelagem dimensional como uma técnica que suporta o ambiente para
análise multidimensional dos dados. O objetivo no projeto do modelo de um DW é deixá-lo com um fácil entendimento, simples para se carregar com dados operacionais e trazer
resultados de consultas o mais rápido possível.
Modelagem dimensional é a técnica em que o modelo proporciona uma representação do
banco de dados consistente com o modo que o usuário visualiza e navega pelo DW,
combinando tabelas com dados históricos em séries temporais, cujo contexto é descrito
através de tabelas de dimensões.
A modelagem dimensional tem como conceito, três elementos principais:
Fatos: Um fato é uma coleção de dados. Cada fato representa um item de negócio,
uma transação ou um evento de negócio. Os fatos são utilizados para fazer a análise
sobre a empresa, ou a instituição. “Fato é tudo aquilo que reflete a evolução dos
negócios do dia-a-dia de uma organização” (MACHADO, 2000).
Dimensões: Dimensões são os elementos que participam de um fato, como por
exemplo: tempo, localização e cliente. A dimensão pode ser organizada de maneira
hierárquica, sendo constituída de vários níveis.
3
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 19/102
Medidas: As medidas são os atributos numéricos que representam um fato. Cada
medida é constituída pela combinação de dimensões que estão em um fato. Um
exemplo de medida é o número de publicações de um determinado autor em um ano.O modelo dimensional permite a visualização de dados na forma de um cubo, onde cada
dimensão do cubo representa o contexto de um determinado fato e a intersecção entre as
dimensões representa as medidas. Matematicamente, o cubo possui apenas três dimensões.
Entretanto, no modelo dimensional, a metáfora do cubo pode possuir quantas dimensões
forem necessárias para representar um determinado fato (MACHADO, 2000). Por este
motivo, este modelo também é chamado de modelo multidimensional.
Dentre os modelos de dados dimensionais, o mais comum é o modelo estrela. O modeloestrela possui uma entidade central denominada tabela de fatos e um conjunto de entidades
menores, as tabelas de dimensões, relacionadas com a tabela de fatos.
2.4 Granularidade
A granularidade está relacionada com o nível de detalhe em que serão armazenados os
dados no DW, sendo que ela é inversamente proporcional ao nível de detalhe, ou seja,
quanto maior a granularidade menor o nível de detalhe. A granularidade afeta o
desempenho das consultas e o volume dos dados tendo, portanto, uma grande importância
para o projeto. Nenhum outro aspecto de projeto terá importância se a granularidade não
for conduzida de forma apropriada e se o particionamento não for cuidadosamente
projetado e implementado (Inmon, 1997).
O nível de granularidade deve ser definido no início do projeto, mas é muito difícil
determinar esta granularidade, sendo que geralmente a melhor solução consiste em
estruturas com alguns níveis de granularidade. Geralmente é utilizada a opção de
múltiplos níveis de granularidade, em que se parte de um baixo nível de granularidade,
passando por níveis intermediários até um alto nível de granularidade.
2.5 Data Mart
Data Mart é um subconjunto de dados do DW que permite o acesso descentralizado das
informações.O DW relaciona a empresa toda, permitindo uma visão global do negócio, enquanto que o
Data Mart é direcionado a um departamento ou a uma área específica do negócio.
4
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 20/102
Como o Data Mart é direcionado a uma área específica do negócio, o volume de dados é
bem menor que no DW e sua implementação é bem mais rápida e a um custo mais baixo
em relação a um DW.
2.6 Ambiente de Data Warehouse
A tecnologia de Data Warehousing é considerada por todos os autores como a evolução
natural do Ambiente de Apoio à Decisão.
Sua crescente utilização pelas empresas está relacionada à necessidade do domínio de
informações estratégicas para garantir respostas e ações rápidas assegurando acompetitividade de um mercado altamente competitivo e mutável.
Dentre os fatores que contribuíram para essa absorção, merecem destaque: os avanços
tecnológicos, as mudanças organizacionais e estruturais nos negócios, a abertura de
mercados e a globalização da economia.
Com o advento da tecnologia de Data Warehousing, os Ambientes de Apoio à Decisão
passaram a ser denominados Ambientes de Data Warehouse. Este novo ambiente contém
como repositórios principais os Data Marts que, por sua vez, compõem o denominado DataWarehouse.
O principal objetivo do Data Warehouse é disponibilizar informações para apoio a decisões
da empresa.
A construção de um Data Warehouse exige a transferência e transformação dos dados
existentes em sistemas corporativos, utilizados nas operações diárias de controle e
operações, para uma base de dados independente que ficará disponibilizada para os
usuários e mantida por meio de processo diferenciado dos sistemas em operação
transacional normais.
2.7 Motivos para construção de um DW em uma organização
Segundo Singh (2001), os motivos para a construção de um DW em uma organização
podem ser:
• Várias plataformas de hardware e de software;
• Constantes alterações nos sistemas transacionais corporativos;
5
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 21/102
• Dificuldade acentuada na recuperação de dados históricos em períodos superiores
ao ano atual de operações;
• Existência de sistemas “pacotes” de fornecedores diferentes;
• Falta de padronização e integração dos dados existentes nos diversos sistemas;
• Carência de documentação e segurança no armazenamento dos dados;
2.8 Componentes de um Data Warehouse
O DW possui os seguintes componentes (KIMBALL, 2002):
Sistemas transacionais de origem: são os sistemas de origem dos dados daempresa.
Data Staging Area: A área de estágio dos dados do DW é uma área de
armazenamento para a realização de processos de transformação ETL ( Extract-
Transformation-Load ). A área de estágio dos dados abrange tudo entre os sistemas
operacionais de origem e a área de apresentação de dados.
Apresentação dos dados: A área de apresentação dos dados é o local em que os
dados ficam organizados, armazenados e também onde os data marts ficamintegrados e tornam-se disponíveis para serem consultados diretamente pelos
usuários.
Ferramentas de acesso a dados: Ferramentas OLAP (On-Line Analytical
Processing ), que permitem análise e gerenciamento dos dados através dos cubos de
uma forma visual.
2.9 Considerações Finais
Neste capítulo foi apresentada uma visão geral sobre Data Warehousing, bem como suas
principais características, conceitos para modelagem, motivos para construção e os
principais componentes.
6
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 22/102
Capítulo 3
Ferramentas de apoio
3.1 Materiais e Métodos
Para o desenvolvimento de um DW é necessário um SGBD (Sistema Gerenciador de
Banco de Dados) para armazenar e gerenciar os dados, ferramentas CASE (Computer-
Aided Software Engineering ) e ETL para o projeto e povoamento do DW. Para analisar osdados foram utilizadas ferramentas OLAP.
Neste trabalho foram utilizados o SGBD Oracle, a ferramenta CASE e ETL Oracle
Warehouse Builder (OWB), o Microsoft Excel como ferramenta OLAP sendo que para o
funcionamento desta última ferramenta é necessário ter o Microsoft SQL Server Analysis
Manager. A seguir algumas considerações sobre estas ferramentas.
3.2 SGBD Oracle
Este SGBD possui muitos recursos que dão um amplo suporte à tarefa de gerenciamento
dos dados de um ambiente operacional, como também na construção de um ambiente
analítico. Ele possui utilitários para extrair dados das origens, recursos para transformar
estes dados e para carregá-los no DW. Ele também oferece recursos para agilizar o acesso
aos dados, fazer backup e manter a segurança no DW.
3.3 Oracle Warehouse Builder
O Oracle Warehouse Builder (OWB) é um aplicativo de múltiplas camadas: interface com
o usuário, gerador de código, integradores, interface de aplicativo Java e o repositório de
metadados. Juntas essas camadas formam um produto ETL integrado que auxilia na
construção e na manutenção do DW.
A integração do OWB com o SGBD Oracle permite que ele opere diferentemente de outras
ferramentas ETL. Primeiramente, o OWB gera scripts que trazem os dados para o SGBD e,
então, explora seus recursos gerando código PL/SQL para ajudá-lo a transformar e carregar
7
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 23/102
os dados no DW. O SGBD Oracle tem seu próprio mecanismo de transformação, com a
vantagem de um carregamento otimizado.
A interface do OWB foi desenvolvida em Java, sendo portanto a mesma ferramenta paraqualquer SO (OracleWB, 2003).
3.4 Analysis Manager
O Analysis Manager é um software do Microsoft SQL Server. No entanto funciona
independentemente do SGBD Microsoft, sendo compatível com vários outros SGBD’s. O
Analysis Manager tem como função gerar e disponibilizar um cubo OLAP entre outrasmais funções.
3.5 Microsoft Excel
O Microsoft Excel possui recursos para conexão com fontes de dados OLAP, possui ainda
recursos como tabela e gráfico dinâmicos para visualização dos cubos.
3.6 Considerações Finais
Muitos fornecedores de soluções para DWs procuram oferecer todas as ferramentas de
forma integrada. A vantagem é que o desenvolvimento com esse tipo de ferramenta é
geralmente realizado em torno de um repositório de metadado, tornando o projeto e a
manutenção do sistema muito mais simplificado. A desvantagem é quanto ao
desenvolvimento do projeto ficar a mercê de único fornecedor, sendo que muitas vezes assoluções oferecidas para determinada etapa do projeto podem não ser as melhores se
comparadas as existentes no mercado.
Neste trabalho optou-se por utilizar as ferramentas da Oracle para SGBD e ETL pela
qualidade das ferramentas. No entanto para o servidor OLAP e ferramenta de consulta foi
utilizado as ferramentas da Microsoft, devido a alta popularidade e facilidade de uso do
Microsoft Excel.
8
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 24/102
Capítulo 4
Desenvolvimento do Data Warehouse
4.1 Fonte de dados
Os dados foram extraídos de uma base de dados do sistema de uma distribuidora de
materiais de construção. O sistema da distribuidora (SGE) é mantido pela empresa Id
Brasil Sistemas. Os arquivos de dados utilizam extensão dbf, no entanto, eles foram
formatados na extensão csv (texto separado por ponto e vírgula) para a importação pelo
Oracle Warehouse Builder. A Figura 1 mostra a relação dos arquivos do SGE que foram
utilizados:
Arquivo Descriçãodb051.dbf Tabela de produtosdb055.dbf Tabela de clientesdb056.dbf Tabela de subgrupo de produtodb057.dbf Tabela de grupo de subgrupodb063.dbf Tabela de fornecedoresdb072.dbf Tabela de marcas de produtosdb079.dbf Tabela de notas fiscais
db204.dbf Tabela de produtos da notadb059.dbf Tabela de regiãodb083.dbf Tabela de vendedoresdb084.dbf Tabela de empresas
Figura 1: Relação de arquivos para importação
4.2 Definição da arquitetura
Para a definição da arquitetura, inicialmente foi definida a matriz de barramento e
posteriormente a definição das tabelas de fato e de dimensões.
9
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 25/102
4.3 Definição da Matriz de Barramento
Através das informações obtidas nas tabelas do SGE foi definida então a matriz de
barramento para a elaboração do DW, representada na Figura 2.
Empresa Cliente Fornecedor Vendedor Tempo Produto
Venda X X X X X
Compra X X X X
Figura 2: Matriz de Barramento do DW.
4.4 Definição das Tabelas de Dimensões e Fatos
A Figura 3 mostra o Modelo Entidade-Relacionamento do DW definido e as Tabelas
1,2,3,4,5 e 6 relacionam os atributos, e suas características, das tabelas de dimensão e de
fato do DW.
Dimensao_Empr
PK ChaveEmp
RazaoSocia
Dimensao_ClienteFornec
PK ChaveClienteFornec
RazaoSocial
Fantasia
TipoPessoa
Regiao
Endereco
Bairro
Cidade
Estado
TipoCliClassificacao
Dimensao_Produto
PK ChaveProduto
Produto
CodMarca
Marca
CodSubGrupo
SubGrupo
CodGrupo
Fato_CompraVenda
FK4 ChaveEmpresa
FK1 ChaveClienteFornec
FK5 ChaveVendedor FK3 ChaveTempo
FK2 ChaveProduto
Qtde
PrecoVCDesc
PrecoCompra
Desconto
ValorTotal
Ascresc
ValorUnit
PrazoMedio
MargemLucro
TipoReg
Dimensao _Tempo
PK ChaveTempo
Dia
Mes
Ano
DER – PROJETO DW
Dimensao_V
PK ChaveVe
Vendedor
Figura 3: Fatos e dimensões do DW.
10
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 26/102
Tabela 1: Dimensao_EmpresaNome da Coluna Tipo Tamanho DescriçãoChaveEmpresa NUMBER Identificador da empresa (Sequencial)
RazaoSocial VARCHAR 50 Razão social da empresaCidade VARCHAR 40 Cidade da empresaEstado VARCHAR 02 Estado da empresa
Tabela 2: Dimensao_ClienteFornecNome da Coluna Tipo Tamanho DescriçãoChaveClienteFornec NUMBER Identificador de cliente e fornecedor
(Sequencial)RazaoSocial VARCHAR 50 Razão socialFantasia VARCHAR 50 Fantasia
TipoPessoa VARCHAR 01 Tipo de pessoa [F]isica, [J]uridicaRegiao VARCHAR 40 Região do clienteEndereço VARCHAR 50 EndereçoBairro VARCHAR 40 BairroCidade VARCHAR 40 CidadeTipoCli VARCHAR 01 [C]liente, [F]ornecedor Classificação VARCHAR 01 [R]uim, Re[g]ular, [B]om, [E]xcelente
Tabela 3: Dimensao_VendedorNome da Coluna Tipo Tamanho Descrição
ChaveVendedor NUMBER Identificador do vendedor (Sequencial)Vendedor VARCHAR 50 Nome do vendedor
Tabela 4: Dimensao_TempoNome da Coluna Tipo Tamanho DescriçãoChaveTempo DATE Identificador de tempoDia NUMBER Número do dia do mêsMês NUMBER Número do mês do anoAno NUMBER Ano
Tabela 5: Dimensao_ProdutoNome da Coluna Tipo Tamanho DescriçãoChaveProduto NUMBER Identificador do produto (Sequencial)Produto VARCHAR 40 Descrição do produtoCodMarca NUMBER Código da marcaMarca VARCHAR 40 Descrição da marcaCodSubGrupo NUMBER Código do SubGrupoSubGrupo VARCHAR Descrição do SubGrupoCodGrupo NUMBER Código do grupoGrupo VARCHAR Descrição do grupo
11
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 27/102
Tabela 6: Cub_CompraVendaNome da Coluna Tipo Tamanho DescriçãoChaveEmpresa NUMBER Identificador da empresa (FK
Dimensão)ChaveClienteFornec NUMBER Identificador de cliente e fornecedor
(FK Dimensão)ChaveVendedor NUMBER Identificador do vendedor (FK
Dimensão)ChaveTempo DATE Identificador de tempo (FK Dimensão)ChaveProduto NUMBER Identificador do produto (FK
Dimensão)Qtde FLOAT Quantidade de venda do produtoPrecoVCDesc FLOAT Preço de venda com desconto e
acréscimoPrecoCompra FLOAT Preço de compra do produtoDesconto FLOAT Valor do descontoValorTotal FLOAT ValorUnit * QtdeAcresc FLOAT Valor de acréscimo na vendaValorUnit FLOAT Valor unitário de venda do produtoPrazoMedio NUMBER Número do prazo médioMargemLucro FLOAT Margem de lucro do produtoTipoReg VARCHAR 01 [C]ompra, [V]enda
4.5 Definição de ETL com Oracle Warehouse Builder
Com o Oracle Warehouse Builder deve-se inicialmente importar todos os arquivos que
serão utilizados para o DW, o OWB oferece um Wizard para a importação dos arquivos.
Neste wizard pode ser definido todos os parâmetros do arquivo, como separação de
campos, tipo de dados, mascara de formatação etc. A Figura 4 mostra a relação dos
arquivos que serão manipulados para importação.
12
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 28/102
Figura 4: Arquivos de importação - OWB.
As Figuras 5 e 6 mostram a interface do assistente de importação dos arquivos do OWB.
13
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 29/102
Figura 5: Assistente de importação de arquivos - OWB.
14
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 30/102
Figura 6: Assistente de importação de arquivos - OWB.
Após a importação dos arquivos devem ser criadas as tabelas externas a partir dos arquivos
importados. O Oracle visualiza as tabelas externas como uma tabela comum permitindo a
realização de comandos SQL utilizando recursos avançados como Joins, Unions etc.,
conforme pode ser visto nas Figuras 7 e 8.
15
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 31/102
Figura 7: Tabelas externas - OWB.
16
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 32/102
Figura 8: Propriedades das tabelas externas - OWB.
A seguir, devem ser criadas as dimensões que serão utilizadas pelo cubo. na criação das
dimensões já deve ser definido seus respectivos níveis e as hierarquias.
As Figuras 9, 10 e 11 mostram as interfaces do OWB para a criação das dimensões e
definição de suas propriedades.
17
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 33/102
Figura 9: Definição dos níveis das dimensões - OWB
18
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 34/102
Figura 10: Definição dos atributos dos níveis das dimensões - OWB.
19
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 35/102
Figura 11: Dimensão de produtos - OWB.
Após a criação das dimensões deve ser criado o cubo referenciando as dimensões que serão
utilizadas, conforme pode ser visto nas Figuras 12, 13 e 14.
20
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 36/102
Figura 12: Chaves estrangeiras do cubo - OWB.
21
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 37/102
Figura 13: Atributos do cubo – OWB.
22
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 38/102
Figura 14: Cubo_venda - OWB.
Após a definição das dimensões, das tabelas externas e dos cubos, deve ser criado o
processo de mapeamento, que é responsável pela alimentação do DW e transformação dos
dados.
Os mapeamentos foram divididos para cada dimensão e cubo.
Para o mapeamento da dimensão de clientes foi realizado junção com as tabelas de cidade
e de região. No mapeamento da dimensão de produtos foi necessário realizar junção com as tabelas de
subgrupo, grupo e marca.
O mapeamento de tempo foi extraído da tabela externa de vendas, inicialmente foi
realizado um filtro para datas não nulas, posteriormente, foi inserido o desduplicador
(distinct) para não carregar datas iguais da tabela, estas datas foram ordenadas em ordem
ascendente e foi utilizado também expressões para que ano, mês e dia fossem
desmembrados.As Figuras 15 e 16 mostram graficamente a realização das junções necessárias.
23
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 39/102
Figura 15: Mapeamento de clientes -OWB
Figura 16: Mapeamento de produtos - OWB.
24
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 40/102
As Figuras 17 e 18 mostram como o atributo data foi transformado e carregado na tabela
de dimensão Tempo.
Figura 17: Mapeamento da dimensão tempo - OWB.
25
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 41/102
Figura 18: Edição de expressões - OWB.
Com todos os mapeamentos definidos deve-se então utilizar o Gerenciador de
Disponibilização que tem como função criar fisicamente no banco de dados a estrutura
definida no OWB, também é possível realizar a execução dos mapeamentos.
As Figuras 19 e 20 mostram o gerenciador de disponibilização.
26
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 42/102
Figura 19: Gerenciador de disponibilização - OWB.
Figura 20: Execução de mapeamento no Gerenciador de disponibilização - OWB.
27
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 43/102
Após a execução dos mapeamentos é possível ver no Banco de dados a importação e o
processamento realizado pelo OWB, pelo SQL* PLUS e pelo Oracle Enterprise Manager.
A Figura 21 mostra o OEM e a Figura 22 mostra o resultado de um select na dimensão de
Produtos.
Figura 21: Tabelas no Oracle Enterprise Manager.
28
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 44/102
Figura 22: Resultado de uma consulta - SQL Plus worksheet.
Nesta fase o DW já está povoado, faltando portando a criação do Cubo OLAP para
consulta. Para isto será utilizado Analisys Manager que é Servidor OLAP utilizado pelo
Microsoft Excel. Após a configuração do Analisys Manager para funcionamento com o
Oracle devem ser realizados os seguintes passos:
• Carregar as dimensões e os cubos que serão utilizados;
• Referenciar todas as dimensões utilizadas pelo cubo;
• Processar o cubo;A Figura 23 mostra a interface do Analysis Manager.
29
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 45/102
Figura 23: Interface - Analysis Manager.
A Figura 24 mostra o processamento do cubo.
30
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 46/102
Figura 24: Processamento de cubo - Analysis Manager.
Após o processamento o cubo já pode ser consultado pelo Microsoft Excel.
31
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 47/102
Capítulo 5
Analisando os dados do Data Warehouse
A análise das informações existentes no DW foram realizadas no Microsoft Excel,utilizando tabela dinâmica. Deve ser configurado inicialmente qual cubo OLAP seráutilizado na importação de dados externos do Microsoft Excel conforme as Figuras 25 e26.
Figura 25: Cubos OLAP – Microsoft Excel.
Figura 26: Fonte de dados – Microsoft Excel.
32
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 48/102
Após a configuração do cubo OLAP será disponibilizado uma tabela dinâmica, e uma lista
de campos disponíveis para realização das consultas. Uma tabela dinâmica divide a
visualização dos campos em: campos de página (cabeçalho), campos de linha e campos decoluna. Nesta etapa é possível compreender o porquê do nome de cubo, pois os dados
podem ser visualizados em várias dimensões.
A Figura 27 mostra a tabela dinâmica sem nenhum campo inserido.
Figura 27: Tabela dinâmica – Microsoft Excel.
As dimensões de tempo e produto podem ser visualizadas de forma hierárquica, dos dados
resumidos até o mais detalhado. Esta estrutura permite uma fácil navegação entre
informações resumidas e detalhadas, podendo selecionar um ano ou um dia na tabela de
tempo para visualização das vendas, como mostra a Figura 28 e 29.
33
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 49/102
Figura 28: Dimensão Tempo – Microsoft Excel.
34
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 50/102
Figura 29: Dimensão Produtos – Microsoft Excel.
Arrastando os campos para a tabela dinâmica é possível montar as consultas das formas
mais variadas, o exemplo abaixo ilustra uma consulta de vendas por vendedor mensal, o
outro exemplo é uma consulta de vendas por vendedor de clientes mês a mês.
35
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 51/102
Figura 30: Vendas por vendedor em um período – Microsoft Excel.
36
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 52/102
Figura 31: Vendas de clientes por vendedor mês a mês – Microsoft Excel.
37
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 53/102
Conclusão
Este trabalho objetivou a construção de um ambiente de apoio a tomada de decisão de
gestão empresarial, aumentando assim a capacidade de extração de informação e
reconhecimento dos dados.
A maior contribuição deste trabalho é o conhecimento da tecnologia de Data Warehousing
e a identificação de um segmento de trabalho a ser explorado.
Durante o desenvolvimento deste projeto surgiram muitos problemas e dificuldades. A
primeira das dificuldades foi instalar e configurar as ferramentas necessárias para o
desenvolvimento, gerenciamento e utilização do ambiente. Outra dificuldade surgiu na fasede desenvolvimento do DW. A etapa mais crítica dessa fase foi a de extração dos dados da
base de dados operacional, devido a erros na formatação dos arquivos para importação.
Por meio deste trabalho pôde-se adquirir muita experiência no desenvolvimento de
sistemas de apoio à tomada de decisão, bem como no aperfeiçoamento do conhecimento de
algumas ferramentas e aprendizado de outras.
Com relação a trabalhos futuros que possam complementar o que foi desenvolvido,
destacam-se:• A adição de novos assuntos ao Data Warehouse como financeiro e estoque.
• Criação de uma rotina de atualização do DW.
• Melhorias nas dimensões.
38
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 54/102
Referências Bibliográficas
(Machado, 2000) MACHADO, Felipe N. R. Projeto de Data Warehouse –
Uma visão Multidimensional , Ed. Érica: São Paulo,
2000.
(Inmon, 1997) INMON, W. H. Como Construir o Data Warehouse, Ed.
Campus: Rio de Janeiro, 1997.
(Kimball, 2002) KIMBALL, Ralph; MARGY, Ross. The Data Warehouse
Toolkit – Guia Completo para Modelagem
Dimensional , Ed. Campus: Rio de Janeiro, 2002
(Singh, 2001) SINGH, Harry S. Data Warehouse - Conceitos,Tecnologias, Implementacão e Gerenciamento, Ed.Makron Books: São Paulo, 2001.
(OracleWB, 2003) Oracle Warehouse Builder User’s Guide. Na OracleTechnical White Paper. Julho, 2003
39
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 55/102
Apêndice A
Arquivos de importação
A.1 Modelos dos arquivos de importação
2,2720,20040401,3,"V",5100,4.000,22.99000,17.980,0.000,"X"
2,5016,20040401,7,"V",494,30.000,0.84600,0.576,0.000,"X"
2,5016,20040401,7,"V",1561,24.000,0.20800,0.141,0.000,"X"2,5016,20040401,7,"V",1562,24.000,0.26000,0.177,0.000,"X"
2,5016,20040401,7,"V",1564,48.000,0.53400,0.364,0.000,"X"
2,5016,20040401,7,"V",1904,5.000,2.63100,1.778,0.000,"X"
2,5016,20040401,7,"V",2128,5.000,4.17500,2.821,0.000,"X"
2,5016,20040401,7,"V",2875,3.000,2.79000,2.097,0.000,"X"
2,5016,20040401,7,"V",4041,6.000,0.42000,0.280,0.000,"X"
2,5016,20040401,7,"V",4091,6.000,0.34700,0.228,0.000,"X"
2,5016,20040401,7,"V",4451,100.000,0.18400,0.120,0.000,"X"
2,5016,20040401,7,"V",55210,1.000,60.35700,44.056,0.000,"X"
2,5016,20040401,7,"V",55211,1.000,60.35700,44.056,0.000,"X"
2,5016,20040401,7,"V",71008,1.000,25.77000,21.560,0.000,"X"
2,5016,20040401,7,"V",72002,1.000,7.99000,5.100,0.000,"X"
2,3662,20040401,3,"V",5555,1.000,56.58800,40.400,0.000,"X"
2,3662,20040401,3,"V",50042,30.000,0.30300,0.206,0.000,"X"
2,313,20040401,2,"V",1024,12.000,7.49000,5.670,0.000,"X"
2,313,20040401,2,"V",4155,10.000,6.99000,5.480,0.000,"X"
2,313,20040401,2,"V",91015,12.000,0.97900,0.680,0.000,"X"
2,313,20040401,2,"V",91023,24.000,0.99000,0.712,0.000,"X"
2,313,20040401,2,"V",91112,12.000,0.95000,0.660,0.000,"X"
2,313,20040401,2,"V",91137,12.000,0.96500,0.670,0.000,"X"
2,313,20040401,2,"V",91155,12.000,0.97800,0.679,0.000,"X"
2,313,20040401,2,"V",91171,24.000,0.98200,0.687,0.000,"X"
2,1123,20040401,2,"V",211,180.000,0.20500,0.133,0.000,"X"
2,1123,20040401,2,"V",1048,1.000,21.27100,14.372,0.000,"X"
2,1123,20040401,2,"V",1224,12.000,2.81000,1.899,0.000,"X"
2,1123,20040401,2,"V",2355,12.000,1.83100,1.237,0.000,"X"
2,1123,20040401,2,"V",4119,12.000,1.86900,1.263,0.000,"X"
2,1123,20040401,2,"V",50070,12.000,1.83800,1.450,0.000,"X"
2,1123,20040401,2,"V",51007,10.000,8.52500,5.760,0.000,"X"
2,1123,20040401,2,"V",61059,6.000,6.39000,5.030,0.000,"X"
40
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 56/102
Apêndice B
Código Fonte
B.1 SQL – Tabelas externas
WHENEVER SQLERROR EXIT FAILURE;
CREATE TABLE "EXT_DB051"
(
"C_001" NUMBER,
"C_002" VARCHAR2(40),
"C_003" NUMBER,
"C_004" NUMBER,
"C_006" VARCHAR2(5),
"C_007" VARCHAR2(5),"C_008" NUMBER,
"C_009" VARCHAR2(5),
"C_010" VARCHAR2(5),
"C_011" VARCHAR2(5),
"C_012" VARCHAR2(5),
"C_013" VARCHAR2(5),
"C_015" VARCHAR2(5),"C_016" VARCHAR2(5),
"C_018" VARCHAR2(5),
"C_019" VARCHAR2(5),
"C_020" VARCHAR2(5),
"C_021" VARCHAR2(5),
"C_022" VARCHAR2(5),
"C_023" VARCHAR2(5),"C_024" VARCHAR2(5),
"C_025" VARCHAR2(5),
41
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 57/102
"C_026" VARCHAR2(5),
"C_027" VARCHAR2(5),
"C_028" VARCHAR2(5),"C_029" VARCHAR2(5),
"C_030" VARCHAR2(5),
"C_031" VARCHAR2(5),
"C_032" VARCHAR2(6),
"C_034" VARCHAR2(5),
"C_035" VARCHAR2(5),
"C_036" VARCHAR2(5),"C_042" NUMBER,
"C_043" VARCHAR2(5),
"C_044" NUMBER)
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
STRING SIZES ARE IN BYTES
BADFILE BASE_CONECTOR:'PROD_ERRO.TXT'
NODISCARDFILE
LOGFILE BASE_CONECTOR:'PROD_LOG.TXT'
FIELDS
TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"' AND '"'
NOTRIM
(
"C_001" ,
"C_002" ,
"C_003" ,
"C_004" ,
"C_006" ,
42
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 58/102
"C_007" ,
"C_008" ,
"C_009" ,"C_010" ,
"C_011" ,
"C_012" ,
"C_013" ,
"C_015" ,
"C_016" ,
"C_018" ,"C_019" ,
"C_020" ,
"C_021" ,
"C_022" ,
"C_023" ,
"C_024" ,
"C_025" ,"C_026" ,
"C_027" ,
"C_028" ,
"C_029" ,
"C_030" ,
"C_031" ,
"C_032" ,
"C_034" ,
"C_035" ,
"C_036" ,
"C_042" ,
"C_043" ,
"C_044"
)
)
LOCATION (
43
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 59/102
BASE_CONECTOR:'DB051.csv'
)
)REJECT LIMIT UNLIMITED
NOPARALLEL
;
CREATE TABLE "EXT_DB053"
("C_001" NUMBER,
"C_002" VARCHAR2(40),
"C_003" VARCHAR2(18),
"C_004" VARCHAR2(18),
"C_005" VARCHAR2(37),
"C_006" VARCHAR2(13),
"C_007" VARCHAR2(7),"C_008" VARCHAR2(2))
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
STRING SIZES ARE IN BYTES
BADFILE 'PROD_ERRO.TXT'
NODISCARDFILE
LOGFILE 'PROD_LOG.TXT'
FIELDS
TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"' AND '"'
NOTRIM
(
44
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 60/102
"C_001" ,
"C_002" ,
"C_003" ,"C_004" ,
"C_005" ,
"C_006" ,
"C_007" ,
"C_008"
)
)LOCATION (
BASE_CONECTOR:'DB053.csv'
)
)
REJECT LIMIT UNLIMITED
NOPARALLEL
;
CREATE TABLE "EXT_DB054"
(
"C_001" NUMBER,
"C_002" VARCHAR2(40),
"C_003" VARCHAR2(39),
"C_004" VARCHAR2(40),
"C_005" VARCHAR2(21),
"C_006" VARCHAR2(29),
"C_007" VARCHAR2(5),
"C_008" VARCHAR2(17),
"C_009" VARCHAR2(15),
"C_010" VARCHAR2(18),
"C_011" VARCHAR2(16),
"C_012" VARCHAR2(10),
"C_013" VARCHAR2(30),
45
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 61/102
"C_014" NUMBER,
"C_015" VARCHAR2(5),
"C_016" VARCHAR2(5),"C_018" VARCHAR2(5),
"C_019" VARCHAR2(18),
"C_020" VARCHAR2(36),
"C_021" VARCHAR2(5),
"C_022" VARCHAR2(23),
"C_023" VARCHAR2(5),
"C_024" VARCHAR2(20),"C_025" VARCHAR2(13),
"C_026" VARCHAR2(5),
"C_027" VARCHAR2(5),
"C_028" VARCHAR2(28),
"C_029" VARCHAR2(18),
"C_030" VARCHAR2(5),
"C_031" VARCHAR2(5),"C_032" VARCHAR2(5),
"C_033" VARCHAR2(8),
"C_034" VARCHAR2(5))
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
STRING SIZES ARE IN BYTES
BADFILE 'PROD_ERRO.TXT'
NODISCARDFILE
LOGFILE 'PROD_LOG.TXT'
SKIP 1
FIELDS
TERMINATED BY ';'
46
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 62/102
OPTIONALLY ENCLOSED BY '"' AND '"'
NOTRIM
("C_001" ,
"C_002" ,
"C_003" ,
"C_004" ,
"C_005" ,
"C_006" ,
"C_007" ,"C_008" ,
"C_009" ,
"C_010" ,
"C_011" ,
"C_012" ,
"C_013" ,
"C_014" ,"C_015" ,
"C_016" ,
"C_018" ,
"C_019" ,
"C_020" ,
"C_021" ,
"C_022" ,
"C_023" ,
"C_024" ,
"C_025" ,
"C_026" ,
"C_027" ,
"C_028" ,
"C_029" ,
"C_030" ,
"C_031" ,
47
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 63/102
"C_032" ,
"C_033" ,
"C_034")
)
LOCATION (
BASE_CONECTOR:'DB054.csv'
)
)
REJECT LIMIT UNLIMITEDNOPARALLEL
;
CREATE TABLE "EXT_DB055"
(
"C_001" NUMBER,
"C_002" VARCHAR2(1),"C_003" VARCHAR2(40),
"C_004" VARCHAR2(40),
"C_005" VARCHAR2(40),
"C_007" VARCHAR2(30),
"C_008" VARCHAR2(5),
"C_009" VARCHAR2(15),
"C_010" VARCHAR2(15),
"C_011" VARCHAR2(18),
"C_012" VARCHAR2(15),
"C_013" VARCHAR2(5),
"C_014" VARCHAR2(1),
"C_015" VARCHAR2(10),
"C_016" VARCHAR2(30),
"C_017" VARCHAR2(5),
"C_018" VARCHAR2(8),
"C_019" VARCHAR2(5),
48
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 64/102
"C_020" VARCHAR2(9),
"C_021" VARCHAR2(36),
"C_022" VARCHAR2(10),"C_025" VARCHAR2(7),
"C_026" VARCHAR2(37),
"C_029" NUMBER,
"C_030" NUMBER,
"C_037" VARCHAR2(5),
"C_038" VARCHAR2(5),
"C_039" VARCHAR2(5),"C_040" VARCHAR2(5),
"C_041" VARCHAR2(5),
"C_050" VARCHAR2(5),
"C_062" VARCHAR2(20),
"C_063" VARCHAR2(20),
"C_064" VARCHAR2(20),
"C_065" VARCHAR2(20),"C_072" VARCHAR2(5),
"C_073" VARCHAR2(7),
"C_074" VARCHAR2(10),
"C_075" VARCHAR2(7),
"C_076" VARCHAR2(9),
"C_077" VARCHAR2(7),
"C_078" NUMBER,
"C_079" VARCHAR2(5),
"C_080" VARCHAR2(5),
"C_083" VARCHAR2(5),
"C_088" VARCHAR2(5),
"C_089" VARCHAR2(5),
"C_090" VARCHAR2(46),
"C_091" NUMBER,
"C_092" VARCHAR2(10),
"C_093" VARCHAR2(5),
49
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 65/102
"C_094" VARCHAR2(9),
"C_095" VARCHAR2(10),
"C_096" VARCHAR2(5),"C_097" VARCHAR2(1))
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252STRING SIZES ARE IN BYTES
BADFILE 'PROD_ERRO.TXT'
NODISCARDFILE
LOGFILE 'PROD_LOG.TXT'
FIELDS
TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"' AND '"'NOTRIM
(
"C_001" ,
"C_002" ,
"C_003" ,
"C_004" ,
"C_005" ,
"C_007" ,
"C_008" ,
"C_009" ,
"C_010" ,
"C_011" ,
"C_012" ,
"C_013" ,
"C_014" ,
"C_015" ,
50
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 66/102
"C_016" ,
"C_017" ,
"C_018" ,"C_019" ,
"C_020" ,
"C_021" ,
"C_022" ,
"C_025" ,
"C_026" ,
"C_029" ,"C_030" ,
"C_037" ,
"C_038" ,
"C_039" ,
"C_040" ,
"C_041" ,
"C_050" ,"C_062" ,
"C_063" ,
"C_064" ,
"C_065" ,
"C_072" ,
"C_073" ,
"C_074" ,
"C_075" ,
"C_076" ,
"C_077" ,
"C_078" ,
"C_079" ,
"C_080" ,
"C_083" ,
"C_088" ,
"C_089" ,
51
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 67/102
"C_090" ,
"C_091" ,
"C_092" ,"C_093" ,
"C_094" ,
"C_095" ,
"C_096" ,
"C_097"
)
)LOCATION (
BASE_CONECTOR:'DB055.csv'
)
)
REJECT LIMIT UNLIMITED
NOPARALLEL
;
WHENEVER SQLERROR EXIT FAILURE;
CREATE TABLE "EXT_DB056"
(
"C_001" NUMBER,
"C_002" VARCHAR2(11))
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
STRING SIZES ARE IN BYTES
52
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 68/102
BADFILE BASE_CONECTOR:'GRUPO_ERRO.TXT'
NODISCARDFILE
LOGFILE BASE_CONECTOR:'GRUPO_LOG.TXT'SKIP 1
FIELDS
TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"' AND '"'
NOTRIM
(
"C_001" ,"C_002"
)
)
LOCATION (
BASE_CONECTOR:'DB056.csv'
)
)REJECT LIMIT UNLIMITED
NOPARALLEL
;
CREATE TABLE "EXT_DB063"
(
"C_001" NUMBER,
"C_002" NUMBER,
"C_003" VARCHAR2(35))
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
53
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 69/102
STRING SIZES ARE IN BYTES
BADFILE 'GRUPO_ERRO.TXT'
NODISCARDFILELOGFILE BASE_CONECTOR:'VENDEDOR_LOG.TXT'
FIELDS
TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"' AND '"'
NOTRIM
(
"C_001" ,"C_002" ,
"C_003"
)
)
LOCATION (
BASE_CONECTOR:'DB063.csv'
))
REJECT LIMIT UNLIMITED
NOPARALLEL
;
CREATE TABLE "EXT_DB065"
(
"C_001" NUMBER,
"C_002" VARCHAR2(38),
"C_003" NUMBER)
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
54
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 70/102
STRING SIZES ARE IN BYTES
BADFILE BASE_CONECTOR:'SUBGRUPO_ERRO.TXT'
NODISCARDFILELOGFILE BASE_CONECTOR:'SUBGRUPO_LOG.TXT'
FIELDS
TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"' AND '"'
NOTRIM
(
"C_001" ,"C_002" ,
"C_003"
)
)
LOCATION (
BASE_CONECTOR:'DB065.csv'
))
REJECT LIMIT UNLIMITED
NOPARALLEL
;
CREATE TABLE "EXT_DB067"
(
"C_001" NUMBER,
"C_002" VARCHAR2(22))
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
STRING SIZES ARE IN BYTES
55
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 71/102
BADFILE BASE_CONECTOR:'MARCA_ERRO.TXT'
NODISCARDFILE
LOGFILE BASE_CONECTOR:'MARCA_LOG.TXT'SKIP 1
FIELDS
TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"' AND '"'
NOTRIM
(
"C_001" ,"C_002"
)
)
LOCATION (
BASE_CONECTOR:'DB067.csv'
)
)REJECT LIMIT UNLIMITED
NOPARALLEL
;
CREATE TABLE "EXT_DB072"
(
"C1" NUMBER,
"C2" VARCHAR2(15),
"C3" VARCHAR2(1),
"C4" VARCHAR2(1),
"C6" NUMBER,
"C7" NUMBER,
"C8" DATE,
"C11" FLOAT(126) ,
"C12" FLOAT(126) ,
56
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 72/102
"C15" FLOAT(126) ,
"C16" FLOAT(126) ,
"C19" FLOAT(126) ,"C20" FLOAT(126) ,
"C21" FLOAT(126) ,
"C22" NUMBER,
"C23" VARCHAR2(1),
"C25" VARCHAR2(1),
"C26" NUMBER,
"C28" FLOAT(126) ,"C30" NUMBER,
"C31" NUMBER,
"C32" VARCHAR2(20),
"C33" FLOAT(126) ,
"C35" VARCHAR2(8),
"C36" NUMBER,
"C37" VARCHAR2(1),"C38" FLOAT(126) ,
"C39" FLOAT(126) ,
"C40" FLOAT(126) ,
"C42" FLOAT(126) ,
"C43" VARCHAR2(20),
"C45" VARCHAR2(30),
"C46" NUMBER,
"C47" VARCHAR2(3),
"C48" VARCHAR2(5),
"C49" NUMBER,
"C50" NUMBER,
"C51" NUMBER,
"C52" NUMBER,
"C53" FLOAT(126) ,
"C54" FLOAT(126) ,
"C55" VARCHAR2(1),
57
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 73/102
"C56" VARCHAR2(1),
"C57" NUMBER,
"C58" NUMBER,"C59" VARCHAR2(3),
"C60" VARCHAR2(8),
"C61" NUMBER,
"C62" NUMBER,
"C63" VARCHAR2(1),
"C64" VARCHAR2(8),
"C65" VARCHAR2(1),"C66" NUMBER,
"C67" FLOAT(126) ,
"C68" VARCHAR2(8),
"C69" FLOAT(126) ,
"C70" FLOAT(126) ,
"C71" FLOAT(126) ,
"C72" VARCHAR2(1),"C73" NUMBER,
"C74" VARCHAR2(1),
"C75" FLOAT(126) ,
"C76" VARCHAR2(1),
"C77" VARCHAR2(4))
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
STRING SIZES ARE IN BYTES
BADFILE BASE_CONECTOR:'VDA_ERRO.TXT'
NODISCARDFILE
LOGFILE BASE_CONECTOR:'VDA_LOG.TXT'
FIELDS
58
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 74/102
TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"' AND '"'
NOTRIM(
"C1" ,
"C2" ,
"C3" ,
"C4" ,
"C6" ,
"C7" ,"C8" CHAR DATE_FORMAT DATE MASK "yyyymmdd" DEFAULTIF
"C8"=BLANKS,
"C11" ,
"C12" ,
"C15" ,
"C16" ,
"C19" ,"C20" ,
"C21" ,
"C22" ,
"C23" ,
"C25" ,
"C26" ,
"C28" ,
"C30" ,
"C31" ,
"C32" ,
"C33" ,
"C35" ,
"C36" ,
"C37" ,
"C38" ,
"C39" ,
59
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 75/102
"C40" ,
"C42" ,
"C43" ,"C45" ,
"C46" ,
"C47" ,
"C48" ,
"C49" ,
"C50" ,
"C51" ,"C52" ,
"C53" ,
"C54" ,
"C55" ,
"C56" ,
"C57" ,
"C58" ,"C59" ,
"C60" ,
"C61" ,
"C62" ,
"C63" ,
"C64" ,
"C65" ,
"C66" ,
"C67" ,
"C68" ,
"C69" ,
"C70" ,
"C71" ,
"C72" ,
"C73" ,
"C74" ,
60
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 76/102
"C75" ,
"C76" ,
"C77")
)
LOCATION (
BASE_CONECTOR:'DB072.TXT'
)
)
REJECT LIMIT UNLIMITEDNOPARALLEL
;
CREATE TABLE "EXT_DB079"
(
"C1" NUMBER,"C3" VARCHAR2(1),
"C4" NUMBER,
"C5" FLOAT(126) ,
"C6" FLOAT(126) ,
"C7" FLOAT(126) ,
"C8" FLOAT(126) ,
"C9" VARCHAR2(8),
"C11" VARCHAR2(1),
"C12" FLOAT(126) ,
"C13" NUMBER,
"C14" VARCHAR2(1),
"C16" VARCHAR2(1),
"C17" FLOAT(126) ,
"C18" NUMBER,
"C19" FLOAT(126) ,
"C20" VARCHAR2(1),
61
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 77/102
"C21" NUMBER,
"C22" NUMBER,
"C23" VARCHAR2(3),"C24" VARCHAR2(3),
"C25" FLOAT(126) ,
"C26" NUMBER,
"C27" FLOAT(126) ,
"C28" VARCHAR2(3),
"C30" FLOAT(126) ,
"C31" VARCHAR2(1),"C32" NUMBER,
"C33" FLOAT(126) ,
"C34" FLOAT(126) ,
"C35" FLOAT(126) ,
"C36" FLOAT(126) ,
"C37" FLOAT(126) ,
"C38" FLOAT(126) ,"C39" VARCHAR2(1),
"C40" VARCHAR2(3),
"C41" FLOAT(126) )
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
STRING SIZES ARE IN BYTES
BADFILE BASE_CONECTOR:'VDA_PROD_ERR.TXT'
NODISCARDFILE
LOGFILE BASE_CONECTOR:'VDA_PROD_LOG.TXT'
FIELDS
TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"' AND '"'
62
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 78/102
NOTRIM
(
"C1" ,"C3" ,
"C4" ,
"C5" ,
"C6" ,
"C7" ,
"C8" ,
"C9" ,"C11" ,
"C12" ,
"C13" ,
"C14" ,
"C16" ,
"C17" ,
"C18" ,"C19" ,
"C20" ,
"C21" ,
"C22" ,
"C23" ,
"C24" ,
"C25" ,
"C26" ,
"C27" ,
"C28" ,
"C30" ,
"C31" ,
"C32" ,
"C33" ,
"C34" ,
"C35" ,
63
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 79/102
"C36" ,
"C37" ,
"C38" ,"C39" ,
"C40" ,
"C41"
)
)
LOCATION (
BASE_CONECTOR:'DB079.TXT')
)
REJECT LIMIT UNLIMITED
NOPARALLEL
;
CREATE TABLE "EXT_DB089"
(
"C_001" NUMBER,
"C_002" VARCHAR2(32),
"C_003" NUMBER)
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
STRING SIZES ARE IN BYTES
BADFILE 'VDA_PROD_ERR.TXT'
NODISCARDFILE
LOGFILE 'VDA_PROD_LOG.TXT'
SKIP 1
64
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 80/102
FIELDS
TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"' AND '"'NOTRIM
(
"C_001" ,
"C_002" ,
"C_003"
)
)LOCATION (
BASE_CONECTOR:'DB089.csv'
)
)
REJECT LIMIT UNLIMITED
NOPARALLEL
;
CREATE TABLE "EXT_DB204"
(
"C_001" NUMBER,
"C_002" VARCHAR2(25))
ORGANIZATION EXTERNAL (
TYPE ORACLE_LOADER
DEFAULT DIRECTORY BASE_CONECTOR
ACCESS PARAMETERS (
RECORDS DELIMITED BY NEWLINE
CHARACTERSET WE8MSWIN1252
STRING SIZES ARE IN BYTES
BADFILE 'VDA_PROD_ERR.TXT'
NODISCARDFILE
LOGFILE 'VDA_PROD_LOG.TXT'
SKIP 1
65
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 81/102
FIELDS
TERMINATED BY ';'
OPTIONALLY ENCLOSED BY '"' AND '"'NOTRIM
(
"C_001" ,
"C_002"
)
)
LOCATION (BASE_CONECTOR:'DB204.csv'
)
)
REJECT LIMIT UNLIMITED
NOPARALLEL
;
B.2 SQL – Dimensões
WHENEVER SQLERROR EXIT FAILURE;
CREATE TABLE "DIM_TEMPO"
(
"ANO_ANO" NUMBER,
"DIA_DIA" NUMBER,
"DIA_ID" DATE,
"MES_MES" NUMBER)
PARALLEL
LOGGING
;
ALTER TABLE "DIM_TEMPO" ADD
CONSTRAINT "TEMP_NIVELDIA_UK" UNIQUE(
66
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 82/102
"DIA_ID");
CREATE DIMENSION "DIM_TEMPO"LEVEL "NIVELANO" IS "DIM_TEMPO"."ANO_ANO"
LEVEL "NIVELDIA" IS "DIM_TEMPO"."DIA_ID"
LEVEL "NIVELMES" IS "DIM_TEMPO"."MES_MES"
HIERARCHY "HIERARQ_TEMPO"(
"NIVELDIA" CHILD OF
"NIVELMES" CHILD OF
"NIVELANO" )ATTRIBUTE "NIVELDIA" DETERMINES ("DIA_DIA" )
;
WHENEVER SQLERROR EXIT FAILURE;
CREATE TABLE "DIM_PROD"(
"GR_GRUPO" VARCHAR2(40),
"GR_ID" NUMBER,
"PR_ID" NUMBER,
"PR_MARCA" VARCHAR2(40),
"PR_NOMEPRODUTO" VARCHAR2(40),
"SG_ID" NUMBER,
"SG_SUBGRUPO" VARCHAR2(40))
PARALLEL
LOGGING
;
ALTER TABLE "DIM_PROD" ADD
CONSTRAINT "PROD_PRODUTO_UK1" UNIQUE(
"PR_ID");
67
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 83/102
CREATE DIMENSION "DIM_PROD"
LEVEL "GRUPO" IS "DIM_PROD"."GR_ID"
LEVEL "SUBGRUPO" IS "DIM_PROD"."SG_ID"LEVEL "PRODUTO" IS "DIM_PROD"."PR_ID"
HIERARCHY "HIERARQ_PROD"(
"PRODUTO" CHILD OF
"SUBGRUPO" CHILD OF
"GRUPO" )
ATTRIBUTE "GRUPO" DETERMINES ("GR_GRUPO" )
ATTRIBUTE "SUBGRUPO" DETERMINES ("SG_SUBGRUPO" )ATTRIBUTE "PRODUTO" DETERMINES ("PR_MARCA","PR_NOMEPRODUTO" )
;
WHENEVER SQLERROR EXIT FAILURE;
CREATE TABLE "DIM_EMPRESA"(
"EMP_CIDADE" VARCHAR2(30),
"EMP_ESTADO" VARCHAR2(2),
"EMP_FANTASIA" VARCHAR2(40),
"EMP_ID" NUMBER,
"EMP_RAZAO" VARCHAR2(40))
PARALLEL
LOGGING
;
ALTER TABLE "DIM_EMPRESA" ADD
CONSTRAINT "EMP_EMPRESA_UK" UNIQUE(
"EMP_ID");
CREATE DIMENSION "DIM_EMPRESA"
LEVEL "EMPRESA" IS "DIM_EMPRESA"."EMP_ID"
68
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 84/102
ATTRIBUTE "EMPRESA" DETERMINES
("EMP_CIDADE","EMP_ESTADO","EMP_FANTASIA","EMP_RAZAO" )
;
WHENEVER SQLERROR EXIT FAILURE;
CREATE TABLE "DIM_CLIENTES"
(
"CLI_BAIRRO" VARCHAR2(30),"CLI_CLASSIFICACAO" VARCHAR2(20),
"CLI_ENDERECO" VARCHAR2(40),
"CLI_FANTASIA" VARCHAR2(40),
"CLI_ID" NUMBER,
"CLI_RAZAO" VARCHAR2(40),
"CLI_TIPOPESSOA" VARCHAR2(1),
"CLI_CIDADE" VARCHAR2(40),"CLI_ID_CI" NUMBER,
"CLI_ID_RE" NUMBER,
"CLI_REGIAO" VARCHAR2(40))
PARALLEL
LOGGING
;
ALTER TABLE "DIM_CLIENTES" ADD
CONSTRAINT "CLI_CLIENTE_UK1" UNIQUE(
"CLI_ID");
CREATE DIMENSION "DIM_CLIENTES"
LEVEL "CLIENTE" IS "DIM_CLIENTES"."CLI_ID"
ATTRIBUTE "CLIENTE" DETERMINES
("CLI_BAIRRO","CLI_CIDADE","CLI_CLASSIFICACAO","CLI_ENDERECO","CLI_
69
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 85/102
FANTASIA","CLI_ID_CI","CLI_ID_RE","CLI_RAZAO","CLI_REGIAO","CLI_TIPOP
ESSOA" )
;
WHENEVER SQLERROR EXIT FAILURE;
CREATE TABLE "DIM_VENDEDOR"(
"VENDEDOR_ID" NUMBER,
"VENDEDOR_VENDEDOR" VARCHAR2(40))
PARALLEL
LOGGING
;
ALTER TABLE "DIM_VENDEDOR" ADD
CONSTRAINT "VEND_VENDEDOR_UK" UNIQUE(
"VENDEDOR_ID");
CREATE DIMENSION "DIM_VENDEDOR"
LEVEL "VENDEDOR" IS "DIM_VENDEDOR"."VENDEDOR_ID"
ATTRIBUTE "VENDEDOR" DETERMINES ("VENDEDOR_VENDEDOR" )
;
B.3 SQL – Cubo
WHENEVER SQLERROR EXIT FAILURE;
CREATE TABLE "CUBO_VENDA"
(
70
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 86/102
"CLI_ID" NUMBER,
"DIA_ID" DATE,
"EMP_ID" NUMBER,"PR_ID" NUMBER,
"QTDE" FLOAT(126) ,
"VALORTOTAL" FLOAT(126) ,
"VALORUNIT" FLOAT(126) ,
"VENDEDOR_ID" NUMBER)
PARALLEL
LOGGING;
ALTER TABLE "CUBO_VENDA" ADD
CONSTRAINT "FK_CUBO_VENDA_44931" FOREIGN KEY (
"PR_ID")
REFERENCES "DIM_PROD"("PR_ID");
ALTER TABLE "CUBO_VENDA" ADD
CONSTRAINT "FK_CUBO_VENDA_45074" FOREIGN KEY (
"VENDEDOR_ID")
REFERENCES "DIM_VENDEDOR"("VENDEDOR_ID");
ALTER TABLE "CUBO_VENDA" ADD
CONSTRAINT "FK_CUBO_VENDA_45084" FOREIGN KEY (
"EMP_ID")
REFERENCES "DIM_EMPRESA"("EMP_ID");
ALTER TABLE "CUBO_VENDA" ADD
CONSTRAINT "FK_CUBO_VENDA_56603" FOREIGN KEY (
"DIA_ID")
REFERENCES "DIM_TEMPO"("DIA_ID");
ALTER TABLE "CUBO_VENDA" ADD
71
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 87/102
CONSTRAINT "FK_CUBO_VENDA_65230" FOREIGN KEY (
"CLI_ID")
REFERENCES "DIM_CLIENTES"("CLI_ID");
B.4 SQL – Mapeamentos
CREATE OR REPLACE PACKAGE "MAP_CLI" AS
sql_stmt VARCHAR2(32767);
get_abort BOOLEAN := FALSE;
get_trigger_success BOOLEAN := TRUE;get_errors NUMBER(22) := 0;
get_status NUMBER(22) := 0;
-- Status variable for Batch cursors
"DIM_CLIENTES_1_St" BOOLEAN;
-- Function Main -- Entry point in package "MAP_CLI"
FUNCTION Main RETURN NUMBER;
END "MAP_CLI";
/
CREATE OR REPLACE PACKAGE BODY "MAP_CLI" AS
---------------------------------------------------------------------------
-- Function "DIM_CLIENTES_1_Bat"
-- performs batch extraction
-- Returns TRUE on success
-- Returns FALSE on failure
---------------------------------------------------------------------------
FUNCTION "DIM_CLIENTES_1_Bat" RETURN BOOLEAN IS
BEGIN
72
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 88/102
EXECUTE IMMEDIATE 'ALTER SESSION ENABLE PARALLEL DML';
BEGIN
INSERT
/*+ APPEND PARALLEL(DIM_CLIENTES, DEFAULT, DEFAULT) */
INTO
"DIM_CLIENTES"
("CLI_BAIRRO",
"CLI_CLASSIFICACAO","CLI_ENDERECO",
"CLI_FANTASIA",
"CLI_ID",
"CLI_RAZAO",
"CLI_TIPOPESSOA",
"CLI_CIDADE",
"CLI_ID_CI","CLI_ID_RE",
"CLI_REGIAO")
(SELECT
"EXT_DB055"."C_007" "C_007",
"EXT_DB055"."C_097" "C_097",
"EXT_DB055"."C_005" "C_005",
"EXT_DB055"."C_004" "C_004",
"EXT_DB055"."C_001" "C_001",
"EXT_DB055"."C_003" "C_003",
"EXT_DB055"."C_002" "C_002",
"EXT_DB204"."C_002" "C_002_2",
"EXT_DB204"."C_001" "C_001_2",
"EXT_DB089"."C_001" "C_001_1",
"EXT_DB089"."C_002" "C_002_1"
FROM "EXT_DB055" "EXT_DB055",
"EXT_DB089" "EXT_DB089",
73
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 89/102
"EXT_DB204" "EXT_DB204" WHERE ( "EXT_DB055"."C_029" =
"EXT_DB089"."C_001" ) AND
( "EXT_DB055"."C_030" = "EXT_DB204"."C_001" ));
COMMIT;
EXCEPTION WHEN OTHERS THEN
ROLLBACK;
COMMIT;
RETURN FALSE;
END;COMMIT;
RETURN TRUE;
END "DIM_CLIENTES_1_Bat";
FUNCTION Main RETURN NUMBER IS
get_batch_status BOOLEAN := TRUE;BEGIN
-- Initialize all batch status variables
"DIM_CLIENTES_1_St" := FALSE;
"DIM_CLIENTES_1_St" := "DIM_CLIENTES_1_Bat";
RETURN get_status;
END Main;
END "MAP_CLI";
/
CREATE OR REPLACE PACKAGE "MAP_EMPRESAS" AS
sql_stmt VARCHAR2(32767);
74
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 90/102
get_abort BOOLEAN := FALSE;
get_trigger_success BOOLEAN := TRUE;
get_errors NUMBER(22) := 0;get_status NUMBER(22) := 0;
-- Status variable for Batch cursors
"DIM_EMPRESA_St" BOOLEAN;
-- Function Main -- Entry point in package "MAP_EMPRESAS"
FUNCTION Main RETURN NUMBER;
END "MAP_EMPRESAS";
/
CREATE OR REPLACE PACKAGE BODY "MAP_EMPRESAS" AS
----------------------------------------------------------------------------- Function "DIM_EMPRESA_Bat"
-- performs batch extraction
-- Returns TRUE on success
-- Returns FALSE on failure
---------------------------------------------------------------------------
FUNCTION "DIM_EMPRESA_Bat" RETURN BOOLEAN IS
BEGIN
EXECUTE IMMEDIATE 'ALTER SESSION ENABLE PARALLEL DML';
BEGIN
INSERT
/*+ APPEND PARALLEL(DIM_EMPRESA, DEFAULT, DEFAULT) */
INTO
"DIM_EMPRESA"
75
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 91/102
("EMP_CIDADE",
"EMP_ESTADO",
"EMP_FANTASIA","EMP_ID",
"EMP_RAZAO")
(SELECT
"EXT_DB053"."C_007" "C_007",
"EXT_DB053"."C_008" "C_008",
"EXT_DB053"."C_003" "C_003",
"EXT_DB053"."C_001" "C_001","EXT_DB053"."C_002" "C_002"
FROM "EXT_DB053" "EXT_DB053"
);
COMMIT;
EXCEPTION WHEN OTHERS THEN
ROLLBACK;
COMMIT;RETURN FALSE;
END;
COMMIT;
RETURN TRUE;
END "DIM_EMPRESA_Bat";
FUNCTION Main RETURN NUMBER IS
get_batch_status BOOLEAN := TRUE;
BEGIN
-- Initialize all batch status variables
"DIM_EMPRESA_St" := FALSE;
"DIM_EMPRESA_St" := "DIM_EMPRESA_Bat";
76
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 92/102
RETURN get_status;
END Main;END "MAP_EMPRESAS";
/
CREATE OR REPLACE PACKAGE "MAP_PROD" AS
sql_stmt VARCHAR2(32767);
get_abort BOOLEAN := FALSE;get_trigger_success BOOLEAN := TRUE;
get_errors NUMBER(22) := 0;
get_status NUMBER(22) := 0;
-- Status variable for Batch cursors
"DIM_PROD_St" BOOLEAN;
-- Function Main -- Entry point in package "MAP_PROD"FUNCTION Main RETURN NUMBER;
END "MAP_PROD";
/
CREATE OR REPLACE PACKAGE BODY "MAP_PROD" AS
---------------------------------------------------------------------------
-- Function "DIM_PROD_Bat"
-- performs batch extraction
-- Returns TRUE on success
-- Returns FALSE on failure
---------------------------------------------------------------------------
FUNCTION "DIM_PROD_Bat" RETURN BOOLEAN IS
77
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 93/102
BEGIN
EXECUTE IMMEDIATE 'ALTER SESSION ENABLE PARALLEL DML';
BEGIN
INSERT
/*+ APPEND PARALLEL(DIM_PROD, DEFAULT, DEFAULT) */
INTO
"DIM_PROD"
("GR_GRUPO","GR_ID",
"PR_ID",
"PR_MARCA",
"PR_NOMEPRODUTO",
"SG_ID",
"SG_SUBGRUPO")
(SELECT"EXT_DB056"."C_002" "C_002_2",
"EXT_DB056"."C_001" "C_001_2",
"EXT_DB051"."C_001" "C_001",
"EXT_DB067"."C_002" "C_002_3",
"EXT_DB051"."C_002" "C_002",
"EXT_DB051"."C_004" "C_004",
"EXT_DB065"."C_002" "C_002_1"
FROM "EXT_DB051" "EXT_DB051",
"EXT_DB065" "EXT_DB065",
"EXT_DB056" "EXT_DB056",
"EXT_DB067" "EXT_DB067" WHERE ( "EXT_DB051"."C_004" =
"EXT_DB065"."C_001" ) AND
( "EXT_DB065"."C_003" = "EXT_DB056"."C_001" ) AND
( "EXT_DB051"."C_044" = "EXT_DB067"."C_001" )
);
COMMIT;
78
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 94/102
EXCEPTION WHEN OTHERS THEN
ROLLBACK;
COMMIT;RETURN FALSE;
END;
COMMIT;
RETURN TRUE;
END "DIM_PROD_Bat";
FUNCTION Main RETURN NUMBER IS
get_batch_status BOOLEAN := TRUE;
BEGIN
-- Initialize all batch status variables
"DIM_PROD_St" := FALSE;
"DIM_PROD_St" := "DIM_PROD_Bat";
RETURN get_status;
END Main;
END "MAP_PROD";
/
CREATE OR REPLACE PACKAGE "MAP_TEMPO" AS
sql_stmt VARCHAR2(32767);
get_abort BOOLEAN := FALSE;
get_trigger_success BOOLEAN := TRUE;
get_errors NUMBER(22) := 0;
get_status NUMBER(22) := 0;
-- Status variable for Batch cursors
79
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 95/102
"DIM_TEMPO_St" BOOLEAN;
-- Function Main -- Entry point in package "MAP_TEMPO"FUNCTION Main RETURN NUMBER;
END "MAP_TEMPO";
/
CREATE OR REPLACE PACKAGE BODY "MAP_TEMPO" AS
---------------------------------------------------------------------------
-- Function "DIM_TEMPO_Bat"
-- performs batch extraction
-- Returns TRUE on success
-- Returns FALSE on failure
---------------------------------------------------------------------------FUNCTION "DIM_TEMPO_Bat" RETURN BOOLEAN IS
BEGIN
EXECUTE IMMEDIATE 'ALTER SESSION ENABLE PARALLEL DML';
BEGIN
INSERT
/*+ APPEND PARALLEL(DIM_TEMPO, DEFAULT, DEFAULT) */
INTO
"DIM_TEMPO"
("ANO_ANO",
"DIA_DIA",
"DIA_ID",
"MES_MES")
(SELECT
80
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 96/102
WB_CAL_YEAR(("SORT"."C_008$0")) "ANO",
WB_DAY_OF_MONTH(("SORT"."C_008$0")) "DIA",
"SORT"."C_008$0" "C_008",WB_CAL_MONTH_OF_YEAR(("SORT"."C_008$0")) "MES"
FROM (SELECT
("SORT_INPUT_SUBQUERY"."C_008$1") "C_008$0"
FROM (SELECT
"DEDUP"."C_008$2" "C_008$1"
FROM (SELECT
DISTINCT"EXT_DB072"."C_008" "C_008$2"
FROM "EXT_DB072" "EXT_DB072" WHERE ( "EXT_DB072"."C_008" IS
NOT NULL )) "DEDUP" ) "SORT_INPUT_SUBQUERY"
ORDER BY
("SORT_INPUT_SUBQUERY"."C_008$1") ASC) "SORT"
);
COMMIT;EXCEPTION WHEN OTHERS THEN
ROLLBACK;
COMMIT;
RETURN FALSE;
END;
COMMIT;
RETURN TRUE;
END "DIM_TEMPO_Bat";
FUNCTION Main RETURN NUMBER IS
get_batch_status BOOLEAN := TRUE;
BEGIN
-- Initialize all batch status variables
"DIM_TEMPO_St" := FALSE;
81
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 97/102
"DIM_TEMPO_St" := "DIM_TEMPO_Bat";
RETURN get_status;
END Main;
END "MAP_TEMPO";
/
CREATE OR REPLACE PACKAGE "MAP_VENDEDOR" AS
sql_stmt VARCHAR2(32767);
get_abort BOOLEAN := FALSE;
get_trigger_success BOOLEAN := TRUE;
get_errors NUMBER(22) := 0;
get_status NUMBER(22) := 0;
-- Status variable for Batch cursors"DIM_VENDEDOR_St" BOOLEAN;
-- Function Main -- Entry point in package "MAP_VENDEDOR"
FUNCTION Main RETURN NUMBER;
END "MAP_VENDEDOR";
/
CREATE OR REPLACE PACKAGE BODY "MAP_VENDEDOR" AS
---------------------------------------------------------------------------
-- Function "DIM_VENDEDOR_Bat"
-- performs batch extraction
-- Returns TRUE on success
-- Returns FALSE on failure
82
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 98/102
---------------------------------------------------------------------------
FUNCTION "DIM_VENDEDOR_Bat" RETURN BOOLEAN IS
BEGIN
EXECUTE IMMEDIATE 'ALTER SESSION ENABLE PARALLEL DML';
BEGIN
INSERT
/*+ APPEND PARALLEL(DIM_VENDEDOR, DEFAULT, DEFAULT) */INTO
"DIM_VENDEDOR"
("VENDEDOR_ID",
"VENDEDOR_VENDEDOR")
(SELECT
"EXT_DB063"."C_001" "C_001",
"EXT_DB063"."C_003" "C_003"FROM "EXT_DB063" "EXT_DB063"
);
COMMIT;
EXCEPTION WHEN OTHERS THEN
ROLLBACK;
COMMIT;
RETURN FALSE;
END;
COMMIT;
RETURN TRUE;
END "DIM_VENDEDOR_Bat";
FUNCTION Main RETURN NUMBER IS
get_batch_status BOOLEAN := TRUE;
BEGIN
83
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 99/102
-- Initialize all batch status variables
"DIM_VENDEDOR_St" := FALSE;
"DIM_VENDEDOR_St" := "DIM_VENDEDOR_Bat";
RETURN get_status;
END Main;
END "MAP_VENDEDOR";
/
CREATE OR REPLACE PACKAGE "MAP_CUBO_VENDA" AS
sql_stmt VARCHAR2(32767);
get_abort BOOLEAN := FALSE;
get_trigger_success BOOLEAN := TRUE;get_errors NUMBER(22) := 0;
get_status NUMBER(22) := 0;
-- Status variable for Batch cursors
"CUBO_VENDA_St" BOOLEAN;
-- Function Main -- Entry point in package "MAP_CUBO_VENDA"
FUNCTION Main RETURN NUMBER;
END "MAP_CUBO_VENDA";
/
CREATE OR REPLACE PACKAGE BODY "MAP_CUBO_VENDA" AS
---------------------------------------------------------------------------
-- Function "CUBO_VENDA_Bat"
84
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 100/102
-- performs batch extraction
-- Returns TRUE on success
-- Returns FALSE on failure---------------------------------------------------------------------------
FUNCTION "CUBO_VENDA_Bat" RETURN BOOLEAN IS
BEGIN
EXECUTE IMMEDIATE 'ALTER SESSION ENABLE PARALLEL DML';
BEGIN
INSERT
/*+ APPEND PARALLEL(CUBO_VENDA, DEFAULT, DEFAULT) */
INTO
"CUBO_VENDA"
("CLI_ID",
"DIA_ID","EMP_ID",
"PR_ID",
"QTDE",
"VALORTOTAL",
"VALORUNIT",
"VENDEDOR_ID")
(SELECT
"EXT_DBVDA"."CLIFOR" "CLIFOR",
"EXT_DBVDA"."EMISS" "EMISS",
"EXT_DBVDA"."EMP" "EMP",
"EXT_DBVDA"."PROD" "PROD",
"EXT_DBVDA"."QTDE" "QTDE",
"EXT_DBVDA"."VALUNIT" * "EXT_DBVDA"."QTDE" "VALTOT",
"EXT_DBVDA"."VALUNIT" "VALUNIT",
"EXT_DBVDA"."VENDEDOR" "VENDEDOR"
FROM "EXT_DBVDA" "EXT_DBVDA",
85
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 101/102
"DIM_PROD" "DIM_PROD",
"DIM_CLIENTES" "DIM_CLIENTES" WHERE ( "EXT_DBVDA"."TIPOREG" = 'V' )
AND( "EXT_DBVDA"."PROD" = "DIM_PROD"."PR_ID" ) AND
( "EXT_DBVDA"."CLIFOR" = "DIM_CLIENTES"."CLI_ID" )
);
COMMIT;
EXCEPTION WHEN OTHERS THEN
ROLLBACK;
COMMIT;RETURN FALSE;
END;
COMMIT;
RETURN TRUE;
END "CUBO_VENDA_Bat";
FUNCTION Main RETURN NUMBER IS
get_batch_status BOOLEAN := TRUE;
BEGIN
-- Initialize all batch status variables
"CUBO_VENDA_St" := FALSE;
"CUBO_VENDA_St" := "CUBO_VENDA_Bat";
RETURN get_status;
END Main;
END "MAP_CUBO_VENDA";
/
86
5/11/2018 Monografia Data Werehouse - slidepdf.com
http://slidepdf.com/reader/full/monografia-data-werehouse 102/102
Maringá, 06 de Dezembro de 2004
À Coordenação de Trabalho Final de Curso de InformáticaDepartamento de InformáticaCentro de TecnologiaUniversidade Estadual de Maringá
Encaminhamos, em anexo, a monografia intitulada “Data Warehouse para Sistemas deGestão Empresarial” para avaliação desta coordenação.
___________________________ Aluno: Douglas Rodrigo Ferreira
___________________________________________ Orientador: Prof. Dra. Maria Madalena Dias
87