You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2024-01-26 17:17:40

ec2311
Member
Registered: 2016-04-07
Posts: 309

Supprimer tous les enregistrements enfants

Bonjour

j'ai créé un plugin
Ce plugin est de la meme "forme" que la table software et ses petits (version, items associés...)

lorsque je mets un enregistrement maitre à la corbeille (ou que je le supprime directement) , les enregistrements dependant (version(s) et items associés)  ne sont pas supprimés : seul l'entete est supprimé

que faut-il ajouter pour que les enregistrements des tables annexes soient supprimés ?

Merci


GLPI 10.0.10
GLPIinventory 1.3.4

Agents : FI (2.6, 2.5) et Glpiagents (1.7)

Offline

#2 2024-01-26 21:26:23

cconard96
Moderator
Registered: 2018-07-31
Posts: 2,430
Website

Re: Supprimer tous les enregistrements enfants

Bonjour,

Vérifiez la classe Software dans GLPI pour savoir comment elle gère cela :

public function cleanDBonPurge()
    {

       // SoftwareLicense does not extends CommonDBConnexity
        $sl = new SoftwareLicense();
        $sl->deleteByCriteria(['softwares_id' => $this->fields['id']]);

        $this->deleteChildrenAndRelationsFromDb(
            [
                SoftwareVersion::class,
            ]
        );
    }


Si cette fonction est présente dans votre classe "parent", elle est automatiquement appelée lors de la suppression des éléments de ce type. Vous devrez évidemment l'adapter à vos cours.


GLPI Collaborator and Plugin Developer.
My non-English comments are automated translations. Sorry for any confusion that causes.
Mes commentaires non anglais sont des traductions automatiques. Désolé pour toute confusion qui cause.
Mis comentarios que no están en inglés son traducciones automáticas. Perdón por cualquier confusión que cause.

Offline

Board footer

Powered by FluxBB