Merge pull request #2878 from atm-alexis/fix_multientity_num_check

FIX when multicompany was enabled, isExistingObject check wrong
This commit is contained in:
Laurent Destailleur 2015-05-29 17:16:32 +02:00
commit 4324ed82b3

View File

@ -65,13 +65,15 @@ abstract class CommonObject
*/ */
static function isExistingObject($element, $id, $ref='', $ref_ext='') static function isExistingObject($element, $id, $ref='', $ref_ext='')
{ {
global $db; global $db,$conf;
$sql = "SELECT rowid, ref, ref_ext"; $sql = "SELECT rowid, ref, ref_ext";
$sql.= " FROM ".MAIN_DB_PREFIX.$element; $sql.= " FROM ".MAIN_DB_PREFIX.$element;
if ($id > 0) $sql.= " WHERE rowid = ".$db->escape($id); $sql.= " WHERE entity IN (".getEntity($element).")" ;
else if ($ref) $sql.= " WHERE ref = '".$db->escape($ref)."'";
else if ($ref_ext) $sql.= " WHERE ref_ext = '".$db->escape($ref_ext)."'"; if ($id > 0) $sql.= " AND rowid = ".$db->escape($id);
else if ($ref) $sql.= " AND ref = '".$db->escape($ref)."'";
else if ($ref_ext) $sql.= " AND ref_ext = '".$db->escape($ref_ext)."'";
else { else {
$error='ErrorWrongParameters'; $error='ErrorWrongParameters';
dol_print_error(get_class()."::isExistingObject ".$error, LOG_ERR); dol_print_error(get_class()."::isExistingObject ".$error, LOG_ERR);