Limpeza e Fechamento de Tabelas
Objetivo
O processo de Limpeza e Fechamento de Tabelas foi desenvolvido para gravar em outro banco de dados (Oracle) os fechamentos de Tabelas do Sistema RMS.
Os Dados são gravados no usuário RMS_DBF (banco de fechamento) e excluídas do banco de dados do RMS (Operacional).
Conceito
Um Painel de Controle define os dias/meses/anos que os dados irão permanecer no banco de dados da RMS.
O processo de limpeza verifica o parâmetro, busca os dados, grava na mesma tabela no banco de dados RMS_DBF e exclui do banco de dados da RMS (Operacional).
RMS_DBF é o nome FIXO do usuário no banco de dados ORACLE.
Descrição do processo
Abaixo, segue uma listagem das operações a serem realizadas, associando a atividade ao tópico descrito neste documento:
1. Preparação e criação da base RMS_DBF (Ver Tópico 3 - Configuração RMS_DBF)
2. Configuração do Painel de Controle (Ver Tópico 4 - Painel de Controle)
3. Execução Manual do Fechamento (Ver Tópico 5 - Processo de Fechamento Manual)
4. Criação das tarefas agendadas de execução automática do processo (Ver Tópico 6 - Execução Automática)
Configuração RMS_DBF
RMS_DBF é um usuário de banco de dados Oracle onde os dados do sistema RMS serão armazenadas após fechamento.
Este usuário pode ser configurado de acordo com a necessidade de cada Cliente RMS (mesmo banco de dados, outro servidor), sugerimos que se for no mesmo banco de dados, tenha um disco separado para armazenar as tablespaces.
Abaixo procedimento para uma configuração simples, onde um DBA pode indicar a melhor configuração para cada cliente RMS.
Procedimentos a serem executados para o usuário RMS_DBF a ser criado:
Criar Tablespaces de Dados e Índices
Tablespace Dados: | TS_RMSF_D |
Tabelspace Índices: | TS_ RMSF _I |
Criar usuário no banco de dados
Usuário: | RMS_DBF | (deve ser este nome) |
Associar este usuário a TABLESPACE TS_RMSF_D.
Criar as tabelas no banco de dados RMS_DBF.
*ATENÇÃO:*
SOMENTE EXECUTAR OS PACOTES de criação das TABELAS. Os outros objetos como PROCEDURES, FUNCTIONS serão executados no usuário do OPERACIONAL (RMS).
Script enviado com o pacote de atualização de programas.
Associar os objetos a TS_RMSF_D, para os dados e TS_RMSF_I, para os índices.
- Dar permissão para o usuário do RMS acessar todas as tabelas que estejam no usuário RMS_DBF
GRANT SELECT, INSERT, UPDATE, DELETE ON TABELA TO USUARIO_RMS;
(USUARIO_RMS é o nome do usuário no ORACLE do RMS)
Procedimentos a ser executado para o usuário OPERACIONAL (RMS):
SOMENTE para o caso do usuário RMS_DBF ter sido criado em outra instância (servidor), então realizar no servidor do usuário OPERACIONAL (RMS):
- Criar DBLINK, para o usuário RMS_DBF que se encontra em outro servidor;
- Na mesma instância (servidor) do usuário operacional (RMS), criar outro usuário RMS_DBF;
- No usuário RMS_DBF criado:
- Criar SINÔNIMOS utilizando o DBLINK para todas as tabelas do usuário RMS_DBF (localizado no outro servidor);
- Dar permissão a todos esses sinônimos ao usuário operacional RMS;
Script enviado com o pacote de atualização de programas.
Os programas RMS foram alterados para consultar as tabelas no usuário RMS_DBF. Assim, para o caso da existência de DBLINK, isso é mascarado através do usuário RMS_DBF e seus sinônimos no servidor principal.
- Compilar os outros objetos de banco do pacote enviado, como PROCEDURES, FUNCTIONS no usuário do OPERACIONAL (RMS).
Script enviado com o pacote de atualização de programas.
- Compilar os objetos inválidos. Nenhuma rotina do pacote enviado deverá ficar inválida.
Painel de Controle
É nesta tela, que o usuário deve determinar o critério para limpeza ou fechamento das informações.
Configurado por produto ou processo.
Para o funcionamento correto deste processo, todos os parâmetros deste painel devem ser configurados.
*ATENÇÃO:*
Após o cadastro de CADA PARÂMETRO, o botão de Confirmar (F4) deverá ser pressionado.
Painel de Controle (VDBFPAIN)
Processo Fechamento Manual
Nesta tela, é possível executar manualmente os processos de fechamento Diário, Semanal ou Mensal.
Geralmente a primeira vez que este procedimento for executado, deverá demorar, já que a base operacional tende a estar "volumosa" e assim este processo terá que tratar na maioria das vezes de milhões de registros.
Devido a isto, recomenda-se que estes procedimentos sejam planejados para que não ocorra impacto ao ambiente.
Após a primeira execução, este procedimento deverá ser utilizado apenas em casos excepcionais, já que será criada uma agenda para execução programada deste processo (Tópico 6 - Execução Automática).
ANTES DESTA PRIMEIRA EXECUÇÃO, RECOMENDA SE A REALIZAÇÃO DO BACKUP do banco, caso este tenha ocorrido.
Fechamento Manual (VDBFFECH)
Execução Automática
As rotinas de limpeza e fechamento foram divididas em 4 partes:
- Fechamento / Limpeza – Processo Diário
- Fechamento / Limpeza – Processo Semanal
- Fechamento / Limpeza – Processo Mensal
- Fechamento / Limpeza – Processo Manual
Os processos Diário, Semanal e Mensal estão automatizados em processos Oracle (caso não existem serão criados automaticamente após o processo de importação de vendas)
Tabelas do processo de Limpeza e Fechamento
Abaixo segue a listagem das tabelas envolvidas no processo de limpeza e fechamento. Algumas das tabelas abaixo deverão ser criadas no RMS_DBF.
Tabelas destacadas em negrito e em itálico, não deverão ser criadas no banco RMS_DBF.
Para entendimento da tabela:
- Exclusão Física (Não Move): Significa que os dados ANTIGOS do banco operacional serão apagados segundo o critério, definido no painel (Tópico 2).
- Limpeza e BACKUP (MOVE_RMS_DBF) que dizer os dados ANTIGOS são movidos da BASE OPERACIONAL para o banco RMS_DBF e após isto são apagados do operacional segundo o critério definido no painel (Tópico 2).
Módulo | Processo | Versão | Tabela | Exclusão Física | Limpeza e Backup |
| | | | (Não move) | (Move RMS_DBF) |
Cadastro | Semanal | | AG2CKES2 | Sim | |
| | | AG2CKEST | Sim | |
| Mensal | | AA0LOGIT | | Sim |
Compras | Semanal | | AG1EPEDI | | Sim |
| | | AG1FDPED | | Sim |
| | | AG1FLPED | | Sim |
Preços | Semanal | | AA2CPREC | | Sim |
| | | AA3CPREC | | Sim |
| | | AA1CCONC | | Sim |
| | | AA1CSEIT | | Sim |
| | | AA2FPREC | | Sim |
PDV | Diário | | CAPCUPOM | | Sim |
| | | DETCUPOM | | Sim |
| | | DETCUPOMP1 | | Sim |
| | | DETCUPOMT1 | | Sim |
Fiscal | Mensal | 568 SP1 | AG2VR60I | | Sim |
| | 568 SP1 | AG2VR60P | | Sim |
| | 567/EURO | AG1ICMST | | Sim |
| | 567/EURO | AG1REICM | | Sim |
| | 567/EURO | AA1CFISC | | Sim |
| | 567/EURO | AG2CSFIS | | Sim |
| | 567/EURO | AG1IENSA | | Sim |
| | 567/EURO | AG1FENSA | | Sim |
| | 567/EURO | AG2TRBIT | | Sim |
| | 567/EURO | AA2LVENC | | Sim |
| | 567/EURO | AA1ADFIS | | Sim |
| | 567/EURO | AA2LVENC | | Sim |
| | 567/EURO | AA3LVENC | | Sim |
| | 567/EURO | AA1AGECP | | Sim |
| | 567/EURO | AA1AGEDT | | Sim |
| | 567/EURO | AA2AGEDT | | Sim |
Gerencial – LOG | Diário | | LOG_IMP_ESTQ | Sim | |
| | | LOG_PROCESSO_GER | Sim | |
| | | LOG_DETAIL_PROC | Sim | |
| | | LOG_TAB_CTB | Sim | |
| | | LOG_ESTOQUE_GER | Sim | |
Gerencial | Mensal | | AGG_ACP_PROD | Sim | Sim |
| | | AGG_APR_LOG | Sim | Sim |
| | | AGG_BC_COMP | Sim | Sim |
| | | AGG_BC_FORN | Sim | Sim |
| | | AGG_BC_PROD | Sim | Sim |
| | | AGG_BC_SET | Sim | Sim |
| | | AGG_BC_SGRP | Sim | Sim |
Módulo | Processo | Tabela | Exclusão Física | Limpeza e Backup |
| | | (Não move) | (Move RMS_DBF) |
Gerencial (Continuação) | Mensal | AGG_CMP_PROD | Sim | Sim |
| | AGG_CMP_PROD_FORN | Sim | Sim |
| | AGG_CMP_PROD_FORN_MES | Sim | Sim |
| | AGG_CMP_PROD_MES | Sim | Sim |
| | AGG_COML_CLI | Sim | Sim |
| | AGG_COML_CLI_MES | Sim | Sim |
| | AGG_COML_COMP | Sim | Sim |
| | AGG_COML_COMP_MES | Sim | Sim |
| | AGG_COML_FIL | Sim | Sim |
| | AGG_COML_FIL_MES | Sim | Sim |
| | AGG_COML_FORN | Sim | Sim |
| | AGG_COML_FORN_MES | Sim | Sim |
| | AGG_COML_SET | Sim | Sim |
| | AGG_COML_SET_MES | Sim | Sim |
| | AGG_COML_SGRP | Sim | Sim |
| | AGG_COML_SGRP_MES | Sim | Sim |
| | AGG_COML_VEND | Sim | Sim |
| | AGG_COML_VEND_MES | Sim | Sim |
| | AGG_ESTQ_DIA | Sim | |
| | AGG_ESTQ_PROD | Sim | Sim |
| | AGG_FLS_FIN | Sim | Sim |
| | AGG_FLS_PROD | Sim | Sim |
| | AGG_FLS_SET | Sim | Sim |
| | AGG_FVDA_FIL | Sim | Sim |
| | AGG_FVDA_FIL_MES | Sim | Sim |
| | AGG_MVTO_PROD | Sim | Sim |
| | AGG_MVTO_PROD_FORN | Sim | Sim |
| | AGG_MVTO_PROD_FORN_MES | Sim | Sim |
| | AGG_MVTO_PROD_MES | Sim | Sim |
| | AGG_OFT_PROD | Sim | Sim |
| | AGG_VDA_PROD | Sim | Sim |
| | AGG_VDA_PRODRECE | Sim | Sim |
| | AGG_VDA_PROD_MES | Sim | Sim |
| | AGG_VDA_PROD_VEND | Sim | Sim |
| | AGG_VDA_PROD_VEND_MES | Sim | Sim |
| | META_COMP | Sim | Sim |
| | META_FIL | Sim | Sim |
| | META_FIL_DIA | Sim | Sim |
| | META_FIL_SEC | Sim | Sim |
| | META_FIL_SEC_DIA | Sim | Sim |
Vendas Assistidas | Mensal | AG1CTRPD | | Sim |
| | AG1RLPED | | Sim |
| | AG1VAPED | | Sim |
| | AG1VCPED | | Sim |
| | AG3PVECP | | Sim |
| | AG3PVEDT | | Sim |
| | AG3PVEND | | Sim |
| | AG1ADPED | | Sim |
| | AG1CDTEL | | Sim |
| | AG1CGTEL | | Sim |
| | AG1CPDOC | | Sim |
Outros objetos envolvidos no processo de fechamento e Limpeza de tabelas:
TIPO | OBJETO |
BD | PACKAGES\PC_DBF_FECHA |
BD | PROCEDURES\PROC_DBF_CADASTRO |
BD | PROCEDURES\PROC_DBF_COMPRAS |
BD | PROCEDURES\PROC_DBF_FISCAL |
BD | PROCEDURES\PROC_DBF_GERENCIAL |
BD | PROCEDURES\PROC_DBF_LOG_GER |
BD | PROCEDURES\PROC_DBF_LOGISTICA |
BD | PROCEDURES\PROC_DBF_PDV |
BD | PROCEDURES\PROC_DBF_PRECOS |
BD | PROCEDURES\PROC_DBF_R60I |
BD | PROCEDURES\PROC_DBF_VENDA |
BD | SCRIPT\GER\SCRIPT_CRIA_TABELAS_DBF_GER |
LIB | VDBFFECH |
LIB | VDBFPAIN |
PDF | RMS LIMPEZA E FECHAMENTO DE TABELAS_2012 |