TMultiFieldPanel 1.2 [Descrição] TMultiFieldPanel - 1.2 para versão 1.0.2 do Framework Adianti O componente tem por objetivo o controle de posicionamento na tela de todos os campos necessários. Sugiro seu uso para quantidades acima de 3 campos mas pode ser usada com qualquer quantidade. [Nova Funcionalidade] Não houve implementação de novas funcionalidades, apenas o ...
ES
TMultiFieldPanel 1.2  
Fechado
[Descrição]
TMultiFieldPanel - 1.2 para versão 1.0.2 do Framework Adianti
O componente tem por objetivo o controle de posicionamento na tela de todos os campos necessários. Sugiro seu uso para quantidades acima de 3 campos mas pode ser usada com qualquer quantidade.

[Nova Funcionalidade]
Não houve implementação de novas funcionalidades, apenas o código foi adequado para funcionar com a nova versão do framework.


[Requisitos]
1- -Adianti Framework 1.0.2

[Instalação]
Descompacte o conteúdo de TMultiFieldPanel.class.zip no diretório de sua aplicação:
cd diretório-da-aplicação
unzip TMultiFieldPanel.class.zip

ou descompacte em qualquer pasta e depois copie o arquivo TMultiFieldPanel.class.php para a pasta app/lib/widget

[Utilização]
 
  1. <?php
  2. $Perfil_itens = new TMultiFieldPanel('itens_list_perfil');
  3. /** ############# itens para o tmultifield - INÍCIO ######################## **/
  4. $item_id_menu = new TComboCombined('id_menu', 'titulo');
  5. //$item_p_add = new TCombo('p_add');
  6. //$item_p_del = new TCombo('p_del');
  7. //$item_p_edit = new TCombo('p_edit');
  8. //$item_open_login = new TCombo('open_login');
  9. //Opções
  10. $Perfil_itens->setHeightPanel(310);
  11. $Perfil_itens->setWidthPanel(600);
  12. $Perfil_itens->setHeightTM(160);
  13. $Perfil_itens->setClassPanel('Perfil_itens');
  14. //seta os botões
  15. $Perfil_itens->setPosPanelBtxy(20, 100);
  16. //Posição da listagem
  17. $Perfil_itens->setPosPanelxy(20, 140);
  18. $item_id_menu->setSize(500);
  19. $item_id_menu->setTip('Selecione o item de menu que o perfil terá acesso');
  20. /** Carrega as opções para menu **/
  21. TTransaction::open('changeman');
  22. $rep = new TRepository('Menu_app');
  23. $criteria = new TCriteria();
  24. $p['order'] = 'hierarquia';
  25. $criteria->setProperties($p);
  26. $criteria->add(new TFilter('is_link', '=', 'Y') );
  27. $objects = $rep->load($criteria);
  28. $options = array();
  29. if ($objects)
  30. {
  31. foreach ($objects as $object)
  32. {
  33. $options[$object->id] = $object->titulo.' -> '.$object->str_link;
  34. }
  35. }
  36. $item_id_menu->addItems($options);
  37. TTransaction::close();
  38. $items = array();
  39. $items['Y']='Sim';
  40. $items['N']='Não';
  41. $item_p_add = new TComboCombined('p_add','desc_add');
  42. $item_p_del = new TComboCombined('p_del','desc_del');
  43. $item_p_edit = new TComboCombined('p_edit','desc_edit');
  44. $item_open_login = new TComboCombined('open_login','desc_open');
  45. $item_p_add->addItems($items);
  46. //$item_p_add->setValue('Y');
  47. $item_p_add->setSize(50);
  48. $item_p_del->addItems($items);
  49. //$item_p_del->setValue('Y');
  50. $item_p_del->setSize(50);
  51. $item_p_edit->addItems($items);
  52. //$item_p_edit->setValue('Y');
  53. $item_p_edit->setSize(50);
  54. $item_open_login->addItems($items);
  55. //$item_open_login->setValue('N');
  56. $item_open_login->setSize(50);
  57. /** Adiciona os campos no multifield **/
  58. $Perfil_itens->addFieldPanel('id_menu', 'Menu',$item_id_menu, 350,5,8, 35,5);
  59. $Perfil_itens->addFieldPanel('p_add', 'Add', $item_p_add, 50,10,40,10,60);
  60. $Perfil_itens->addFieldPanel('p_del', 'Del', $item_p_del, 50,120,40,120,60);
  61. $Perfil_itens->addFieldPanel('p_edit', 'Edit', $item_p_edit, 50,230,40,230,60);
  62. $Perfil_itens->addFieldPanel('open_login', 'Abrir no Login', $item_open_login, 50,340,40,340,60);
  63. /** ############# itens para o tmultifield - FIM ######################## **/
  64. ?>




href="adianti.com.br/forum/pt/attach/549/Multifield-antes-e-Depois.png

PS.: Será necessário fazer uma pequena modificação na classe TForm original para que o comando sendData não falhe:
alterar o trecho da linha 165 de
 
  1. <?php if ($field instanceof TMultiField ) ?>


para
 
  1. <?php if ($field instanceof TMultiField || $field instanceof TMultiFieldPanel) ?>




Atenção: Essa classe só foi testada em aplicação web.

Curso Dominando o Adianti Framework

O material mais completo de treinamento do Framework.
Curso em vídeo aulas + Livro completo + Códigos fontes do projeto ERPHouse.
Conteúdo Atualizado!


Dominando o Adianti Framework Quero me inscrever agora!

Comentários (6)


GB

Olá Eliezer,

Onde faço o download do arquivo com a modificação para a nova versão?

Não estou achando o link.

Obrigado.
ES

Oi Guilherme,
não sei porquê mas depois que mudaram o site de servidor não consegui inserir o arquivo.

Informei o arquivo no momento da criação do post mas depois de finalizado percebi que o arquivo não tinha ido e por isso coloquei em servidor externo, segue o link:

www.4shared.com/zip/eExaPIPT/TMultiFieldPanel_12.html

att.
Eliezer
PD

hummm, problema de permissão, já resolvi.

valeu!
TS

Pessoal, alguem sabe como colocar o TMultifieldPanel para funcionar dentro do framework 1.0.3???

Se puderem me arrumar um tutorial me ajudaria bastante.
ES

Olá Thiago!

Nessa nova versão a classe TMultifield teve várias alterações e já estou trabalhando na nova TMultiField 1.0.3.

Assim que tiver pronto vou postar aqui.
AN

Olá Pessoal! Não consegui realizar o download da nova aplicação.
Me parece que o link do 4Shared não é mais válido. Algum link válido?
Grato!