Olá pessoal, tenho um fonte que realiza inclusão de registros, porém queria validá-los.
O registro que devo incluir é o campo BZ_COD, porém queria realizar uma validação onde ele só possa ser incluído caso o mesmo campo exista na SB1
Ou seja, se eu tentar incluir um valor no BZ_COD, e esse mesmo valor não existir na SB1, ele impede a inclusão.
Alguém sabe alguma maneira de realizar essa validação? Tentei de algumas formas mas não consegui. Agradeço!
Anne tem algo de errado com esta situação. A tela que você se refere é customizada? Porque essa situação já funciona perfeitamente sistema no padrão.
Olá Cirilo! Sim, é uma tela customizada, atualmente não possui nenhuma validação e sentimos a necessidade de incluir essa específica.
Vai precisar analisar essa customização, porque como disse no padrão está ok, então é para funcionar na customização também. A menos que a customização não esteja buscando os dados do dicionário ou se seu dicionário está sem o campo de validação por algum motivo (campo X3_VALID)
você pode criar um gatilho na BZ_COD chamando um exeblock
function u_TESTASB1()
local c_CodBZ := M->BZ_COD
dbSelectArea("SB1")
dbSetOrder(1)
if !dbSeek( FwxFilial("SB1") + c_CodBZ, .T. )
c_CodBZ := Space(TamSX3("B1_COD")[1])
Alert("Codigo nao encontrado na B1")
endif
return( c_CodBZ )
Nao cheguei a compilar... rsrsrs