Erro na linha 12 do SystemChangeLogTraid Notice: Undefined property:stdClass::$id in c:wamp64wwwsysgestoconappmodellogSystemChangeLogTraid.php on line 12 Assim esta a linha 12 public function onBeforeStore($object) { $this->lastState = array(); =====> if (self::exists($object->id)) { $this->lastState = parent::load($object->id)->toArray(); } }...
PF
Erro na linha 12 do SystemChangeLogTraid  
Notice: Undefined property:stdClass::$id in c:wamp64wwwsysgestoconappmodellogSystemChangeLogTraid.php on line 12

Assim esta a linha 12

public function onBeforeStore($object)
{
$this->lastState = array();
=====> if (self::exists($object->id))
{
$this->lastState = parent::load($object->id)->toArray();
}
}

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


LC

Tem informação nesta publicação do forum: www.adianti.com.br/forum/pt/view_1942?notice-em-systemchangelogtrait

Conforme publicação acima eu troquei por:
 
  1. <?php
  2. trait SystemChangeLogTrait
  3. {
  4. public function onAfterDelete( $object )
  5. {
  6. SystemChangeLog::register($this, $object, array());
  7. }
  8. public function onBeforeStore($object)
  9. {
  10. $this->lastState = array();
  11. if (isset($object->id)) //adicionei esta linha para resolver o Notice
  12. {
  13. if (self::exists($object->id))
  14. {
  15. $this->lastState = parent::load($object->id)->toArray();
  16. }
  17. }
  18. }
  19. public function onAfterStore($object)
  20. {
  21. SystemChangeLog::register($this, $this->lastState, (array) $object);
  22. }
  23. }
  24. ?>
PF

Valeu a Dica!

Funcionou com a dica abaixo:

public function onBeforeStore($object)
{
$pk = $this->getPrimaryKey();
$this->lastState = array();
if (!isset($object->$pk))
{
$object->$pk = $this->getLastID() +1;
}
if(self::exists($object->$pk))
{
$this->lastState = parent::load($object->$pk)->toArray();
}
}