Knowledgebase
Alterando dinamicamente o estado das aplicações
Posted by on 27 June 2013 01:10 PM

 

Para alterar as propriedades de execução das aplicações, mudando sua forma de execução em relação ao inicialmente previsto, o Scriptcase dispõe de uma macro chamada sc_apl_conf. A macro deve ser utilizada da seguinte maneira:

sc_apl_conf(Aplicação, Propriedade, valor);

Desta forma, podemos forçar que um formulário inicie no modo de inclusão, ou uma consulta inicie pelo filtro, etc.

 

A macro pode ser utilizada, por uma aplicação, para modificar as propriedades de uma outra aplicação. Por exemplo, em um cadastro de pedido, um vendedor pode cadastrar um novo pedido, mas não pode alterá-lo, neste caso usariamos, em um botão do tipo "PHP", o seguinte trecho de código para cadastrar pedidos:

 

if([usu]=="vendedor")
{
     sc_apl_conf("apl_cadastra_pedido","update","off");
     sc_redir(apl_cadastra_pedido.php);
}else
{
     sc_redir(apl_cadastra_pedido.php);
}

Abaixo uma tabela com as propriedades e valores, da macro:

 
Propriedades para aplicações de Formulário

Propriedade Valor Descricao
start new Força o formulário a iniciar no modo de inclusão de novo registro.
insert on/off Habilita (on) ou desabilita (off) a inclusão de novos registros
update on/off Habilita (on) ou desabilita (off) a alteração de registros
delete on/off Habilita (on) ou desabilita (off) a exclusão de registros
field_display_off campo Desabilita a exibição de um campo
field_display_on campo Habilita a exibição de um campo
field_readonly campo Força um campo para ser exibido como "readonly"
rows   Força a quantidade de linhas por página (apenas para formulários de múltiplas linhas)
rows_ins   Força a quantidade de linhas de inclusão (apenas para formulários de múltiplas linhas)


Propriedades para aplicações de Consulta

Propriedade Valor Descricao
start filter Força a consulta a iniciar pelo filtro.
cols   Força a quantidade de colunas (consultas tipo vertical e slide)
rows   Força a quantidade de linhas por página
lig_edit on/off Habilita (on) ou desabilita (off) o botão de edição do registro (lapis)

Propriedades para todas as aplicações

Propriedade Valor Descricao
exit apl/url Força a saida da aplicação para a "aplicação" ou "url" informada.

 

Abaixo alguns exemplos:

Ex1: Forçar a aplicação "meu_formulario" a iniciar no modo de inclusão.
sc_apl_conf("meu_formulario", "start", "new");

Ex2: Não permite que a aplicação "meu_formulario" faça inclusão de novos registros.
sc_apl_conf("meu_formulario", "insert", "off");

Ex3: Exibe "meu_campo", da aplicação "meu_formulario", dinamicamente.
sc_apl_conf("meu_formulario", "field_display_off", "meu_campo");

Ex4: Forçar a aplicação "minha_consulta" a iniciar pelo filtro.
sc_apl_conf("minha_consulta", "start", "filter");

Ex5: Forçar a aplicação "minha_consulta" a exibir 20 linhas.
sc_apl_conf("minha_consulta", "rows", "20");

Ex6: Forçar a saida da aplicação "minha_consulta" para a aplicação "outra_consulta".
sc_apl_conf("minha_consulta", "exit", "outra_consulta");

(5 vote(s))
Helpful
Not helpful

Comments (3)
Robson Ferreira
30 September 2013 03:18 PM
Migrei um projeto da versão 5 para a versão 7.1 e em todas as aplicações que usei esta macro com as seguintes configurações: sc_apl_conf("meu_formulario", "start", "new");
pararam de gravar no banco de dados. Se eu desabilito a função a aplicação grava no banco de dados, qdo. habilito a aplicação deixa de gravar.
Caio Guerra
06 November 2013 09:12 AM
Olá Robson, bom dia.

A situação já está sobre conhecimento do nosso setor de testes, onde o mesmo já está tomando medidas para possivelmente corrigi-la os mais breve nas próximas releases. A equipe Netmake agradece o seu contato, tenha um ótimo dia.

--
Atenciosamente,

Caio Guerra
Supervisor - Suporte Scriptcase
Jefferson Albuquerque
05 December 2013 06:15 PM
Olá Robson,

Informo que esse problema já foi corrigido e lançado nas atualizações do Scriptcase.

--
Atenciosamente
Jefferson Albuquerque
Gerente do Suporte Scriptcase
ScriptCase© - Todos os direitos reservados.
ERROR: This domain name (knowledge.netmake.com.br), does not match the domain name in the license key file suporte.scriptcase.com.br,support.scriptcase.net.

For assistance with your license, please contact the Kayako support team: https://support.kayako.com