/**
  * Сохранение элемента. Можно переопределить, если требуется сложная логика и нет возможности определить её 
  * в модели.
  * 
  * Операциями сохранения модели занимается EntityManager.
  *
  * @param bool $id
  * 
  * @return \Bitrix\Main\Entity\AddResult|\Bitrix\Main\Entity\UpdateResult
  * 
  * @throws \Exception
  * 
  * @see EntityManager
  * 
  * @api
  */
 protected function saveElement($id = null)
 {
     $className = static::getModel();
     $entityManager = new EntityManager($className, $this->data, $id, $this);
     $saveResult = $entityManager->save();
     $this->addNotes($entityManager->getNotes());
     return $saveResult;
 }