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.....
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.....
O comando abaixo deve retornar somente 1 registro?
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: