FS
Formatar campo data ao editar dados num datagrid
Fechado
Boa tarde,
Tenho um datagrid que lista dados de um cadastro de alunos, onde já fiz o tratamento para listar a data de nascimento no formato brasileiro. Só que ao clicar em editar os dados, a data aparece novamente no formato inglês e se eu retornar no datagrid, a data irá estar desconfigurada.
Minha dúvida é, onde eu trato a data para que fique sempre em português, neste meu caso, quando for editar os dados. É no onEdit?
Em anexo estou enviando mais informações. Estou usando o FormDesigner.
Obrigado.
Tenho um datagrid que lista dados de um cadastro de alunos, onde já fiz o tratamento para listar a data de nascimento no formato brasileiro. Só que ao clicar em editar os dados, a data aparece novamente no formato inglês e se eu retornar no datagrid, a data irá estar desconfigurada.
Minha dúvida é, onde eu trato a data para que fique sempre em português, neste meu caso, quando for editar os dados. É no onEdit?
Em anexo estou enviando mais informações. Estou usando o FormDesigner.
Obrigado.
você deve formatar data no método com onEdit e antes de separar os dados no formulário:
//transforme as datas antes da linha abaixo
$this->form->setData($data);
Muito obrigado Ricardo, deu certo. Abaixo segue como ficou o código do onEdit, caso mais alguém tenha este problema.
Abraços.
function onEdit($param)
{
try
{
if (isset($param['key']))
{
$key=$param['key']; // get the parameter $key
TTransaction::open('una'); // open a transaction with the database
$object = new Alunos($key); // instantiates the Active Record
$object->dt_nascimento = TDate::date2br($object->dt_nascimento);
$object->store();
$this->form->setData($object); // fill the form with the active record data
TTransaction::close(); // close the transaction
}
else
{
$this->form->clear();
}
}
catch (Exception $e) // in case of exception
{
new TMessage('error', 'Error ' . $e->getMessage()); // shows the exception error message
TTransaction::rollback(); // undo all pending operations
}
}