Pendencias Integracao: mudanças entre as edições
De Merito Wiki
(Criou página com '= Procedimento para Execução de SQLs com Alteração = '''Regra geral:''' Sempre que for executar um SQL que altere dados, rodar '''pelo erro''' (ferramenta de execução em transação) seguindo as regras abaixo: # Encerrar cada comando com <code>;</code>. # Usar '''aspas duplas''' quando necessário. # Garantir que todos os comandos sejam executados na '''mesma transação'''. # Em caso de erro, a transação será revertida (rollback automático). == cpagardoc...') |
|||
| Linha 51: | Linha 51: | ||
### Deletar na unidade. | ### Deletar na unidade. | ||
### Executar um <code>UPDATE</code> nas notas que usaram a placa para apontar para o ID da matriz. | ### Executar um <code>UPDATE</code> nas notas que usaram a placa para apontar para o ID da matriz. | ||
# Escolher a base com '''menos registros''' para deletar/inativar. Geralmente a unidade é a melhor | # Escolher a base com '''menos registros''' para deletar/inativar. Geralmente a unidade é a melhor opçã | ||
Edição das 20h51min de 13 de agosto de 2025
Procedimento para Execução de SQLs com Alteração
Regra geral: Sempre que for executar um SQL que altere dados, rodar pelo erro (ferramenta de execução em transação) seguindo as regras abaixo:
- Encerrar cada comando com
;. - Usar aspas duplas quando necessário.
- Garantir que todos os comandos sejam executados na mesma transação.
- Em caso de erro, a transação será revertida (rollback automático).
cpagardoc — Inativar
- Apenas inativar o registro.
- Observação: Não vale a pena buscar os dados da matriz para corrigir (mesmo sendo o “correto”).
Produto com estoque negativo
UPDATE tabemp SET cod = cod WHERE cod = 1; SET merito.usuario_master = 'true';
- Esse procedimento força atualização e habilita permissões temporárias para corrigir o estoque.
Produto com valor (BK) já existente
- Ao tentar deletar e receber erro de que o registro está em uso:
- Identificar o id_valor informado no erro.
- Executar:
DELETE FROM etqprod_vlrhist
WHERE id_valor = {id_do_erro};
- Isso remove o histórico de valor, permitindo a atualização correta.
UPDATE sem linhas afetadas
- Se um
UPDATEnão afetar nenhuma linha:- Abrir a engrenagem (detalhes do log).
- Verificar se o INSERT foi executado antes do
UPDATE.
- Esse problema não deve mais ocorrer, mas ainda vale verificar.
Placa duplicada (matriz e unidade)
Cenário: Uma placa cadastrada tanto na matriz quanto na unidade.
Procedimento
- Tentar deletar na matriz usando "Gerar Exclusão".
- Se não houver erro de chave estrangeira:
- Deletar na matriz.
- Inativar na unidade a placa que veio da matriz.
- Se houver erro de chave estrangeira:
- Inativar na matriz.
- Deletar na unidade.
- Executar um
UPDATEnas notas que usaram a placa para apontar para o ID da matriz.
- Se não houver erro de chave estrangeira:
- Escolher a base com menos registros para deletar/inativar. Geralmente a unidade é a melhor opçã