× Linguagem de Programação ADVPL

Perguntas Gatilho para mais de um campo

Mais
9 anos 1 semana atrás #29589 por tiagolucena_mcm
Bom dia a todos :)

Sou novo no fórum e novo em programação, então se eu falar qualquer besteira, me perdoem rsrs
Mas estou com o seguinte problema:
Estamos tentando controlar as alterações nos pedidos de venda pelo call center, e estamos pensando em fazer da seguinte forma: quando o vendedor acessar o pedido e for alterar, ele vai selecionar num campo combobox o motivo da alteração. Quando selecionado o motivo, este campo deve preencher o CAMPO01 se este campo estiver vazio. se o CAMPO01 já estiver preenchido, então o gatilho deve preencher o CAMPO02. Se o CAMPO01 e o CAMPO02 estiver preenchido, então preenche o CAMPO03.
Porém, não estou conseguindo que isto ocorra. Ou não preenche nenhum campo, ou preenche os 3 ao mesmo tempo.

Segue abaixo o fonto que estou tentando criar para o gatilho chamar.
Desde já agradeço a ajuda.

#include "totvs.ch"
#Include "Protheus.ch"

USER FUNCTION GCALTRL2()


LOCAL cDesc1 := aCols[n,34] //UB_ZZALTD1
LOCAL cDesc2 := aCols[n,35] //UB_ZZALTD2
LOCAL cDesc3 := aCols[n,36] //UB_ZZALTD3
LOCAL cMAlter := aCols[n,33] //UB_ZZALTER
LOCAL cResult := "" //PARA RETORNAR


IF alltrim(cDesc1)==""
cDesc1:=M->cMAlter
CResult:=cDesc1
ELSE
cResult:=cDesc1
ENDIF


IF alltrim(cDesc1) != "" .and. alltrim(cDesc2)==""
cDesc2:=M->cMAlter
cResult:=cDesc2

else
cDesc2:=cDesc2
cResult:=cDesc2
ENDIF


IF alltrim(cDesc1) != "" .and. alltrim(cDesc2) != "" .and. alltrim(cDesc3)=""
cDesc3:=M->cMAlter
cResult:=cDesc3
ENDIF


RETURN (cResult)

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.135 segundos
Joomla templates by a4joomla