sc_redir(Aplicação, Parâmetro01; Parâmetro02, Target, Error, alt_modal, larg_modal)

Esta macro tem por objetivo redirecionar o processamento para outra aplicação ou URL.

Caso a aplicação de redirecionamento utilize parâmetros, estes devem ser passados da seguinte forma:

1. Após o nome da aplicação, utilizar o delimitador vírgula (,)
2. Informar o nome do parâmetro, o sinal de igualdade (=) e o valor ou variável a ser atribuída.
3. Havendo mais de um parâmetro, utilizar o delimitador ponto e vírgula (;)
4. Poderá ser informado o target no qual a aplicação será aberta (default=_self), podendo ser: _self, _parent, _blank ou modal.
5. Parâmetro opcional para definir se vai redirecionar caso existam mensagens de erro na aplicação. "E" não redireciona caso existam erros e "F" força redirecionamento mesmo se houver erro na aplicação.

Nas aplicações de formulário, alguns eventos onde essa macro pode ser utilizada dependem da atualização da base de dados (onAfterInsert, onAfterUpdate, onAfterDelete, onBeforeInsert, onBeforeUpdate or onBeforeDelete) esses eventos são automaticamente protegidos por um controle de transação desde que a conexão seja a mesma da aplicação.

Contudo, se o usuário deseja fazer um controle de transação, ele precisa iniciar essa macro e finalizar com "sc_commit_trans()" macro para confirmar a atualização ou o "sc_rollback_trans" para cancelar a transação.

A macro em questão não da suporte ao parâmetro Modal quando utilizada em botões do tipo Run


Ex. 1: Aplicação sem parâmetros e sem target.

if ([glo_usuario] == "teste")
{
sc_redir(aplx.php);
}


Ex. 2: Aplicação com parâmetros e sem target
 sc_redir(Aplicação, Parametro01; Parametro02, Target, Error)
if ([glo_usuario] == "teste")
{
sc_redir(aplx.php, parm1={clienteid}; parm2="xxx");
}


Ex. 3: Aplicação sem parâmetros e com target.

if ([glo_usuario] == "teste")
{
sc_redir(aplx.php, "", "_parent");
}


Ex. 4: Aplicação com parâmetros e com target.

if ([glo_usuario] == "teste")
{
sc_redir(aplx.php, parm1={clienteid}; parm2="xxx", "_blank");
}


Ex. 5: URL.
if ([glo_usuario] == "teste")
{
sc_redir(http://www.minha_pagina.com.br);
}

 

OBS: Tudo que foi passado como parâmetro pela macro será acessível como variável global na aplicação a qual foi redirecionada.

EX: sc_redir(aplx.php, parm1={clienteid}; parm2="xxx");

Na aplicação aplx.php o parâmetro poderá ser acessado fazendo chamada a variável global [parm1] e [parm2]