Lançado Adianti Framework 8.1!
Clique aqui para saber mais
Problema com SetMask Bom Dia, criei um campo no form usando TDate,tentei aplicar o setMask('dd/mm/yyyy'), quando clico na table par que ele popule o form, a data vem ainda no formato do banco de dados, ou seja, 'yyyy-mm-dd', o setMask só funciona se eu altero o valor do campo data, tem algum evento que eu deva colocar no codigo paa que ele mascare certo o campo data?, no datagrid vi que o Transfomer, que deu certo 10...
AB
Problema com SetMask  
Fechado
Bom Dia, criei um campo no form usando TDate,tentei aplicar o setMask('dd/mm/yyyy'), quando clico na table par que ele popule o form, a data vem ainda no formato do banco de dados, ou seja, 'yyyy-mm-dd', o setMask só funciona se eu altero o valor do campo data, tem algum evento que eu deva colocar no codigo paa que ele mascare certo o campo data?, no datagrid vi que o Transfomer, que deu certo 100%, só no form que não, se alguem uder ajudar agradeço.

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)


IF

Bom dia Agostinho. No onEdit do seu form vc tem que transformar a data para o formato br.

  1. <?php
  2.    $object->sua_data TDate::date2br($object->sua_data);
  3. ?>
AB

Bom Dia, obrigado pelo retorno Ivan.

Só que dai tenho que sobrescrever os métodos onEdit e onSave, correto?
AB

Bom Dia, obrigado pelo retorno Ivan.

Só que dai tenho que sobrescrever os métodos onEdit e onSave, correto?
MC

Bom dia,

E quando for pesquisar a informação no banco através da data ela deverá ser convertida novamente.

  1. <?php
  2.    $object->sua_data TDate::date2us($object->sua_data);
  3. ?>
AB

To sobrescrevendo o onSearch, usando isso, mas ele atualiza na tela e não filtra com base no que é digitado, segue abaixo o codigo que utilizei

<php
public function onSearch()
{
// get the search form data
$data = $this->form->getData();

$data->dtaMov400 = TDate::date2us($data->dtaMov400);

if ($this->formFilters)
{
foreach ($this->formFilters as $filterKey => $formFilter)
{
$operator = isset($this->operators[$filterKey]) ? $this->operators[$filterKey] : 'like';
$filterField = isset($this->filterFields[$filterKey]) ? $this->filterFields[$filterKey] : $formFilter;

// check if the user has filled the form
if (isset($data->{$formFilter}) AND $data->{$formFilter})
{
// creates a filter using what the user has typed
if (stristr($operator, 'like'))
{
$filter = new TFilter($filterField, $operator, "%{$data->{$formFilter}}%");
}else{
$filter = new TFilter($filterField, $operator, $data->{$formFilter});
}

// stores the filter in the session
TSession::setValue($this->activeRecord.'_filter', $filter); // BC compatibility
TSession::setValue($this->activeRecord.'_filter_'.$formFilter, $filter);
TSession::setValue($this->activeRecord.'_'.$formFilter, $data->{$formFilter});
}else{
TSession::setValue($this->activeRecord.'_filter', NULL); // BC compatibility
TSession::setValue($this->activeRecord.'_filter_'.$formFilter, NULL);
TSession::setValue($this->activeRecord.'_'.$formFilter, '');
}
}
}

TSession::setValue($this->activeRecord.'_filter_data', $data);

$data->dtaMov400 = TDate::date2br($data->dtaMov400);
// fill the form with data again
$this->form->setData($data);

$param=array();
$param['offset'] =0;
$param['first_page']=1;
$this->onReload($param);
}
?>
AB

Consegui resolver o problema, obrigado Ivan pela força.