fbpx

Como acertar a numeração do D3_DOC

como acertar a numeração do D3_DOC

Neste post quero apresentar a forma que utilizo para corrigir a numeração no campo D3_DOC.

Sei que às vezes alguns usuários, sem querer erram o dedo e acabam alterando a sequência de algum campo do Protheus. E não somente o usuário, pois o sistema às vezes apresenta algum erro ou outro que altera a numeração.

E no caso da tabela SD3 (Movimentos Internos), o campo D3_DOC, utiliza na inicialização do campo a função NextNumero, e essa função efetua a busca direto no banco de dados, sem passar pelo controle de numerações do License, então você não consegue simplesmente ir e alterar via configurador.

Então é preciso realizar alguns procedimentos via QUERY.

E para isto eu costumo, primeiro verificar quantos registros estão errados, e se não houve movimentação no estoque desses itens.

E para isso, utilizo a query a seguinte:

SELECT 
    R_E_C_N_O_, 
    D3_FILIAL,
    D3_DOC 
FROM 
    dbo.SD3010 
WHERE 
    D3_FILIAL = '01'
    AND D3_DOC  < 'INVENT   '
    AND D_E_L_E_T_ = ' '
ORDER BY 
    D3_FILIAL DESC ,
    D3_DOC DESC ,
    D3_COD DESC ,
    R_E_C_N_O_ DESC

Após isto com esta listagem em mãos (documentos SD3), solicito ao usuário responsável pelas movimentações (caso exista um, rs), que realize os processos para estornar um a um desses documentos.

E após estes estornos, prossigo com a exclusão (pois a função NextNumero, não filtra o campo D3_ESTORNO).

E para isso, realizo um UPDATE na tabela SD3, atualizando o campo D_E_L_E_T_ para * (somente dos registros que foram estornados).

*Dica: Se a instalação tiver o R_E_C_D_E_L_, preencho ele com R_E_C_N_O_. 

Para isto utilizo o seguinte script.

UPDATE 
    SD3010 
SET 
    D_E_L_E_T_ = '*' 
WHERE 
    D3_DOC >= '40 '
    AND D3_ESTORNO = 'S'
    AND D3_DOC  < 'INVENT   '
    AND D_E_L_E_T_ = ' '

E assim concluo o processo acho que consegui contribuir de alguma forma.

Até a próxima.

Está gostando do conteúdo? Compartilhe!

André Oliveira

💻Especialista no Sistema ERP Totvs Protheus 🚀Compartilhando conhecimento de Protheus/ADVPL/TL++

Assine A Nossa Newsletter

plugins premium WordPress