Reorganizei o código todo, tinham algumas coisas no OnValidate que deveriam estar em OnValidateSucess. Tudo que está em onValidateSucess está funcionando.
Coloquei no OnValidate o código, conforme me indicaram:
/**
* Recuperando o número de projetos submetidos do proponente
*/
$check_sql = "SELECT COUNT(id_proponentes)"
. " FROM projetos"
. " WHERE id = '" . {proponente} . "' AND status = 'Submetido'";
sc_lookup(rs, $check_sql);
if (!empty({rs}))
{
$qtd_projetos_prop = {rs[0][0]};
}
if ($qtd_projetos_prop > 1)
{
sc_error_message('Este proponente já submeteu o máximo de projetos permitidos.');
}
Rodei a aplicação em modo debug e esse sql é executado normalmente sem apresentar nenhum erro. Porém, não acontece o erro. Submeto o primeiro projeto de determinado proponente, aí ele muda o status do projeto para “Submetido”, tudo normal. Ao tentar submeter um segundo projeto para o mesmo proponente, como ele já submeteu um, deveria ser apresentado o erro, mas isso não ocorre e ele consegue submeter um segundo, um terceiro, quantos quiser.
Alguém mais tem uma ideia? Por favor e obrigado mais uma vez pela atenção de todos.