Lançado Adianti Framework 7.6!
Clique aqui para saber mais
Gravacao dados Gostaria de um apoio Preciso gravar dados de um cadastro em outra tabela Exemplo: 01-Tenho cadastro de presença caixinha: id_funcionario dt_presenca tabela - presenca_caixinha 02-Cadastro valor caixinha: dt_cadastro valor_dia tot_func vlr_medio tabela - valor_caixinha Primeiro gravo no cadastro de valor caixinha a data e o valor para rateio sem o tot_func e vlr_medio Dep...
MC
Gravacao dados  
Gostaria de um apoio
Preciso gravar dados de um cadastro em outra tabela
Exemplo:

01-Tenho cadastro de presença caixinha:
id_funcionario
dt_presenca

tabela - presenca_caixinha

02-Cadastro valor caixinha:
dt_cadastro
valor_dia
tot_func
vlr_medio

tabela - valor_caixinha

Primeiro gravo no cadastro de valor caixinha a data e o valor para rateio sem o tot_func e vlr_medio

Depois gravo no cadastro de presença caixinha o func e a data (varios funcionarios).
Nesse momento pego o valor para rateio, faço o calculo da media e defino as variaveis tot_func e vlr_medio

Preciso gravar de dentro do cadastro de presenca_caixinha os campos tot_func e vlr_medio na tabela valor_caixinha
Onde e como devo colocar essa gravacao ?

tenho o seguinte no onSave

$reg_valor_caixinha = ValorCaixinha::where('dt_cadastro','=',$param['dt_presenca'])->load();

$reg_presenca_func = PresencaCaixinha::where('dt_presenca','=',$param['dt_presenca'])->load();

..... calculos ....

$this->form->validate(); // validate form data

$object = new PresencaCaixinha; // create an empty object
$data = $this->form->getData(); // get form data as array
$object->fromArray( (array) $data); // load the object with data
$object->store(); // save the object

// get the generated id
$data->id = $object->id;

$this->form->setData($data); // fill form data
TTransaction::close(); // close the transaction

new TMessage('info', TAdiantiCoreTranslator::translate('Record saved')); // success message
$this->onReload(); // reload the listing
}
catch (Exception $e) // in case of exception
{
new TMessage('error', $e->getMessage()); // shows the exception error message
$this->form->setData( $this->form->getData() ); // keep form data
TTransaction::rollback(); // undo all pending operations
}
}


aguardo um apoio, obrigado.....

Curso completo Meu Negócio Pronto
Use para si, ou transforme em um negócio: Inclui aulas e códigos-fontes
Gestor de conteúdo (SITE) + Loja Virtual (E-Commerce) + Emissor de Notas para infoprodutos


Meu negócio pronto Quero me inscrever agora!

Comentários (1)


NR

O comando abaixo deve retornar somente 1 registro?
  1. <?php
  2. $reg_valor_caixinha ValorCaixinha::where('dt_cadastro','=',$param['dt_presenca'])->load(); 
  3. ?>

Se sim, lembre que a função load retorna um array, então para obter o objeto você precisa informar o índice(0 no caso). Feito isso você pode adicionar os atributos que quiser e gravar os dados:
  1. <?php
  2. $reg_valor_caixinha $reg_valor_caixinha[0];
  3. $reg_valor_caixinha->tot_func $tot_func;
  4. $reg_valor_caixinha->vlr_medio $vlr_medio;
  5. $reg_valor_caixinha->store();
  6. ?>