|
Bem Vindo, Visitante
|
Todos os Fórums
ADVPL
|
Imprimir
Enviar Para um Amigo Precisa estar Logado
|
|
|
Assunto: |
Gatilho com divisão |
|
Versão: |
12.1.23 |
|
Plataforma: |
Microsoft |
Complemento: |
|
|
DB: |
SQL Server |
Complemento: |
|
|
|
|
|
Mensagem do
LEONARDO_A
em 29/10/2019, 17:17 h
Local: DF Registro: 07/10/2019 Postagens: 10 |
Pessoal, boa tarde!
Conforme TDN (PCOM12054), https://tdn.totvs.com/display/public/PROT/PCOM12054+-+Campos+de+Multiplas+Naturezas+%28SEV%29+na+aba+Duplicatas
Existem clientes que desejam informar o valor ao invés do percentual, com objetivo de facilitar a digitação do usuário para rateio de naturezas na rotina de Documento de entrada.
Para tratar estas situações devemos criar um campo customizado na tabela SEV para informar o valor, e criar um gatilho customizado para que o percentual informado no EV_PERC seja alimentado ao informar o valor no campo customizado.
Com isso:
1. Criei o campo EV_XVALOR
2. Criei o seguinte gatilho:
Campo: EV_XVALOR
Cnt. Domínio: EV_PERC
Tipo: 1 - Primário
Regra: (M->EV_XVALOR/M->F1_VALBRUT)*100
Posiciona: 2 - Não
3. É apresentado o seguinte erro:
Inconsistência
Erro no Gatilho: EV_XVALOR Sec.001
type mismatch on /
4. Contudo, os campos EV_XVALOR e F1_VALBRUT são do tipo numéricos de 16 e 2 decimais.
Em resumo, o que eu preciso fazer é os seguinte: no rateio do documento de entrada preciso informar o percentual, porém quero informar o valor e o gatilho me retorna qual é o percentual.
Exemplo:
O valor F1_VALBRUT é R$ 100
No rateio, EV_XVALOR, informo R$ 50
Logo, o gatilho deve retornar 50 no EV_PERC |
|
|
Mensagem do
EMERSON.EN
em 29/10/2019, 21:04 h
Local: SP Registro: 20/08/2010 Postagens: 669 |
a programa MATA103 não trabalha com os campos da tabela, e sim com variáveis de tela.
não lembro qual variável guarda o valor total da nota, mas você pode usar a rotina do fiscal para isso.
Campo: EV_XVALOR
Cnt. Domínio: EV_PERC
Tipo: 1 - Primário
Regra: (M->EV_XVALOR/mafisret(,"NF_TOTAL"))*100
Posiciona: 2 - Não
Condição: mafisret(,"NF_TOTAL") > 0
|
|
Para postar no Fórum você precisa efetuar o seu login ou se registrar
|
|