Bom dia
Criei uma validação de usuario no campo HB_CNPJ, onde se o valor digitado já existir, retorna a mensagem de "Cnpj já informado", porém após retornar essa mensagem, o protheus exibe também um help de campo inválido.
Bom dia
Criei uma validação de usuario no campo HB_CNPJ, onde se o valor digitado já existir, retorna a mensagem de "Cnpj já informado", porém após retornar essa mensagem, o protheus exibe também um help de campo inválido.
Eu chamei a função no campo X3_VLDUSER = U_VALCNPJSHB(). Ao sair desse campo na rotina, a função é chamada.
enter code here
User Function VALCNPJSHB()
Local cAliAtu := Alias()
Local aAreaSHB := SHB->( GetArea() )
Local lRet := .T.
Local cCnpj := M->HB_CNPJ
IF !Empty (cCnpj)
DbSelectArea("SHB")
DbSetOrder(3) // HB_FILIAL + HB_CNPJ
If SHB->( DbSeek( xFilial("SHB") + cCnpj) ).or. SHB->( DbSeek( xFilial("SHB") + "0"+ cCnpj) )
lRet := .F.
MsgInfo("Cnpj já Cadastrado!" , "Atenção!")
EndIf
Endif
RestArea( aAreaSHB )
If !Empty( cAliAtu )
DbSelectArea( cAliAtu )
EndIf
Return ( lRet )
Olá, acredito que o preenchimento dessa campo possa ser obrigatório, como você retorna nada ele pode está gerando o erro.
— Clodoaldo Ribeiro 09 de Aug de 2021Na verdade ele exibe a mensagem, porém após, exibe uma outra de campo inválido. Eu fiz um teste exibindo a mensagem e retornando .T., e nesse cenário exibiu apenas a minha mensagem. O problema está quando retorna .F.
— Elisandro Nunes 09 de Aug de 2021Consegui resolver, substituí o MsgInfo por um Help.
— Elisandro Nunes 16 de Aug de 2021