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 2019-03-25 13:31:57

jreynaud40
Member
Registered: 2009-05-27
Posts: 25

Transfert PC vers une autre entité

Bonjour,

Malgré la mise à jour de GLPI vers la 9.4.1.1, j'ai toujours l'impossibilité de transférer en masse mes PC vers une autre entité.

Je suis super-admin récursif quand je fais la manip. J'ai mis le mode débug en route et voici le message que GLPI m'affiche :

Fatal error: Uncaught RuntimeException: Empty IN are not allowed in C:\xampp\htdocs\glpi\inc\dbmysqliterator.class.php:546 Stack trace: #0 C:\xampp\htdocs\glpi\inc\dbmysqliterator.class.php(516): DBmysqlIterator->analyzeCriterion(Array) #1 C:\xampp\htdocs\glpi\inc\dbmysqliterator.class.php(506): DBmysqlIterator->analyseCrit(Array) #2 C:\xampp\htdocs\glpi\inc\dbmysqliterator.class.php(288): DBmysqlIterator->analyseCrit(Array) #3 C:\xampp\htdocs\glpi\inc\dbmysqliterator.class.php(94): DBmysqlIterator->buildQuery('`glpi_contracts...', Array, false) #4 C:\xampp\htdocs\glpi\inc\dbmysql.class.php(569): DBmysqlIterator->execute(Array, '', false) #5 C:\xampp\htdocs\glpi\inc\transfer.class.php(2765): DBmysql->request(Array) #6 C:\xampp\htdocs\glpi\inc\transfer.class.php(2703): Transfer->transferSingleSupplier('2') #7 C:\xampp\htdocs\glpi\inc\transfer.class.php(1065): Transfer->transferInfocoms('Computer', '640', '640') #8 C:\xampp\htdocs\glpi\inc\transfer.class.php(203): Transfer->transferItem('Computer', '640', '640') #9 C:\xampp in C:\xampp\htdocs\glpi\inc\dbmysqliterator.class.php on line 546

Est-ce un bug ? Car j'ai suivi la manip à la lettre.

Cordialement,
Jérôme REYNAUD

Offline

#2 2019-03-26 12:15:53

yllen
GLPI-DEV
From: Sillery (51)
Registered: 2008-01-14
Posts: 15,273

Re: Transfert PC vers une autre entité

Pouvez-vous poster les log dans glpi/files/_log/php-error.log et sql-error.log, ils sont plus complets


CentOS 6.5 - CentOS 7.x
PHP 5.6 - PHP 7.x - MySQL 5.6  - MariaDB 10.2 + APC + oOPcache
GLPI from 0.72 to dev version
Certifiée ITIL (ITV2F, ITILF, ITILOSA)

Offline

#3 2019-03-28 11:29:54

jreynaud40
Member
Registered: 2009-05-27
Posts: 25

Re: Transfert PC vers une autre entité

Bonjour,

Pour PHP, pas d'erreurs. Par contre, pour MySQL, voici l'erreur :

[2019-03-28 10:27:50] glpisqllog.ERROR: DBmysql::query() in C:\xampp\htdocs\glpi\inc\dbmysql.class.php line 177
  *** MySQL query error:
  SQL: DELETE FROM `glpi_documents_items` WHERE `glpi_suppliers`.`id` IS NULL LEFT JOIN `glpi_suppliers` ON (`glpi_documents_items`.`items_id` = `glpi_suppliers`.`id` AND `glpi_documents_items`.`itemtype` = 'Supplier')
  Error: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'LEFT JOIN `glpi_suppliers` ON (`glpi_documents_items`.`items_id` = `glpi_supplie' at line 1
  Backtrace :
  inc\dbmysql.class.php:1043                         
  inc\transfer.class.php:931                         DBmysql->delete()
  inc\transfer.class.php:174                         Transfer->simulateTransfer()
  front\transfer.action.php:46                       Transfer->moveItems()
  {"user":"1105@IUT-GLPI","mem_usage":"0.012\", 24.22Mio)"}

Offline

#4 2019-05-21 10:50:16

RodolpheLP
Member
Registered: 2019-04-09
Posts: 18

Re: Transfert PC vers une autre entité

