Autor Tópico: Como esconder uma aba?  (Lida 11968 vezes)

Rafael Dias

  • Novato
  • *
  • Mensagens: 7
    • Email
Como esconder uma aba?
« Online: Agosto 16, 2010, 02:40:11 pm »
Olá colegas,

Gostaria de saber se existe alguma macro do scriptcase que possibilite esconder abas assim como a macro sc_menu_disable ou sc_menu_delete esconde o menu, desde de já agradeço a atenção.

Aguardo respostas.

By Rafael Dias de Souza
Desenvolvedor de Sistema PHP
rafadias05@gmail.com
Att.
Rafael Dias de Souza
Programador Web PHP
rafadias05@gmail.com

Tiago Kirsten

  • Intermediário
  • ***
  • Mensagens: 129
    • Email
Re: Como esconder uma aba?
« Responder #1 Online: Agosto 16, 2010, 04:38:33 pm »
Use o:

sc_block_display(nome do bloco, on/off)

E esconda o bloco correspondente a aba.

Rafael Dias

  • Novato
  • *
  • Mensagens: 7
    • Email
Re: Como esconder uma aba?
« Responder #2 Online: Agosto 16, 2010, 05:16:34 pm »
Use o:

sc_block_display(nome do bloco, on/off)

E esconda o bloco correspondente a aba.

Valeu Tiago pela dica, ajudou a resolver o meu problema com as abas.
Até mais... [:)]
Att.
Rafael Dias de Souza
Programador Web PHP
rafadias05@gmail.com

Cleyton Euler

  • Expert
  • *****
  • Mensagens: 1149
    • Associação de Usuários Scriptcase
    • Email
Re: Como esconder uma aba?
« Responder #3 Online: Outubro 19, 2010, 09:55:13 am »
Só para deixar registrado para futuras pesquisas:

sc_block_display oculta blocos exibidos como ABAS.
ABAS configuradas como páginas não podem ser ocultadas, pelo menos até a release 12 da V5.1
Associação de Usuários Scriptcase
http://www.auscriptcase.com.br

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

Diogo Toscano

  • Administrator
  • Expert
  • *****
  • Mensagens: 590
    • :: ScriptCase ::
    • Email
Re: Como esconder uma aba?
« Responder #4 Online: Outubro 19, 2010, 10:15:10 am »
Sei que pode nao ser legal, mas pode abrir o fonte para ver o id da no codigo da pagina e dar um:

document.getElementById('id_da_pagina').style.display = 'none';

isso ira esconder o objeto.

Cleyton Euler

  • Expert
  • *****
  • Mensagens: 1149
    • Associação de Usuários Scriptcase
    • Email
Re: Como esconder uma aba?
« Responder #5 Online: Outubro 19, 2010, 10:18:10 am »
Mas ai tem a incoveniência de se gerar a aplicação novamente, vai no código de novo...

Parece simples então a NM criar uma macro. Sugira ai para o pessoal do desenvolvimento.
Associação de Usuários Scriptcase
http://www.auscriptcase.com.br

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

Diogo Toscano

  • Administrator
  • Expert
  • *****
  • Mensagens: 590
    • :: ScriptCase ::
    • Email
Re: Como esconder uma aba?
« Responder #6 Online: Outubro 19, 2010, 10:20:21 am »
Eu sei ... por isso que nao eh legal :-p
Falei pq temos usuarios experientes aqui que talvez queiram saber ... alem do que, alteração direto assim corre o risco de em mudanças grande que futuramente os templates vão sofrer, pode ser que deixe de funcionar ...

Por isso não gosto de colocar codigo manual ... mas vai sempre uma dica do que na web tudo eh possivel :-p

Cleyton Euler

  • Expert
  • *****
  • Mensagens: 1149
    • Associação de Usuários Scriptcase
    • Email
Re: Como esconder uma aba?
« Responder #7 Online: Outubro 19, 2010, 10:24:21 am »
De boa...

