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 Yesterday 11:53:47

rewook
Member
Registered: Yesterday
Posts: 7

récupération ordinateurs par entité

Bonjour,

Je tente de vouloir récupérer tous les ordinateurs d'une entité, mais je n'arrive pas à trouver la façon de filtrer par entité.

Avez-vous une idée de la requête à formuler ?

Offline

#2 Yesterday 12:01:22

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

Re: récupération ordinateurs par entité

un truc comme ça en remplaçant entityID par l'identifiant

criteria[0][link]=AND&criteria[0][field]=80&criteria[0][searchtype]=equals&criteria[0][value]=$entity_id

Trouver la panne avant de réparer...
GLPI10.0.16 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.3 reports 1.16.0 formcreator 2.13.9, datainjection 2.13.5 fields 1.21.9

Offline

#3 Yesterday 12:20:26

rewook
Member
Registered: Yesterday
Posts: 7

Re: récupération ordinateurs par entité

Merci LaDenrée,

On est d'accord que je pars de cette adresse https://monserveurglpi/apirest.php/Computer et qu'en paramètre je mets les critères ?

Offline

#4 Yesterday 12:26:23

rewook
Member
Registered: Yesterday
Posts: 7

Re: récupération ordinateurs par entité

Ah non je viens de regarder dans la doc de l'api !

https://monserveurglpi/apirest.php/seach/computer et les critères

C'est bien cela ?

Offline

#5 Yesterday 12:33:13

rewook
Member
Registered: Yesterday
Posts: 7

Re: récupération ordinateurs par entité

oui je viens de vérifier sur postman cela fonctionne, encore merci

Offline

#6 Yesterday 12:46:45

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

Re: récupération ordinateurs par entité

oui un truc comme ça :

https://monserveurglpi/apirest.php/search/Computer/?is_deleted=0&criteria[0][link]=AND&criteria[0][field]=80&criteria[0][searchtype]=equals&criteria[0][value]=3


Trouver la panne avant de réparer...
GLPI10.0.16 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.3 reports 1.16.0 formcreator 2.13.9, datainjection 2.13.5 fields 1.21.9

Offline

#7 Yesterday 12:48:10

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

Re: récupération ordinateurs par entité

attention si vous avez beaucoup d'ordinateurs il faudra fractionner (ou changer le range)


Trouver la panne avant de réparer...
GLPI10.0.16 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.3 reports 1.16.0 formcreator 2.13.9, datainjection 2.13.5 fields 1.21.9

Offline

#8 Yesterday 15:10:04

rewook
Member
Registered: Yesterday
Posts: 7

Re: récupération ordinateurs par entité

Qu'est-ce que vous appelez beaucoup d'ordinateurs ?

Offline

#9 Yesterday 15:11:16

rewook
Member
Registered: Yesterday
Posts: 7

Re: récupération ordinateurs par entité

autre question, d'où provient cette valeur 80 dans criteria[0][field]=80

Offline

#10 Yesterday 16:00:56

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

Re: récupération ordinateurs par entité

rewook wrote:

Qu'est-ce que vous appelez beaucoup d'ordinateurs ?

il est probable que par défaut la réponse ressemble à ça :
{"totalcount":776,"count":30,.....

sur les 776 ordinateurs seuls les 30 premiers sont dans le tableau
vous pouvez ajouter   &range=0-1000 pour avoir plus de PC  mais ça commence à faire beaucoup;

perso je fais une boucle  par 100 tant que je n'ai pas atteint le nombre total :

$count=0;
$total_count=1;
While ($count <$total_count){
   $url="...apirest.php/search/Computer/...some criteria....&range=".$count*100."-".$count*100+99;
        ////je travaille sur les pc du lot
   
   $total_count=$obj['total_count']; //je récupère le nombre total dans le resultat de la requête
   $count++;
}

Trouver la panne avant de réparer...
GLPI10.0.16 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.3 reports 1.16.0 formcreator 2.13.9, datainjection 2.13.5 fields 1.21.9

Offline

#11 Yesterday 16:07:10

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

Re: récupération ordinateurs par entité

rewook wrote:

autre question, d'où provient cette valeur 80 dans criteria[0][field]=80

si vous faites une requête :

https://monserveur/glpi/apirest.php/listSearchOptions/Ticket/

vous obtenez la liste de tous les codes pour les recherches

,"80":
     {"name":"Entité",
       "table":"glpi_entities",
       "field":"completename",
       "datatype":"dropdown",
       "nosearch":false,
       "nodisplay":false,
        "available_searchtypes":["contains","notcontains","equals","notequals","under","notunder"],
        "uid":"Ticket.Entity.completename"},

Trouver la panne avant de réparer...
GLPI10.0.16 (ubuntu 22.04 PHP8.1  Mariadb10.6 ) plugins : comportements 2.7.3 reports 1.16.0 formcreator 2.13.9, datainjection 2.13.5 fields 1.21.9

Offline

#12 Yesterday 16:39:25

rewook
Member
Registered: Yesterday
Posts: 7

Re: récupération ordinateurs par entité

super merci pour vos réponses précises

Offline

Board footer

Powered by FluxBB