You are not logged in.
Salut à tous,
J'avais besoin de mettre à jour les lieux des ordinateurs et moniteurs dans GLPI à partir d'un ficher CSV extrait de l'annuaire de notre entreprise.
Etant donné que ceci est impossible via le plugin data_injection, voici le script SQL que j'ai utilisé pour cela, au cas où cela intéresse quelqu'un :
create table majlieux
(
username VARCHAR(255) collate utf8_unicode_ci,
lieu VARCHAR(255) collate utf8_unicode_ci,
lieucomplet VARCHAR(255) collate utf8_unicode_ci,
id INT(11),
PRIMARY KEY (username)
)
LOAD DATA INFILE '/usr/glpi/lieux.csv'
INTO TABLE majlieux
FIELDS TERMINATED BY ';'
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
UPDATE majlieux set lieucomplet = lieu
insert ignore into glpi_locations (name, completename) select distinct lieu, lieucomplet from majlieux
update majlieux
inner join glpi_locations on majlieux.lieu = glpi_locations.name
set majlieux.id = glpi_locations.id
update glpi_computers
inner join majlieux on majlieux.username = glpi_computers.contact
set glpi_computers.locations_id = majlieux.id
update glpi_monitors
inner join majlieux on majlieux.username = glpi_monitors.contact
set glpi_monitors.locations_id = majlieux.id
drop table majlieux
Principe du système :
0°) création d'une table "majlieux" pour l'import des données du fichier csv
1°) import des données du csv dans une table nommée "majlieux"
2°) import des nouveaux lieux dans la table glpi_locations à partir de la table "majlieux"
3°) import de l'ID des lieux dans la table "majlieux" à partir de la table "glpi_locations"
4°) définition du lieu des ordinateurs en mettant à jour le champ "locations_id" dans "glpi_computers" via une jointure avec le nom d'utilisateur de la table "majlieux"
5°) définition du lieu des moniteurs en mettant à jour le champ "locations_id" dans "glpi_monitors" via une jointure avec le nom d'utilisateur de la table "majlieux"
6°) suppression de la table majlieux.
Enjoy
GLPI 0.84.7 - Plugins : data_injection 2.3.1 - OCS Inventory NG 1.0.3 - Barscode 1.0
OCS Inventory 2.1.2 clients + serveur / Hébergement local sur serveur Dell R320 RHEL 6.5
Scan des code-barres grâce à l'application "QR Droid" sur smartphones android
Parc de 300 postes
Offline