Mas sobe a idéia de uma macro para esconder ABA como página. Vai quebrar um galho danado, pois em formulários com muitos campos, configurar ABAS com blocos dá trabalho demais.
Associação de Usuários Scriptcase
http://www.auscriptcase.com.br

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

erick.major

  • Novato
  • *
  • Mensagens: 4
    • Email
Re: Como esconder uma aba?
« Responder #8 Online: Novembro 26, 2010, 02:12:02 pm »
De boa...

Mas sobe a idéia de uma macro para esconder ABA como página. Vai quebrar um galho danado, pois em formulários com muitos campos, configurar ABAS com blocos dá trabalho demais.

Alguma previsão para a criação desta macro?

Arquimedes

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 561
  • Ajudar para ser ajudado
Re: Como esconder uma aba?
« Responder #9 Online: Abril 10, 2011, 08:06:34 pm »
so para reforça as dicas dos golegas, vc pode esconder as abas tambem utilizando o nivel de acesso de usuarios, dependendo o nivel do usuario fica a seu criterio exibir ou nao a aba, no login vc chama o nivel do usuario, colocar ele como global e no formulario voce coloca em eventos o codico chamando essa variavel global de nivel e define o que sera exibido

Cleyton Euler

  • Expert
  • *****
  • Mensagens: 1149
    • Associação de Usuários Scriptcase
    • Email
Re: Como esconder uma aba?
« Responder #10 Online: Abril 11, 2011, 01:35:35 am »
Coema, vc pode dar um exemplo de como vc faz isso?
Associação de Usuários Scriptcase
http://www.auscriptcase.com.br

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

Arquimedes

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 561
  • Ajudar para ser ajudado
Re: Como esconder uma aba?
« Responder #11 Online: Abril 11, 2011, 11:53:31 pm »
voce cria as tabelas nivel, unidade e usuario


-- Estrutura da tabela `nivel`
--

CREATE TABLE `nivel` (
  `codigo` int(11) NOT NULL auto_increment,
  `descricao` varchar(40) NOT NULL,
  `sigla` varchar(6) NOT NULL,
  PRIMARY KEY  (`codigo`)
) ENGINE=MyISAM AUTO_INCREMENT=5 DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;

--
-- Extraindo dados da tabela `nivel`
--

INSERT INTO `nivel` (`codigo`, `descricao`, `sigla`) VALUES (1, 'Administrador', 'admin'),
(2, 'Cecom', '0');

-- --------------------------------------------------------

--
-- Estrutura da tabela `sec_users`
--

