Olá boa tarde,
É possível modificar a propriedade de obrigatoriedade do campo quando a tela já está ativa do cadastro ?
Por exemplo:
Uma determinada tabela tem alguns campos obrigatórios, porém, são obrigatórios apenas para alguns tipos de cadastrados.
Eu gostaria de mudar o MODEL_FIELD_OBRIGAT para .F. após o preenchimento de determinado campo.
Grato.
Bom dia!
Acredito que não seja possível alterar a propriedade de um campo em tempo de execução. Nessas situações, geralmente eu crio uma validação ao confirmar o modelo. Exemplo:
O campo ZTC_ROTASP só é obrigatório se o campo ZTC_SUPER for igual a '2'.
Static Function fVldSave(oModel)
Local lRet := .T.
If(oModel:GetValue('FormZTC','ZTC_SUPER') == '2' .and. Empty(oModel:GetValue('FormZTC','ZTC_ROTASP')))
lRet := .F.
Help(,,'Preenchimento Incorreto',,'Foi informado que esta rota possui uma rota superior, mas não foi preenchido o código da rota superior.',1,0,,,,,,{'Verifique o cadastro e tente novamente.'})
EndIf
Return(lRet)