mirror of
https://github.com/Combodo/iTop.git
synced 2026-02-13 07:24:13 +01:00
#540 Data synchro: the option "write if empty" was not implemented
SVN:trunk[1934]
This commit is contained in:
@@ -1739,8 +1739,21 @@ class SynchroReplica extends DBObject implements iDisplay
|
||||
$value = $this->GetValueFromExtData($sAttCode, $oSyncAtt, $oStatLog);
|
||||
if (!is_null($value))
|
||||
{
|
||||
$oDestObj->Set($sAttCode, $value);
|
||||
$aValueTrace[] = "$sAttCode: $value";
|
||||
if ($oSyncAtt->Get('update_policy') == 'write_if_empty')
|
||||
{
|
||||
$oAttDef = MetaModel::GetAttributeDef(get_class($oDestObj), $sAttCode);
|
||||
if ($oAttDef->IsNull($oDestObj->Get($sAttCode)))
|
||||
{
|
||||
// The value is still "empty" in the target object, we are allowed to write the new value
|
||||
$oDestObj->Set($sAttCode, $value);
|
||||
$aValueTrace[] = "$sAttCode: $value";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
$oDestObj->Set($sAttCode, $value);
|
||||
$aValueTrace[] = "$sAttCode: $value";
|
||||
}
|
||||
}
|
||||
}
|
||||
// Really modified ?
|
||||
|
||||
Reference in New Issue
Block a user