Imprimi Página | Fechar janela

Condição em gatilho

Impresso de: Helpfacil - Portal do conhecimento
Nome do Forum: ADVPL
Descrição do Forum: Dúvidas sobre a programação em ADVPL
URL:http://www.helpfacil.com.br/display_topic_threads.asp?ForumID=1&TopicID=44490
Data da Impressão: segunda-feira, 2 de dezembro de 2024 at 10:47


Topico: Condição em gatilho

Postado por: ANDREAS
Assunto: Condição em gatilho
Data Postagem: terça-feira, 9 de abril de 2024 at 11:43

Bom dia, tenho um campo que estou tentando atribuir um valor a ele via gatilho,
porém quando crio um gatilho exemplo: quando o frete for setado no campo, o campo tipo de operação receber o valor ‘51‘, ai os demais valores alteram, porém via gatilho os campos não estão alterando como deveriam, e se eu tiro o gatilho e coloco o valor ‘51‘ no campo, na mão ai sim os campos alteram como deveriam

O que eu poderia fazer para resolver isso automaticamente, sem precisar setar o valor 51 manualmente?


Respostas:

Postado Por: ROBERTOMEN
Data Postagem: terça-feira, 9 de abril de 2024 at 14:43

Boa tarde.

Bem pelo que eu entendi ai, vc tem um campo e quando vc digita 51 neste campo, um gatilho é disparado..

Que campo é este?



se eu tiro o gatilho e coloco o valor '51' no campo na mão ai sim
os campos alteram como deveriam


Qual a condição para a operação receber automaticamente o valor 51 ?





Postado Por: ANDREAS
Data Postagem: terça-feira, 9 de abril de 2024 at 14:53

Tenho um campo (Valor do frete) criei um gatilho para que quanto for colocado um valor, ele atribuir o valor 51 ao campo (tipo de operação)

Dentro do gatilho esta: M->C7_OPER := 51

Porém os valores dos outros campos não são atualizados, como se esse 51 apenas estivesse ali sem influencia alguma.

E sem esse gatilho para atribuir o valor, o campo vem em branco, ai eu coloco o valor 51 na mão e os campos são atualizados como deveriam



Postado Por: ANDREAS
Data Postagem: terça-feira, 9 de abril de 2024 at 15:11

Tenho gatilhos para outros campo, como quantidade e preço, se eu atualizo eles, ai os valores atualizam, sem precisar por o valor 51 no tipo de operação.

esse problema da apenas quando coloco o valor n campo de frete, ele não atualiza os valores após o frete, mas se eu colocar o frete e alterar a quantidade ou o preço, os valores atualizam como deveriam



Postado Por: TECBRITA
Data Postagem: terça-feira, 9 de abril de 2024 at 15:19

Boa tarde Andreas.

Quais os campos ele atualiza quando você coloca a condição 51?

Qual as customizações feitas nesses campos que são atualizados?


Perguntar é o caminho para se tornar um grande sábio!



Postado Por: ANDREAS
Data Postagem: terça-feira, 9 de abril de 2024 at 15:56

Ele atualiza todos esses campos quando adiciono o valor 51 no tipo de operação, porém se eu não adicionar o valor 51 no tipo de operação, e alterar o valor ou a quantidade ele ja faz essa atualização

campos:
C7_XIPIUNI     VR UNIT DO IPI = C7_VALIPI / C7_QUANT

C7_XFREUNI     VR UNIT DO FRETE = C7_VALFRE / C7_QUANT

C7_XSTUNIT     VR DA ST UNIT = C7_ICMSRET / C7_QUANT

C7_XPRECO      VR UNITARIO C/ IMPOSTOS = ( C7_PRECO + C7_XIPIUNI + C7_XFREUNI + C7_XSTUNIT )

C7_XTOTAL      VR TOTAL C/ IMPOSTOS = C7_QUANT * C7_XPRECO




Postado Por: ROBERTOMEN
Data Postagem: terça-feira, 9 de abril de 2024 at 16:23

Bom pelo que entendi, vc já tem um campo gatilhando que é o C7_OPER .

Quando vc digita 51 neste campo ele atualiza os campos que vc precisa, certo?

Mas vc quer que, ao informar um valor de frete creio que no campo C7_VALFRE, o campo C7_OPER seja atualizado com o valor 51 e o gatilho dispare o calculo e atualize os demais campos.


Para fazer isto vc vai precisar:

1 - Criar o gatilho no C7_VALFRE preenchendo o C7_OPER com o valor ‘51‘

2 - Criar um segundo gatilho no C7_VALFRE sequencia 002 executando o gatilho do C7_OPER, assim:
    
RunTrigger(1,,nil,,‘C7_OPER ‘)



Postado Por: ANDREAS
Data Postagem: terça-feira, 9 de abril de 2024 at 16:48

Continua sem alterar, ele atribui o valor no campo, mas não atualiza os valores dos campos, vou anexar os prints dos gatilhos aqui




Postado Por: ANDREAS
Data Postagem: terça-feira, 9 de abril de 2024 at 18:10

Realizei alguns testes, e o gatilho C7_VALFRE para preencher o C7_OPER com valor 51, não está funcionando, quando insiro o frete, ele não insere o valor 51 no tipo de operação (C7_OPER)



Postado Por: EMERSON.EN
Data Postagem: terça-feira, 9 de abril de 2024 at 20:05

coloque apenas ‘51‘









Imprimir Página | Fechar Janela