/**
  * @param assFormulaQuestionUnit $unit
  */
 public function saveUnit(assFormulaQuestionUnit $unit)
 {
     /**
      * @var $ilDB ilDB
      */
     global $ilDB;
     $res = $ilDB->queryF('SELECT unit_id FROM il_qpl_qst_fq_unit WHERE unit_id = %s', array('integer'), array($unit->getId()));
     if ($ilDB->fetchAssoc($res)) {
         $row = $ilDB->fetchAssoc($res);
         $sequence = $row['sequence'];
         if (is_null($unit->getBaseUnit()) || !strlen($unit->getBaseUnit())) {
             $unit->setFactor(1);
         }
         $ar = $ilDB->manipulateF('UPDATE il_qpl_qst_fq_unit SET unit = %s, factor = %s, baseunit_fi = %s, category_fi = %s, sequence = %s WHERE unit_id = %s AND question_fi = %s', array('text', 'float', 'integer', 'integer', 'integer', 'integer', 'integer'), array($unit->getUnit(), $unit->getFactor(), (int) $unit->getBaseUnit(), (int) $unit->getCategory(), (int) $unit->getSequence(), (int) $unit->getId(), (int) $this->getConsumerId()));
         if ($ar > 0) {
             $this->clearUnits();
         }
     }
 }