~~ODT~~ ======= Guia de Implantação - Módulo de Almoxarifado ======= Este guia de implantação tem por objetivo abordar os diversos aspectos envolvidos na implantação da funcionalidade de almoxarifado no Sistema SIPAC. \\ \\ Para a compreensão desta funcionalidade é importante a consulta dos seguintes artefatos: * [[desenvolvimento:especificacoes:sipac:almoxarifado:principal|Especificaões de Requisitos]] * [[suporte:manuais:sipac:almoxarifado:lista|Manuais]] * [[desenvolvimento:projeto:sipac:almoxarifado:projeto_geral| Projeto Técnico]] ===== 1. Glossário ===== * SIPAC – Sistema Integrado de Patrimônio, Administração e Contratos; * Banco de Dados – Armazenamento de dados, relacionado com SGBDR, mesmo que base de dados; * SGBDR – Sistema de gerenciamento de banco de dados relacional; * SQL – Linguagem de pesquisa declarativa para banco de dados relacional; * Postgres – Um sistema gerenciador de banco de dados relacional, mesmo que PostgreSQL; * ETL (Extract, Transform, Load) – Extrair, Transformar e Carregar, termo usado para dar carga em SGBDR, usado ao importar ou exportar dados oriundos de um sistema legado para um SGBDR; * Entidade – Tabela em um banco de dados; * Atributo – Coluna ou campo de uma tabela em banco de dados; * Tupla – Registro ou linha de uma ocorrência em uma tabela; * DMR/MR – Diagrama Modelo Relacional; * DD – Dicionário de Dados – É uma coleção de metadados, isto é, dados sobre os dados, que contêm definições e representações de elementos de dados; * Popular tabela – Preencher uma entidade ou tabela com dados. ==== 1.3 Referências ==== Para a compreensão deste módulo é importante a consulta dos seguintes artefatos: [[desenvolvimento:especificacoes:sipac:almoxarifado:negocio|Especificações de negócio]] ==== 1.4 Pré-Requisitos ==== * Definição dos parâmetros corretamente conforme seção abaixo. * Popular banco de dados com entidades envolvidas. ==== 1.5 Observações ==== - Nas descrições das entidades a seguir, pode ser encontrada a lista de valores possíveis para alguns campos. Em alguns casos, esses valores não correspondem a uma referência para a chave ou campo de outra entidade. Mas normalmente, os valores listados são correspondentes à chave primária da tabela referenciada onde os valores estão efetivamente armazenados. Portanto, deve-se considerar o preenchimento dessas entidades como pré-requisito para o preenchimento do campo da entidade que está sendo descrita; - Com o objetivo de ampliar e facilitar entendimento, todas as tabelas e colunas do módulo de Patrimônio foram documentadas, no banco, com o uso da cláusula SQL apropriada para comentários, COMMENT ON, que podem ser visualizados com o uso do programa pgAdmin III, conforme exemplo mostrada na Figura 1 . {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:exemplo_de_comentários_postgresql_8.3.jpg?direct&800 |}} (Figura 1 - Exemplo de comentários no PostgreSQL 8.3) ===== 2. Parâmetros do sistema ===== Os parâmetros utilizados no almoxarifado estão contidos na interface ParametrosAlmoxarifado. A tabela abaixo descreve os parâmetros utilizados. {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:parametros.jpg?direct&800 |}} (Quadro 1 - Parâmetros do Sistema) {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:exemplos_de_parâmetros_do_sistema.jpg?direct&500 |}} (Figura 2 - Exemplos de Parâmetros do Sistema) === 2.1 Timers ==== A tabela abaixo descreve os timers envolvidos na funcionalidade do almoxarifado. {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:timers_almoxarifado.jpg?direct&700 |}} (Quadro 2 - Timers do Almoxarifado) ===== 3. Papéis de Usuários ===== A tabela abaixo descreve os perfis envolvidos na funcionalidade de almoxarifado. {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:papéis_de_usuários_do_almoxarifado.jpg?direct&800 |}} (Quadro 3 - Papéis de Usuários do Almoxarifado) ===== 4. Carga do Banco de Dados ===== Este tópico descreve os procedimentos para ETL, para o módulo de almoxarifado, citaremos as principais entidades envolvidas, seus pré-requisitos, dependências e relacionamentos, para ilustrar essa iremos usar DMR (Diagramas Modelo Relacional), DD (Dicionário de Dados) e ainda figuras exemplos. Uma visão geral de todo o módulo de almoxarifado, poderá ser vislumbrada através do DD Dicionário de Dados incorporado no Anexo A, Quadros 1 e 2 e um DMR Diagrama Modelo Relacional ilustrada no Anexo B, Figura 1. Tomamos por SGBDR base, onde serão importados os dados, o PostgreSQL versão 8.3. {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:tabelas_do_esquema_almoxarifado.jpg?direct&1100 |}} (Figura 2 - Tabelas do Esquema Almoxarifado) ==== 4.1 Cadastro de Material, Grupo, Sub-grupo ==== As entidades envolvidas nesta parte do módulo de almoxarifado também são usadas no patrimônio e nos vários módulos existentes no SIPAC. É a base para todo o módulo de almoxarifado, a figura 3 mostra o modelo relacional desta parte. {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:modelo_relacional_cadastro_de_material_grupo_subgrupo_e_descritores..jpg?direct&1000 |}} (Figura 3 - Modelo Relacional Cadastro de Material, Grupo, Subgrupo e Descritores.) === 4.1.1 Entidade comum.grupo_material === A entidade comum.grupo_material armazena os grupos de materiais e indica um relacionamento 1 x N entre a entidade comum.material. Um grupo_material pode ter vários materiais ou nenhum. A Figura 3 apresenta o modelo relacional da entidade comum.grupo_material e Figura 4 apresenta um exemplo de preenchimento desta entidade. {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:exemplo_de_preenchimento_da_entidade_comum.grupo_material..jpg?direct&800 |}} (Figura 4 - Exemplo de preenchimento da entidade comum.grupo_material.) == 4.1.1.1 Pré-requisitos == Para que a entidade comum.grupo_material conforme exemplo citada na figura 4, seja populada, é necessário que entidade sco.elemento_despesa esteja povoada com a qual ela mantém relacionamento através do atributo id_elemento_despesa que é chave estrangeira para entidade grupo_material. Abaixo segue descrição da entidade que necessita ser populada antes. Entidade sco.elemento_despesa (Entidade que armazena os elementos de despesas.) === 4.1.2 Entidade comum.unidade_medida === A entidade comum.unidade_medida armazena as unidade de medidas de materiais e indica um relacionamento 1 x N entre a entidade comum.material. Uma unidade de medida pode ter apenas vários materiais e um material só pode ter uma unidade de medida. A Figura 5 apresenta o modelo relacional da tabela comum.unidade_medida. {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:exemplo_de_preenchimento_da_entidade_comum.unidade_medida.jpg?direct&600 |}} (Figura 5 - Exemplo de preenchimento da entidade comum.unidade_medida.) == 4.1.2.1 Pré-requisitos == Não existem. === 4.1.3 Entidade comum.sub_grupo_material === A entidade comum.sub_grupo_material armazena os subgrupos de materiais e indica um relacionamento N x 1 entre a entidade comum.grupo_material. Um subgrupo só pertence a um grupo de material e um grupo de material pode ter vários subgrupos. A Figura 6 apresenta o modelo relacional da tabela comum.sub_grupo_material. {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:exemplo_de_preenchimento_entidade_comum.sub_grupo_material.jpg?direct&600 |}} (Figura 6 - Exemplo de preenchimento da entidade comum.sub_grupo_material. ) == 4.1.3.1 Pré-requisitos == Para que a entidade comum.sub_grupo_material seja populada, é necessário que esteja populada a entidade comum.grupo_material com a qual ela mantém relacionamento através do atributo id_gupo_material que é chave estrangeira para a entidade grupo_material. Abaixo segue descrição da entidade que necessita ser populada antes. Entidade comum.grupo_material (Entidade que armazena os grupos materiais.) === 4.1.4 Entidade comum.material === A entidade comum.material armazena os materiais. O quadro abaixo mostra o dicionário de dados desta entidade. {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:dicinário_de_dados_almoxarifado_entidade_comum.material.jpg?direct&1200 |}} (Quadro 1 - Dicionário de dados da entidade comum.material) == 4.1.4.1 Pré-requisitos == Para que a entidade comum.material seja preenchida é recomendável o preenchimento prévio destas entidades. Entidade comum.grupo_material\\ Entidade comum.unidade_medida\\ Entidade comum.marca_produto\\ Entidade comum.usuario\\ Entidade comum.material\\ === 4.1.5 Observações === As entidades abaixo, usadas nos catálogo de materiais, são opcionais caso não use catálogo de material, é recomendável o preenchimento via sistema: comum.descritor_grupo_valor (Armazena o valor de um descritor para um determinado material) \\ comum.descritor_grupo_material (Armazena os Descritores disponíveis para associação com Materiais de acordo com seu Grupo.) \\ comum.descritor_grupo_opcao_valor (Entidade que representa a listagem dos valores dos descritores de materiais do tipo LISTA ) \\ comum.descritor_sub_grupo (Representa um descritor associado a determinado subgrupo de material). ==== 4.2 Descritores Globais (Criação de Número Antigo para Migração do Sistema Legado) ==== Os descritores globais são entidades com as propriedades de um descritor comum, mas por ser global, o sistema os trará para preenchimento (a depender do seu destino “Bem” ou “Material” ou “Ambos”.) , independente do grupo de material do bem ou material selecionado. Por exemplo: Tenho um descritor do tipo Memória do grupo 5235 e um descritor global Número Antigo para o grupo 5200, ao tombar um bem do grupo 5235 , ele trará o descritor Memória , como também trará os descritores globais, no caso aí Número Antigo. Para cadastrar descritores globais, é necessário colocar um grupo de material como global. Para isso basta solicitar o comando abaixo: --SETANDO O GRUPO 5200 COMO GLOBAL UPDATE COMUM.GRUPO_MATERIAL SET GRUPO_GLOBAL = TRUE WHERE CODIGO = 5200; Com o grupo 5200 atualizado como grupo global, todos os descritores cadastrados para o tal, serão considerados globais. Para cadastrar um descritor para armazenar o número de tombo do sistema legado, ir em: SIPAC -> Portal Administrativo -> Requisições -> Material -> Catálogo -> Gestão do Catálogo -> Cadastrar Descritor de Material. ==== 4.3 Tabelas do esquema almoxarifado e suas dependências.==== O quadro 2 mostra as principais tabela do almoxarifado e suas dependências, atentar para as obrigatórias, neste caso “Não Nulo” Verdadeiro, as com opção “Não Nulo” Falso são opcionais, mas é recomendável o preenchimento das mesmas. Observar que as tabelas que estão na coluna Relaciona devem ser populadas antes, como pré-requisito para o preenchimento das tabelas citadas na coluna Esquema.Tabela. {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:tabela_de_esquema_almoxarifado_e_suas_dependências.jpg?direct&1000 |}} (Quadro 2 - Tabelas do esquema almoxarifado e suas dependências) === 4.3.1 Tabela almoxarifado.almoxarifado. === Entidade que armazena os almoxarifados conforme exemplo de preenchimento na figura 7 {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:figura_7_exemplo_de_preenchimento_da_entidade_almoxarifado.almoxarifado.jpg?direct&1000 |}} (Figura 7 - Exemplo de preenchimento da entidade almoxarifado.almoxarifado) === 4.3.2 Tabela almoxarifado.unidade_almoxarifado. === Entidade que armazena o vinculo das unidades com almoxarifados conforme exemplo de preenchimento na figura 8 {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:figura_8_exemplo_de_preenchimento_da_entidade_almoxarifado.unidade_almoxarifado.jpg?direct&400 |}} (Figura 8 - Exemplo de preenchimento da entidade almoxarifado.unidade_almoxarifado) === 4.3.3 Tabela almoxarifado.associacao_almoxarifado. === Entidade que armazena o vinculo dos grupos com almoxarifado conforme exemplo de preenchimento na figura 9 {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:figura_9_exemplo_de_preenchimento_da_entidade_almoxarifado.associacao_almoxarifado.jpg?direct&600 |}} (Figura 9 - Exemplo de preenchimento da entidade almoxarifado.associacao_almoxarifado) === 4.3.4 Tabela almoxarifado. sub_tipo_movimentacao_estoque. === Entidade que armazena o sub tipo de movimentação de estoque conforme exemplo de preenchimento na figura 10 {{ :desenvolvimento:especificacoes:sipac:guia_de_implantacao:figura_10_exemplo_de_preenchimento_da_entidade_almoxarifado.sub_tipo_movimentacao_estoque.jpg?direct&400 |}} (Figura 10 - Exemplo de Preenchimento da Entidade almoxarifado.sub_tipo_movimentacao_estoque) ==== 5. Anexos ==== {{:desenvolvimento:especificacoes:sipac:guia_de_implantacao:dicionário_de_dados_do_almoxarifado.pdf|Dicionário de Dados do Almoxarifado}} \\ {{:desenvolvimento:especificacoes:sipac:guia_de_implantacao:diagrama_de_modelo_relacional_do_módulo_almoxarifado.pdf|Diagrama de Modelo Relacional}}