Bonjour, j'ai mis en place glpi dans ma boite et je dois sortir des stats sur la consommation en cartouches avec le prix moyen.
J'arrive à lister mes consommables usagés et à les quantifier avec la requête suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 
SELECT 		glpi_printers.name as cart_print,
			glpi_cartridges_type.ref as cart_ref,
			glpi_cartridges_type.name as cart_name,
			count(*) as cart_qte		
FROM 		glpi_cartridges_type, 
			glpi_dropdown_cartridge_type,
			glpi_cartridges,
			glpi_plugin_order_references,
			glpi_plugin_order_references_manufacturers,
			glpi_printers
WHERE 		glpi_cartridges.FK_glpi_cartridges_type = glpi_cartridges_type.ID AND
			glpi_dropdown_cartridge_type.ID = glpi_cartridges_type.type AND
			glpi_cartridges.FK_glpi_printers = glpi_printers.ID AND
			glpi_cartridges.date_out IS NOT NULL
GROUP BY	glpi_cartridges_type.name
ORDER BY	glpi_cartridges_type.name
Il y a maintenant 2 autres tables que j'utilise, l'une contient la liste des références c'est a dire de mes cartouches et l'autre la liste avec les tarifs par fournisseurs
ex:
table1 : id, nom --> glpi_plugin_order_references
1, toner noir lexma 7xx
2, toner cyan lexma èxx
table2 : id, table1_id, frns, prix --> glpi_plugin_order_references_manufacturers
1, 1, frnss1, 27
2, 1, frnss2, 30
3, 1, frnss4, 28
4, 2, frnss2, 36
5, 2, frnss3, 39
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 
SELECT 		glpi_printers.name as cart_print,
			glpi_cartridges_type.ref as cart_ref,
			glpi_cartridges_type.name as cart_name,
			count(*) as cart_qte		
FROM 		glpi_cartridges_type, 
			glpi_dropdown_cartridge_type,
			glpi_cartridges,
			glpi_plugin_order_references,
			glpi_plugin_order_references_manufacturers,
			glpi_printers
WHERE 		glpi_cartridges.FK_glpi_cartridges_type = glpi_cartridges_type.ID AND
			glpi_dropdown_cartridge_type.ID = glpi_cartridges_type.type AND
			glpi_cartridges.FK_glpi_printers = glpi_printers.ID AND
--	ligne1	glpi_plugin_order_references.name = glpi_cartridges_type.name AND
--	ligne2	glpi_plugin_order_references_manufacturers.FK_reference = glpi_plugin_order_references.ID AND
			glpi_cartridges.date_out IS NOT NULL
GROUP BY	glpi_cartridges_type.name
ORDER BY	glpi_cartridges_type.name
Si je met le code en entier donc en décommentant la ligne 1 et la ligne 2 j'ai 2 ligne de résultat en moins et le calcul des quantités est érroné

Si je décommente juste la ligne 1 j'ai bien le bon nombre de ligne dans mon résultat mais les qté sont pas bonne.

Si je décommente juste la ligne 2 j'ai bien le bon nombre de ligne dans mon résultat mais les qté sont aussi pas bonne.

Merci de votre aide car il ne me reste plus beaucoup de cheveux ;-)