Quantcast
Channel: Forum Dolibarr france :: Discussions récentes
Viewing all articles
Browse latest Browse all 34935

Sujet: [RESOLU] product_extrafield non effacée en cascade - par: zelaone

$
0
0
Bonjour,

Tout est dit dans le titre.

J'ai installé la version 3.2 et j'ai constaté que les données de la table product_extrafield ne sont pas effacées quand on supprime un produit.

C'est évidemment a vérifier par d'autres personnes mais je n'ai pas de vu de suppression des données des tables extrafields dans le code...

Je vois 2 corrections a faire :

1/ dans l'objet commonobject.class.php, il faut ajouter une fonction du style

/**
* Delete all extra fields values for the current object.
*
* @return void
*/
function DeleteExtraFields()
{

$error=0;

$this->db->begin();

$sql_del = "DELETE FROM ".MAIN_DB_PREFIX.$this->table_element."_extrafields WHERE fk_object = ".$this->id;
dol_syslog(get_class($this)."::delete sql=".$sql_del);
$resql = $this->db->query($sql_del);
if (! $resql)
{
$this->error=$this->db->lasterror();
dol_syslog(get_class($this)."::delete ".$this->error,LOG_ERR);
$this->db->rollback();
return -1;
}
else
{
$this->db->commit();
return 1;
}

}


2/ dans la classe product.class.php et dans la fonction function delete($id)


// Delete Extrafields
if (! $error)
{
$this->DeleteExtraFields();
}

Juste avant : // Delete product ...

Viewing all articles
Browse latest Browse all 34935

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>