[RESOLVIDO] Mover para o último registro

Pessoal,
possuo um formulário do tipo registro único com mestre detalhe.
O Cliente encasquetou que a tela ao ser aberta deve vir “pronta” para o usuário inlcuir, até aqui tudo bem use a macro sc_apl_conf e a tela entra no modo insert.
Mas se o usuário clicar em cancelar, sai do modo de insert e está certo também.
Porem deve ficar posicionado no último registro da tabela.
Criei uma “gambiarra” e ordenei pelo ID DESC, desta forma ao sair do modo Insert o último registro é mostrado na tela.
Claro que o cliente não aceitou!
Ele quer que quando saia do modo insert vá para o último registro na ordem correta, como se tivesse clicado no ícone para ir para o úlimo.
Achei aqui no fórum que para isso deveria incluir nos eventos javascript, form, onload a instrução: nm_move(‘final’);
Funcionou em partes, pois quando entro em modo de insert, dá para ver “por baixo” que vai para o último registro , mas a tela fica travada na mensagem modal “Aguarde, processando…”.

Para teste, retirei a instrução de abrir o formulário em modo insert e realmente vai para o último registro, porém quando clicar para incluir um novo registro dá o mesmo erro, ou seja, fica modal “Aguarde, processando…”.

Alguém pode ajudar?
Dá vontade de dar uns bicos nesses clientes! kkkkkkkk

se criar um botão javascript com exatamente o código que é executado no botão ultimo registro?

Haroldo, preciso que seja, automático, pelo que entendi você sugere que o usuário clique num botão?

o usuário não vai clicar no botão cancelar?

esconda o botão cancelar e crie seu próprio botão cancelar do tipo javascript com o código:

scBtnFn_sys_format_fim();

1 Curtida

Valeu pela ideia Haroldo! Temos que sair da “caixinha” e bolar caminhos!
Olhei o código no onClick e está a função scBtnFn_sys_format_cnl();
Essa que você indicou não funcionou.

Meu código no botão javascript ficou (caso alguém precise):

nm_move('final');
scBtnFn_sys_format_cnl();

Funcionou exatamente como o querido cliente quer!
Vlw!

1 Curtida

Para mim o botão javscript com o código scBtnFn_sys_format_fim(); funcionou.
Mas se resolveste o seu problema todos ficamos felizes.

2 Curtidas

Sempre tem “uma coisinha” kkkkk (Havia feito o teste com o botão Cancelar “nativo” ainda na barra de ferramentas, agora retirei para deixar somente o meu e deu erro).

Descobri o seguinte: essas funções dos botões que queremos “chamar” via javascript só funcionam se o botão estiver na barra de ferramentas e estiver visível, caso contrário a “function” javascript não será gerada e quando chamarmos é óbvio que dará erro, pois a função não existe.
Portanto , entrei no código fonte de uma aplicação gerada e procurei pela function scBtnFn_sys_format_cnl(), que no meu caso quero cancelar o Insert.

Encontrei e usei esse código, agora sim, finalmente funcionou perfeitamente:

nm_move(‘final’);

<?php echo $this->NM_cancel_insert_new ?> document.F5.submit();

return;

Deixar registrado para quem precisar.