FK
Data pt-br com TQuickForm e TDate
Fechado
Estou tendo problemas com data no formato dd/mm/yyyy, juntamente com TQuickForm e TDate, coloquei um SetMask, mas na hora de salvar, não salva corretamente.
Antes do store você faz assim:
$object->campo = TDate::date2us($object->campo);
Mas isso mesmo utilizando o TQuickForm?
o seu problema não é no TQuickForm (ele somente mostra a informação na tela) o seu problema é no method onSave
Então é ai que eu não estou compreendendo, o metodo onSave já é TQuickForm, eu não o criei. Então eu tenho que substituir ele? Criar meu próprio onSave?
No seu fonte não tem um metodo onSave?
Não, está como no exemplo da URL www.adianti.com.br/framework_files/tutor/index.php?class=CompleteDat
Mas essse é um exemplo de formulário de DataGrid não exemplo de Formulário de edição de dados.
Você está digitando a data no Datagrid?
QuickForm faz formulário não salva dados.
O seu botão está chamando qual Ação?
É verdade colei o errado, abaixo vai o meu código:
Então, na verdade você esta usando um TStandardFormList, como tal ele um um evento onSave padrão da classe, e como padrão da classe ele trabalha com data americana, como você está usando data no formato brasileiro, você terá que criar um metodo onSave quer irá substituir o padrão do TStandardFormList, trocando a data conforme eu havia te falado.
Hum, o negócio é classe que eu estava extendendo, não é um método do TQuickForm, blz, obrigado. Vou tentar desse jeito.
Se possível pode colocar o resultado da solução?
Apenas uma sugestão. Seria interessante os tópicos resolvidos terem no final [RESOLVIDO] pra melhor organização. Isso facilita a outros usuários que buscam a solução do mesmo problema.
Essa é minha duvida : Não seria mais interessante mudar no código original da classe? Ficar refazendo OnSave em cada tela não seria um retrocesso ?
Não seria possível ajustar isso no MODEL da tabela, e ficar tudo automático ?
Sergio,
Nem sempre é interessante deixar uma conversão genérica.
A conversão automática na model pode ser perigosa.
Em um formulário de cadastro, você quer o vai e vem automático.
Mas em outros pontos da regra de negócio, em outras rotinas
você vai querer a data em formato original para efetuar cálculos.
Att,
Pablo, entendi. Mas como seria para modificar direto no MODEL? Seria possível vc Pode postar aqui?
Hook Methods:
www.adianti.com.br/framework_files/tutor/index.php?class=HookMethodV
Mas se implementados da maneira errada, poderão trazer dor de cabeça generalizada.
www.adianti.com.br/forum/pt/view_2287?conversao-de-datas-e-valores-m