- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Gatilho Pedido de Compra
×
Linguagem de Programação ADVPL
Perguntas Gatilho Pedido de Compra
- CaioTostes
- Autor do Tópico
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 80
- Obrigados Recebidos: 0
11 anos 6 meses atrás - 11 anos 6 meses atrás #14026
por CaioTostes
Gatilho Pedido de Compra foi criado por CaioTostes
Bom dia pessoal. Estou fazendo uma customização para o pedido de compra que é o seguinte:
Ao preencher o código do produto (Gatilho no campo C7_PRODUTO) foi criado uma função que verifica o estado do fornecedor e preenche a TES:
O gatilho está assim:
O gatilho funciona perfeitamente ao digitar o codigo do produto. O problema ocorre quando vou preencher a quantidade ou preço unitário, o sistema busca a TES do cadastro de produto e apaga minha customização. Fui verificar os gatilhos do campo C7_QUANT e C7_PRECO e não tem nada relacionado a TES. Segue a regra dos campos:
C7_QUANT
Regra 1: M->C7_TOTAL := NoRound(M->C7_PRECO*M->C7_QUANT,TamSX3("C7_TOTAL")[2])
Regra 2: M->C7_TOTAL := IF(A120Trigger("C7_TOTAL"),M->C7_TOTAL,0)
C7_PRECO
Regra 1: M->C7_TOTAL := NoRound(M->C7_PRECO*M->C7_QUANT,TamSX3("C7_TOTAL")[2])
Regra 2: M->C7_TOTAL := If(A120Trigger("C7_TOTAL"),M->C7_TOTAL,0)
Ao preencher o código do produto (Gatilho no campo C7_PRODUTO) foi criado uma função que verifica o estado do fornecedor e preenche a TES:
User Function ALCTESPC(_cEst,_cCod)
Local _cTes := ""
IF Alltrim(_cCod) == "0301"
IF _cEst == "MG"
_cTES := "039"
ELSEIF _cEst == "GO"
_cTES := "051"
ELSEIF _cEst == "SP"
_cTES := "049"
ELSE
Alert("TES nao cadastrada no programa ALCTESPC()")
EndIF
Return (_cTES)
EndIF
O gatilho está assim:
Campo: C7_PRODUTO
Cnt Dominio: C7_TES
Tipo: Primário
Regra: U_ALCTESPC(SA2->A2_EST,M->C7_PRODUTO)
Posiciona: Não
O gatilho funciona perfeitamente ao digitar o codigo do produto. O problema ocorre quando vou preencher a quantidade ou preço unitário, o sistema busca a TES do cadastro de produto e apaga minha customização. Fui verificar os gatilhos do campo C7_QUANT e C7_PRECO e não tem nada relacionado a TES. Segue a regra dos campos:
C7_QUANT
Regra 1: M->C7_TOTAL := NoRound(M->C7_PRECO*M->C7_QUANT,TamSX3("C7_TOTAL")[2])
Regra 2: M->C7_TOTAL := IF(A120Trigger("C7_TOTAL"),M->C7_TOTAL,0)
C7_PRECO
Regra 1: M->C7_TOTAL := NoRound(M->C7_PRECO*M->C7_QUANT,TamSX3("C7_TOTAL")[2])
Regra 2: M->C7_TOTAL := If(A120Trigger("C7_TOTAL"),M->C7_TOTAL,0)
Ultima edição: 11 anos 6 meses atrás por CaioTostes.
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
- CaioTostes
- Autor do Tópico
- Desconectado
- Membro Especialista
Menos
Mais
- Postagens: 80
- Obrigados Recebidos: 0
11 anos 6 meses atrás #14049
por CaioTostes
Respondido por CaioTostes no tópico Gatilho Pedido de Compra
Kanaãm, fiz a configuração de uma TES inteligente pra teste informando o tipo de operação/TES/Cód. do Produto. No cadastro desse produto removi a TES Padrão e ao incluir um pedido de compra informando o Tp. operação/Produto não trouxe a TES automatico.
Tem alguma outra configuração a ser feita?
Tem alguma outra configuração a ser feita?
Por favor Acessar ou Registrar para participar da conversa.
- kanaamlrr
- Desconectado
- Membro Platina
Menos
Mais
- Postagens: 1576
- Obrigados Recebidos: 4
- Fórum
- Protheus/Microsiga/Totvs
- AdvPL (Advanced Protheus Language)
- Dúvidas Gerais
- Gatilho Pedido de Compra
Tempo para a criação da página:0.113 segundos