Tempo aproximado para leitura: 00:02:00 min
Ocorrência
Campos no item do pedido de vendas sendo alterados ao modificar certos campos no cabeçalho do pedido de vendas.
Causa
Conforme eu coloco informações em certos campos do cabeçalho dos pedidos de venda alguns itens no cabeçalho dos pedidos de venda são alterados.
Ambiente
Cross Segmento - TOTVS Backoffice (Linha Protheus) - SIGAFAT - A partir da versão 12.
Solução
Há alguns tipos de gatilhos no pedidos de venda, seja por funções nativas ou gatilhos, a alteração de campos no cabeçalho do pedido de venda (SC5) que contém a função A410Recalc() pode mudar algumas informações em campos no item do pedido de venda (SC6).
Alguns campos do cabeçalho do pedido de vendas possuem para evitar inconsistências, uma função nativa chamada A410Recalc(). Essa função é responsável ao colocar informações no campo, atualizar novamente as informações dos campos antes colocados nos itens.
Caso seja colocado itens depois de incluir no cabeçalho, um item com a função A410Recalc(), a informação não será retirada novamente, isso ocorre quando é preenchido informações nos itens e depois é alterado ou incluído alguma informação em campos do cabeçalho do pedidos de venda.
Para checar se o campo em questão possui a função de atualização nos itens basta:
- Selecionar o campo
- Apertar F1
- Ir no botão “Validação”
- Ver se possui a função A410Recalc()
Exemplo de verificação:
-----> 
Exemplo para visualização:
Incluir um pedido de venda e preencher mais nada além do TES na SC6, ela gatilhará o CFOP no campo C6_CF.

Vamos mudar manualmente agora o CFOP no campo C6_CF para um diferente do que veio gatilhado ao incluir apenas a TES.

Agora, para visualizar a ação da função A410Recalc(), vamos preencher um campo que tem a função, como por exemplo o C5_CONDPAG (Condição de Pagamento). Ao incluir uma informação no campo C5_CONDPAG, será ativado a função A410Recalc() e será reafirmado os campos obrigatórios do item, ou seja, será reafirmado o campo C6_TES fazendo que seja gatilhado o CFOP original no C6_CF (retirando o valor que colocamos manualmente).

Ela reafirma os itens obrigatórios do item (SC6), então na verdade, não está mudando o CFOP, está reafirmando a TES que por sua vez muda o CFOP.
Campos que tem a função A410Recalc():
- C5_CLIENTE (Cliente *)
- C5_LOJACLI (Loja *)
- C5_CLIENT (Cli.Entrega)
- C5_CONDPAG (Cond. Pagto *)
- C5_TABELA (Tabela)
- C5_DESC1/2/3/4 (Desconto 1/2/3/4)
- C5_MOEDA (Moeda)
Observações:
- Há campos com funções que podem mudar informações dos itens por validarem pontualmente certos campos, não necessariamente recalculam todos os itens obrigatório dos Itens (SC6) como o A410Recalc().
- Também há campos que não possuem funções, mas mudam outros campos por estarem incluídos em gatilhos nativos.
0 Comentários