You are not logged in.
Bonjour,
J'ai un problème de liaison de pc importé depuis OCS via les synchronisations automatiques (tache planifiée).
Si j'ai déjà un pc créé manuellement dans l'inventaire GLPI et qu'un agent OCS remonte le pc dans GLPI, un doublon est alors créé même si ils ont le même NON et NUMERO DE SERIE (voir mes règles de liaison)
Pour info :
GLPI 0.84.2 (/glpi => C:/xampp/htdocs/glpi)
Server
Operating system: Windows NT XXXXXXX 5.2 build 3790 (Windows Server 2003 R2 Standard Edition Service Pack 2) i586
PHP 5.3.8 apache2handler (Core, PDO, PDO_ODBC, Phar, Reflection, SPL, SQLite, SimpleXML, apache2handler, bcmath, bz2, calendar,
com_dotnet, ctype, curl, date, dom, ereg, exif, fileinfo, filter, ftp, gd, gettext, hash, iconv, imap, json, ldap, libxml,
mbstring, mcrypt, mhash, mysql, mysqli, mysqlnd, odbc, openssl, pcre, pdo_mysql, pdo_sqlite, session, soap, sockets, sqlite3,
standard, tokenizer, wddx, xml, xmlreader, xmlrpc, xmlwriter, zip, zlib)
Setup: max_execution_time="-1" memory_limit="128M" post_max_size="500M" safe_mode="" session.save_handler="files"
upload_max_filesize="500M"
Software: Apache/2.2.21 (Win32) mod_ssl/2.2.21 OpenSSL/1.0.0e PHP/5.3.8 mod_perl/2.0.4 Perl/v5.10.1 (Apache/2.2.21 (Win32)
mod_ssl/2.2.21 OpenSSL/1.0.0e PHP/5.3.8 mod_perl/2.0.4 Perl/v5.10.1 Server at xxxx.yyy.zzz Port 80)
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36
DBMS: Server Software: MySQL Community Server (GPL)
Server Version: 5.5.16
Parameters: root@localhost/glpi
Host info: localhost via TCP/IP
C:\xampp\htdocs\glpi/config : OK
C:\xampp\htdocs\glpi/files : OK
C:\xampp\htdocs\glpi/files/_dumps : OK
C:\xampp\htdocs\glpi/files/_sessions : OK
C:\xampp\htdocs\glpi/files/_cron : OK
C:\xampp\htdocs\glpi/files/_cache/ : OK
C:\xampp\htdocs\glpi/files/_graphs : OK
C:\xampp\htdocs\glpi/files/_lock : OK
C:\xampp\htdocs\glpi/files/_plugins : OK
C:\xampp\htdocs\glpi/files/_tmp : OK
C:\xampp\htdocs\glpi/files/_rss : OK
C:\xampp\htdocs\glpi/files/_uploads : OK
C:\xampp\htdocs\glpi/files/_log : OK
Libraries
htmLawed version 1.1.16 in (C:\xampp\htdocs\glpi\lib\htmlawed)
phpCas version 1.3.2 in (C:\xampp\htdocs\glpi\lib\phpcas)
PHPMailer version 5.2.1 in (C:\xampp\htdocs\glpi\lib\phpmailer)
eZ Graph componnent installed : OK
Zend Framework version 2.0.5 in (C:\xampp\htdocs\glpi\lib)
SimplePie version 1.3.1 in (C:\xampp\htdocs\glpi\lib\simplepie)
Mysql replicas
Not active
Notifications
Way of sending emails: SMTP (anonymous@10.130.70.4)
Mails receivers
Name: '59380@10.130.224.1' Active: No
Server: '{10.130.224.1/imap/validate-cert/notls}' Login: '59380' Password: Yes
Name: 'xxxxx' Active: No
Server: '{xxxxx/pop/novalidate-cert/notls}' Login: 'xxxxx' Password: Yes
Name: 'xxxxx' Active: No
Server: '{xxxxx/pop/novalidate-cert/notls}' Login: 'xxxxx' Password: Yes
Name: 'xxxxx' Active: Yes
Server: '{10.130.70.158/pop/novalidate-cert/notls}' Login: 'be' Password: Yes
Name: 'xxxxx' Active: Yes
Server: '{10.130.70.158/pop/validate-cert/notls}' Login: 'ies' Password: Yes
Plugins list
addressing Name: Adressage IP Version: 2.1.0 State: Enabled
additionalalerts Name: Alertes supplémentaires Version: 1.6.0 State: Enabled
archires Name: Architectures réseau Version: 2.1.0 State: Enabled
positions Name: Cartographie Version: 4.0.0 State: Enabled
shellcommands Name: Commandes Shell Version: 1.6.0 State: Enabled
behaviors Name: Comportements Version: 0.84 State: Enabled
accounts Name: Comptes Version: 1.9.0 State: Enabled
domains Name: Domaines Version: 1.6.0 State: Enabled
fusioninventory Name: FusionInventory Version: 0.84+1.2 State: Not activated
racks Name: Gestion de baies Version: 1.4.0 State: Enabled
manufacturersimports Name: Imports fabricants Version: 1.6.0 State: Enabled
pdf Name: Impression pdf Version: 0.83.3 State: To be cleaned
ocsinventoryng Name: OCS Inventory NG Version: 1.0.2 State: Enabled
helpdeskrating Name: Plugin Helpdeskrating Version: 1.1.0 State: Enabled
projet Name: Projets Version: 1.4.0 State: Enabled
reports Name: Rapports Version: 1.7.0 State: Enabled
themes Name: Thèmes Version: 1.1.3 State: To be cleaned
OCS Inventory NG
Host: 'xxxx.yyy.zzz', Connection: Ok, Use the OCSNG software dictionary: No
Merci d'avance.
Last edited by jujunea (2014-11-16 23:59:43)
Prod === Glpi : 10.0.10
Prod === PHP 8.1.2
Prod === Ubuntu 22.04
Offline
Oups, merci de déplacer dans : Plugin OCS NG (GLPI >0.84)
Last edited by jujunea (2013-10-18 04:55:57)
Prod === Glpi : 10.0.10
Prod === PHP 8.1.2
Prod === Ubuntu 22.04
Offline
bonjour,
Je travaille avec la version 0.83.7 de GLPI.(je précise car je ne sais pas si il y a des changement à ce niveau en 0.84.2.)
Et j'utilise les critères suivant dans les règle d'import et de liaison pour éviter les doublons :
Ordinateur à importer : adresse Mac existe oui
Ordinateur à importer : numéro de série existe oui
Ordinateur à importer : Nom de l'ordinateur est déja présent dans GLPI oui
Action :
Liaison OCSNG assigner Liaison si possible
Je sais pas si l'ajout de l'adresse mac dans ta règle de liaison réglera ton soucis de doublon
cordialement,
Prod : centos-release-7-2 | GLPI 9.4.3 | FusionInventory 9.4+1.1 | fusioninventory-agent_windows-x64_2.5.2
Test : centos-release-7-2 | GLPI 9.4.4 |
Rectorat de Caen
Offline
bonjour,
Je travaille avec la version 0.83.7 de GLPI.(je précise car je ne sais pas si il y a des changement à ce niveau en 0.84.2.)
Et j'utilise les critères suivant dans les règle d'import et de liaison pour éviter les doublons :
Ordinateur à importer : adresse Mac existe oui
Ordinateur à importer : numéro de série existe oui
Ordinateur à importer : Nom de l'ordinateur est déja présent dans GLPI ouiAction :
Liaison OCSNG assigner Liaison si possible
Je sais pas si l'ajout de l'adresse mac dans ta règle de liaison réglera ton soucis de doublon
cordialement,
Tu as un "ET" ou un "OU" pour tes critères ?
Prod === Glpi : 10.0.10
Prod === PHP 8.1.2
Prod === Ubuntu 22.04
Offline
Bonjour,
J'ai le même problème.
GLPI 0.84 et plugin OCS 1.0.2.
Je veux lier automatiquement par la tâche cron de GLPI les ordinateurs OCS avec ceux en stock dans GLPI (saisie manuelle du nom et du n° de série lors de la livraison).
Cela fonctionne très bien lorsque je les lie manuellement, mais c'est fastidieux.
Du coup, j'ai créé une règle d'import et de liaison des ordinateurs :
Critères (ET) :
- Chercher les ordinateurs dans GLPI dont le statut est "En stock"
- Numéro de série existe
Action :
- Lien OCSNG: Assigner : Liaison si possible, sinon import refusé
Avec cette règle, rien n'est importé.
Par contre, si je mets "Liaison si possible", l'ordinateur OCS est importé dans GLPI et j'ai un doublon avec celui déjà en stock.
Le problème est donc que la liaison n'est pas possible.
Du coup, je cherche où je pourrais indiquer que la liaison OCS se fait sur le n° de série, mais je n'ai pas d'onglet "Liaison" dans la configuration du plugin OCS.
Offline
Bonjour,
J'ai le même problème.
GLPI 0.84 et plugin OCS 1.0.2.Je veux lier automatiquement par la tâche cron de GLPI les ordinateurs OCS avec ceux en stock dans GLPI (saisie manuelle du nom et du n° de série lors de la livraison).
Cela fonctionne très bien lorsque je les lie manuellement, mais c'est fastidieux.Du coup, j'ai créé une règle d'import et de liaison des ordinateurs :
Critères (ET) :
- Chercher les ordinateurs dans GLPI dont le statut est "En stock"
- Numéro de série existeAction :
- Lien OCSNG: Assigner : Liaison si possible, sinon import refuséAvec cette règle, rien n'est importé.
Par contre, si je mets "Liaison si possible", l'ordinateur OCS est importé dans GLPI et j'ai un doublon avec celui déjà en stock.Le problème est donc que la liaison n'est pas possible.
Du coup, je cherche où je pourrais indiquer que la liaison OCS se fait sur le n° de série, mais je n'ai pas d'onglet "Liaison" dans la configuration du plugin OCS.
Les liaisons se font par ces règles d'import, pas dans la configuration du plugin. Si tu veux que l'import se fasse uniquement sur le N° de série, il suffit de modifier ta règle et de supprimer le 1er critère : " - Chercher les ordinateurs dans GLPI dont le statut est "En stock"".
Cependant je pense qu'il y a vraiment un bug dans le plugin car comme je l'ai mis dans mon 1er post, je fais l'import sur le nom + sn et il me crée des doublons même quand les conditions sont respectées. (Idem quand je "teste" ma règle)
Last edited by jujunea (2013-10-21 23:24:15)
Prod === Glpi : 10.0.10
Prod === PHP 8.1.2
Prod === Ubuntu 22.04
Offline
En plus, J'ai l'impression que le moteur s’arrête à la règle "Règles d'affectation d'un élément à une entité" (règle "root") au lieu de passer ensuite aux règles "Règles d'import et de liaison des ordinateurs"
Prod === Glpi : 10.0.10
Prod === PHP 8.1.2
Prod === Ubuntu 22.04
Offline
J'ai testé un règle simple et le resultat me laisse perplexe : (le nom de l'ordinateur et du domaine existent dans GLPI)
Le domaine "epi.local" existe, mais il n'est pas présent dans GLPI ???
Je crois que tous les critères "est déjà présent dans GLPI" ne fonctionnent pas, d'où ma règle de liaison ne fonctionne pas et il y a donc création de doublon...
Prod === Glpi : 10.0.10
Prod === PHP 8.1.2
Prod === Ubuntu 22.04
Offline
Bonjour,
J'ai moi aussi un problème de doublon, je suis en train de tester le passage de la version 0.80.70 à 0.84.2
Je n'ai pas changé les règles de liaison d'ordinateur et j'ai la même base OCS.
Voici la règle :
Sur le serveur de production en 0.80.70, la règle fonctionne, si j'effectue un test avec un numéro de série correspondant à l'ordinateur PRET01 j'obtiens un résultat positif :
Sur le serveur de dev en 0.84.2 la règle ne fonctionne plus :
Glpi : 9.1.2 (W2k12 Server - IIS)
OCS Inventory : 2.1.2, Agent 2.1.1.1 / )
120 ordinateurs, 25 imprimantes
Offline
Idem
Offline
ddurieux a crée le bug : https://forge.indepnet.net/issues/4614
Merci
Glpi : 9.1.2 (W2k12 Server - IIS)
OCS Inventory : 2.1.2, Agent 2.1.1.1 / )
120 ordinateurs, 25 imprimantes
Offline
J'ai commité une correction :
https://forge.indepnet.net/projects/glp … ions/22084
Qui ajoute au niveau du popup de test de la règle la sélection de l'entité ou la règle doit chercher une correspondance.
Pourriez-vous vérifier qu'il trouve bien le pc ?
Xavier Caillaud
Blog GLPI Infotel
Offline
Salut,
Je viens de refaire un test de la règle (conforme à la doc du plugin) :
Quand je regarde les logs GLPI, j'ai le message suivant dans sql-errors.log :
2013-10-23 08:34:46
*** MySQL query error:
***
SQL: SELECT `glpi_computers`.`id`
FROM `glpi_computers`
LEFT JOIN `glpi_plugin_ocsinventoryng_ocslinks`
ON (`glpi_computers`.`id` = `glpi_plugin_ocsinventoryng_ocslinks`.`computers_id`)
WHERE 1 AND `glpi_computers`.`serial`=\' CZC31351CY\' AND `glpi_computers`.`states_id`
IN (\'2\') AND `glpi_plugin_ocsinventoryng_ocslinks`.`computers_id` IS NULL
AND `glpi_computers`.`entities_id` IN ()
AND `glpi_computers`.`is_template` = \'0\'
ORDER BY `glpi_computers`.`is_deleted` ASC
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 ')
AND `glpi_computers`.`is_template` = '0'
' at line 7
Backtrace :
/var/www/html/glpi/inc/ruleimportcomputer.class.php :386 DBmysql->query()
/var/www/html/glpi/inc/rule.class.php :1051 RuleImportComputer->findWithGlobalCriteria()
/var/www/html/glpi/inc/rule.class.php :995 Rule->checkCriterias()
/var/www/html/glpi/inc/rule.class.php :1464 Rule->process()
/var/www/html/glpi/front/rule.test.php :87 Rule->showRulePreviewResultsForm()
/var/www/html/glpi/front/popup.php :62 include()
/var/www/html/glpi/front/popup.php
et dans php-errors.log :
2013-10-23 08:34:46
Notice(8): Undefined index: params
Backtrace :
/var/www/html/glpi/inc/ruleimportcomputer.class.php:312 Toolbox::userErrorHandlerNormal()
/var/www/html/glpi/inc/rule.class.php:1051 RuleImportComputer->findWithGlobalCriteria()
/var/www/html/glpi/inc/rule.class.php:995 Rule->checkCriterias()
/var/www/html/glpi/inc/rule.class.php:1464 Rule->process()
/var/www/html/glpi/front/rule.test.php:87 Rule->showRulePreviewResultsForm()
/var/www/html/glpi/front/popup.php:62 include()
2013-10-23 08:34:46
Notice(8): Undefined index: params
Backtrace :
/var/www/html/glpi/inc/ruleimportcomputer.class.php:315 Toolbox::userErrorHandlerNormal()
/var/www/html/glpi/inc/rule.class.php:1051 RuleImportComputer->findWithGlobalCriteria()
/var/www/html/glpi/inc/rule.class.php:995 Rule->checkCriterias()
/var/www/html/glpi/inc/rule.class.php:1464 Rule->process()
/var/www/html/glpi/front/rule.test.php:87 Rule->showRulePreviewResultsForm()
/var/www/html/glpi/front/popup.php:62 include()
2013-10-23 08:34:46
Notice(8): Trying to get property of non-object
Backtrace :
/var/www/html/glpi/inc/dbmysql.class.php:252 Toolbox::userErrorHandlerNormal()
/var/www/html/glpi/inc/ruleimportcomputer.class.php:388 DBmysql->numrows()
/var/www/html/glpi/inc/rule.class.php:1051 RuleImportComputer->findWithGlobalCriteria()
/var/www/html/glpi/inc/rule.class.php:995 Rule->checkCriterias()
/var/www/html/glpi/inc/rule.class.php:1464 Rule->process()
/var/www/html/glpi/front/rule.test.php:87 Rule->showRulePreviewResultsForm()
/var/www/html/glpi/front/popup.php:62 include()
Si je rejoue la requête SQL, j'ai la même erreur :
MariaDB [glpi]> SELECT `glpi_computers`.`id`
-> FROM `glpi_computers`
-> LEFT JOIN `glpi_plugin_ocsinventoryng_ocslinks`
-> ON (`glpi_computers`.`id` = `glpi_plugin_ocsinventoryng_ocslinks`.`computers_id`)
-> WHERE 1 AND `glpi_computers`.`serial`='CZC31351CY' AND `glpi_computers`.`states_id`
-> IN ('2') AND `glpi_plugin_ocsinventoryng_ocslinks`.`computers_id` IS NULL
-> AND `glpi_computers`.`entities_id` IN ()
-> AND `glpi_computers`.`is_template` = '0'
-> ORDER BY `glpi_computers`.`is_deleted` ASC
-> ;
ERROR 1064 (42000): 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 ')
AND `glpi_computers`.`is_template` = '0'
' at line 7
MariaDB [glpi]>
Si par contre je corrige la requête (ligne 7) en ajoutant l'ID de l'entité dans l'opérateur SQL IN (0), la requête me retourne bien l'ID de l'ordinateur dans GLPI qui correspond à ma règle ci-dessus :
MariaDB [glpi]> SELECT `glpi_computers`.`id`
-> FROM `glpi_computers`
-> LEFT JOIN `glpi_plugin_ocsinventoryng_ocslinks`
-> ON (`glpi_computers`.`id` = `glpi_plugin_ocsinventoryng_ocslinks`.`computers_id`)
-> WHERE 1 AND `glpi_computers`.`serial`='CZC31351CY' AND `glpi_computers`.`states_id`
-> IN ('2') AND `glpi_plugin_ocsinventoryng_ocslinks`.`computers_id` IS NULL
-> AND `glpi_computers`.`entities_id` IN ('0')
-> AND `glpi_computers`.`is_template` = '0'
-> ORDER BY `glpi_computers`.`is_deleted` ASC;
+-----+
| id |
+-----+
| 117 |
+-----+
1 row in set (0.00 sec)
MariaDB [glpi]>
C'est peut-être cela qui empêche la liaison...
Cependant, je ne sais où corriger cette requête.
Offline
pouvez-vous remplacer ce fichier dans le répertoire inc ?
Xavier Caillaud
Blog GLPI Infotel
Offline
Je viens de repérer ceci dans la mise à jour 0.84.3
Bug #4499: Computer Link Rule (glpi v .84 and ocs plugin)
Glpi : 9.1.2 (W2k12 Server - IIS)
OCS Inventory : 2.1.2, Agent 2.1.1.1 / )
120 ordinateurs, 25 imprimantes
Offline
Yaouh!..! Merci tsmr !
C'est bon : "Link possible" lors du test de la règle.
L'import manuel fonctionne (Importation de nouveaux ordinateurs) :
Reste l'import automatique via script sh qui ne me récupère pas l'ordinateur (préalablement supprimé de GLPI - Corbeille vidée). (L'ordinateur est visible pour l'import manuel.)
mer. oct. 23 14:29:45 CEST 2013 /var/www/html/glpi/plugins/ocsinventoryng/scripts/ocsng_fullsync.sh started
Manage delete items in OCS server #1: "Server OCS Lin06"
=====================================================
Thread #1: starting (1/2)
Thread #1: import computers from server: 'Server OCS Lin06'
Thread #1: 0 computer(s)
Thread #1: done!!
=====================================================
=====================================================
Thread #2: starting (2/2)
Thread #2: import computers from server: 'Server OCS Lin06'
Thread #2: 0 computer(s)
Thread #2: done!!
=====================================================
cleaning up.
mer. oct. 23 14:29:47 CEST 2013 ended
Pas de log SQL et PHP.
Dans GLPI, "Exécutions de la synchronisation automatique" :
Si tu as une idée ? Elle est la bien venue !
Last edited by missfe (2013-10-23 16:57:59)
Offline
pouvez-vous remplacer ce fichier dans le répertoire inc ?
ça fonctionne bien, j'ai effectué le remplacement et tout resynchronisé.
Merci
Last edited by arnault38 (2013-10-23 15:48:19)
Glpi : 9.1.2 (W2k12 Server - IIS)
OCS Inventory : 2.1.2, Agent 2.1.1.1 / )
120 ordinateurs, 25 imprimantes
Offline
Je viens de remarquer que cliquer sur "Lier les nouveaux ordinateurs d'OCSNG avec ceux existants dans GLPI" génère la même erreur SQL et une autre erreur PHP.
De plus, point rouge :
Erreur SQL :
2013-10-23 14:43:28
*** MySQL query error:
***
SQL: SELECT `glpi_computers`.`id`
FROM `glpi_computers`
LEFT JOIN `glpi_plugin_ocsinventoryng_ocslinks`
ON (`glpi_computers`.`id` = `glpi_plugin_ocsinventoryng_ocslinks`.`computers_id`)
WHERE 1 AND `glpi_computers`.`serial`=\'CZC31351CY\' AND `glpi_computers`.`states_id`
IN (\'2\') AND `glpi_plugin_ocsinventoryng_ocslinks`.`computers_id` IS NULL
AND `glpi_computers`.`entities_id` IN ()
AND `glpi_computers`.`is_template` = \'0\'
ORDER BY `glpi_computers`.`is_deleted` ASC
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 ')
AND `glpi_computers`.`is_template` = '0'
' at line 7
Backtrace :
/var/www/html/glpi/inc/ruleimportcomputer.class.php :385 DBmysql->query()
/var/www/html/glpi/inc/rule.class.php :1051 RuleImportComputer->findWithGlobalCriteria()
/var/www/html/glpi/inc/rule.class.php :995 Rule->checkCriterias()
/var/www/html/glpi/inc/rulecollection.class.php :695 Rule->process()
/var/www/html/glpi/plugins/ocsinventoryng/inc/ocsserver.class.php :3203 RuleCollection->processAllRules()
/var/www/html/glpi/plugins/ocsinventoryng/front/ocsng.link.php :83 PluginOcsinventoryngOcsServer::showComputersToAdd()
/var/www/html/glpi/plugins/ocsinventoryng/front/ocsng.link.php
Erreur PHP :
2013-10-23 14:43:28
Notice(8): Undefined index: entities_id
Backtrace :
/var/www/html/glpi/inc/ruleimportcomputer.class.php:311 Toolbox::userErrorHandlerNormal()
/var/www/html/glpi/inc/rule.class.php:1051 RuleImportComputer->findWithGlobalCriteria()
/var/www/html/glpi/inc/rule.class.php:995 Rule->checkCriterias()
/var/www/html/glpi/inc/rulecollection.class.php:695 Rule->process()
/var/www/html/glpi/plugins/ocsinventoryng/inc/ocsserver.class.php:3203 RuleCollection->processAllRules()
/var/www/html/glpi/plugins/ocsinventoryng/front/ocsng.link.php:83 PluginOcsinventoryngOcsServer::showComputersToAdd()
2013-10-23 14:43:28
Notice(8): Undefined index: entities_id
Backtrace :
/var/www/html/glpi/inc/ruleimportcomputer.class.php:314 Toolbox::userErrorHandlerNormal()
/var/www/html/glpi/inc/rule.class.php:1051 RuleImportComputer->findWithGlobalCriteria()
/var/www/html/glpi/inc/rule.class.php:995 Rule->checkCriterias()
/var/www/html/glpi/inc/rulecollection.class.php:695 Rule->process()
/var/www/html/glpi/plugins/ocsinventoryng/inc/ocsserver.class.php:3203 RuleCollection->processAllRules()
/var/www/html/glpi/plugins/ocsinventoryng/front/ocsng.link.php:83 PluginOcsinventoryngOcsServer::showComputersToAdd()
2013-10-23 14:43:28
Notice(8): Trying to get property of non-object
Backtrace :
/var/www/html/glpi/inc/dbmysql.class.php:252 Toolbox::userErrorHandlerNormal()
/var/www/html/glpi/inc/ruleimportcomputer.class.php:387 DBmysql->numrows()
/var/www/html/glpi/inc/rule.class.php:1051 RuleImportComputer->findWithGlobalCriteria()
/var/www/html/glpi/inc/rule.class.php:995 Rule->checkCriterias()
/var/www/html/glpi/inc/rulecollection.class.php:695 Rule->process()
/var/www/html/glpi/plugins/ocsinventoryng/inc/ocsserver.class.php:3203 RuleCollection->processAllRules()
/var/www/html/glpi/plugins/ocsinventoryng/front/ocsng.link.php:83 PluginOcsinventoryngOcsServer::showComputersToAdd()
Last edited by missfe (2013-10-23 16:56:35)
Offline
Déjà corrigé ca :
https://forge.indepnet.net/projects/ocs … isions/337
Xavier Caillaud
Blog GLPI Infotel
Offline
Merci je vais remplacer ce fichier.
Et pour la synchro auto ?
Offline
J'ai testé un règle simple et le resultat me laisse perplexe : (le nom de l'ordinateur et du domaine existent dans GLPI)
Le domaine "epi.local" existe, mais il n'est pas présent dans GLPI ???
Je crois que tous les critères "est déjà présent dans GLPI" ne fonctionnent pas, d'où ma règle de liaison ne fonctionne pas et il y a donc création de doublon...
Même résultat en changeant le fichier ruleimportcomputer.class.php ...
Prod === Glpi : 10.0.10
Prod === PHP 8.1.2
Prod === Ubuntu 22.04
Offline
Bonjour,
Qu'est ce que tu ne comprends pas ?
Le résultat de ta règle ne peux pas être OUI puisque tu demande à la fois de vérifier :
- que le domaine n'existe pas,
- et que le domaine existe...
Pour ma part, le critère "est déjà présent dans GLPI" fonctionne, vu qu'il me retrouve bien le PC déjà présent dans GLPI avec le même numéro de série.
Offline
Bonjour,
Qu'est ce que tu ne comprends pas ?
Le résultat de ta règle ne peux pas être OUI puisque tu demande à la fois de vérifier :
- que le domaine n'existe pas,
- et que le domaine existe...Pour ma part, le critère "est déjà présent dans GLPI" fonctionne, vu qu'il me retrouve bien le PC déjà présent dans GLPI avec le même numéro de série.
Ce n'est pas le résultat que je ne comprends pas, j'ai fait cette règle (de test) pour mettre en avant la contradiction des critères:
- DOMAINE -> est déjà présent dans GLPI -> ----
- DOMAINE -> existe -> OUI
Dans un critère on a une réponse OUI et dans l'autre rien.
Ma vrai seule et unique règle en production (voir règle "localhost" dans mon premier post) de liaison n'utilise QUE le critère "est déjà présent dans GLPI" et le résultat est TOUJOURS :"---"
pas de "oui" ou "non" et donc pas de liaison.
Last edited by jujunea (2013-10-24 23:39:25)
Prod === Glpi : 10.0.10
Prod === PHP 8.1.2
Prod === Ubuntu 22.04
Offline
Bonjour,
Pour ma part j'ai le même problème que jujunea, j'essaie de vérifier si un numéro de série "est déjà présent dans GLPI". Le résultat retourne à tous les coups "---". Du coup l'ordinateur existant n'est pas lié avec l'ordinateur détecté dans OCS (ayant le même numéro de série) --> doublons.
J'ai également remplacé mes fichiers par les fichiers linkés par tsmr.
Offline
Euh...
La règle qui fonctionne pour moi renvoie aussi "---" lors du test, mais la liaison se fait bien.
Ordinateurs déjà dans le parc :
De plus, la liaison se fait bien avec le script de synchro automatique... en fait, dans le script php, la requête SQL qui récupère les infos d'OCS regarde le CHECKSUM ocs et prend en compte un délai (si j'ai bien compris) :
$query_ocs = "SELECT `ID`
FROM `hardware`
INNER JOIN `accountinfo` ON (`hardware`.`ID` = `accountinfo`.`HARDWARE_ID`)
WHERE ((CHECKSUM&" . intval($cfg_ocs["checksum"]) . ") > 0
OR `LASTDATE` > '" . $server->fields["max_glpidate"] . "')
AND TIMESTAMP(`LASTDATE`) < (NOW()-180)
AND `ID` <= " . intval($server->fields["max_ocsid"]);
Le problème étant donc que j'ai testé avec le même PC dans un interval de temps trop court...
Offline