Nesse vídeo demonstraremos em como verificar se um campo do dicionário (na SX3) é obrigatório utilizando a função CpoObrigat.
Abaixo o código fonte desenvolvido para o exemplo em vídeo acima:
//Bibliotecas
#Include "TOTVS.ch"
/*/{Protheus.doc} User Function zExe097
Verifica se um campo é obrigatório no Protheus
@type Function
@author Atilio
@since 11/12/2022
@obs
Função CpoObrigat
Parâmetros
+ Nome do campo
Retorno
+ .T. se o campo for obrigatório ou .F. se não
**** Apoie nosso projeto, se inscreva em https://www.youtube.com/TerminalDeInformacao ****
/*/
User Function zExe097()
Local aArea := FWGetArea()
Local cCampo := "B1_DESC"
//Testa se o campo é obrigatório
If CpoObrigat(cCampo)
FWAlertSuccess("O campo é obrigatório", "Teste CpoObrigat")
Else
FWAlertError("O campo não é obrigatório", "Teste CpoObrigat")
EndIf
FWRestArea(aArea)
Return
Bom pessoal, por hoje é só.
Abraços e até a próxima.
Boa noite Daniel a função acima nao funcionou muito bem em um web-Service Rest
mas função X3Obrigat(cCampo) para mim funcionou perfeitamente!
Bom dia Elias, tudo joia?
Opa, obrigado pelo comentário e feedback.
Vou deixar anotado aqui.
Um grande abraço.
Para funcionar o campo que estar como USADO e OBRIGATÓRIO.
Bom dia Luan, tudo joia?
Opa, obrigado pela contribuição.
Ah sim, faz realmente sentido. Pois se o campo não tiver marcado como usado, ele nem vai aparecer na tela, se ele não aparecer na tela, por consequência não tem como ser obrigatório.
Obrigado mais uma vez pelo adendo.
Tenha um ótimo e abençoado fim de semana.
Um forte abraço.