CREATE TABLE `sec_users` (
  `codigo` int(11) NOT NULL auto_increment,
  `Login` varchar(10) NOT NULL,
  `Pswd` varchar(10) NOT NULL,
  `Name` varchar(10) NOT NULL,
  `unidade` varchar(2) NOT NULL,
  `nivel` varchar(2) NOT NULL,
  `funcao` varchar(2) NOT NULL,
  PRIMARY KEY  (`codigo`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;

--
-- Extraindo dados da tabela `sec_users`
--

INSERT INTO `sec_users` (`codigo`, `Login`, `Pswd`, `Name`, `unidade`, `nivel`, `funcao`) VALUES (2, 'arquimedes', '12', 'arquimedes', '1', '1', '1');

-- --------------------------------------------------------

--
-- Estrutura da tabela `unidade`
--

CREATE TABLE `unidade` (
  `codigo` int(11) NOT NULL auto_increment,
  `descricao` varchar(50) NOT NULL,
  `sigla` varchar(20) NOT NULL,
  PRIMARY KEY  (`codigo`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;

--
-- Extraindo dados da tabela `unidade`
--

INSERT INTO `unidade` (`codigo`, `descricao`, `sigla`) VALUES

(1, 'Depatamento de RH', 'RH');




Arquimedes

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 561
  • Ajudar para ser ajudado
Re: Como esconder uma aba?
« Responder #12 Online: Abril 12, 2011, 12:16:53 am »
dentro do control_login coloque o seguinte codigos declarando as variaveis globais
$var_login = sc_sql_injection({login});
$var_password = sc_sql_injection({password});

sc_lookup(ds, "select Login, Pswd, nivel, unidade, codigo, funcao from sec_users where Login = $var_login and Pswd = $var_password ");

if ({ds} != false)
{

   $sm_global_login = {login};   
   sc_set_global($sm_global_login);
   
   $nivel = {ds[0][2]};
        sc_set_global($nivel);
        
        $unidade = {ds[0][3]};
        sc_set_global($unidade);
        
        $codigo_usuario= {ds[0][4]};
        sc_set_global($codigo_usuario);
        
        $funcao= {ds[0][5]};
        sc_set_global($funcao);
        
   

   $dir = opendir($this->Ini->path_aplicacao . "..");

   while ($file = readdir($dir))
   {
      if ($file != '.' && $file != '..' && $file != '_lib')
      {
            sc_apl_status($file, 'on');
      }      
   }
   
   closedir($dir);
   
   sc_redir('menu');
   
   
}
else
{
   sc_error_message("Acesso negado !");
}

Arquimedes

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 561
  • Ajudar para ser ajudado
Re: Como esconder uma aba?
« Responder #13 Online: Abril 12, 2011, 12:21:14 am »
e por ultimo dentro do evento onScriptinit coloque o seguinte codigo dentro do formulario com as abas, lembrando que voce pode bloqueiar as abas e os campos conforme o nivel do usuario logado

coloque o sequinte codigo dentro do envento onscriptinit do formulari
/**
 * Hide/show a block
 */
$nivel = [nivel];
if ($nivel   == 1)     // Display block
{
     // liberar blocos
     sc_block_display(Destino, 'on');
     sc_block_display(coordenadas, 'on');
     // liberar edicao campos
     sc_field_readonly({cod_tipo}, 'off');
     sc_field_readonly({cod_municipio}, 'off');
     sc_field_readonly({cod_logra}, 'off');
     sc_field_readonly({alcunha}, 'off');
     sc_field_readonly({semana}, 'off');
     sc_field_readonly({descricao_suspeito}, 'off');
     sc_field_readonly({referencia}, 'off');
     sc_field_readonly({fato}, 'off');
     sc_field_readonly({obs}, 'off');
     sc_field_readonly({mes}, 'off');
     sc_field_readonly({data}, 'off');
     sc_field_readonly({hora}, 'off');
     //liberar visualizacao botoes
     sc_btn_display('new', 'on');
     sc_btn_display('delete', 'on');
     sc_btn_display('update', 'on');
     
}
else                             
{
    // bloqueia blocos
     sc_block_display(Destino, 'off');
     sc_block_display(coordenadas, 'off');
    // bloqueia edicao campos
     sc_field_readonly({cod_tipo}, 'on');
     sc_field_readonly({cod_municipio}, 'on');
     sc_field_readonly({cod_logra}, 'on');
     sc_field_readonly({semana}, 'on');
     sc_field_readonly({referencia}, 'on');
     sc_field_readonly({alcunha}, 'on');
     sc_field_readonly({descricao_suspeito}, 'on');
     sc_field_readonly({fato}, 'on');
     sc_field_readonly({obs}, 'on');
     sc_field_readonly({mes}, 'on');
     sc_field_readonly({data}, 'on');
     sc_field_readonly({hora}, 'on');
     // bloqueia botes
     sc_btn_display('new', 'off');
     sc_btn_display('delete', 'off');
     sc_btn_display('update', 'off');
}

Arquimedes

  • Global Moderator
  • Expert
  • *****
  • Mensagens: 561
  • Ajudar para ser ajudado
Re: Como esconder uma aba?
« Responder #14 Online: Abril 12, 2011, 12:23:37 am »
amanha vou colocar esse exemplo na area de download da comunidade scriptcaseajax