Bonjour,

Je relance ce sujet car j'ai le même type d'anomalie lors d'un transfert de téléphone vers une sous entité.
Je suis en version 9.4.2 et voici le log de l'anomalie en mode debug :

Fatal error: Uncaught RuntimeException: Empty IN are not allowed in E:\xampp\htdocs\glpi_test\inc\dbmysqliterator.class.php:546 Stack trace: #0 E:\xampp\htdocs\glpi_test\inc\dbmysqliterator.class.php(516): DBmysqlIterator->analyzeCriterion(Array) #1 E:\xampp\htdocs\glpi_test\inc\dbmysqliterator.class.php(506): DBmysqlIterator->analyseCrit(Array) #2 E:\xampp\htdocs\glpi_test\inc\dbmysqliterator.class.php(288): DBmysqlIterator->analyseCrit(Array) #3 E:\xampp\htdocs\glpi_test\inc\dbmysqliterator.class.php(94): DBmysqlIterator->buildQuery('`glpi_contracts...', Array, false) #4 E:\xampp\htdocs\glpi_test\inc\dbmysql.class.php(569): DBmysqlIterator->execute(Array, '', false) #5 E:\xampp\htdocs\glpi_test\inc\transfer.class.php(2781): DBmysql->request(Array) #6 E:\xampp\htdocs\glpi_test\inc\transfer.class.php(2719): Transfer->transferSingleSupplier('18') #7 E:\xampp\htdocs\glpi_test\inc\transfer.class.php(1077): Transfer->transferInfocoms('Phone', '498', '498') #8 E:\xampp\htdocs\glpi_test\inc\transfer.class.php(203): Transfer->tr in E:\xampp\htdocs\glpi_test\inc\dbmysqliterator.class.php on line 546

Le message "Empty IN are not allowed" me donne l'impression qu'un élément est absent de la requête de transfert (soit parcequ'il est manquant soit parcequ'il est inaccessible lors du déclenchement de la requête je pense).
Savez-vous comment contrôler l'intégralité de la requête qui est lancée lors de ma demande de transfert ?
Je soupçonne un champs "is_recursive" qui ne serait pas correctement renseigné et qui empêcherait la requête de s'exécuter...

Je vous remercie par avance pour vos pistes afin de m'aider à solutionner cela.

Cordialement,


Glpi 9.5.6
Windows Server 2012 R2 | Xampp 7.3.6-2-VC15 (PHP 7.3.6 - Software: Apache/2.4.39 (Win64) - Server Version: 10.3.15-MariaDB)

Offline

#5 2019-05-21 11:09:35

RodolpheLP
Member
Registered: 2019-04-09
Posts: 18

Re: Transfert PC vers une autre entité

Pour compléter ma demande précédente,

Je constate que si je supprime les informations de gestion associées à mon matériel je peux effectuer le transfert...
Il me semble donc que ce sont les éléments de gestion qui bloquent le transfert vers la sous-entité.

Sauriez-vous comment y remédier ?

Merci pour vos propositions,
Bonne journée,

Last edited by RodolpheLP (2019-05-21 11:09:51)


Glpi 9.5.6
Windows Server 2012 R2 | Xampp 7.3.6-2-VC15 (PHP 7.3.6 - Software: Apache/2.4.39 (Win64) - Server Version: 10.3.15-MariaDB)

Offline

#6 2019-05-21 11:27:08

RodolpheLP
Member
Registered: 2019-04-09
Posts: 18

Re: Transfert PC vers une autre entité

Finalement je pense avoir compris :
les informations financières (onglet "Gestion" du matériel) sont sur un budget qui n'est pas dans la sous-entité de destination du transfert

Je dois donc transférer ce budget dans la sous-entité préalablement à tout transfert de matériel dans cette même sous-entité. Cela même si mon budget dispose de l'information Sous-Entite=OUI".

A présent mes transferts fonctionnent.


Glpi 9.5.6
Windows Server 2012 R2 | Xampp 7.3.6-2-VC15 (PHP 7.3.6 - Software: Apache/2.4.39 (Win64) - Server Version: 10.3.15-MariaDB)

Offline

Board footer

Powered by FluxBB