Fatal error: Call to a member function format() Boa tarde, Estou encontrando esse erro, mas estranho que estava funcionando e por algum motivo não está mais funcionando, a mensagem de erro completa é essa: A linha citada no erro contém o seguinte código: ...
EZ
Fatal error: Call to a member function format()  
Boa tarde,

Estou encontrando esse erro, mas estranho que estava funcionando e por algum motivo não está mais funcionando, a mensagem de erro completa é essa:

<?phpFatal error: Call to a member function format() on boolean in C:\xampp\htdocs\crescer2\app\control\secretaria\TbPessoasForm3.class.php on line 895?>


A linha citada no erro contém o seguinte código:

<?php$pessoa->data_nascimento = DateTime::createFromFormat('d/m/Y', $pessoa->data_nascimento)->format('Y-m-d');?>


uso esse recurso para gravar a data no banco no formato correto...

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 (11)


IF

Olá Edson, quando declarar o seu campo, tenta usar esse recurso do Adianti:
<?php    $data_nascimento = new Date('data_nascimento');    $data_nascimento->setMask('dd/mm/yyyy');  //Seta a máscara    $data_nascimento->setDatabaseMask('yyyy-mm-dd'); // Transforma a data na hora de salvar.?>


O setDatabaseMask transforma a data automaticamente na hora de salvar o registro, sem precisar fazer isso na mão.
EZ

Boa Noite,

Então...eu sei dessa forma de utilizar, só fiz dessa forma devido a esse post:

www.adianti.com.br/forum/pt/view_2287?conversao-de-datas-e-valores-m

Vou tentar fazer como você sugeriu então.

Obrigado!
MG

Depende da versão do PHP que esteja usando.
Seu php deve ser (PHP 5 >= 5.2.0, PHP 7)
EZ

Bom dia,

Deu certo...obrigado!
Estou usando a versão do PHP 5.6.30

Grato
MG

Pela especificação do manual, diz que maior que 5,2, mas na realidade não funciona!
Na 7 funciona direito.
Fico feliz que tenha conseguido.
Abraços
EZ

Então,

Fui enganado...kkkk....como não deu erro achei que tinha dado certo, mas se eu uso setDatabaseMask não grava nada no campo data_nascimento da tabela...
IF

Posta o código pra gente dar uma olhada, pois eu uso essa função com PHP 5.6.10 e funciona normalmente
EZ

ok,

Vou postar mas é grande o trem...

