Try to add more log to debug expense report creation error

This commit is contained in:
Laurent Destailleur 2019-03-09 01:45:11 +01:00
parent b710e28ffa
commit 799271daa5

View File

@ -235,24 +235,25 @@ class ExpenseReport extends CommonObject
$error++; $error++;
} }
if (! $error)
{
if (is_array($this->lines) && count($this->lines)>0) if (is_array($this->lines) && count($this->lines)>0)
{ {
foreach ($this->lines as $i => $val) foreach ($this->lines as $i => $val)
{ {
$newndfline=new ExpenseReportLine($this->db); //$newndfline=new ExpenseReportLine($this->db);
$newndfline=$this->lines[$i]; $newndfline=$this->lines[$i];
$newndfline->fk_expensereport=$this->id; $newndfline->fk_expensereport=$this->id;
if (! $error)
{
$result=$newndfline->insert(); $result=$newndfline->insert();
}
if ($result < 0) if ($result < 0)
{ {
$this->error = $newndfline->error;
$error++; $error++;
break; break;
} }
} }
} }
}
if (! $error) if (! $error)
{ {
@ -2641,7 +2642,7 @@ class ExpenseReportLine
* @param ExpenseReportRule $rule object rule to check * @param ExpenseReportRule $rule object rule to check
* @param int $fk_user user author id * @param int $fk_user user author id
* @param string $mode day|EX_DAY / month|EX_MON / year|EX_YEA to get amount * @param string $mode day|EX_DAY / month|EX_MON / year|EX_YEA to get amount
* @return amount * @return amount Amount
*/ */
public function getExpAmount(ExpenseReportRule $rule, $fk_user, $mode = 'day') public function getExpAmount(ExpenseReportRule $rule, $fk_user, $mode = 'day')
{ {
@ -2654,10 +2655,10 @@ class ExpenseReportLine
if (!empty($this->id)) $sql.= ' AND d.rowid <> '.$this->id; if (!empty($this->id)) $sql.= ' AND d.rowid <> '.$this->id;
$sql .= ' AND d.fk_c_type_fees = '.$rule->fk_c_type_fees; $sql .= ' AND d.fk_c_type_fees = '.$rule->fk_c_type_fees;
if ($mode == 'day' || $mode == 'EX_DAY') $sql .= ' AND d.date = \''.dol_print_date($this->date, '%Y-%m-%d').'\''; if ($mode == 'day' || $mode == 'EX_DAY') $sql .= ' AND d.date = \''.dol_print_date($this->date, '%Y-%m-%d').'\'';
elseif ($mode == 'mon' || $mode == 'EX_MON') $sql .= ' AND DATE_FORMAT(d.date, \'%Y-%m\') = \''.dol_print_date($this->date, '%Y-%m').'\''; elseif ($mode == 'mon' || $mode == 'EX_MON') $sql .= ' AND DATE_FORMAT(d.date, \'%Y-%m\') = \''.dol_print_date($this->date, '%Y-%m').'\''; // @TODO DATE_FORMAT is forbidden
elseif ($mode == 'year' || $mode == 'EX_YEA') $sql .= ' AND DATE_FORMAT(d.date, \'%Y\') = \''.dol_print_date($this->date, '%Y').'\''; elseif ($mode == 'year' || $mode == 'EX_YEA') $sql .= ' AND DATE_FORMAT(d.date, \'%Y\') = \''.dol_print_date($this->date, '%Y').'\''; // @TODO DATE_FORMAT is forbidden
dol_syslog('ExpenseReportLine::getExpAmountByDay sql='.$sql); dol_syslog('ExpenseReportLine::getExpAmount');
$resql = $this->db->query($sql); $resql = $this->db->query($sql);
if ($resql) if ($resql)
@ -2674,19 +2675,18 @@ class ExpenseReportLine
dol_print_error($this->db); dol_print_error($this->db);
} }
return $amount + $this->total_ttc; return $amount + $this->total_ttc;
} }
/** /**
* update * update
* *
* @param User $fuser User * @param User $user User
* @return int <0 if KO, >0 if OK * @return int <0 if KO, >0 if OK
*/ */
public function update($fuser) public function update(User $user)
{ {
global $fuser,$langs,$conf; global $langs,$conf;
$error=0; $error=0;