Jelajahi Sumber

Fixed regression - still, the API MetaModel::BulkDelete cannot be used in any case (e.g. hierarchical keys)

git-svn-id: http://svn.code.sf.net/p/itop/code/trunk@2256 a333f486-631f-4898-b8df-5754b55c2be0
romainq 12 tahun lalu
induk
melakukan
cb28a55c0f
1 mengubah file dengan 9 tambahan dan 2 penghapusan
  1. 9 2
      core/metamodel.class.php

+ 9 - 2
core/metamodel.class.php

@@ -4827,10 +4827,17 @@ abstract class MetaModel
 		return $iNextKey;
 	}
 
+	/**
+	 * Deletion of records, bypassing DBObject::DBDelete !!!
+	 * It is NOT recommended to use this shortcut
+	 * In particular, it will not work	 
+	 *  - if the class is not a final class
+	 *  - if the class has a hierarchical key (need to rebuild the indexes)
+	 *  - if the class overload DBDelete !	 
+	 * Todo: protect it against forbidden usages (in such a case, delete objects one by one)
+	 */	 	
 	public static function BulkDelete(DBObjectSearch $oFilter)
 	{
-		throw new Exception("Bulk deletion cannot be done this way: it will not work with hierarchical keys - implementation to be reviewed!");
-
 		$sSQL = self::MakeDeleteQuery($oFilter);
 		if (!self::DBIsReadOnly())
 		{