Imprimi Página | Fechar janela

Gatilho em Tabela Customizada

Impresso de: Helpfacil - Portal do conhecimento
Nome do Forum: Configurador/IDE
Descrição do Forum: Dúvidas sobre Configurador e IDE
URL:http://www.helpfacil.com.br/display_topic_threads.asp?ForumID=3&TopicID=44343
Data da Impressão: sexta-feira, 22 de setembro de 2023 at 09:30


Topico: Gatilho em Tabela Customizada

Postado por: DOUGSD
Assunto: Gatilho em Tabela Customizada
Data Postagem: quarta-feira, 6 de setembro de 2023 at 20:03

Tenho Uma Tabela Customizada Modelo3, Necessito fazer a validação do campo Z2_COD. O campo não deve aceitar valores que ja estão registrados.
Tentei de tres formas mas estou com problemas.
ALIAS= SZ2.
CAMPO=Z2_COD
TIPO= PRIMARIO
REGRA= [A] Nao dispara o gatilho,[A1] Dispara uma unica vez e trava para tentativas posteriores e [A2] dispara, no entanto nao exibe nenhuma mensagem e o conteudo e o campo modifica como demonstrado na imagem anexada.

POSICIONA=NAO
----------------------------------------------------------------------------------
[A] User Function VAL1D()
      If INCLUI .Or. ALTERA
        IF !ExistChav("SZ2",xFilial()+M->Z2_COD,1)
           MsgAlert("O codigo ja esta cadastrado:"+ M->Z2_COD)
        EndIf
      EndIf
    Return
---------------------------------------------------------------------------------

[A1] User Function VAL1D()
     If INCLUI .Or. ALTERA
        DbSelectArea(‘SZ2‘)
        DbSetOrder(1)
        If DbSeek(xfilial()+M->Z2_COD)
            MsgAlert("O codigo ja esta cadastrado:"+ M->Z2_COD)
        EndIf
     EndIf
    Return
---------------------------------------------------------------------------------

[A2] Imagens anexadas.
campo modificado= campoModificado


config gatilho = ConfigGatilho

---------------------------------------------------------------------------------
Alguem pode me orientar qual a melhor forma de realizar essa validação e se possivel apos validar adicionar o proximo codigo valido no campo.
Tentei com as tres opções mencionadas, como sou iniciante tenho certeza que estou deixando algo passar e nao obtive sucesso :/ .

.fim.





Imprimir Página | Fechar Janela