[RESOLVIDO]Mestre detalhe-Detalhe perde valores dos campos no evento on_validate

Olá pessoal…

Estou com um problema que ao meu ver é um Bug, porém pode que alguém tenha alguma dica… É o seguinte:

Tenho um formulário mestre-detalhe e no detalhe eu tenho sete campos, sendo um deles um campo inserido manualmente na aplicação, ou seja, não é nativo da tabela, acontece que quanto faço algum tipo de validação nos campos do detalhe via evento on_validate, ao mostrar o erro ocorrido via sc_error_message() a maioria dos campos do registro onde ocorreu o erro aparece vazio, perde o valor. Analisando a situação eu percebi que ao iniciar o evento on_validate esses campos estão perdendo o valor e aí ocorre o erro. Ex.: Uma das minhas verificações é comparar o conteúdo de um dos campos com o valor informado pelo usuário em outro campo, justamente esse campo que eu mencionei no início que foi inserido manualmente, dependendo dos valores de ambos os campos eu emito uma mensagem de erro via sc_error_messagem, porém estou percebendo que antes mesmo de fazer a verificação na on_validate os valores dos campos já foram perdidos, é como se estivesse zerando os campos no início do evento, aí ocorre o erro indevidamente.

Alguém já passou por isso?

Estou com a versão SC 8.1

Obrigado…

Experts… Por favor… Alguém me ajude, pois realmente está perdendo os valores quando entra no ‘on_validate’, não sei porque… Coloquei um echo dos campos na primeira linha do ‘on_validate’ e realmente os campos estão sem valores, lembrando que não são todos, mas os campos que para mim são relevantes na minha verificação estão entre os que estão sendo zerados e aí a minha validação fica comprometida. Alguém tem uma luz para isso?

Obrigado e no aguardo…

Ademilson boa tarde,

Estás usando código em algum outro evento? Se sim, experimente comentar esse código e teste novamente para ver se o conteúdo dos campos aparece.

Olá Kleyber.

Você matou a charada…

Realmente era um código em outro evento, mais precisamente no evento onLoad e mais precisamente ainda o uso da macro sc_field_disabled que eu usava mediante uma determinada condição, aí eu mudei o código e o evento, fiz uma verificação um pouco diferente no evento onLoadRecord e aí usei a macro sc_field_disabled_record e então funcionou, tive que fazer uns outros ajustes, mas no fim deu certo conforme a minha necessidade.
Porém eu ainda acho que isso é um bug, pois o uso de uma macro que vai apenas desabilitar o campo não deveria influenciar no seu conteúdo, não acha?

Mas valeu pela dica mais um vez…

Muito obrigado.

Legal, fico feliz que tenhas resolvido. Agora é só colocar o nome ** RESOLVIDO ** no título do teu post inicial pra que possa ajudar outros que por ventura tenham o mesmo problema.