Alteração do Grupo de Peças
Características do Requisito
Linha de Produto: | Microsiga Protheus | ||||
Segmento: | Varejo | ||||
Módulo: | Autopeças (SIGAPEC) | ||||
Rotina: |
| ||||
País(es): | Todos | ||||
Banco(s) de Dados: | Todos | ||||
Tabelas Utilizadas: | VR2 SB1 | ||||
Sistema(s) Operacional(is): | Windows®/Linux®. |
Descrição
O cadastro de Produtos contém as principais informações sobre produtos e serviços adquiridos, fabricados ou fornecidos pela empresa, realizando o controle desses produtos em todos os módulos do Sistema. A partir do seu cadastro e movimentações, os dados cadastrais são gravados na base de dados em outras tabelas e a alteração de informações como “Grupo”, por exemplo, pode gerar inconsistências na base. Pensando nisso, foi disponibilizada a opção de alteração do grupo através do parâmetro MV_MIL0077, de forma segura para garantir a consistência das informações nos módulos DMS.
Importante
Antes de executar o compatibilizador UPDOFIOP é imprescindível:
- Realizar o backup da base de dados do produto que será executado o compatibilizador (diretório PROTHEUS11_DATA\DATA) e dos dicionários de dados SXs (diretório PROTHEUS11_DATA\SYSTEM).
- Os diretórios acima mencionados correspondem à instalação padrão do Protheus, portanto, devem ser alterados conforme o produto instalado na empresa.
- Essa rotina deve ser executada em modo exclusivo, ou seja, nenhum usuário deve estar utilizando o sistema.
- Se os dicionários de dados possuírem índices personalizados (criados pelo usuário), antes de executar o compatibilizador, certifique-se de que estão identificados pelo nickname. Caso o compatibilizador necessite criar índices, irá adicioná-los a partir da ordem original instalada pelo Protheus, o que poderá sobrescrever índices personalizados, caso não estejam identificados pelo nickname.
- O compatibilizador deve ser executado com a Integridade Referencial desativada*.
Atenção O procedimento a seguir deve ser realizado por um profissional qualificado como Administrador de Banco de Dados (DBA) ou equivalente! A ativação indevida da Integridade Referencial pode alterar drasticamente o relacionamento entre tabelas no banco de dados. Portanto, antes de utilizá-la, observe atentamente os procedimentos a seguir:
Contate o Help Desk Framework EM CASO DE DÚVIDAS! |
---|
- Em TOTVS Smart Client, digite o U_UPDOFIOP no campo Programa Inicial.
- Clique em OK para continuar.
- Após a confirmação é exibida uma tela para a seleção da empresa em que o dicionário de dados será modificado ou é apresentada a janela para seleção do compatibilizador. Selecione o programa xxxx().
- Ao confirmar é exibida uma mensagem de advertência sobre o backup e a necessidade de sua execução em modo exclusivo.
- Clique em Processar para iniciar o processamento. O primeiro passo da execução é a preparação dos arquivos.
É apresentada uma mensagem explicativa na tela. - Em seguida, é exibida a janela Atualização concluída com o histórico (log) de todas as atualizações processadas. Nesse log de atualização são apresentados somente os campos atualizados pelo programa. O compatibilizador cria os campos que ainda não existem no dicionário de dados.
- Clique em Gravar para salvar o histórico (log) apresentado.
- Clique em OK para encerrar o processamento.
- Clique em Processar para iniciar o processamento. O primeiro passo da execução é a preparação dos arquivos.
Atualizações do Compatibilizador
Criação de tabela no arquivo SX2– Tabelas:
Chave | Nome | Modo | PYME |
VR2 | Alteracao do Grupo de Pecas SB | E | S |
Criação de Campos no arquivo SX3 – Campos:
- Tabela VR2 - Alteracao do Grupo de Pecas SB:
Campo | VR2_FILIAL | VR2_CODIGO | VR2_CODSB1 | VR2_STATUS | VR2_CODITE |
Tipo | Caracter | Caracter | Caracter | Caracter | Caracter |
Tamanho | 8 | 8 | 15 | 1 | 27 |
Decimal | 0 | 0 | 0 | 0 | 0 |
Formato | @! | @! | @! | @! | @! |
Título | Filial | Cod.Sequenc | Codigo SB1 | Status | Codigo Item |
Descrição | Filial | Codigo Sequencial | Codigo SB1 | Status | Codigo Item |
Nível | 1 | 1 | 1 | 1 | 1 |
Usado | Não | Sim | Sim | Sim | Sim |
Obrigatório | Não | Sim | Sim | Não | Não |
Browse | Não | Não | Sim | Não | Sim |
Opções | 0=Pendente;1=OK | ||||
When | |||||
Relação | |||||
Val. Sistema | Pertence("01") | ||||
Help | Informe aqui a Filial. | Informe o Codigo Sequencial. | Informe o Codigo do Produto. | Informe o Status. | Informe o Codigo do Item. |
Campo | VR2_GRUANT | VR2_GRUNOV | VR2_DATSOL | VR2_HORSOL | VR2_CODUSR |
Tipo | Caracter | Caracter | Data | Numérico | Caracter |
Tamanho | 4 | 4 | 8 | 4 | 6 |
Decimal | 0 | 0 | 0 | 0 | 0 |
Formato | @! | @! | @R 99:99 | @! | |
Título | Grp.Anterior | Grupo Novo | Dt.Solicitac | Hr.Solicitac | Cod. Usuario |
Descrição | Grupo Anterior | Grupo Novo | Data Solicitacao | Hora Solicitacao | Codigo do Usuario |
Nível | 1 | 1 | 1 | 1 | 1 |
Usado | Sim | Sim | Sim | Sim | Sim |
Obrigatório | Sim | Sim | Não | Não | Não |
Browse | Sim | Sim | Não | Não | Não |
Opções | |||||
Consulta Padrão | SBM | SBM | |||
When | |||||
Relação | |||||
Val. Sistema | |||||
Help | Informe o Grupo Anterior. | Informe o Grupo Novo. | Informe a Data da Solicitacao. | Informe a Hora da Solicitacao. | Informe o Codigo do Usuario. |
Campo | VR2_ORIGEM | VR2_FILANT | VR2_DATALT | VR2_HORALT |
Tipo | Caracter | Caracter | Data | Numérico |
Tamanho | 1 | 8 | 8 | 4 |
Decimal | 0 | 0 | 0 | 0 |
Formato | @! | @! | @R 99:99 | |
Título | Origem | FilAnt | Dt.Alteracao | Hr.Alteracao |
Descrição | Origem | FilAnt | Data Alteracao | Hora Alteracao |
Nível | 1 | 1 | 1 | 1 |
Usado | Sim | Sim | Sim | Sim |
Obrigatório | Não | Não | Não | Não |
Browse | Não | Não | Não | Não |
Opções | 1=Cad.Produto;2=Aplicacao;3=Grupo/SubGrupo | |||
When | ||||
Relação | ||||
Val. Sistema | Pertence("123") | |||
Help | Informe a Origem. | Informe o Filial posicionada. | Informe a Data da Alteracao. | Informe a Hora da Alteracao. |
Importante:
O tamanho dos campos que possuem grupo pode variar conforme ambiente em uso.
Criação de Índices no arquivo SIX – Índices:
Índice | VR2 |
Ordem | 1 |
Chave | VR2_FILIAL+VR2_CODIGO |
Descrição | Codigo Sequencial |
Proprietário | S |
Índice | VR2 |
Ordem | 2 |
Chave | VR2_FILIAL+VR2_CODSB1+VR2_CODIGO |
Descrição | Produto + Codigo Sequencial |
Proprietário | S |
Índice | VR2 |
Ordem | 3 |
Chave | VR2_FILIAL+VR2_STATUS+VR2_CODSB1 |
Descrição | Status + Produto |
Proprietário | S |
Criação de Parâmetros no arquivo SX6 – Parâmetros:
Nome da Variável | MV_MIL0077 |
Tipo | Numérico |
Descrição | Tipo de Execucao na alteracao do GRUPO do Produto 1 - Executa agora em modo Exclusivo (default) 2 - Executa depois via SCHEDULE |
Valor Padrão | 1 |
Procedimento para Configuração
CONFIGURAÇÃO DE PARÂMETROS
No Configurador (SIGACFG), acesse Ambientes/Cadastros/Parâmetros (CFGX017). Configure o(s) parâmetro(s) a seguir:
Itens/Pastas | Descrição |
Nome: | MV_MIL0077 |
Tipo: | Numérico |
Cont. Por.: | 1 |
Descrição: | Tipo de Execucao na alteracao do GRUPO do Produto 1 - Executa agora em modo Exclusivo (default) 2 - Executa depois via SCHEDULE |
Este parâmetro indica se a alteração do grupo poderá ser feito a qualquer momento, mas em modo exclusivo. Ou se essa alteração deve ser programada para ser feita em um horário específico via Schedule.
Essa ação é necessária, pois é necessário garantir que todos os registros relacionados ao grupo de compras (B1_GRUPO) sejam atualizados, em todas as movimentações.
Portanto, configure o parâmetro MV_MIL0077 conforme segue:
- Informe 1 para que seja possível alterar o Grupo (B1_GRUPO) a qualquer momento, desde que seja feito o acesso em modo exclusivo.
- Informe 2 para que seja possível alterar o Grupo (B1_GRUPO) somente de forma automática através da configuração do Schedule.
Procedimento para Utilização
- No Autopeças (SIGAPEC) acesse o cadastro de Peças em Atualizações\Cad Peças\Peças (MATA010).
- Nesta rotina é possível Incluir, Alterar, Excluir entre outras opções.
- Para alterar o Grupo (B1_GRUPO) de uma peça, selecione-a e clique em Alterar.
- Faça a alteração do Grupo e em seguida, clique em Confirmar e neste momento será considerado o conteúdo do parâmetro MV_MIL0077.
- No caso em que o parâmetro esteja configurado com 1 há duas possibilidade:
- Modo Exclusivo: Em modo exclusivo, será possível alterar o grupo do produto (B1_GRUPO) e todas as tabelas de movimentação relacionadas à essa informação serão atualizadas corretamente.
- Não estar em modo exclusivo: Neste caso, será apresentada a mensagem de que houve uma alteração de grupo, mas que essa ação exige exclusividade de acesso. Portanto, será necessário desconectar todos os usuários e tentar novamente.
ATENÇÃO: Será necessário acessar o sistema com o modo SIGAADV. Caso o ambiente seja no Cloud, é necessário que acesse diretamente o módulo no qual a opção está no menu. Exemplo: SIGAPEC.
- Caso o parâmetro esteja configurado com 2 a alteração deverá ser feita via Schedule.
- Neste caso, acesse o cadastro de peça em Atualizações\Cad Peças\Peças (MATA010), no módulo de Autopeças (SIGAPEC).
- Selecione a peça e clique na opção Alterar.
- Informe o novo Grupo (B1_GRUPO) e clique no botão Confirmar.
- Ao confirmar, o campo Grupo (B1_GRUPO) não será alterado, permanecerá da mesma forma. Entretanto, a atualização do campo Grupo (B1_GRUPO) e de todas as tabelas de movimentações relacionadas ao grupo de peças será feita em outro momento, de acordo com a configuração do processo no Schedule do Protheus.
ATENÇÃO: É importante que a atualização automática, configurada via Schedule, seja programada para ser executada em um momento em que não exista nenhum usuário utilizando o sistema.
- Isso ocorre porque ao informar o novo grupo e confirmar o cadastro, as informações serão salvas na tabela intermediária de alteração do grupo de peças VR2.
- As seguintes informações serão armazenadas nesta tabela:
- Filial (VR2_FILIAL): Este campo armazena o código da filial, de acordo com configuração de compartilhamento.
- Código Sequenc (VR2_CODIGO): Este campo armazena um código sequencial.
- Código SB1 (VR2_CODSB1): Este campo armazena o código (B1_COD) do produto relacionado ao grupo a ser alterado.
- Status (VR2_STATUS): Este campo indica o status da atualização. 0 indica que está pendente de atualização, e 1 que grupo já foi atualizado.
- Codigo Item (VR2_CODITE): Este campo armazena o código interno do item relacionado ao grupo a ser alterado (B1_CODITE).
- Grp Anterior (VR2_GRUANT): Este campo armazena o grupo anterior à alteração.
- Grupo Novo (VR2_GRUNOV): Este campo armazena o novo grupo informado na alteração.
- Dt Solicitac (VR2_DATSOL): Este campo armazena a data de solicitação de alteração.
- Hr Solicitac (VR2_HORSOL): Este campo armazena a hora de solicitação de alteração.
- Cód Usuário (VR2_CODUSR): Este campo armazena o código do usuário que solicitou a alteração.
- Origem (VR2_ORIGEM): Este campo armazena a origem da alteração. Sendo: 1=Cadastro de produto; 2=Aplicação de peças; 3=Grupo/Subgrupo de peças.
- FilAnt (VR2_FILANT): Filial anterior, utilizada apenas para procedimentos internos do sistema.
- Dt.Alteração (VR2_DTALT): Este campo armazena a data de alteração.
- Hr.Alteração (VR2_HORALT): Este campo armazena a hora da alteração.
ATENÇÃO: Esta tabela é de uso intermediário. Ela é gravada de forma automática através das rotinas do sistema e não devem ser atualizadas de forma manual em hipótese alguma.
- A configuração do Schedule deve ser feita apenas para uma das filiais, e o procedimento será executado para todas as filiais envolvidas.
- Para configuração acesse o Configurado (SIGACFG) acesse o cadastro Schedule em Ambientes\Schedule\Schedule (CFGA010).
- Selecione a opção Agendamentos e em seguida Cadastro.
- Inclua um novo agendamento com um clique no botão Incluir.
- Neste cadastro preencha as informações da forma que preferir, mas atente-se aos campos:
- Rotina (XX1_ROTINA): Preencha este campo com o conteúdo VEISC001().
- Empresa/Filial (XX1_EMPFIL): Neste campo informe somente uma filial. Mesmo com essa configuração, serão atualizados os grupos de todas as filiais. Ou seja, não é necessário fazer um agendamento por filial, apenas um agendamento já atualizará os registros de todas as filiais.
- Módulo (XX1_MODULO): Preencha com o módulo Auto-peças (41).
- Horário e recorrência: Neste ponto é importante alertar que é necessário informar um horário o qual será possível executar a rotina em total exclusividade.
Observação: O serviço de agendamento, responsável pela execução das rotinas de forma automática, deve estar configurado corretamente.