ESTÁGIO CURRICULAR INTEGRAÇÃO DE BANCO DE DADOS MICROVIXERP - PDF
Download "ESTÁGIO CURRICULAR INTEGRAÇÃO DE BANCO DE DADOS MICROVIXERP"
Silvana Lima Salvado
1 Bruno Luiz Corbani Garcia ESTÁGIO CURRICULAR INTEGRAÇÃO DE BANCO DE DADOS MICROVIXERP EMPRESA: Microvix SETOR: Banco de Dados SUPERVISOR: Dalton Dhiergo Fernandes ORIENTADOR: Alexandre Parra Silva Carneiro CURSO DE TECNOLOGIA EM SISTEMAS DE INFORMAÇÃO CENTRO DE CIÊNCIAS TECNOLÓGIAS - CCT UNIVERSIDADE DO ESTADO DE SANTA CATARINA UDESC JOINVILLE SANTA CATARINA - BRASIL NOVEMBRO/2008
2 APROVADO EM.../.../... Professor Mestre em. Professor Orientador Professor Mestre em. Professor Mestre em. Supervisor da CONCEDENTE 2
3 Carimbo da Empresa UNIDADE CONCEDENTE Razão Social: MICROVIX SOFTWARE S/A. CGC/MF: / Endereço: Av. Hermann August Lepper, 25 Bairro: Centro CEP: Cidade: Joinville UF: SC Fone: 55 (47) Supervisor: Dalton Dhiergo Fernandes Cargo: Gerente de Desenvolvimento ESTAGIÁRIO Nome : Bruno Luiz Corbani Garcia Matrícula: Endereço: Rua Agronômica, 1328 Bairro: Guanabara CEP: Cidade: Joinville UF: SC Fone: Curso de : Sistemas de Informação Título do Estágio: Integração de banco de dados MicrovixERP Período: 01/09/2008 a 19/09/2008 Carga horária: 120hrs AVALIAÇÃO FINAL DO ESTÁGIO PELO CENTRO DE CIÊNCIAS TECNOLÓGICAS Representada pelo Professor Orientador: Alexandre Parra Silva Carneiro CONCEITO FINAL NOTA Excelente (9,1 a 10) Muito Bom (8,1 a 9,0) Bom (7,1 a 8,0) Regular (5,0 a 7,0) Reprovado (0,0 a 4,9) Rubrica do Professor Orientador Joinville / / 3
4 Nome do Estagiário : Bruno Luiz Corbani Garcia QUADRO I AVALIAÇÃO NOS ASPECTOS PROFISSIONAIS QUALIDADE DO TRABALHO: Considerando o possível. ENGENHOSIDADE: Capacidade de sugerir, projetar, executar modificações ou inovações. CONHECIMENTO: Demonstrado no desenvolvimento das atividades programadas. CUMPRIMENTO DAS TAREFAS: Considerar o volume de atividades dentro do padrão razoável. ESPÍRITO INQUISITIVO: Disposição demonstrada para aprender. INICIATIVA: No desenvolvimento das atividades. SOMA Pontos QUADRO II AVALIAÇÃO DOS ASPECTOS HUMANOS ASSIDUIDADE: Cumprimento do horário e ausência de faltas. DISCIPLINA: Observância das normas internas da Empresa. SOCIABILIDADE: Facilidade de se integrar com os outros no ambiente de trabalho. COOPERAÇÃO: Disposição para cooperar com os demais para atender as atividades. SENSO DE RESPONSABILIDADE: Zelo pelo material, equipamentos e bens da empresa. SOMA Pontos PONTUAÇÃO PARA O QUADRO I E II Sofrível - 1 ponto, Regular - 2 pontos, Bom - 3 pontos, Muito Bom - 4 pontos, Excelente - 5 pontos LIMITES PARA CONCEITUAÇÃO AVALIAÇÃO FINAL Pontos De 57 a SOFRÍVEL SOMA do Quadro I multiplicada por 7 De 102 a REGULAR SOMA do Quadro II multiplicada por 3 De 148 a BOM SOMA TOTAL De 195 a MUITO BOM De 241 a EXCELENTE Nome da Empresa: MICROVIX SOFTWARE S/A. Representada pelo Supervisor: Dalton Dhiergo Fernandes CONCEITO Rubrica do Supervisor da CONFORME SOMA Empresa TOTAL Local: Data : Carimbo da Empresa 4
5 UDESC UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC CENTRO DE CIÊNCIAS TECNOLÓGICAS - FEJ PLANO DE ESTÁGIO CURRICULAR I e II ESTAGIÁRIO Nome: Bruno Luiz Corbani Garcia Matrícula: Endereço (Em Jlle): Agronômica Bairro: Guanabara CEP: Cidade: Joinville UF: SC Fone: (47) Endereço (Local estágio): Avenida Hermann Augusto Lepper Bairro: Centro CEP: Cidade: Joinville UF: SC Fone: (47) Regularmente matriculado no semestre: 5 Curso: Tec de Sistemas em Informação Formatura (prevista) Semestre/Ano: 01/2009 UNIDADE CONCEDENTE Razão Social: Microvix Software S/A. CGC/MF: / Endereço: Avenida Hermann Augusto Lepper Bairro: Saguaçu CEP: Cidade: Joinville UF: SC Fone: (47) Atividade Principal : Desenvolvimento de Sistemas Supervisor: Dalton Dhiergo Fernandes Cargo: Gerente de Desenvolvimento DADOS DO ESTÁGIO Área de atuação: Desenvolvimento de Sistemas Departamento de atuação: Desenvolvimento Fone: (47) Horário do estágio: 8:30 12:00 / 13:30 18:00 Total de horas do Estágio: 8 horas Período: 01/09/2008 à 19/09/2008 Total de horas semanais: 40 horas Nome do Professor Orientador: Alexandre Parra Carneiro da Silva Departamento: Departamento de Ciência da Computação Disciplina(s) simultânea(s) com o estágio Quantas: 4 Quais: Gerência de Projetos. Redes de Computadores. Pesquisa Operacional. Metodologia Científica. OBJETIVO GERAL O objetivo do presente trabalho é desenvolver um sistema de integração entre duas bases de dados distintas, a fim de integrar os dados relacionados aos produtos de uma indústria e suas respectivas lojas franqueadas. 5
6 ATIVIDADES OBJETIVO ESPECÍFICO HORAS Estudo das tecnologias utilizadas: SQL Server 2000 e Data Transformation Service (DTS). Adquirir conhecimento das tecnologias utilizadas. 15 Estudo da arquitetura das bases de dados utilizadas. Adquirir conhecimento das arquiteturas dos sistemas a serem integrados. 20 Projeto do pacote Data Transformation Service. Definir todas as entidades que irão fazer parte da integração entre as bases. 20 Implementação da integração. Desenvolver o pacote DTS deixando as bases de dados das lojas franqueadas prontas para serem utilizadas. 50 Testes e correções de erros encontrados. Realizar testes e Corrigir os erros encontrados. 15 Rubrica do Professor Orientador Rubrica do Coordenador de Estágios Rubrica do Supervisor da Empresa Data: Data: Data: Carimbo da Empresa 6
7 AGRADECIMENTOS Agradeço a todos os meus colegas de trabalho, e em especial aos meus familiares e minha namorada. 7
8 SUMÁRIO Rubrica do Professor Orientador...3 QUADRO I...4 QUADRO II INTRODUÇÃO OBJETIVOS Gerais Específicos METODOLOGIA MOTIVAÇÃO PARA O DESENVOLVIMENTO DO PROJETO EMPRESA HISTÓRICO MERCADO APLICAÇÕES MicrovixERP MicrovixSFA MicrovixBI PRINCIPAIS CLIENTES CONSIDERAÇÕES ESTUDO DA TECNOLOGIA DE BANCO DE DADOS SQL SERVER Structured Query Language (SQL) Query Analyser Data Transformation Service Considerações PROJETO DE INTEGRAÇÃO BANCO DE DADOS REQUISITOS ARQUITETURA DESENVOLVIMENTO Pacote DTS Procedimento SQL de Integração Criação do Job CONSIDERAÇÕES TESTES E ERROS ERROS ENCONTRADOS E SOLUCOES CONSIDERAÇÕES CONSIDERAÇÕES FINAIS REFERÊNCIAS BIBLIOGRÁFICAS
9 LISTA DE FIGURAS Figura 1 Principais Clientes da Microvix...17 Figura 2 Figura Demonstra o Query Analyser...19 Figura 3 Figura Demonstra o Data Transformartion Service...20 Figura 4 Diagrama Entidade Relacionamento...23 Figura 5 Principais Atividades e conexões do pacote DTS...26 Figura 6 Fluxo Geral dos Dados...27 Figura 7 passo 1 para configuração do Job...28 Figura 8 passo 2 para configuração do Job...29 Figura 9 passo 3 para configuração do Job...29 Figura 10 passo 4 para configuração do Job
10 RESUMO Todas as atividades envolvidas neste estágio estão relacionadas a implementação de uma integração de banco de dados com a finalidade de sincronizar informações cadastrais em diversas bases de dados. Através dessa sincronização de informações, os usuários do sistema MicrovixERP não precisarão mais realizar cadastros de produtos. Outra vantagem que esta atividade disponibiliza é a padronização de cadastros entre as diversas bases de dados das franquias. No início do presente trabalho é feita uma breve introdução da empresa em que foi realizado o estágio, citando seus produtos e principais clientes. Em seguida é descrito as fases do projeto, onde se destacam os requisitos do projeto, a arquitetura do sistema e o processo de desenvolvimento que o acadêmico elaborou durante o estágio. Além do desenvolvimento do projeto também é apresentado os testes e os erros encontrados. O relatório é concluído com análise do acadêmico, mostrando de que maneira as disciplinas estudas na graduação contribuíram para a realização do estágio. 10
11 1. INTRODUÇÃO 1.1 OBJETIVOS Gerais O objetivo geral do estágio é realizar uma integração de dois bancos de dados distintos. Esta integração pretende sincronizar os cadastros de produtos das duas bases de dados. Este trabalho é importante para padronizar os cadastros integrados e diminuir o tempo de implantação do sistema MicrovixERP Específicos Com o estudo das tecnologias SQL Server, em específico o Data Transformation Service (DTS) e o Query Analyzer, espera-se adquirir conhecimento suficiente em Banco de dados para a concretização do presente estagio. Este estudo tem o objetivo de fazer com que o estagiário aprenda as tecnologias utilizadas e consiga prosseguir no trabalho. Deseja-se também desenvolver uma arquitetura do pacote DTS que possíveis manutenções sejam facilitadas e que o tempo de implementação do projeto diminua. Este pacote DTS tem o objetivo de integrar automaticamente as informações das duas bases de dados. A principal atividade a ser executada é o desenvolvimento do projeto, criando o pacote DTS e as procedures de replicação dos dados deixando as bases de dados prontas para a utilização do sistema pelas lojas franqueadas. Concluindo o estágio pretende-se realizar testes e corrigir os erros encontrados. 1.2 METODOLOGIA A metodologia utilizada para o desenvolvimento do projeto foi primeiramente o estudo das tecnologias de banco de dados e as ferramentas utilizadas para o desenvolvimento do trabalho em questão. 11
12 Os principais recursos abordados no trabalho foram: a utilização dos pacotes Data Transformation Service, o conhecimento avançado da linguagem SQL (Structured Query Language) e o conhecimento de Diagramas de Entidade Relacionamento utilizados na prática. Com os resultados da pesquisa do capítulo 3 é apresentado no capítulo 4 todo o projeto de integração entre as bases de dados. A partir disto foi montada a arquitetura e a modelagem de banco de dados. No capítulo 5 são apresentados todos os erros encontrados e suas principais soluções aos problemas. E para concluir, em seguida é apresentada as Considerações Finais com as lições assimiladas e os pontos relevantes do trabalho. 1.3 MOTIVAÇÃO PARA O DESENVOLVIMENTO DO PROJETO O projeto de integração de banco de dados, consiste no desenvolvimento de um sistema totalmente automatizado de replicação de informações utilizando somente a tecnologia de banco de dados. Esta replicação de dados fará somente menção as entidades relacionadas aos cadastros de produtos do MicrovixERP, sendo que o projeto prevê que todas as lojas da franquia comecem obrigatoriamente com os produtos totalmente integrados. O desenvolvimento de um sistema de integração de banco de dados traz a facilidade ao usuário de não precisar cadastrar manualmente todos os produtos, e padronização das informações integradas. Outro ponto que possibilita o desenvolvimento de uma integração deste porte é que os dados são atualizados constantemente, ou seja, qualquer outra aplicação que não atendesse este requisito seria totalmente inviável o seu desenvolvimento para atender os interesses do cliente que solicitou este sistema de integração. 12
13 2. EMPRESA O estágio foi efetuado na empresa Microvix S/A, que é especializada no desenvolvimento de produtos para gestão empresarial baseados na Internet. Pioneira no fornecimento de aplicações em modelo ASP (Application Service Provider). A Microvix é pioneira no Brasil em utilização da plataforma Web para aplicações de gestão empresarial. O MicrovixERP lançado em 2001 foi a primeira ferramenta de ERP totalmente baseada na internet e fornecida em modelo ASP. Com esse domínio da tecnologia, a Microvix consegue níveis elevados de produtividade, podendo competir em igualdade de condições e praticar custos muito mais acessíveis que a concorrência tradicional. [MCX, 2008] HISTÓRICO A empresa Microvix foi fundada em 1998 por Hugo Fabiano Cordeiro e Flávio Benke. A sua primeira solução foi uma aplicação simples e de baixo custo denominado o Gestor. Gestor fora um aplicativo de controle comercial desenvolvido para executar na plataforma MS-DOS. No mesmo ano do início da sociedade, Flávio Benke decidiu retirar-se dos negócios e Priscila Cristier Fernandes Cordeiro assumiu seu lugar. Com esta nova sociedade houve a necessidade de mudar o foco da empresa para gestão empresarial. No ano de 2000 a empresa já possuía uma carteira/portfólio com mais de 20 clientes fixos. Contudo, a aplicação desenvolvida em Clipper não estava suportando todas as exigências do mercado, assim a empresa decidiu alterar sua plataforma. Com a aposta no grande crescimento da utilização da Internet, a Microvix decidiu pela criação de novos produtos, estes seriam totalmente voltados para o ambiente Web e desenvolvido em ASP (Active Server Pages). Lançado em 2001 o primeiro produto Web foi o MicrovixERP, sendo portanto o primeiro ERP brasileiro totalmente baseado na Web. MicrovixERP tem como seu principal público alvo as pequenas e médias empresas. Como se trata de um produto totalmente voltado ao ambiente Web, o 13
14 MicrovixERP é ágil e com o custo baixo, o que fez com que a Microvix conseguisse diversos clientes, e assim um crescimento rápido. No ano de 2006 a Microvix transformou-se em uma sociedade de ações, agora denominada Microvix Software S/A. 2.2 MERCADO A Microvix é especialista no desenvolvimento de produtos para gestão empresarial baseados na Internet. Pioneiros no fornecimento de aplicações em modelo ASP (Application Service Provider). (MCX, 2008) Com este modelo de aplicações, as soluções da Microvix S/A tornam-se aplicações de baixo custo e com extrema versatilidade. Estas qualidades acabam sendo vistas pelas pequenas e médias empresas como soluções de ótimo grau em custo/benefício. 2.3 APLICAÇÕES O objetivo principal dessa seção subcapítulo é apresentar as principais aplicações que a empresa Microvix disponibiliza para os seus clientes, todos eles são totalmente baseados na Web, e com foco em gestão empresarial., como o MicrovixERP, o MicrovixBI e o MicrovixSFA MicrovixERP O software MicrovixERP lançado no ano de 2001 é a primeira aplicação de gerenciamento empresarial totalmente baseada na Internet e utilizando o modelo ASP. Com esta tecnologia as empresas que utilizam o software adquirem altos níveis de produtividade, podendo competir em condições favoráveis com seus concorrentes, diminuindo custos e maximizando lucros. Diferente do modelo convencional, onde o cliente precisa ter servidores, equipe de TI e fazer o backup de seus dados, o modelo ASP torna o 14
15 sistema totalmente portável, podendo ser acessado de qualquer computador que tenha conexão com a Internet e o cliente não tem a necessidade de ter os outros recursos necessários no modelo convencional, como o servidor próprio (MCX, 2008). Com este modelo os custos do MicovixERP são reduzidos drasticamente com equipes de informática e infra-estrutura. Além destas vantagens, é possível acessar o software de qualquer lugar do planeta e a qualquer momento. Apesar do MicrovixERP ser baseado totalmente na Internet, as mesmas funcionalidades típicas de um ERP convencional são aplicadas a ele, sendo a aplicação particionado em vários módulos, como o Financeiro, Tesouraria, Suprimentos / Estoque, CRM, entre outros MicrovixSFA Além do MicrovixERP, outro produto totalmente baseado na Internet é o SFA da Microvix, o seu principal objetivo é maximizar a produtividade e o gerenciamento do processo de venda. Este produto possibilita o vendedor a acessar a aplicação através de dispositivos móveis (notebooks, palmtops, smartphones e desktops), que conectam a internet. Ele disponibiliza todos os dados necessários para o vendedor realizar seu trabalho, como colocação de pedidos, lista de preços, condições de pagamento, histórico de clientes, saldos em estoque, relação de produtos, agenda e outros dados importantes para o fechamento dos negócios. Todas as transferências de informações são executadas pelo SFA Microvix podendo ser em tempo real (on-line) ou de tempos em tempos, cia sincronização (off-line). Assim com estas funcionalidades, é possível a utilização do sistema a qualquer lugar em qualquer hora MicrovixBI O MicrovixBI é uma solução que tem por objetivo dar suporte à tomada de decisões. Para alcançar o sucesso, as empresas devem oferecer produtos e serviços com qualidade superior a seus clientes. Elas devem obter 15
16 conhecimento em tempo real, possibilitando tomar decisões eficazes nos diversos níveis de uma empresa em tempo oportuno, além do monitoramento dos indicadores de desempenho levando a empresa em direção aos seus objetivos. (MCX, 2008) Além de todos esses recursos disponíveis, a interface do software é totalmente amigável, e como os outros produtos da Microvix, o MicrovixBI utiliza o modelo ASP, o que o possibilita acessar a aplicação de qualquer computador conectado à Internet. 2.4 PRINCIPAIS CLIENTES Com estes diferenciais em seus softwares a Microvix conquistou um grande número de clientes. Entre eles a Millium que é uma empresa de grande porte em Joinville, Brasil Teleconm, Tennis e Training, Sidi Racing, Omar calçados e recentemente a Chilli Beans, que é um de seus maiores clientes. A Chilli Beans é a maior rede de óculos brasileira e implantou o Microvix ERP em toda a sua rede de loja, que são mais de 180 em todo o Brasil (Baguete, 2007). A Empresa Microvix em um todo possui mais de 200 clientes em todo o Brasil, incluindo ainda um cliente no Panamá e outro cliente em Portugal. Na figura 1 é apresentado uma listagem dos principais clientes que utilizam as aplicações da Microvix. 16
17 Figura 1 - Principais Clientes da Microvix 2.5 CONSIDERAÇÕES Com seu grande crescimento da empresa Microvix, esta alcançou um controle na qualidade e atualmente é certificada pela ISO Com esta certificação na qualidade e se atualizando constantemente a Microvix ganhou vários prêmios, em 2004 ela foi finalista do Prêmio Talentos Empreendedores. Em 2005 foi campeã regional e estadual deste mesmo prêmio e também participou do Prêmio Finep de Inovação Tecnológica. No ano de 2006 conquistou reconhecimento nacional de qualidade, produtividade e competitividade (MCX, 2007). 17
18 3. ESTUDO DA TECNOLOGIA DE BANCO DE DADOS Para o estágio houve a necessidade de estudar as tecnologias do banco de dados utilizadas pela empresa. O gerenciador utilizado é o SQL Server 2000 desenvolvido pela Microsoft. O gerenciador é programado pela linguagem SQL (Structured Query Language) e as suas ferramentas para manipulação são o Query Analyzer e o Data Transformation Service também desenvolvidos pela Microsoft. 3.1 SQL SERVER 2000 O SQL SERVER 2000 é um sistema gerenciador de banco de dados relacional (SGBDR 1 ) que utiliza a linguagem Structured Query Language (SQL 2 ) para a sua manipulação. Este foi lançado no ano de 2000 e ainda é amplamente utilizado por empresas e organizações Structured Query Language (SQL) Structured Query Language, ou Linguagem de Consultas Estruturada ou ainda SQL 2, é uma linguagem de pesquisa declarativa para banco de dados relacional. Muitas das características originais do SQL 2 foram inspiradas na álgebra relacional. Segundo BATISTTI, um sistema de gerenciamento de banco de dados relacional (SGBDR 1 ) utiliza a Linguagem SQL para a sua manipulação. Isto significa que ele utiliza um sistema para gerenciar dados que estão armazenado em relações. As informações desse tipo de banco de dados são armazenados em tabelas, contudo existem outras maneiras de gerenciar bases de dados. Podemos tomar como exemplo de banco de dados hierárquicos arquivos e diretórios em sistemas operacionais tipo Unix. Um desenvolvimento mais moderno e em estudo são os bancos de dados orientados a objeto. Segundo BATISTTI, esta linguagem também é dividida em duas principais funcionalidades: O DDL e o DML. A DDL é responsável pela criação, alteração e exclusão das estruturas do banco de dados e seus 1 SGBDR Sistema utilizado para manipular banco de dados relacional. 2 SQL Linguagem estruturada para manipular banco de dados. 18
19 principais comandos são o create, alter e drop. Já a DML é responsável pela manipulação dos dados contidos no banco e seus principais comandos são o insert, update, delete e o select Query Analyser O Query Analyser é uma IDE (Integrated Development Environment) desenvolvidas pela Microsoft. Ela é largamente utilizada por desenvolvedores de sistemas de informação que utilizam o sistema gerenciador de banco de dados SQL Server A sua principal funcionalidade é o envio de comandos SQL para o banco de dados. Na figura 2 é apresentada o Query Analyser destacando as seguintes áreas: Figura 2 Figura Demonstra o Query Analyser 1 Query Esta área é destinada para escrever e executar os comandos SQL, ou seja, um editor de texto. Os principais comandos SQL são destacados com outra cor para melhor visualização. 2 Gris/Messages 19
20 Nesta área do editor é possível ver o retorno das consultas enviadas ao banco de dados e as mensagens de erro ou sucesso dos comandos executados. 3 Object Browser Nesta área do editor é possível visualizar todos os bancos de dados e suas estruturas de forma hierárquica. As estruturas abaixo do banco de dados que são possíveis de visualização por esta área são as Tabelas, Visões, Procedures, Usuários, funções entre outros Data Transformation Service O aplicativo Data Transformation Service (DTS) é uma solução de ponta, sofisticada, para manipular uma grande quantidade de dados. O DTS também move dados de uma fonte de dados do OLE DB para outra fonte de dados OLE DB ou arquivos no formato texto ou planilhas na extensão xls. O design é totalmente intuitivo e de fácil utilidade. (DTS, 2008) Na figura 3 é apresentada o Data Transformation Service destacando as seguintes áreas: Figura 3 Figura Demonstra o Data Transformartion Service 20
21 1 Connection / Task Esta barra de ferramentas do aplicativo é categorizada por duas funcionalidades, os tipos de conexões aos dados, estes podem ser conectados a planilhas no formato Excel, diversos bancos de dados ODBC, arquivos textos, etc. Outra funcionalidade é executar atividades como comandos SQL, envio de e chamadas de aplicativos ActiveX. 2 Editor Gráfico Este editor gráfico é uma ferramenta Clique e Arraste. Nela é possível incluir os componentes de conexão e as atividades, definindo assim o fluxo de execução dos processos. 3.2 Considerações Com os conceitos definidos neste capítulo sobre a Linguagem SQL e suas ferramentas possibilitou ao estagiário a realizar a integração os dados relacionados ao cadastro de produtos. 21
22 4. PROJETO DE INTEGRAÇÃO BANCO DE DADOS No projeto de integração de banco de dados é necessário ter um planejamento prévio das atividades envolvidas. As atividades que serão apresentadas no decorrer deste capítulo são: a análise dos requisitos do projeto, o estudo da arquitetura do banco de dados e o desenvolvimento do projeto. 4.1 REQUISITOS A integração de banco de dados tem como principal requisito a padronização de algumas informações cadastrais em diversos bancos de dados. Na integração as estruturas deverão ser iguais e somente serão integradas as informações cadastrais dos produtos. Outro requisito é que todas as informações integradas dos produtos não deverão ser alteradas pelo usuário final. Isto permite um maior controle da franqueadora sobre as franqueadas e uma maior agilidade na alteração de algum registro. Além dos registros integrados não serem alterados, outro requisito é que as informações deverão ser atualizadas periodicamente. Os dados serão sincronizados a cada uma hora. Os funcionários do sistema da franqueadora serão integrados como clientes no MicrovixERP. Os funcionários devem entrar no banco de dados do MicrovixERP relacionados a uma classe de cliente chamada funcionários. Isto permite que os funcionários ganhem descontos ao comprar das lojas franqueadas. 4.2 ARQUITETURA A arquitetura compreende a estrutura técnica para o funcionamento dos requisitos da aplicação. Neste subcapítulo serão estudados o DER (Diagrama de Entidade Relacionamento) das entidades relacionadas aos produtos e clientes. O objetivo do estudo é conhecer as estruturas envolvidas no processo a qual sofrerão a 22
23 integração dos dados. Conforme apresentado na Figura 4, tem-se o modelo de entidade de relacionamento utilizado no MicrovixERP em proporções reduzidas. A figura 4 demonstra as entidades pertinentes para a migração dos dados. A seguir serão apresentados em tópicos explicativos as entidades. Figura 4 Diagrama Entidade Relacionamento 1 colecoes Esta tabela é responsável por armazenar os dados referentes às coleções dos produtos. Por exemplo coleção inverno produtos_classificacao A tabela produtos_classificacao tem o objetivo de guardar as informações das classificações dos produtos ou tipos de produtos. 3 produtos_grade2 Na tabela produtos_grade2 são armazenadas as informações das cores dos 23
24 produtos. 4 marcas A entidade marcas é responsável por conter as informações das marcas dos produtos. 5 setores A tabela setores contém os dados referentes aos setores onde os produtos estão alocados na empresa. 6 produtos_grade1 Essa tabela é responsável por armazenar os dados referentes aos tipos de tamanhos dos produtos. 7 linhas Esta entidade é responsável por guardar os dados referentes às linhas de produtos. 8 produtos Esta é a entidade mais importante para o presente trabalho porque registra os dados referentes aos produtos da empresa. Contém as chaves estrangeiras das tabelas: colecoes, produtos_classificacao, produtos_grade2, marcas, setores, produtos_grade1, linhas e empresa. É referenciada pela tabela produtos_detalhes. 9 clientes_fornec A tabela clientes_fornec é uma das tabelas mais importantes do sistema MicrovixERP. É responsável por armazenar as informações dos clientes e fornecedores. Na integração dos dados, a tabela clientes_fornec receberá as informações dos funcionários da franqueadora. Estes funcionários da franqueadora serão tratados como clientes no aplicativo da Microvix. 10 empresa A entidade empresa armazena as informações cadastrais das lojas que a franquia possui. Esta tabela não fará parte diretamente do processo de integração das bases de dados. Porém é de fundamental importância a citação dessa tabela para o entendimento do sistema da Microvix. 11 produtos_detalhes 24
25 A tabela relacional entre as entidades empresa e produtos é a produtos_detalhes. Esta é importante para guardar os dados dos produtos que estão dispostos por empresa. 4.3 DESENVOLVIMENTO O desenvolvimento do projeto será a sessão do trabalho onde todos os estudos abordados anteriormente serão utilizados para integrar os dados. Neste subcapítulo serão apresentados o desenvolvimento do pacote DTS, a implementação procedimentos SQL e a criação do Job Pacote DTS Nesta integração das bases de dados, houve a escolha do desenvolvimento de um pacote DTS. Este pacote faz três operações principais: se conecta a base de dados da franqueadora, consulta algumas visões disponibilizadas e alimenta uma base de dados da Microvix. Além da migração dos dados, o pacote DTS faz algumas verificações para minimizar possíveis erros. Conforme a Figura 5, tem-se o pacote DTS desenvolvido no estágio. A seguir serão apresentados os processos detalhados e seus respectivos fluxos: 25
26 Figura 5 Principais Atividades e conexões do pacote DTS O ícone número 1 é a primeira atividade a ser realizada no fluxo do pacote. Esta atividade foi desenvolvida com a função de excluir todos os registros das tabelas temporárias de entrada. As tabelas temporárias são responsáveis por receber todos os registros das visões. Elas não realizam nenhum tratamento com relação a chaves estrangeiras ou dados inválidos. O ícone número 2 na figura 5, é uma conexão com a base do sistema da franqueadora. Nesta base, a Microvix tem um usuário com permissões somente para acessar as visões criadas pelo cliente para a extração dos dados. O ícone dev apontado por 3 é a conexão com uma base de dados no mesmo formato das lojas franqueadas. Neste banco de dados intermediário são executadas as validações e é definido para qual banco de dados de produção serão enviadas as informações. As atividades destacadas pelo ícone número 4 são responsáveis por migrar os dados das visões para as respectivas tabelas temporárias. Nestas atividades do pacote, não é tratado nenhum possível erro de constraints ou dados inválidos. As atividades apontadas pelo ícone 5, são responsáveis por validar os 26
27 dados e repassar as informações contidas nas tabelas temporárias para as tabelas finais. A lógica utilizada para este repasse de dados é implementado da seguinte forma: é executado um comando update das informações existentes na base do MicrovixERP, em seguida os dados são inseridos somente se não estiverem contidos neste banco de dados final Procedimento SQL de Integração Após a migração das informações efetuada pelo pacote DTS de integração, é necessário que os dados sejam replicados para as suas respectivas bases que executam em produção. Na figura 6 é apresentado o fluxo das informações para melhor entendimento do contexto geral de todo o processo de integração dos dados. Todos os processos executados no item A da figura 6 foram abordados anteriormente na figura 5. Estes processos se referem a todas atividades e conexões do pacote DTS. Figura 6 Fluxo Geral dos Dados O item B na figura 6 representa procedimentos ou stored procedures de replicação das informações contidas na base intermediaria. As stored procedures são códigos SQL agrupados dentro de uma estrutura que é 27
28 compilada no próprio banco de dados. As vantagens das stored procedures são o encapsulamento de dados e o desempenho. A lógica utilizada para a replicação dos dados foi desenvolvida da seguinte forma: primeiramente é executado um comando de update das informações contidas no banco de dados de produção. Em seguida é executado um comando insert dos registros que não existem na base de dados de produção Criação do Job Segundo BATISTTI, um job é uma tarefa administrativa, composta de um ou mais passos, a qual é agendada para executar automaticamente, em data e horas determinadas, nas configurações. No presente trabalho houve a necessidade de criar um job para automatizar o processo de integração, pois um dos requisitos do projeto é que os dados teriam que ser atualizados com um intervalo mínimo de uma hora. A partir desta restrição, uma maneira funcional de atender este requisito é agendar um job a cada uma hora executando o processo de integração. Conforme nas Figuras 7 à 10, tem-se o job de integração dos produtos demonstrando todos os passos para a sua configuração. Figura 7 passo 1 para configuração do Job. 28