Autor Tópico: Widget com form abrindo em modo de inclusão  (Lida 4987 vezes)

rrma

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 816
  • Quem com porcos se mistura tanto bate até que fura
    • Email
Widget com form abrindo em modo de inclusão
« Online: Fevereiro 06, 2011, 02:56:17 pm »
Percebi que a aplicação container não permite que se use a macro sc_apl_conf para abrir form em modo inclusão no campo ligação de seus widgets.
Como não sou lá grandes coisas com php, resolvi dar uma olhada no código gerado pelo sc e achei um modo de configurar o form desejado para abrir sempre em modo de inclusão, sem depender da macro sc_apl_conf.

Já havia tentado abrir uma apl blank no widget, que chamaria o form via sc_apl_conf, mas não funcionou. Inclusive na documentação do SC a macro sc_apl_conf está no escopo do evento onExecute da apl tipo blank, mas pelo jeito não está. Parabéns!!!

O jeito que consegui foi o segunte:
Dentro do meu form desejado (form_proposta_dados), no evento onApplicationInit coloquei o código
Código: [Selecionar]
$_SESSION['scriptcase']['sc_apl_conf']['form_proposta_dados']['start'] = 'new';
Liguei o widget normalmente a esse form e a partir de agora ele sempre abrirá em modo inclusão.
Talvez eu tenha reinventado a roda, mas funcionou pra mim.

Espero que seja útil a alguém.
Obrigado a todos.
Rodrigo
Rodrigo Araújo

Cleyton Euler

  • Expert
  • *****
  • Mensagens: 1149
    • Associação de Usuários Scriptcase
    • Email
Re: Widget com form abrindo em modo de inclusão
« Responder #1 Online: Fevereiro 07, 2011, 10:23:03 am »
Rodrigo,

Vc pode, nas configurações do SQL do formulário, fazer o WHERE retornar um resutado vazio.

Ex.:
Vc tem uma tabela de cliente. Coloque IDCliente = 0

Como o resultado não existe, o SC sempre vai abrir este formulário em modo de inclusão. E ainda tem o benefício de não carregar todos os registros e abrir em novo.
Associação de Usuários Scriptcase
http://www.auscriptcase.com.br

Consultoria Scriptcase Versão 5
http://www.infinitusweb.com.br

rrma

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 816
  • Quem com porcos se mistura tanto bate até que fura
    • Email
Re: Widget com form abrindo em modo de inclusão
« Responder #2 Online: Fevereiro 07, 2011, 11:22:18 am »
Opa, valeu a dica! Sabai que tava reinventando a roda, mas como tinha funcionado pra mim resolvi compatilhar.
Valeu!
Rodrigo
Rodrigo Araújo

Cleyton Euler

  • Expert
  • *****
  • Mensagens: 1149
    • Associação de Usuários Scriptcase
    • Email
Re: Widget com form abrindo em modo de inclusão
« Responder #3 Online: Fevereiro 07, 2011, 11:41:17 am »
Na verdade eu fiz isso pelo mesmo motivo que você. Precisava fazer um formulário abrir sempre em modo novo. Ai precisava reutilizar o mesmo formulário para editar registros. Então fiz "o gato do zero".

Consiste em vc usar a WHERE para retorna vazio, assim o SC já abre o formulário em modo novo e podemos utilizar o mesmo formulário para edição. Então eu faço assim:


Na SQL do formulário:

campo_pk = [par_controle]

No onExecute do menu faço:

[par_controle] = 0;

Sempre que executar uma aplicação par_controle recebe 0

Numa ligação de consulta com uma aplicação de formulário, a ligação vai pedir valor para a global e para o campo pk. Informo o identificador para os dois.

Assim este formulário sempre abre em modo novo para cadastro e na edição busca apenas o registro escolhido na grid da consulta.
Nunca busca todos os registros, o que eu acho que prejudica a performance das aplicações de formulário. Quando quero buscar registros uso sempre aplicação consulta. Não vejo muita vantagem e navegar pelos botões de navagação dos formulários.
Associação de Usuários Scriptcase
http://www.auscriptcase.com.br

Consultoria Scriptcase Versão 5
http://www.infinitusweb.com.br

Weber Martins Marques

  • Novato
  • *
  • Mensagens: 17
  • Pra quem gosta de ruim, está ótimo!
    • Email
Re:Widget com form abrindo em modo de inclusão
« Responder #4 Online: Janeiro 09, 2014, 11:07:45 am »
Obrigado Cleyton Euler, o seu "gato do zero" vou usar em todas as minhas aplicações do SC! Muito útil sua dica...
Weber Martins Marques
Chefe da Divisão de TI
Departamento de Planejamento Educacional
Secretaria Municipal de Educação
Prefeitura Municipal de Mogi das Cruzes - SP