function __construct() { parent::__construct(); //cria os containers $this->form_requisicao = new TForm('form_requisicao'); $this->form_requisicao->class = 'tform'; $this->form_itens = new TForm('form_itens'); $this->form_itens->class = 'tform'; $table_requisicao = new TTable(); $table_requisicao->width = '100%'; $table_itens = new TTable(); $table_itens->width = '100%'; //empacota os dados $this->form_requisicao->add($table_requisicao); $this->form_itens->add($table_itens); //campos da requisicao; $numeroSRP = new TSeekButton('numeroSRP'); $nome = new TEntry('nome'); $numeroProcessoOrigem = new TEntry('numeroProcessoOrigem'); $uasg = new TEntry('uasg'); $validadeAta = new TEntry('validade'); $numeroProcesso = new TEntry('numeroProcesso'); $emissao = new TDate('emissao'); //campos do itens $numeroItem = new TSeekButton('numeroItem'); $item_id = new THidden('item_id'); $descricaoSumaria = new TEntry('descricaoSumaria'); $valorUnitario = new TEntry('valorUnitario'); $quantidade = new TEntry('quantidade'); $prazoEntrega = new TEntry('prazoEntrega'); $justificativa = new TEntry('justificativa'); $addItem = new TButton('addItem'); $save = new TButton('save'); $new = new TButton('new'); $list = new TButton('list'); //ações dos campos $numeroSRP->setAction(new TAction(array(new SrpSeekRequisicao(), 'onReload'))); $numeroProcesso->setExitAction(new TAction(array($this, 'onExitNumeroProcesso'))); $emissao->setExitAction(new TAction(array($this, 'onExitEmissao'))); $numeroItem->setAction(new TAction(array(new ItemSeekRequisicao(), 'onReload'))); $addItem->setAction(new TAction(array($this, 'onAddItem')), 'Adicionar'); $addItem->setImage('fa:plus-square-o'); $save->setAction(new TAction(array($this, 'onSave')), 'Salvar'); $save->setImage('ico_save.png'); $new->setAction(new TAction(array($this, 'onEdit')), 'Novo'); $new->setImage('ico_new.png'); $list->setAction(new TAction(array('RequisicaoList', 'onReload')), 'Voltar para listagem'); $list->setImage('ico_datagrid.png'); //$onProductChange = new TAction(array($this, 'onProductChange')); //$item_id->setExitAction($onProductChange); $quantidade->setExitAction(new TAction(array($this, 'onValidaQuantidade'))); //validadores $numeroSRP->addValidation('Nº SRP', new TRequiredValidator()); $emissao->addValidation('Emissão', new TRequiredValidator()); $numeroItem->addValidation('Item', new TRequiredValidator()); $valorUnitario->addValidation('Preço', new TRequiredValidator()); $quantidade->addValidation('Quantidade', new TRequiredValidator()); $quantidade->addValidation('Quantidade', new TMinValueValidator(), array(1)); $quantidade->addValidation('Quantidade', new TMaxLengthValidator(), array(11)); $justificativa->addValidation('Justificativa', new TRequiredValidator()); $justificativa->addValidation('Justificativa', new TMaxLengthValidator(), array(100)); $prazoEntrega->addValidation('Prazo de entrega', new TRequiredValidator()); $prazoEntrega->addValidation('Prazo de entrega', new TMaxLengthValidator(), array(20)); $numeroProcesso->addValidation('Nº Processo', new TRequiredValidator()); $numeroProcesso->addValidation('Nº Processo', new TMaxLengthValidator(), array(30)); //outras propriedades $descricaoSumaria->setEditable(false); $nome->setEditable(false); $numeroProcessoOrigem->setEditable(false); $uasg->setEditable(false); $validadeAta->setEditable(false); $valorUnitario->setEditable(false); $numeroSRP->setSize(80); $numeroSRP->setMaxLength(10); $emissao->setProperty('style', 'margin-right: 0px;', false); $nome->setSize(300); $nome->setProperty('style', 'margin-right: 10px', false); $numeroProcessoOrigem->setSize(160); $uasg->setSize(70); $validadeAta->setSize(85); $numeroProcesso->setMaxLength(30); $numeroProcesso->setTip('Número do processo gerado no SIGA'); $numeroItem->setSize(60); $numeroItem->setMaxLength(11); $descricaoSumaria->setSize(490); $descricaoSumaria->setProperty('style', 'margin-right: 10px', false); $prazoEntrega->setSize(90); $justificativa->setSize(400); $justificativa->setMaxLength(100); $emissao->setSize(90); $emissao->setMask('dd/mm/yyyy'); $emissao->setValue(date('d/m/Y')); $validadeAta->setMask('dd/mm/yyyy'); $quantidade->class = 'frm_number_only'; $quantidade->setMaxLength(11); $prazoEntrega->setValue('60 Dias'); $prazoEntrega->setMaxLength(20); //$addItem->setProperty('style', 'margin: 0 0 10px 10px;', false); $row = $table_requisicao->addRow(); $row->class = 'tformtitle'; // CSS class $cell = $row->addCell(new TLabel('Requisição de quantitativo')); $cell->colspan = 4; $row = $table_requisicao->addRow(); $row->addCell(new TLabel('Nº SRP:'))->width = '150px'; $row->addCell($numeroSRP); $row->addCell(new TLabel('Nome Licitação:'))->width = '150px'; $row->addCell($nome); $table_requisicao->addRowSet(new TLabel('Proc. Orig:'), $numeroProcessoOrigem, new TLabel('UASG:'), $uasg); $table_requisicao->addRowSet(new TLabel('Validade da Ata:'), $validadeAta, new TLabel('Nº Processo:'), $numeroProcesso); $table_requisicao->addRowSet(new TLabel('Data Emissão:'), $emissao); $row = $table_itens->addRow(); $row->class = 'tformtitle'; // CSS class $cell = $row->addCell(new TLabel('Itens')); $cell->colspan = 4; $row = $table_itens->addRow(); $row->addCell(new TLabel('Item:')); $box = new THBox(); $box->add($numeroItem); $box->add($descricaoSumaria)->style = 'width : 75%;display:inline-block;'; $row->addCell($box); //->style = 'width : 85%'; $table_itens->addRowSet($item_id); $table_itens->addRowSet(new TLabel('Preço:'), $valorUnitario); $table_itens->addRowSet(new TLabel('Quantidade:'), $quantidade); $table_itens->addRowSet(new TLabel('Prazo de entrega:'), $prazoEntrega); $table_itens->addRowSet(new TLabel('Justificativa:'), $justificativa); $row = $table_itens->addRow(); $row->class = 'tformaction'; $row->addCell($addItem)->colspan = 2; //$table_itens->addRowSet($addItem); parent::include_css('app/resources/custom-table.css'); $this->datagrid = new TDataGrid(); $this->datagrid->style = 'width: 100%'; $this->datagrid->class = 'tdatagrid_table customized-table'; $this->datagrid->setHeight(175); $this->datagrid->makeScrollable(); $this->datagrid->disableDefaultClick(); $GnumeroItem = new TDataGridColumn('numeroItem', 'Item', 'center', 50); $GdescricaoSumaria = new TDataGridColumn('descricaoSumaria', 'Descrição', 'left', 230); $Gquantidade = new TDataGridColumn('quantidade', 'Quantidade', 'right', 110); $GvalorUnitario = new TDataGridColumn('valorUnitario', 'Preço', 'right', 110); $Gtotal = new TDataGridColumn('total', 'Total', 'right', 160); //transformers $GvalorUnitario->setTransformer(array($this, 'formatValor')); $Gtotal->setTransformer(array($this, 'formatValor')); $edit = new TDataGridAction(array($this, 'onEditItem')); $edit->setLabel('Editar'); $edit->setImage('ico_edit.png'); $edit->setField('numeroItem'); $delete = new TDataGridAction(array($this, 'onDeleteItem')); $delete->setLabel('Deletar'); $delete->setImage('ico_delete.png'); $delete->setField('numeroItem'); $this->datagrid->addAction($edit); $this->datagrid->addAction($delete); $this->datagrid->addColumn($GnumeroItem); $this->datagrid->addColumn($GdescricaoSumaria); $this->datagrid->addColumn($Gquantidade); $this->datagrid->addColumn($GvalorUnitario); $this->datagrid->addColumn($Gtotal); $this->datagrid->createModel(); $this->form_requisicao->setFields(array($numeroSRP, $nome, $numeroProcessoOrigem, $uasg, $validadeAta, $numeroProcesso, $emissao, $new, $save, $list)); $this->form_itens->setFields(array($item_id, $numeroItem, $descricaoSumaria, $valorUnitario, $quantidade, $prazoEntrega, $justificativa, $addItem)); $hbox = new THBox(); $hbox->add($save); $hbox->add($new); $hbox->add($list); $table_grid = new TTable(); $table_grid->style = 'width: 100%;border-spacing: 0px;'; $table_grid->addRowSet($this->datagrid); $row = $table_grid->addRow(); $row->class = 'tformaction'; // CSS class $row->addCell($hbox)->colspan = 2; $vbox = new TVBox(); $vbox->add($this->form_requisicao); $vbox->add($this->form_itens); $vbox->add($table_grid); $vbox->add(new TLabel(' ')); parent::add($vbox); }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_Srp_report'); $this->form->class = 'tform'; // CSS class $this->form->style = 'width: 500px'; // creates the table container $table = new TTable(); $table->width = '100%'; // add the table inside the form $this->form->add($table); // define the form title $row = $table->addRow(); //Set( new TLabel('Relatório de Srp'), '', '','', '' )->class = 'tformtitle'; $row->class = 'tformtitle'; $row->addCell(new TLabel('Relatório de Srp'))->colspan = 2; // create the form fields $numeroSRPI = new TEntry('numeroSRPI'); $numeroSRPF = new TEntry('numeroSRPF'); $numeroIRPI = new TEntry('numeroIRPI'); $numeroIRPF = new TEntry('numeroIRPF'); $numeroProcessoI = new TEntry('numeroProcessoI'); $numeroProcessoF = new TEntry('numeroProcessoF'); $validadeI = new TDate('validadeI'); $validadeF = new TDate('validadeF'); $nomeI = new TEntry('nomeI'); $nomeF = new TEntry('nomeF'); $itensZero = new TRadioGroup('itensZero'); // define the sizes $numeroSRPI->setSize(150); $numeroSRPF->setSize(150); $numeroIRPI->setSize(150); $numeroIRPF->setSize(150); $numeroProcessoI->setSize(150); $numeroProcessoF->setSize(150); $validadeI->setSize(85); $validadeI->setProperty('style', 'margin-right : 0px'); $validadeF->setSize(85); $validadeF->setProperty('style', 'margin-right : 0px'); //$aprovado->setSize(90); //mask $validadeI->setMask('dd/mm/yyyy'); $validadeF->setMask('dd/mm/yyyy'); $validadeF->setValue(date('d/m/Y')); //$validadeI->setNumericMask(0, '', ''); // validations //$aprovado->addValidation('Aprovado', new TRequiredValidator); $validadeF->addValidation('Validade - Até', new TDateValidator(), array('dd/mm/yyyy')); $itensZero->addItems(array('1' => 'Sim', '0' => 'Não')); $itensZero->setValue('0'); $itensZero->setLayout('horizontal'); // add one row for each form field $table->addRowSet(new TLabel('Nº SRP'), array($numeroSRPI, new TLabel('Até'), $numeroSRPF)); $table->addRowSet(new TLabel('Nº IRP'), array($numeroIRPI, new TLabel('Até'), $numeroIRPF)); $table->addRowSet(new TLabel('Nº Processo'), array($numeroProcessoI, new TLabel('Até'), $numeroProcessoF)); $table->addRowSet(new TLabel('Emissão'), array($validadeI, new TLabel('Até'), $validadeF)); $table->addRowSet(new TLabel('Lista itens zerado?'), $itensZero); $this->form->setFields(array($numeroProcessoI, $numeroProcessoF, $numeroIRPI, $numeroIRPF, $nomeI, $nomeF, $validadeI, $validadeF, $numeroSRPI, $numeroSRPF, $itensZero)); //$aprovado->addItems(array('1' => 'Sim', '0' => 'Não', '%' => 'Todos')); //$aprovado->setValue('%'); //$aprovado->setLayout('horizontal'); $generate_button = TButton::create('generate', array($this, 'onGenerate'), _t('Generate'), 'ico_apply.png'); $this->form->addField($generate_button); // add a row for the form action $table->addRowSet($generate_button, '')->class = 'tformaction'; $container = new TTable(); $container->addRow()->addCell(new TXMLBreadCrumb('menu.xml', __CLASS__)); $container->addRow()->addCell($this->form); parent::add($container); }
/** * */ public function makeTDate($properties) { $widget = new TDate((string) $properties->{'name'}); $widget->setValue((string) $properties->{'value'}); $widget->setSize((int) $properties->{'width'}); $widget->setEditable((string) $properties->{'editable'}); if ((string) $properties->{'mask'}) { $widget->setMask((string) $properties->{'mask'}); } if (isset($properties->{'tip'})) { $widget->setTip((string) $properties->{'tip'}); } if (isset($properties->{'required'}) and $properties->{'required'} == '1') { $widget->addValidation((string) $properties->{'name'}, new TRequiredValidator()); } $this->fields[] = $widget; $this->fieldsByName[(string) $properties->{'name'}] = $widget; return $widget; }
/** * Class constructor * Creates the page and the registration form */ function __construct() { parent::__construct(); // creates the form $this->form = new TForm('form_pessoa'); // creates a table $table_data = new TTable(); $table_contato = new TTable(); $notebook = new TNotebook(500, 250); // add the notebook inside the form $this->form->add($notebook); $notebook->appendPage('Dados Principais', $table_data); $notebook->appendPage('Contatos', $table_contato); // create the form fields $idpessoa = new TEntry('idpessoa'); $nome = new TEntry('nome'); $dtcadastro = new TDate('dtcadastro'); $dtnascimento = new TDate('dtnascimento'); $natureza = new TRadioGroup('natureza'); $idramoatividade = new TDBCombo('idramoatividade', 'sobcontrole', 'ramoatividade', 'idramoatividade', 'descricao'); $obs = new TText('obs'); // add field validators $nome->addValidation('Nome', new TRequiredValidator()); $dtcadastro->addValidation('Data Cadastro', new TRequiredValidator()); $dtnascimento->addValidation('Data Nascimento', new TRequiredValidator()); $idramoatividade->addValidation('Ramo de Atividade', new TRequiredValidator()); $natureza->addValidation('Natureza', new TRequiredValidator()); $itemNatureza = array(); $itemNatureza['F'] = 'Física'; $itemNatureza['J'] = 'Jurídica'; // add the combo options $natureza->addItems($itemNatureza); $natureza->setLayout('horizontal'); // define some properties for the form fields $idpessoa->setEditable(FALSE); $idpessoa->setSize(100); $nome->setSize(320); $obs->setSize(320); $dtcadastro->setSize(90); $dtnascimento->setSize(90); $natureza->setSize(70); $idramoatividade->setSize(120); // add a row for the field code $table_data->addRowSet(new TLabel('ID:'), array($idpessoa, new TLabel('Natureza:'), $natureza)); $table_data->addRowSet(new TLabel('Nome/Fantasia:'), $nome); $table_data->addRowSet(new TLabel('Data Cadastro:'), $dtcadastro); $table_data->addRowSet(new TLabel('Data Nascimento/Início:'), $dtnascimento); $table_data->addRowSet(new TLabel('Ramo de Atividade:'), $idramoatividade); $table_data->addRowSet(new TLabel('Observações:'), $obs); $row = $table_contato->addRow(); // adiciona linha $cell = $row->addCell(new TLabel('<b>Contatos</b>')); // adiciona celular na linha $cell->valign = 'top'; // define alinhamento $listacontatos = new TMultiField('listacontatos'); // cria multifield // com TDBSeekButton //$idtipocontato= new TDBSeekButton('idtipocontato', 'sobcontrole', $this->form->getName(), 'tipocontato', 'descricao', 'listacontatos_idtipocontato', 'listacontatos_descricaotipocontato'); // com TSeekButton /*$idtipocontato= new TSeekButton('idtipocontato'); $auxidtipocontato = new BuscaTipoContato; $auxaction= new TAction(array($auxidtipocontato,'onReload')); $idtipocontato->setAction($auxaction);*/ $idtipocontato = new TDBCombo('idtipocontato', 'sobcontrole', 'tipocontato', 'idtipocontato', 'descricao', 'descricao'); $descricaotipocontato = new \Adianti\Widget\Form\THidden('tipocontato->descricao'); //$descricaotipocontato->setEditable(false); $valorcontato = new TEntry('valorcontato'); $listacontatos->setClass('contato'); // define the returning class // colunas do multifield // coluna do ID do tipo de contato (1->email, 2->telefone, etc...) $listacontatos->addField('idtipocontato', 'ID: ', $idtipocontato, 40); // coluna da descricao do tipo de contato // desta forma o grid OK $listacontatos->addField('tipocontato->descricao', '', $descricaotipocontato, 200); // desta forma o TDBSeekButton fica OK. //$listacontatos->addField('descricaotipocontato', 'Descrição Tipo Contato: ', $descricaotipocontato, 200); // coluna com o valor do contato, número do telefone, celular, etc. $listacontatos->addField('descricao', 'Valor Contato: ', $valorcontato, 200); $listacontatos->setHeight(250); $row = $table_contato->addRow(); $row->addCell($listacontatos); // create an action button $button1 = new TButton('action1'); $button1->setAction(new TAction(array($this, 'onSave')), 'Salvar'); $button1->setImage('ico_save.png'); // create an action button (go to list) $button2 = new TButton('list'); $button2->setAction(new TAction(array('PessoaDataGrid', 'onReload')), 'Listar'); $button2->setImage('ico_datagrid.gif'); $button0 = new TButton('new'); $button0->setAction(new TAction(array($this, 'onClear')), 'Novo'); $button0->setImage('ico_new.png'); // define wich are the form fields $this->form->setFields(array($idpessoa, $nome, $dtcadastro, $dtnascimento, $natureza, $idramoatividade, $obs, $listacontatos, $button0, $button1, $button2)); $subtable = new TTable(); $row = $subtable->addRow(); $row->addCell($button0); $row->addCell($button1); $row->addCell($button2); // wrap the page content $vbox = new TVBox(); $vbox->add(new TXMLBreadCrumb('menu.xml', __CLASS__)); $vbox->add($this->form); $vbox->add($subtable); // add the form inside the page parent::add($vbox); }
function __construct() { parent::__construct(); $this->form = new TForm('doc_cessao_form'); $this->form->style = 'width : 500px;'; $this->form->class = 'tform'; $table = new TTable(); $table->width = '100%'; $this->form->add($table); $row = $table->addRow(); $row->class = 'tformtitle'; // CSS class $row->addCell(new TLabel('Gerar Documentos da Cessão'))->colspan = 2; // cria os campos do formulário $memorando = new TEntry('memorando'); //$cidade = new TEntry('cidade'); $emissao = new TDate('emissao'); $campusID = new TEntry('campusID'); //TDBSeekButton('campusID', 'saciq', 'doc_cessao_form', 'Campus', 'nome', 'campusID', 'campusNome'); $campusNome = new TEntry('campusNome'); $gerente = new TEntry('gerente'); $diretor = new TEntry('diretor'); $cessao_id = new THidden('cessao_id'); // define the sizes $memorando->setSize(300); //$cidade->setSize(200); $emissao->setSize(90); $emissao->setProperty('style', 'margin-right : 0px'); $campusID->setSize(50); $campusID->setEditable(false); $campusNome->setSize(226); $campusNome->setEditable(false); $gerente->setSize(300); $diretor->setSize(300); //mascara $emissao->setMask('dd/mm/yyyy'); $emissao->setValue(date('d/m/Y')); //validadores $memorando->addValidation('Memorando', new TRequiredValidator()); $memorando->addValidation('Memorando', new TMaxLengthValidator(), array(70)); $emissao->addValidation('Emissão', new TRequiredValidator()); $campusID->addValidation('Destino', new TRequiredValidator()); $gerente->addValidation('Gerente Administrativo(a)', new TRequiredValidator()); $gerente->addValidation('Gerente Administrativo(a)', new TMaxLengthValidator(), array(70)); $diretor->addValidation('Diretor(a) Geral', new TRequiredValidator()); $diretor->addValidation('Diretor(a) Geral', new TMaxLengthValidator(), array(70)); $memorando->setTip('Descrição do Memorando que aparecerá no início do documento.'); $gerente->setTip('Nome do gerente em exercício'); $diretor->setTip('Nome do diretor geral em exercício'); $value = TSession::getValue('doc_cessao_form_cessao_id'); if (isset($value)) { $cessao_id->setValue($value); } // add one row for each form field $table->addRowSet(new TLabel('Memorando:'), $memorando); //$table->addRowSet(new TLabel('Cidade:'), $cidade); $table->addRowSet(new TLabel('Emissão:'), $emissao); //$table->addRowSet(new TLabel('Destino:'), $destino); //$row = $table->addRow(); $box = new THBox(); $box->add($campusID); $box->add($campusNome)->style = 'width: 75%; display : inline-block;'; //$row->addCell($box)->colspan = 2; $table->addRowSet(new TLabel('Destino:'), $box); $table->addRowSet(new TLabel('Gerente Administrativo(a):'), $gerente); $table->addRowSet(new TLabel('Diretor(a):'), $diretor); $table->addRowSet($cessao_id); $this->form->setFields(array($memorando, $emissao, $campusID, $campusNome, $gerente, $diretor, $cessao_id)); // keep the form filled during navigation with session data $this->form->setData(TSession::getValue('Cessao_filter_data')); // create two action buttons to the form $generate_button = TButton::create('generate', array($this, 'onGenerate'), 'Gerar', 'fa:file-pdf-o'); $back_button = TButton::create('back', array('DocCessaoList', 'onReload'), 'Voltar', 'ico_back.png'); //$new_button = TButton::create('new', array('CessaoForm', 'onEdit'), 'Novo', 'ico_new.png'); $this->form->addField($generate_button); $this->form->addField($back_button); $buttons_box = new THBox(); $buttons_box->add($generate_button); $buttons_box->add($back_button); // add a row for the form action $row = $table->addRow(); $row->class = 'tformaction'; // CSS class $row->addCell($buttons_box)->colspan = 2; // create the page container //$container = TVBox::pack($this->form); parent::add($this->form); }