<?phpclass TbPessoasForm3 extends TPage{    private $form; // form    private $table_contatos;    private $table_cursos;    private $table_batismo;    private $table_documentos;    private $table_dependentes;    private $table_formacao;    private $table_habilidades;    private $table_idiomas;    private $table_profissoes;        function __construct()    {        parent::__construct();                // creates the form        $this->form = new BootstrapFormBuilder('form_TbPessoas');        $this->form->setFormTitle('Cadastro de Pessoas');                $id                     = new TEntry('id');        $nome                   = new TEntry('nome');        $sobrenome              = new TEntry('sobrenome');        $sexo                   = new TRadioGroup('sexo');        $tratamento             = new TEntry('tratamento');        $id_celula              = new TEntry('id_celula');        $estado_civil           = new TDBCombo('estado_civil','crescer','EstadoCivil','ec_id','ec_nome');        $email                  = new TEntry('email');        $fone                   = new TEntry('fone');        $celular                = new TEntry('celular');        $naturalidade_uf        = new TDBCombo('naturalidade_uf','crescer','Estados','uf_id','uf_uf');        $naturalidade_municipio = new TEntry('naturalidade_municipio');        $data_nascimento        = new TDate('data_nascimento');        $end_uf                 = new TDBCombo('end_uf','crescer','Estados','uf_id','uf_uf');        $end_municipio          = new TEntry('end_municipio');        $end_cep                = new TEntry('end_cep');        $end_bairro             = new TEntry('end_bairro');        $end_endereco           = new TEntry('end_endereco');        $end_complemento        = new TEntry('end_complemento');        $end_latitude           = new TEntry('end_latitude');        $end_longitude          = new TEntry('end_longitude');        $inf_adic               = new TEntry('inf_adic');        $c_pastor               = new TRadioGroup('c_pastor');        $c_discipulador         = new TRadioGroup('c_discipulador');        $c_lider_celula         = new TRadioGroup('c_lider_celula');        $c_lider_treinamento    = new TRadioGroup('c_lider_treinamento');        $c_obreiro              = new TRadioGroup('c_obreiro');        $c_tipo                 = new TDBCombo('c_tipo','crescer','TbPessoasTipo','pt_id','pt_nome');        $c_data_cadastro        = new TDate('c_data_cadastro');        $c_dizimista            = new TRadioGroup('c_dizimista');        $cons_semana1           = new TRadioGroup('cons_semana1');        $cons_semana2           = new TRadioGroup('cons_semana2');        $cons_semana3           = new TRadioGroup('cons_semana3');        $cons_semana4           = new TRadioGroup('cons_semana4');        $cons_semana5           = new TRadioGroup('cons_semana5');        $cons_semana6           = new TRadioGroup('cons_semana6');        $cons_semana7           = new TRadioGroup('cons_semana7');        $cons_semana8           = new TRadioGroup('cons_semana8');        $cons_semana9           = new TRadioGroup('cons_semana9');        $cons_semana10          = new TRadioGroup('cons_semana10');        $cons_semana11          = new TRadioGroup('cons_semana11');        $cons_semana12          = new TRadioGroup('cons_semana12');        $nome_anjo              = new TEntry('nome_anjo');                $sexo->setUseButton();        $c_pastor->setUseButton();        $c_discipulador->setUseButton();        $c_lider_celula->setUseButton();        $c_lider_treinamento->setUseButton();        $c_obreiro->setUseButton();        $c_dizimista->setUseButton();        $cons_semana1->setUseButton();        $cons_semana2->setUseButton();        $cons_semana3->setUseButton();        $cons_semana4->setUseButton();        $cons_semana5->setUseButton();        $cons_semana6->setUseButton();        $cons_semana7->setUseButton();        $cons_semana8->setUseButton();        $cons_semana9->setUseButton();        $cons_semana10->setUseButton();        $cons_semana11->setUseButton();        $cons_semana12->setUseButton();                 $sexos = array();        $sexos['f'] = 'Feminino';        $sexos['m'] = 'Masculino';                $itens = [];        $itens['s'] = 'Sim';        $itens['n'] = 'Não';                        $sexo->addItems($sexos);        $c_pastor->addItems($itens);        $c_discipulador->addItems($itens);        $c_lider_celula->addItems($itens);        $c_lider_treinamento->addItems($itens);        $c_obreiro->addItems($itens);        $c_dizimista->addItems($itens);         $cons_semana1->addItems($itens);        $cons_semana2->addItems($itens);        $cons_semana3->addItems($itens);        $cons_semana4->addItems($itens);        $cons_semana5->addItems($itens);        $cons_semana6->addItems($itens);        $cons_semana7->addItems($itens);        $cons_semana8->addItems($itens);        $cons_semana9->addItems($itens);        $cons_semana10->addItems($itens);        $cons_semana11->addItems($itens);        $cons_semana12->addItems($itens);        $c_data_cadastro->setValue(date('d/m/Y'));                          //mascaras        $fone->setMask('(99)9999-9999');        $celular->setMask('(99)99999-9999');        $data_nascimento->setMask('dd/mm/yyyy');        $c_data_cadastro->setMask('dd/mm/yyyy');        $end_cep->setMask('99.999-999');        $data_nascimento->setDatabaseMask('yyyy-mm-dd');        $c_data_cadastro->setDatabaseMask('yyyy-mm-dd');                        $sexo->setLayout('horizontal');        $c_pastor->setLayout('horizontal');        $c_discipulador->setLayout('horizontal');        $c_lider_celula->setLayout('horizontal');        $c_lider_treinamento->setLayout('horizontal');        $c_obreiro->setLayout('horizontal');        $c_dizimista->setLayout('horizontal');               $cons_semana1->setLayout('horizontal');        $cons_semana2->setLayout('horizontal');        $cons_semana3->setLayout('horizontal');        $cons_semana4->setLayout('horizontal');        $cons_semana5->setLayout('horizontal');        $cons_semana6->setLayout('horizontal');        $cons_semana7->setLayout('horizontal');        $cons_semana8->setLayout('horizontal');        $cons_semana9->setLayout('horizontal');        $cons_semana10->setLayout('horizontal');        $cons_semana11->setLayout('horizontal');        $cons_semana12->setLayout('horizontal');                        $id->setEditable(FALSE);         $this->form->appendPage('Principal');        $this->form->addFields( [ new TLabel('Id') ],              [ $id ],                    [ new TLabel('Tipo')],             [ $c_tipo ] );        $this->form->addFields( [ new TLabel('Tratamento')],       [ $tratamento ] );        $this->form->addFields( [ new TLabel('Nome') ],            [ $nome ],                  [ new TLabel('Sobrenome') ],       [ $sobrenome ] );        $this->form->addFields( [ new Tlabel('Sexo')],             [ $sexo ],                  [ new TLabel('Estado Civil')],     [ $estado_civil ] );        $this->form->addFields( [ new TLabel('e-mail')],           [ $email ] );        $this->form->addFields( [ new TLabel('Telefone')],         [ $fone ],                  [ new TLabel('Celular')],          [ $celular ] );        $this->form->addFields( [ new TLabel('Naturalidade')],     [ $naturalidade_municipio ],[ new TLabel('Naturalidade UF')],  [ $naturalidade_uf ]);        $this->form->addFields( [ new TLabel('Data Nascimento')],  [ $data_nascimento ]);        $this->form->addFields( [ new TLabel('Cidade')],           [ $end_municipio ],         [ new TLabel('UF')],               [ $end_uf ]);        $this->form->addFields( [ new TLabel('CEP')],              [ $end_cep ],[ new TLabel('Bairro')],           [ $end_bairro ]);        $this->form->addFields( [ new TLabel('Endereço')],         [ $end_endereco ],[ new TLabel('Complemento')],      [ $end_complemento ]);        $this->form->addFields( [ new TLabel('Latitude')],         [ $end_latitude ],[ new TLabel('Longitude')],        [ $end_longitude ]);        $this->form->addFields( [ new TLabel('Inf. Adicionais')],  [ $inf_adic ],[ new TLabel('Dizimista')],        [ $c_dizimista ]);        $this->form->appendPage('Informações Eclesiásticas');                $this->form->addFields( [ new TLabel('Pastor')],           [ $c_pastor ]);        $this->form->addFields( [ new TLabel('Discipulador')],     [ $c_discipulador ]);        $this->form->addFields( [ new TLabel('Célula')],           [ $c_lider_celula ]);        $this->form->addFields( [ new TLabel('Líder Treinamento')],[ $c_lider_treinamento ]);        $this->form->addFields( [ new TLabel('Obreiro')],          [ $c_obreiro ]);        $this->form->addFields( [ new TLabel('Data Cadastro')],    [ $c_data_cadastro ]);                $this->form->appendPage('Consolidação');        $this->form->addFields( [ new TLabel('Semana 1')],         [ $cons_semana1 ]);        $this->form->addFields( [ new TLabel('Semana 2')],         [ $cons_semana2 ]);        $this->form->addFields( [ new TLabel('Semana 3')],         [ $cons_semana3 ]);        $this->form->addFields( [ new TLabel('Semana 4')],         [ $cons_semana4 ]);        $this->form->addFields( [ new TLabel('Semana 5')],         [ $cons_semana5 ]);        $this->form->addFields( [ new TLabel('Semana 6')],         [ $cons_semana6 ]);        $this->form->addFields( [ new TLabel('Semana 7')],         [ $cons_semana7 ]);        $this->form->addFields( [ new TLabel('Semana 8')],         [ $cons_semana8 ]);        $this->form->addFields( [ new TLabel('Semana 9')],         [ $cons_semana9 ]);        $this->form->addFields( [ new TLabel('Semana 10')],        [ $cons_semana10 ]);        $this->form->addFields( [ new TLabel('Semana 11')],        [ $cons_semana11 ]);        $this->form->addFields( [ new TLabel('Semana 12')],        [ $cons_semana12 ]);        $this->form->addFields( [ new TLabel('Anjo')],             [ $nome_anjo ]);        $this->form->appendPage('Contatos');        $this->table_contatos = new TTable;        $this->table_contatos->addSection('thead');        $this->table_contatos->addRowSet( new TLabel('Telefone', '#8082C3',10, 'b'),                                          new TLabel('Tipo', '#8082C3',10, 'b'),                                          new TLabel('Operadora', '#8082C3',10, 'b'),                                          new TLabel('e-mail', '#8082C3',10, 'b'),                                          new TLabel('Inf. Adicionais', '#8082C3',10, 'b')                                         );        $this->form->addContent( [ new TLabel('Contatos') ],     [ $this->table_contatos ] );                $this->form->appendPage('Cursos');        $this->table_cursos = new TTable;        $this->table_cursos->addSection('thead');        $this->table_cursos->addRowSet( new TLabel('Curso', '#8082C3',10, 'b'),                                        new TLabel('Carga Horária', '#8082C3',10, 'b'),                                        new TLabel('Local', '#8082C3',10, 'b'),                                        new TLabel('Inf. Adicionais', '#8082C3',10, 'b')                                       );        $this->form->addContent( [ new TLabel('Cursos') ],     [ $this->table_cursos ] );                $this->form->appendPage('Batismos');        $this->table_batismo = new TTable;        $this->table_batismo->addSection('thead');        $this->table_batismo->addRowSet( new TLabel('Data', '#8082C3',10, 'b'),                                         new TLabel('Cidade', '#8082C3',10, 'b'),                                         new TLabel('UF', '#8082C3',10, 'b'),                                         new TLabel('Igreja', '#8082C3',10, 'b') );        $this->form->addContent( [ new TLabel('Batismo') ],     [ $this->table_batismo ] );                $this->form->appendPage('Documentos');        $this->table_documentos = new TTable;        $this->table_documentos->addSection('thead');        $this->table_documentos->addRowSet( new TLabel('CPF', '#8082C3',10, 'b'),                                            new TLabel('RG', '#8082C3',10, 'b'),                                            new TLabel('Orgão Emissor', '#8082C3',10, 'b'),                                            new TLabel('UF', '#8082C3',10, 'b'),                                            new TLabel('Data Emissão', '#8082C3',10, 'b')                                            );        $this->form->addContent([ new TLabel('Documentos') ],[ $this->table_documentos ]);                $this->form->appendPage('Dependentes');        $this->table_dependentes = new TTable;        $this->table_dependentes->addSection('thead');        $this->table_dependentes->addRowSet( new TLabel('Dependente', '#8082C3',10, 'b'),                                             new TLabel('Gráu', '#8082C3',10, 'b'),                                             new TLabel('Ind. Adicional', '#8082C3',10, 'b')                                            );        $this->form->addContent([ new TLabel('Dependentes') ],[ $this->table_dependentes ]);                $this->form->appendPage('Formação Acadêmica');        $this->table_formacao = new TTable;        $this->table_formacao->addSection('thead');        $this->table_formacao->addRowSet( new TLabel('Descrição', '#8082C3',10, 'b'),                                          new TLabel('Data Conclusão', '#8082C3',10, 'b'),                                          new TLabel('Ind. Adicional', '#8082C3',10, 'b')                                            );        $this->form->addContent([ new TLabel('Formação') ],[ $this->table_formacao ]);                $this->form->appendPage('Habilidades');        $this->table_habilidades = new TTable;        $this->table_habilidades->addSection('thead');        $this->table_habilidades->addRowSet( new TLabel('Descrição', '#8082C3',10, 'b'),                                             new TLabel('Ind. Adicional', '#8082C3',10, 'b')                                            );        $this->form->addContent([ new TLabel('Habilidades') ],[ $this->table_habilidades ]);                        $this->form->appendPage('Idiomas');        $this->table_idiomas = new TTable;        $this->table_idiomas->addSection('thead');        $this->table_idiomas->addRowSet( new TLabel('Idioma', '#8082C3',10, 'b'),                                         new TLabel('Nível de Leitura', '#8082C3',10, 'b'),                                         new TLabel('Nível de Escrita', '#8082C3',10, 'b'),                                         new TLabel('Nível de Conversação', '#8082C3',10, 'b')                                        );        $this->form->addContent([ new TLabel('Idiomas') ],[ $this->table_idiomas ]);                $this->form->appendPage('Profissional');        $this->table_profissoes = new TTable;        $this->table_profissoes->addSection('thead');        $this->table_profissoes->addRowSet( new TLabel('Cargo', '#8082C3',10, 'b'),                                            new TLabel('Profissão', '#8082C3',10, 'b'),                                            new TLabel('Empresa', '#8082C3',10, 'b'),                                            new TLabel('Telefone', '#8082C3',10, 'b'),                                            new TLabel('e-mail', '#8082C3',10, 'b')                                          );        $this->form->addContent([ new TLabel('Profissional') ],[ $this->table_profissoes ]);                $this->form->addAction( 'Save', new TAction(array($this, 'onSave')), 'fa:save green' );        $this->form->addAction( 'Clear', new TAction(array($this, 'onClear')), 'fa:eraser red' );                $container = new TVBox;        $container->style = 'width: 100%';        $container->add($this->form);                // add the form inside the page        parent::add($container);    }        /**    * add profissoes row    */        public function addProfissaoRow($profissao)    {        $uniqid = mt_rand(1000000, 9999999);                $prof_id = new THidden('prof_id[]');        $prof_id->setId('prof_id_'.$uniqid);                if (!empty($profissao->id))        {            $prof_id->setValue( $profissao->prof_id );        }                $prof_cargo = new TEntry('prof_cargo[]');        $prof_cargo->setId('prof_cargo_'.$uniqid);        $prof_cargo->setSize(120);                if (!empty($profissao->prof_cargo))        {            $prof_cargo->setValue( $profissao->prof_cargo );        }                $prof_profissao = new TEntry('prof_profissao[]');        $prof_profissao->setId('prof_profissao_'.$uniqid);        $prof_profissao->setSize(120);                if (!empty($profissao->prof_profissao))        {            $prof_profissao->setValue( $profissao->prof_profissao );        }                $prof_empresa = new TEntry('prof_empresa[]');        $prof_empresa->setId('prof_empresa_'.$uniqid);        $prof_empresa->setSize(120);                if (!empty($profissao->prof_empresa))        {            $prof_empresa->setValue( $profissao->prof_empresa );        }                $prof_telefone = new TEntry('prof_telefone[]');        $prof_telefone->setId('prof_telefone_'.$uniqid);        $prof_telefone->setSize(120);                if (!empty($profissao->prof_telefone))        {            $prof_telefone->setValue( $profissao->prof_telefone );        }                $prof_email = new TEntry('prof_email[]');        $prof_email->setId('prof_email_'.$uniqid);        $prof_email->setSize(120);                if (!empty($profissao->prof_email))        {            $prof_email->setValue( $profissao->prof_email );        }                                                // create delete button        $del = new TImage('fa:trash-o red');        $del->onclick = 'ttable_remove_row(this)';        $row = $this->table_profissoes->addRowSet( $prof_cargo, $prof_profissao, $prof_empresa, $prof_telefone, $prof_email, $prof_id, $del );                $this->form->addField($prof_id);                }        /**    * add idiomas row    */        public function addIdiomaRow($idioma)    {        $uniqid = mt_rand(1000000, 9999999);                $pi_id = new THidden('pi_id[]');        $pi_id->setId('pi_id_'.$uniqid);                if (!empty($idioma->id))        {            $pi_id->setValue( $idioma->pi_id );        }                $pi_idioma = new TEntry('pi_idioma[]');        $pi_idioma->setId('ph_idioma_'.$uniqid);        $pi_idioma->setSize(120);                if (!empty($idioma->pi_idioma))        {            $pi_idioma->setValue( $idioma->pi_idioma );        }                $pi_nivel_leitura = new TEntry('pi_nivel_leitura[]');        $pi_nivel_leitura->setId('pi_nivel_leitura_'.$uniqid);        $pi_nivel_leitura->setSize(120);                if (!empty($idioma->pi_nivel_leitura))        {            $pi_nivel_leitura->setValue( $idioma->pi_nivel_leitura );        }                $pi_nivel_escrita = new TEntry('pi_nivel_escrita[]');        $pi_nivel_escrita->setId('pi_nivel_escrita_'.$uniqid);        $pi_nivel_escrita->setSize(120);                if (!empty($idioma->pi_nivel_escrita))        {            $pi_nivel_escrita->setValue( $idioma->pi_nivel_escrita );        }                $pi_nivel_conversacao = new TEntry('pi_nivel_conversacao[]');        $pi_nivel_conversacao->setId('pi_nivel_conversacao_'.$uniqid);        $pi_nivel_conversacao->setSize(120);                if (!empty($idioma->pi_nivel_conversacao))        {            $pi_nivel_conversacao->setValue( $idioma->pi_nivel_conversacao );        }                                        // create delete button        $del = new TImage('fa:trash-o red');        $del->onclick = 'ttable_remove_row(this)';        $row = $this->table_idiomas->addRowSet( $pi_idioma, $pi_nivel_leitura, $pi_nivel_escrita, $pi_nivel_conversacao, $pi_id , $del );                $this->form->addField($pi_id);                }            /**    * add habilidades row    */        public function addHabilidadeRow($habilidade)    {        $uniqid = mt_rand(1000000, 9999999);                $ph_id = new THidden('ph_id[]');        $ph_id->setId('ph_id_'.$uniqid);                if (!empty($habilidade->id))        {            $ph_id->setValue( $habilidade->ph_id );        }                $ph_habilidade = new TEntry('ph_habilidade[]');        $ph_habilidade->setId('ph_habilidade_'.$uniqid);        $ph_habilidade->setSize(120);                if (!empty($habilidade->ph_habilidade))        {            $ph_habilidade->setValue( $habilidade->ph_habilidade );        }                $ph_inf_adic = new TEntry('ph_inf_adic[]');        $ph_inf_adic->setId('ph_inf_adic_'.$uniqid);        $ph_inf_adic->setSize(120);                if (!empty($habilidade->ph_habilidade))        {            $ph_inf_adic->setValue( $habilidade->ph_inf_adic );        }                        // create delete button        $del = new TImage('fa:trash-o red');        $del->onclick = 'ttable_remove_row(this)';        $row = $this->table_habilidades->addRowSet( $ph_habilidade, $ph_inf_adic, $ph_id , $del );                $this->form->addField($ph_id);                }        /**     * Add formacao row     */    public function addFormacaoRow($formacao)    {        $uniqid = mt_rand(1000000, 9999999);                $pf_id = new THidden('pf_id[]');        $pf_id->setId('pf_id_'.$uniqid);                if (!empty($formacao->id))        {            $pf_id->setValue( $formacao->pf_id );        }                $pf_formacao = new TEntry('pf_formacao[]');        $pf_formacao->setId('pf_formacao_'.$uniqid);        $pf_formacao->setSize(120);                if (!empty($formacao->pf_formacao))        {            $pf_formacao->setValue( $formacao->pf_formacao );        }                $pf_data = new TDate('pf_data[]');        $pf_data->setId('pf_data_'.$uniqid);        $pf_data->setSize(120);                if (!empty($formacao->pf_data))        {            $pf_data->setValue( $formacao->pf_data );        }        $pf_inf_adic = new TEntry('pf_inf_adic[]');        $pf_inf_adic->setId('pf_inf_adic_'.$uniqid);        $pf_inf_adic->setSize(120);                if (!empty($formacao->pf_inf_adic))        {            $pf_inf_adic->setValue( $formacao->pf_inf_adic );        }        // create delete button        $del = new TImage('fa:trash-o red');        $del->onclick = 'ttable_remove_row(this)';        $row = $this->table_formacao->addRowSet( $pf_formacao, $pf_data, $pf_inf_adic, $pf_id , $del );                $this->form->addField($pf_id);    }            /**     * Add dependentes row     */    public function addDependenteRow($dependente)    {        $uniqid = mt_rand(1000000, 9999999);                $pde_id = new THidden('pde_id[]');        $pde_id->setId('pd_id_'.$uniqid);                if (!empty($dependente->id))        {            $pde_id->setValue( $dependente->pde_id );        }                $pde_pessoa_dep = new TDBCombo('pde_pessoa_dep[]','crescer','TbPessoas','id','nome','sobrenome');        $pde_pessoa_dep->setId('pde_pessoa_dep_'.$uniqid);        $pde_pessoa_dep->setSize(120);                if (!empty($dependente->pde_pessoa_dep))        {            $pde_pessoa_dep->setValue( $dependente->pde_pessoa_dep );        }                $pde_grau_parentesco = new TEntry('pde_grau_parentesco[]');        $pde_grau_parentesco->setId('pde_grau_parentesco_'.$uniqid);        $pde_grau_parentesco->setSize(120);                if (!empty($dependente->pde_grau_parentesco))        {            $pde_grau_parentesco->setValue( $dependente->pde_grau_parentesco );        }        $pde_inf_adic = new TEntry('pde_inf_adic[]');        $pde_inf_adic->setId('pde_inf_adic_'.$uniqid);        $pde_inf_adic->setSize(120);                if (!empty($dependente->pde_inf_adic))        {            $pde_inf_adic->setValue( $dependente->pde_inf_adic );        }        // create delete button        $del = new TImage('fa:trash-o red');        $del->onclick = 'ttable_remove_row(this)';        $row = $this->table_dependentes->addRowSet( $pde_pessoa_dep, $pde_grau_parentesco, $pde_inf_adic, $pde_id , $del );                $this->form->addField($pde_id);    }              /**     * Add documentos row     */    public function addDocumentoRow($documento)    {        $uniqid = mt_rand(1000000, 9999999);                $pd_id = new THidden('pd_id[]');        $pd_id->setId('pd_id_'.$uniqid);                if (!empty($documento->id))        {            $pd_id->setValue( $documento->pd_id );        }                $pd_cpf = new TEntry('pd_cpf[]');        $pd_cpf->setId('pd_cpf_'.$uniqid);        $pd_cpf->setSize(120);                if (!empty($documento->pd_cpf))        {            $pd_cpf->setValue( $documento->pd_cpf );        }                $pd_rg = new TEntry('pd_rg[]');        $pd_rg->setId('pd_rg_'.$uniqid);        $pd_rg->setSize(120);                if (!empty($documento->pd_rg))        {            $pd_rg->setValue( $documento->pd_rg );        }        $pd_rg_orgao_emissor = new TEntry('pd_rg_orgao_emissor[]');        $pd_rg_orgao_emissor->setId('pd_rg_orgao_emissor_'.$uniqid);        $pd_rg_orgao_emissor->setSize(120);                if (!empty($documento->pd_rg_orgao_emissor))        {            $pd_rg_orgao_emissor->setValue( $documento->pd_rg_orgao_emissor );        }        $pd_rg_uf = new TDBCombo('pd_rg_uf[]','crescer','Estados','uf_uf','uf_uf');        $pd_rg_uf->setId('pd_rg_uf_'.$uniqid);        $pd_rg_uf->setSize(120);                if (!empty($documento->pd_rg_uf))        {            $pd_rg_uf->setValue( $documento->pd_rg_uf );        }                $pd_rg_dt_emissao = new TDate('pd_rg_dt_emissao[]');        $pd_rg_dt_emissao->setId('pd_rg_dt_emissao_'.$uniqid);        $pd_rg_dt_emissao->setSize(120);                if(!empty($documento->pd_rg_dt_emissao))        {            $pd_rg_dt_emissao->setValue($documento->pd_rg_dt_emissao);        }                // create delete button        $del = new TImage('fa:trash-o red');        $del->onclick = 'ttable_remove_row(this)';        $row = $this->table_documentos->addRowSet( $pd_cpf, $pd_rg, $pd_rg_orgao_emissor, $pd_rg_uf, $pd_rg_dt_emissao, $pd_id, $del );                $this->form->addField($pd_id);    }             /**     * Add batismos row     */    public function addBatismoRow($batismo)    {        $uniqid = mt_rand(1000000, 9999999);                $bat_id = new THidden('bat_id[]');        $bat_id->setId('bat_id_'.$uniqid);                if (!empty($batismo->id))        {            $bat_id->setValue( $batismo->bat_id );        }                $bat_data = new TDate('bat_data[]');        $bat_data->setId('bat_data_'.$uniqid);        $bat_data->setSize(120);                if (!empty($batismo->bat_data))        {            $bat_data->setValue( $batismo->bat_data );        }                $bat_cidade = new TEntry('bat_cidade[]');        $bat_cidade->setId('bat_cidade_'.$uniqid);        $bat_cidade->setSize(120);                if (!empty($batismo->bat_cidade))        {            $bat_cidade->setValue( $batismo->bat_cidade );        }        $bat_uf = new TDBCombo('bat_uf[]','crescer','Estados','uf_uf','uf_uf');        $bat_uf->setId('bat_uf_'.$uniqid);        $bat_uf->setSize(120);                if (!empty($batismo->bat_uf))        {            $bat_uf->setValue( $batismo->bat_uf );        }        $bat_igreja = new TEntry('bat_igreja[]');        $bat_igreja->setId('bat_igreja_'.$uniqid);        $bat_igreja->setSize(120);                if (!empty($batismo->bat_igreja))        {            $bat_igreja->setValue( $batismo->bat_igreja );        }                // create delete button        $del = new TImage('fa:trash-o red');        $del->onclick = 'ttable_remove_row(this)';        $row = $this->table_batismo->addRowSet( $bat_data, $bat_cidade, $bat_uf, $bat_igreja, $bat_id, $del );                $this->form->addField($bat_id);    }           /**     * Add cursos row     */    public function addCursoRow($curso)    {        $uniqid = mt_rand(1000000, 9999999);                $pcu_id = new THidden('pcu_id[]');        $pcu_id->setId('pcu_'.$uniqid);                if (!empty($curso->pcu_id))        {            $pcu_id->setValue( $curso->pcu_id );        }                $pcu_curso = new TEntry('pcu_curso[]');        $pcu_curso->setId('pcu_curso_'.$uniqid);        $pcu_curso->setSize(120);                if (!empty($curso->pcu_curso))        {            $pcu_curso->setValue( $curso->pcu_curso );        }                $pcu_carga_horaria = new TEntry('pcu_carga_horaria[]');        $pcu_carga_horaria->setId('pcu_carga_horaria_'.$uniqid);        $pcu_carga_horaria->setSize(120);                if (!empty($curso->pcu_carga_horaria))        {            $pcu_carga_horaria->setValue( $curso->pcu_carga_horaria );        }        $pcu_local = new TEntry('pcu_local[]');        $pcu_local->setId('pcu_local_'.$uniqid);        $pcu_local->setSize(120);                if (!empty($curso->pcu_local))        {            $pcu_local->setValue( $curso->pcu_local );        }        $pcu_inf_adic = new TEntry('pcu_inf_adic[]');        $pcu_inf_adic->setId('pcu_inf_adic_'.$uniqid);        $pcu_inf_adic->setSize(120);                if (!empty($curso->pcu_inf_adic))        {            $pcu_inf_adic->setValue( $curso->pcu_inf_adic );        }                // create delete button        $del = new TImage('fa:trash-o red');        $del->onclick = 'ttable_remove_row(this)';        $row = $this->table_cursos->addRowSet( $pcu_curso, $pcu_carga_horaria, $pcu_local, $pcu_inf_adic, $pcu_id, $del );                $this->form->addField($pcu_id);    }           /**     * Add contato row     */    public function addContatoRow($contato)    {        $uniqid = mt_rand(1000000, 9999999);                $pc_id = new THidden('pc_id[]');        $pc_id->setId('pc_'.$uniqid);                if (!empty($contato->pc_id))        {            $pc_id->setValue( $contato->pc_id );        }                $pc_fone = new TEntry('pc_fone[]');        $pc_fone->setValue('pc_fone_'.$uniqid);        $pc_fone->setSize(120);                if (!empty($contato->pc_fone))        {            $pc_fone->setValue( $contato->pc_fone );        }                $pc_tipo = new TEntry('pc_tipo[]');        $pc_tipo->setId('pc_tipo_'.$uniqid);        $pc_tipo->setSize(120);                if (!empty($contato->pc_tipo))        {            $pc_tipo->setValue( $contato->pc_tipo );        }        $pc_operadora = new TEntry('pc_operadora[]');        $pc_operadora->setId('pc_operadora__'.$uniqid);        $pc_operadora->setSize(120);                if (!empty($contato->pc_operadora))        {            $pc_operadora->setValue( $contato->pc_operadora );        }        $pc_email = new TEntry('pc_email[]');        $pc_email->setId('pc_email_'.$uniqid);        $pc_email->setSize(120);                if (!empty($contato->pc_email))        {            $pc_email->setValue( $contato->pc_email );        }                $pc_inf_adic = new TEntry('pc_inf_adic[]');        $pc_inf_adic->setId('pc_inf_adic_'.$uniqid);        $pc_inf_adic->setSize(120);                if (!empty($contato->pc_inf_adic))        {            $pc_inf_adic->setValue( $contato->pc_inf_adic );        }                        // create delete button        $del = new TImage('fa:trash-o red');        $del->onclick = 'ttable_remove_row(this)';        $row = $this->table_contatos->addRowSet( $pc_fone, $pc_tipo, $pc_operadora, $pc_email, $pc_inf_adic,$pc_id, $del );                $this->form->addField($pc_id);    }        /**     * method onSave     * Executed whenever the user clicks at the save button     */    public static function onSave($param)    {        try        {            // open a transaction with database            TTransaction::open('crescer');                        // read the form data and instantiates an Active Record            $pessoa = new TbPessoas;            $pessoa->id_igreja = TSession::getValue('igreja');            $pessoa->fromArray( $param );            $pessoa->clearParts();                        // AQUI CONVERSÃO PARA SALVAR OS DADOS            //$pessoa->data_nascimento = DateTime::createFromFormat('d/m/Y', $pessoa->data_nascimento)->format('Y-m-d');            //$pessoa->c_data_cadastro = DateTime::createFromFormat('Y-m-d', $pessoa->c_data_cadastro)->format('d/m/Y');                        if( !empty($param['pc_fone']) AND is_array($param['pc_fone']) )            {                foreach( $param['pc_fone'] as $row => $pc_fone)                {                    if ($pc_fone)                    {                        $contato = new TbPessoasContatos;                        $contato->pc_pessoa    = $pessoa->id;                        $contato->pc_fone      = $pc_fone;                        $contato->pc_tipo      = $param['pc_tipo'][$row];                        $contato->pc_operadora = $param['pc_operadora'][$row];                        $contato->pc_email     = $param['pc_email'][$row];                        $contato->pc_inf_adic  = $param['pc_inf_adic'][$row];                        $pessoa->addContato( $contato );                    }                }            }                        if( !empty($param['pcu_curso']) AND is_array($param['pcu_curso']) )            {                foreach( $param['pcu_curso'] as $row => $pcu_curso)                {                    if ($pcu_curso)                    {                        $curso = new TbPessoasCursos;                        $curso->pcu_pessoa        = $pessoa->id;                        $curso->pcu_curso         = $pcu_curso;                        $curso->pcu_carga_horaria = $param['pcu_carga_horaria'][$row];                        $curso->pcu_local         = $param['pcu_local'][$row];                        $curso->pcu_inf_adic      = $param['pcu_inf_adic'][$row];                                                                        $pessoa->addCurso( $curso );                    }                }            }                        if( !empty($param['bat_data']) AND is_array($param['bat_data']) )            {                foreach( $param['bat_data'] as $row => $bat_data)                {                    if ($bat_data)                    {                        $batismo = new TbPessoasBatismo;                        $batismo->bat_pessoa      = $pessoa->id;                        $batismo->bat_data        = $bat_data;                        $batismo->bat_cidade      = $param['bat_cidade'][$row];                        $batismo->bat_uf          = $param['bat_uf'][$row];                        $batismo->bat_igreja      = $param['bat_igreja'][$row];                               $pessoa->addBatismo( $batismo );                    }                }            }                          if( !empty($param['pd_cpf']) AND is_array($param['pd_cpf']) )            {                foreach( $param['pd_cpf'] as $row => $pd_cpf)                {                    if ($pd_cpf)                    {                        $documento = new TbPessoasDctos;                        $documento->pd_pessoa           = $pessoa->id;                        $documento->pd_cpf              = $pd_cpf;                        $documento->pd_rg               = $param['pd_rg'][$row];                        $documento->pd_rg_orgao_emissor = $param['pd_rg_orgao_emissor'][$row];                        $documento->pd_rg_uf            = $param['pd_rg_uf'][$row];                        $documento->pd_rg_dt_emissao    = $param['pd_rg_dt_emissao'][$row];                               $pessoa->addDocumento($documento);                    }                }            }                          if( !empty($param['pde_pessoa_dep']) AND is_array($param['pde_pessoa_dep']) )            {                foreach( $param['pde_pessoa_dep'] as $row => $pde_pessoa_dep)                {                    if ($pde_pessoa_dep)                    {                        $dependente = new TbPessoasDepend;                        $dependente->pde_pessoa_resp           = $pessoa->id;                        $dependente->pde_pessoa_dep            = $pde_pessoa_dep;                        $dependente->pde_grau_parentesco       = $param['pde_grau_parentesco'][$row];                        $dependente->pde_inf_adic              = $param['pde_inf_adic'][$row];                        $pessoa->addDependente($dependente);                    }                }            }             if( !empty($param['pf_formacao']) AND is_array($param['pf_formacao']) )            {                foreach( $param['pf_formacao'] as $row => $pf_formacao)                {                    if ($pf_formacao)                    {                        $formacao = new TbPessoasFormacao;                        $formacao->pf_pessoa       = $pessoa->id;                        $formacao->pf_formacao     = $pf_formacao;                        $formacao->pf_data         = $param['pf_data'][$row];                        $formacao->pf_inf_adic     = $param['pf_inf_adic'][$row];                        $pessoa->addFormacao($formacao);                    }                }            }             if( !empty($param['ph_habilidade']) AND is_array($param['ph_habilidade']) )            {                foreach( $param['ph_habilidade'] as $row => $ph_habilidade)                {                    if ($ph_habilidade)                    {                        $habilidade = new TbPessoasHabilidades;                        $habilidade->ph_pessoa       = $pessoa->id;                        $habilidade->ph_habilidade   = $ph_habilidade;                        $habilidade->ph_inf_adic     = $param['ph_inf_adic'][$row];                        $pessoa->addHabilidade($habilidade);                    }                }            }             if( !empty($param['pi_idioma']) AND is_array($param['pi_idioma']) )            {                foreach( $param['pi_idioma'] as $row => $pi_idioma)                {                    if ($pi_idioma)                    {                        $idioma = new TbPessoasIdiomas;                        $idioma->pi_pessoa            = $pessoa->id;                        $idioma->pi_idioma            = $pi_idioma;                        $idioma->pi_nivel_leitura     = $param['pi_nivel_leitura'][$row];                        $idioma->pi_nivel_escrita     = $param['pi_nivel_escrita'][$row];                        $idioma->pi_nivel_conversacao = $param['pi_nivel_conversacao'][$row];                        $pessoa->addIdioma($idioma);                    }                }            }             if( !empty($param['prof_cargo']) AND is_array($param['prof_cargo']) )            {                foreach( $param['prof_cargo'] as $row => $prof_cargo)                {                    if ($prof_cargo)                    {                        $profissao = new TbPessoasProfissao;                        $profissao->prof_pessoa    = $pessoa->id;                        $profissao->prof_cargo     = $prof_cargo;                        $profissao->prof_profissao = $param['prof_profissao'][$row];                        $profissao->prof_empresa   = $param['prof_empresa'][$row];                        $profissao->prof_telefone  = $param['prof_telefone'][$row];                        $profissao->prof_email     = $param['prof_email'][$row];                        $pessoa->addProfissao($profissao);                    }                }            }             // stores the object in the database            $pessoa->store();                        $data = new stdClass;            $data->id = $pessoa->id;            TForm::sendData('form_TbPessoas', $data);                        // shows the success message            new TMessage('info', 'Atualizado com Sucesso');                        TTransaction::close(); // close the transaction        }        catch (Exception $e) // in case of exception        {            // shows the exception error message            new TMessage('error', $e->getMessage());                        // undo all pending operations            TTransaction::rollback();        }    }        /**     * method onEdit     * Edit a record data     */    function onEdit($param)    {        try        {            if (isset($param['id']))            {                // open a transaction with database 'library'                TTransaction::open('crescer');                                // load the Active Record according to its ID                $pessoa = new TbPessoas($param['id']);                                // load the contacts (composition)                $contatos    = $pessoa->getContatos();                $cursos      = $pessoa->getCursos();                $batismos    = $pessoa->getBatismos();                $documentos  = $pessoa->getDocumentos();                $dependentes = $pessoa->getDependentes();                $formacoes   = $pessoa->getFormacoes();                $habilidades = $pessoa->getHabilidades();                $idiomas     = $pessoa->getIdiomas();                $profissoes  = $pessoa->getProfissoes();                // AQUI CONVERSÃO PARA CARREGAR OS DADOS                //$pessoa->data_nascimento = DateTime::createFromFormat('Y-m-d', $pessoa->data_nascimento)->format('d/m/Y');                //$pessoa->c_data_cadastro = DateTime::createFromFormat('Y-m-d', $pessoa->c_data_cadastro)->format('d/m/Y');                                                if ($contatos)                {                    $this->table_contatos->addSection('tbody');                    foreach ($contatos as $contato)                    {                        $this->addContatoRow($contato);                    }                                        // create add button                    $add = new TButton('clone');                    $add->setLabel('Add');                    $add->setImage('fa:plus-circle green');                    $add->addFunction('ttable_clone_previous_row(this)');                                                // add buttons in table                    $this->table_contatos->addRowSet([$add]);                }                else                {                    $this->onClearContatos($param);                }                                if ($cursos)                {                    $this->table_cursos->addSection('tbody');                    foreach ($cursos as $curso)                    {                        $this->addCursoRow($curso);                    }                                        // create add button                    $add = new TButton('clone');                    $add->setLabel('Add');                    $add->setImage('fa:plus-circle green');                    $add->addFunction('ttable_clone_previous_row(this)');                                                // add buttons in table                    $this->table_cursos->addRowSet([$add]);                }                else                {                    $this->onClearCursos($param);                }                                                if ($batismos)                {                    $this->table_batismo->addSection('tbody');                    foreach ($batismos as $batismo)                    {                        $this->addBatismoRow($batismo);                    }                                        // create add button                    $add = new TButton('clone');                    $add->setLabel('Add');                    $add->setImage('fa:plus-circle green');                    $add->addFunction('ttable_clone_previous_row(this)');                                                // add buttons in table                    $this->table_batismo->addRowSet([$add]);                }                else                {                    $this->onClearBatismos($param);                }                                if ($documentos)                {                    $this->table_documentos->addSection('tbody');                    foreach ($documentos as $documento)                    {                        $this->addDocumentoRow($documento);                    }                                        // create add button                    $add = new TButton('clone');                    $add->setLabel('Add');                    $add->setImage('fa:plus-circle green');                    $add->addFunction('ttable_clone_previous_row(this)');                                                // add buttons in table                    $this->table_documentos->addRowSet([$add]);                }                else                {                    $this->onClearDocumentos($param);                }                                if ($dependentes)                {                    $this->table_dependentes->addSection('tbody');                    foreach ($dependentes as $dependente)                    {                        $this->addDependenteRow($dependente);                    }                                        // create add button                    $add = new TButton('clone');                    $add->setLabel('Add');                    $add->setImage('fa:plus-circle green');                    $add->addFunction('ttable_clone_previous_row(this)');                                                // add buttons in table                    $this->table_dependentes->addRowSet([$add]);                }                else                {                    $this->onClearDependentes($param);                }                                if ($formacoes)                {                    $this->table_formacao->addSection('tbody');                    foreach ($formacoes as $formacao)                    {                        $this->addFormacaoRow($formacao);                    }                                        // create add button                    $add = new TButton('clone');                    $add->setLabel('Add');                    $add->setImage('fa:plus-circle green');                    $add->addFunction('ttable_clone_previous_row(this)');                                                // add buttons in table                    $this->table_formacao->addRowSet([$add]);                }                else                {                    $this->onClearFormacoes($param);                }                                                  if ($habilidades)                {                    $this->table_habilidades->addSection('tbody');                    foreach ($habilidades as $habilidade)                    {                        $this->addHabilidadeRow($habilidade);                    }                                        // create add button                    $add = new TButton('clone');                    $add->setLabel('Add');                    $add->setImage('fa:plus-circle green');                    $add->addFunction('ttable_clone_previous_row(this)');                                                // add buttons in table                    $this->table_habilidades->addRowSet([$add]);                }                else                {                    $this->onClearHabilidades($param);                }                                      if ($idiomas)                {                    $this->table_idiomas->addSection('tbody');                    foreach ($idiomas as $idioma)                    {                        $this->addIdiomaRow($idioma);                    }                                        // create add button                    $add = new TButton('clone');                    $add->setLabel('Add');                    $add->setImage('fa:plus-circle green');                    $add->addFunction('ttable_clone_previous_row(this)');                                                // add buttons in table                    $this->table_idiomas->addRowSet([$add]);                }                else                {                    $this->onClearIdiomas($param);                }                                                            if ($profissoes)                {                    $this->table_profissoes->addSection('tbody');                    foreach ($profissoes as $profissao)                    {                        $this->addProfissaoRow($profissao);                    }                                        // create add button                    $add = new TButton('clone');                    $add->setLabel('Add');                    $add->setImage('fa:plus-circle green');                    $add->addFunction('ttable_clone_previous_row(this)');                                                // add buttons in table                    $this->table_profissoes->addRowSet([$add]);                }                else                {                    $this->onClearProfissoes($param);                }                                                       // fill the form with the active record data                $this->form->setData($pessoa);                                // close the transaction                TTransaction::close();            }            else            {                $this->onClear($param);            }        }        catch (Exception $e) // in case of exception        {            // shows the exception error message            new TMessage('error', $e->getMessage());                        // undo all pending operations            TTransaction::rollback();        }    }        /**     * Clear Contatos     */    public function onClearContatos($param = null)    {        $this->table_contatos->addSection('tbody');        $this->addContatoRow( new stdClass );                // create add button        $add = new TButton('clone');        $add->setLabel('Add');        $add->setImage('fa:plus-circle green');        $add->addFunction('ttable_clone_previous_row(this)');                // add buttons in table        $this->table_contatos->addRowSet([$add]);    }        /**     * Clear cursos     */    public function onClearCursos($param = null)    {        $this->table_cursos->addSection('tbody');        $this->addCursoRow( new stdClass );                // create add button        $add = new TButton('clone');        $add->setLabel('Add');        $add->setImage('fa:plus-circle green');        $add->addFunction('ttable_clone_previous_row(this)');                // add buttons in table        $this->table_cursos->addRowSet([$add]);    }        /**     * Clear batismos     */    public function onClearBatismos($param = null)    {        $this->table_batismo->addSection('tbody');        $this->addBatismoRow( new stdClass );                // create add button        $add = new TButton('clone');        $add->setLabel('Add');        $add->setImage('fa:plus-circle green');        $add->addFunction('ttable_clone_previous_row(this)');                // add buttons in table        $this->table_batismo->addRowSet([$add]);    }        /**     * Clear documentos     */    public function onClearDocumentos($param = null)    {        $this->table_documentos->addSection('tbody');        $this->addDocumentoRow( new stdClass );                // create add button        $add = new TButton('clone');        $add->setLabel('Add');        $add->setImage('fa:plus-circle green');        $add->addFunction('ttable_clone_previous_row(this)');                // add buttons in table        $this->table_documentos->addRowSet([$add]);    }        /**     * Clear dependentes     */    public function onClearDependentes($param = null)    {        $this->table_dependentes->addSection('tbody');        $this->addDependenteRow( new stdClass );                // create add button        $add = new TButton('clone');        $add->setLabel('Add');        $add->setImage('fa:plus-circle green');        $add->addFunction('ttable_clone_previous_row(this)');                // add buttons in table        $this->table_dependentes->addRowSet([$add]);    }        /**     * Clear formacoes     */    public function onClearFormacoes($param = null)    {        $this->table_formacao->addSection('tbody');        $this->addFormacaoRow( new stdClass );                // create add button        $add = new TButton('clone');        $add->setLabel('Add');        $add->setImage('fa:plus-circle green');        $add->addFunction('ttable_clone_previous_row(this)');                // add buttons in table        $this->table_formacao->addRowSet([$add]);    }        /**     * Clear habilidades     */    public function onClearHabilidades($param = null)    {        $this->table_habilidades->addSection('tbody');        $this->addHabilidadeRow( new stdClass );                // create add button        $add = new TButton('clone');        $add->setLabel('Add');        $add->setImage('fa:plus-circle green');        $add->addFunction('ttable_clone_previous_row(this)');                // add buttons in table        $this->table_habilidades->addRowSet([$add]);    }        /**     * Clear idiomas     */    public function onClearIdiomas($param = null)    {        $this->table_idiomas->addSection('tbody');        $this->addIdiomaRow( new stdClass );                // create add button        $add = new TButton('clone');        $add->setLabel('Add');        $add->setImage('fa:plus-circle green');        $add->addFunction('ttable_clone_previous_row(this)');                // add buttons in table        $this->table_idiomas->addRowSet([$add]);    }                 /**     * Clear profissoes     */    public function onClearProfissoes($param = null)    {        $this->table_profissoes->addSection('tbody');        $this->addProfissaoRow( new stdClass );                // create add button        $add = new TButton('clone');        $add->setLabel('Add');        $add->setImage('fa:plus-circle green');        $add->addFunction('ttable_clone_previous_row(this)');                // add buttons in table        $this->table_profissoes->addRowSet([$add]);    }             /**     * Clear form     */    public function onClear()    {        $this->form->clear();        $this->onClearContatos();        $this->onClearBatismos();        $this->onClearCursos();        $this->onClearDocumentos();        $this->onClearDependentes();        $this->onClearFormacoes();        $this->onClearHabilidades();        $this->onClearIdiomas();        $this->onClearProfissoes();    }}?>
IF

Edson, o campo $c_data_cadastro está gravando no seu banco? Vc deu um var_dump() pra ver se o campo $data_nascimento está vindo junto com seu form?
EZ

Bom dia,

O campo $c_data_cadastro grava se eu retiro o setDatabaseMask e digito a data no formato yyyy-mm-dd mas o método setValue(date) não está carregando a data do dia como era esperado...somente digitando manualmente e o campo $data_nascimento está vindo, mas quando dá um save no form ai já era...apaga o que estava gravado no banco e fica 0000-00-00.
EZ

Resumindo,

Nos dois casos se eu tiro o setMask e o setDatabaseMask grava tudo certinho...