em onValidate
sc_error_message()
sc_error_exit()
não teria q parar o processamento sem passar por onValidateSucess e executar qquer coisa em onValidateFailure ?
em onValidate
sc_error_message()
sc_error_exit()
não teria q parar o processamento sem passar por onValidateSucess e executar qquer coisa em onValidateFailure ?
Ola Pessoal
Estou com esse mesmo problema em um formulario
No Evento OnValidate
if ($valor == {valor} )
{
Se fizer somente assim ele continua o processamento
sc_error_message("Já foi pago o valor Total do relatorio : R$ ");
sc_error_exit(); ele fica infinitamente mostrando a mesg do ajax de processamento.
}
Na documentação : [font=verdana]http://127.0.0.1:8090/scriptcase/doc/manual_mp/manual/14-macros/01-visao-geral/index.html#sc_error_exit [/font][font=verdana]eu estou seguindo os passos corretamente.[/font]
Alguem poderia me ajudar; o que desejo é abortar a rotina após a sc_error_message.
Desde de já agradeço pela atenção;
Use essas regras ao usar variáveis no SC para não dar erro de lógica:
VARIÁVEIS (REGRAS)
SC: {Nome} // Nome de Campos das tabelas.
Local $Nome // Colocar $ antes do nome para variável local
Global [glo_Nome] // Colocar [glo_] antes do nome
Seu código tem que ficar assim:
if ($_valor == {valor}) {
sc_error_message("Já foi pago o valor Total do relatorio : R$ ".$_valor);
} else {
// Aqui coloque o restante do código… que precisar.
}
Ola Jailton
Agradeço pela interação; mas ja tinha testado assim e esse procedimento não me serve porque tenho que fazer varias checagens no onvalidate com varias tabelas diferentes.
Porem acredito que esta macro(sc_exit) esta com bug e vou enviar um email a bugs@scriptcase para ver o que eles falam.
Na documentação informa que é assim que que se usa para abortar um processamento e tambem nos exemplos do lado direito dos eventos.
No OnValidate este exemplo aparece assim :
// Error parameters
$error_test = {field1} == ‘some_value’; // Error test
$error_message = ‘Field1 must be different from some_value.’; // Error message
// Redirection
if ($error_test)
{
sc_error_message($error_message);
sc_error_exit();
}
E este exemplo não esta funcionando. Se colocar somente a sc_error_message funciona mas não aborta o processamento e se coloca o sc_error exit que seria o certo ele fica processando infinitamente.
Muito obrigado pela força.
Então eu nunca usei a sc_error_exit() eu faço ‘if’ encadeado, desviando a lógica assim:
<?php
// Redirection
if ($error_test) {
// Checagem 1
sc_error_message($error_message);
// Abortado
} else {
// Checagem 2
if ($error_test) {
// Checagem 2
sc_error_message($error_message);
// Abortado
} else {
// Checagem 3
if ($error_test) {
// Checagem 3
sc_error_message($error_message);
// Abortado
} else {
// Checagem 4
if ($error_test) {
// Checagem 4
sc_error_message($error_message);
// Abortado
} // Checagem 4
} // Checagem 3
} // Checagem 2
} // Checagem 1
?>
Já falaram sobre esse mesmo bug que você esta reportando a quase 3 anos e não corrigiram, olhe:
http://www.scriptcase.com.br/forum/index.php?topic=8435.0
Ola Jailton
Resolvi usando o return;
Mas o problema da macro continua e se não arrumam deveriam retira-la essa maneira de uso da documentação; digo essa maneira porque ela ainda funciona para o redirecionamento.
Em 26/02/2014 a netmake reportou no link que enviou : [font=verdana][size=1em]Reportei este problema para nossa equipe de bugs.bernhard que era funcionario da netmake.[/size][/font]
[font=verdana][size=1em]Ou não conseguiram arrumar ou esqueceram.[/size][/font]
[font=verdana][size=1em]Jailton agradeço pelo interesse e ajuda;[/size][/font]
Ola pessoal
Somente para constar caso alguem necessite algum dia usar a macro sc_error_exit.
[size=3] Recebi a resposta do deptº de bugs da netmake(Yuri Esteves) em 03/08/2017 [font=arial]O erro só ocorre na atualização. Na inclusão esta funcionando perfeitamente[/font] [font=arial]Passei para a nossa equipe de desenvolvimento para ser corrigido. Assim que for corrigido, entrarei em contato.[/font][/size][font=Verdana][/font][size=3][font=arial, sans-serif]C[/font][font=arial]riei um video descrevendo a situação: [/font][font=arial]https://www.youtube.com/watch?v=sjE4-0cb1n8[/font][/size]
[font=Verdana][/font]
[font=verdana, arial, helvetica, sans-serif][size=3]Enquanto isso, estou usando como alternativa simplesmente : return;[/size][/font]
[font=verdana, arial, helvetica, sans-serif][size=3]Até Mais[/size][/font]
Prezados,
A correção estará disponivel release 9.0.015.
Há outro problema similar que persiste na versão Scriptcase 9.0.017, ao utilizar sc_error_exit() no navegador Google Chrome a resposta é ERR_BLOCKED_BY_XSS_AUDITOR.
Para contornar o problema utilizei:
header(“X-XSS-Protection: 0; mode=block”);
Google Chrome é Versão 60.0.3112.90 (Versão oficial) 64 bits
Mozilla Firefox não ocorre este problema.