** RESOLVIDO ** Botão php

(fernando.treebyte) #1

Tenho uma aplicação de cadastro de pedido e a mesma em um botão do tipo php
esta funcionando ok, mas gostaria que ao executar o mesmo o botão OK não ser exibido fosse feito o processamento do codigo e volta-se para a aplicação como volta após clicar no botão.

será que tem como ???

(Régis Matos) #2

No final do seu codigo usa a macro sc_redir(aplx.php);

(adelcio_2007) #3

Boa tarde fernando, a macro sc_exit() deve resolver seu problema, ela é utilizada sobretudo para os botões com codigos php.

Quando esta macro é utilizada em fórmulas PHP, que rodem quando chamadas através de botão na barra de ferramentas, tem por objetivo definir o retorno da aplicação após a execução do conteúdo da fórmula. Por default, após a execução da fórmula, aparecerá uma tela com as mensagens ou dados retornados pela fórmula e um botão de OK que, quando acionado, retorna o controle para a aplicação.

A utilização desta macro, nesta modalidade, provê as seguintes alternativas:

Opção:

sc_exit() - Não exibe a tela com o botão OK e retorna para a aplicação anterior.

sc_exit(ok) - Exibe a tela com o botão OK e retorna para a aplicação anterior.

sc_exit(sel) - Não exibe a tela com o botão OK e retorna para a aplicação corrente, refazendo o select da aplicação .

sc_exit(ref) - Não exibe a tela com o botão OK e retorna para a aplicação corrente, fazendo apenas a recarga (refresh) dos dados (esta opção permite que a fórmula PHP altere os dados de um formulário).

sc_exit(ok,ref) - Mesmo que a função sc_exit(ref); porém, exibe a tela com o botão OK
sc_exit(ok,sel) - Mesmo que a função sc_exit(sel); porém, exibe a tela com o botão OK

Quando esta macro é utilizada em fórmulas PHP, que rodem nos demais contextos, tem por objetivo retornar para a aplicação anterior. Neste caso , o usuário tem a opção de efetivar, ou não, transações pendentes na base de dados.

Esta opção só é válida para aplicações de Formulário e aplicações de Controle.

Opção:

sc_exit() - Não afeta transações na base de dados.

sc_exit© - Realiza commit das transações pendentes.

sc_exit® - Realiza Rollback das transações pendentes.

Abraços

Adelcio Rodrigues

(Rodrigo Lins) #4

Boa Tarde,

A solução para este caso é exatamente o que o companheiro Adelcio falou, utilizando a macro sc_exit.
Ou outra forma (dependendo do caso) é, por exemplo, criar uma aplicaçào do tipo blank (v5) ou controle, fazer o processamento necessário na aplicação criada e criar uma nova a ligação de botão para esta aplicação usando também o sc_redir.

Rodrigo Lins.

(Régis Matos) #5

Opa, muito bom… funciona legal… No meu caso aqui antes de voltar eu coloquei uma mensagem…

echo "";
sc_exit();

(fernando.treebyte) #6

Ok funcionou mesmo. obrigado.