[RESOLVIDO] redir não funciona na onAfterUpdate quando tem varias abas+detalhe

Bom dia pessoal

Tenho 2 páginas(abas) |Itens| |Dados do Pedido|
Estou precisando fazer um redirecionamento quando o usuário clicar no botão atualizar através do onAfterUpdate porem não redireciona
se eu tirar uma página e deixar somente com uma, funciona normal

Será um BUG, agradeço a todos pela ajuda

Não é bug. Da uma olhadinha no manual para esta macro.

Nas aplicações de formulário, em eventos que cotenham qualquer macro que dependa de atualização na base de dados (sc_AfterInsert, sc_AfterUpdate, sc_AfterDelete, sc_BeforeInsert, sc_BeforeUpdate ou sc_BeforeDelete) estão automaticamente protejidas por controle de transação, desde que a conexão seja a mesma da aplicação.

Caso o usuário, em alguma destes eventos, venha a utilizar um redirecionamento de aplicação (macro “sc_redir”) deverá, antes do redir, utilizar esta macro para garantir as transações efetuadas anteriormente.

Ou seja, antes do sc_redir coloque um sc_commit_trans ().

Estranho, fiz um teste aqui e funcionou. Atualize seu SC. Limpe o cache.
E explique melhor o trecho "…se eu tirar uma página e deixar somente com uma, funciona normal… "
Pois não entendi.

Obrigado pela resposta fred

descobri que o problema não são as paginas(abas) e sim o detalhe dos itens que tenho em uma delas
se retiro redireciona normalmente.

Alguma sujestão ?

Veja os parâmetros do SC_REDIR, pois vc pode usar com o “parent”, que após a inserção do detalhe, ele carrega o frame inteiro.

Adriano obrigado pela resposta

já tentei com todos os parâmetros do sc_redir “_parent”, “_blank” mais não funciona onAfterUpdate

fiz um teste seco: mestre/detalhe somente com o sc_redir() no onAfterUpdate e nada tb

Bom, tente criar uma variável global, de controle, no evento onAfterUpdate e tente usar a macro sc_redir() no evento onValidateSuccess, considerando o valor dessa variável.

wanderley obrigado por trocarmos experiencias

no onValidadeSucess funcionou o sc_redir porém não grava as informações
já tentei colocar o sc_commit_trans() antes do redir e nada feito continua sem gravar
já limpei cache, já limpei o tmp do scriptcase e continua na mesma ta feia minha situação
tenho certeza que esse mestre detalhe ta bugado nesse evento

Dualbox após atualizar os itens (detalhes) ou após atualizar o form principal você quer que redirecione?
E é para voltar para mesma aplicação para recarregar os dados? Ou redirecionar para outra aplicação?

Fala rodrigo boa tarde

redirecionamento pra outra aplicação depois que gravar o mestre, hoje meu formulario possui
2 abas(paginas) e um detalhe com grid editavel para os produtos … ja tentei

fazer uma ligaçao e após insert ou update redirecionar -> não funcionou
sc_redir() no evento onafterupdate -> nao funcionou
sc_redir() no evento validadesucess -> redireciona mais nao grava as informações nem com a macro sc_commit_trans ().

se eu tirar o detalhe funciona normal

Bom acredito que o detalhe não seja o problema.
Faça mais um teste com sc_redir

Mestre
onAfterUpdate
sc_commit_trans();
sc_redir(apl_destino,’’);

Se não der certo faça mais um teste
Mestre
onAfterUpdate
sc_commit_trans();
?>

<?php

Com o window.parent.location vai de boa.

Obrigado rodrigo fred e a todos que me ajudaram
vou testar e posto o resultado

Valeu Galera refiz o detalhe e coloquei o código fornecido pelo rodrigo

?>

<?php E funcionou perfeitamente Obrigado !!!