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 2021-12-06 16:43:37

falco2001
Member
Registered: 2016-02-11
Posts: 251

[Résolu] [glpi 9.5.6] Tickets clos qui n'ont pas de technicien

Bonjour,
J'essaye de faire une requête en ce sens mais sans succès !

Il s'agit d'obtenir les tickets qui ont été clos mais sans technicien affecté

J'ai ceci mais ça ne donne rien

SELECT 
   -- `glpi_ticketvalidations`.`tickets_id`,
    glpi_tickets.id,
    `glpi_tickets`.`name`,
    `date`,
    `closedate`,
    glpi_tickets.status,
    realname  AS Technicien
FROM
    -- `glpi_ticketvalidations`,
    `glpi_tickets`,
    `glpi_users`,
    `glpi_tickets_users`
WHERE
    -- `glpi_ticketvalidations`.`tickets_id` = `glpi_tickets`.`id`
         `glpi_tickets`.`id` = `glpi_tickets_users`.`tickets_id`
        AND `glpi_tickets_users`.`users_id` = `glpi_users`.`id`
        AND `glpi_tickets`.`closedate` IS NOT NULL
        AND  realname is NULL
        -- AND glpi_tickets.id = 118451
 -- ORDER BY `glpi_ticketvalidations`.`tickets_id`

PS : En d'autres termes également : comment rendre obligatoire  l'attribution d'un technicien. On a bien des règles mais les admins peuvent traiter un tickets et le fermer sans se l'affecter !

Last edited by falco2001 (2021-12-07 17:09:41)

Offline

#2 2021-12-06 18:12:29

LaDenrée
HELPER
Registered: 2012-11-19
Posts: 6,168

Re: [Résolu] [glpi 9.5.6] Tickets clos qui n'ont pas de technicien

essayez ça :

SELECT glpi_tickets.id, `glpi_tickets`.`name`, `date`, `closedate`, glpi_tickets.status, realname AS Technicien 
FROM `glpi_tickets`
 left outer join `glpi_tickets_users` on `glpi_tickets_users`.`tickets_id`=`glpi_tickets`.`id` AND `glpi_tickets_users`.`type`='2'
 left outer join `glpi_users` on `glpi_users`.`id`=`glpi_tickets_users`.`users_id` 
WHERE `glpi_tickets`.`closedate` IS NOT NULL AND realname is NULL AND glpi_tickets.id > 118000
 ORDER BY `glpi_tickets`.`id` 

ça vous donnera la liste des tickets sans techniciens.
"
sinon le plugin comportements(Behaviours)  permet de rendre le " Technicien obligatoire pour résoudre/fermer un ticket"


Trouver la panne avant de réparer...
GLPI10.0.10 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.2 reports 1.16.0 formcreator 2.13.8, datainjection 2.13.4 fields 1.21.6

Offline

#3 2021-12-07 17:10:48

falco2001
Member
Registered: 2016-02-11
Posts: 251

Re: [Résolu] [glpi 9.5.6] Tickets clos qui n'ont pas de technicien

Bonjour,
Merci pour cette réponse très rapide.
La requête fonctionne et le plug-in aussi !
Que dire de plus. Superbe ... Merveilleux ....
A+

Offline

#4 2021-12-09 17:03:39

falco2001
Member
Registered: 2016-02-11
Posts: 251

Re: [Résolu] [glpi 9.5.6] Tickets clos qui n'ont pas de technicien

re,
Je voudrais mettre à jour maintenant ceux qui n'ont pas de technicien attribué sachant que dans 95% des cas c'est souvent la même personne qui traite les tickets sans se les affecter ! Dommage.
Voilà ce que je tente de faire : il s'agit bien de mettre à jour la table de jointure n-n ?
Je fais ceci en dev mais j'ai le message duplicate ... (Error Code: 1062. Duplicate entry '11197-2-0-' for key 'unicity'
)
ici je veux mettre à jour le ticket 93725 avec  le technicien 9353 est-ce bien celà ?
Avez-vous un schéma (MCD) de la base ?

update glpi_tickets_users
inner join glpi_tickets on  glpi_tickets_users.tickets_id  = glpi_tickets.id
inner join glpi_users on glpi_tickets_users.users_id = glpi_users.id
set glpi_tickets_users.users_id = 9353
and glpi_tickets.id = 93725;

Ce que je ne comprends pas

Offline

#5 2021-12-09 17:24:54

LaDenrée
HELPER
Registered: 2012-11-19
Posts: 6,168

Re: [Résolu] [glpi 9.5.6] Tickets clos qui n'ont pas de technicien

si vous voulez ajouter un technicien il faut faute un insert pas un update

INSERT INTO glpi_tickets_users(tickets_id,users_id,type,use_notification) VALUES (93725,9353,2,0)

ça devrait marcher (si le technicien n'est pas déjà affecté.

ensuite vous pourrez remplacer par

INSERT INTO glpi_tickets_users(tickets_id,users_id,type,use_notification) 
SELECT  T.id,9353,2,0 
FROM glpi_tickets AS T
  LEFT OUTER JOIN glpi_tickets_users as TU on TU.tickets_id=T.id AND TU.type=2 
WHERE TU.users_id is null 

/!\  soyez prudent si vous travaiilez sur la base de prod ! assurez vous d'avoir un dump complet et de pouvoir le restaurer.


Trouver la panne avant de réparer...
GLPI10.0.10 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.2 reports 1.16.0 formcreator 2.13.8, datainjection 2.13.4 fields 1.21.6

Offline

#6 2021-12-10 19:35:42

falco2001
Member
Registered: 2016-02-11
Posts: 251

Re: [Résolu] [glpi 9.5.6] Tickets clos qui n'ont pas de technicien

Bonsoir,
c'est parfait comme d'habitude.
J'ai lancé en dev. J'attends pour le lancer en prod !
Merci beaucoup
A+

Offline

Board footer

Powered by FluxBB