7.3 Importation d'archive

Ce chapitre décrit comment il est possible d'importer des documents avec des fichiers liés aux documents.

7.3.1 Importation de fichiers brute

Une archive brute permet d'importer un ensemble de fichiers. Ces fichiers sont inclus dans des familles qui ont au moins un attribut de type file ou image.

L'association entre la famille et le fichier est la suivante :

  • Fichier image : Famille Image IMAGE
  • Autre fichier : Famille Fichiers FILE
  • Répertoire : Famille Dossier DIR

L'éventuelle arborescence du contenu de l'archive est conservée.

$ unzip -l Files.zip
Archive:  Files.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
        0  2012-08-30 16:19   Dossier un/
     1321  2012-08-30 16:19   Dossier un/design.odt
     3321  2012-08-30 16:19   Dossier un/presentation.odp
        0  2009-02-26 16:07   Dossier deux/
   152726  2007-07-06 10:36   Dossier deux/notes techniques.doc
    63728  2007-07-06 10:36   Dossier deux/architecture.png

Cet extrait d'archive va créer deux dossiers, 3 documents de la famille fichiers et un document de la famille image.

Les fichiers sont insérés dans le premier (suivant la caractéristique order) attribut fichier trouvé de la famille associée.

7.3.2 Importation d'archive

Pour associer plus précisément les fichiers et les documents, il est nécessaire d'indiquer ces relations dans un fichier fdl.csv qui est un format CSV d'importation de document.

Si ce fichier est présent à la racine de l'archive, alors seul ce fichier est importé. Les autres fichiers peuvent dans ce cas être référencés par le fichiers fdl.csv.

//FAM animal(ZOO_ANIMAL) Identifiant Dossier nom espèce photo
ORDER ZOO_ANIMAL an_nom an_espece an_photo
DOC ZOO_ANIMAL aliRotor Rotor ZOO_ESP_ALLI Photos/1387_IMG_1684AFC2.jpg
DOC ZOO_ANIMAL Théodor ZOO_ESP_ALLI Photos/250px-Alligator.jpg
DOC ZOO_ANIMAL Éléonore ZOO_ESP_ALLI Photos/alligator-9112.jpg
DOC ZOO_ANIMAL Gator ZOO_ESP_ALLI Images/Gator.png
DOC ZOO_ANIMAL Olgator ZOO_ESP_ALLI Images/Reptilia_American_alligator.jpg

Dans cet exemple les chemins des fichiers devant être insérés dans l'attribut an_photo sont indiqués. Ces chemins sont relatifs à la racine de l'archive (Les fichiers doivent être présents dans l'archive pour être intégrés dans le document).

Cela donne une archive telle que celle-ci :

$ unzip -l Animals.zip
Archive:  Animals.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
     1205  2012-08-30 16:19   fdl.csv
        0  2012-08-30 16:19   Photos/
    12689  2012-08-30 16:19   Photos/1387_IMG_1684AFC2.jpg
    11321  2012-08-30 16:19   Photos/250px-Alligator.jpg
    21521  2012-08-30 16:19   Photos/alligator-9112.jpg
        0  2009-02-26 16:07   Images/
    83728  2007-07-06 10:36   Images/Gator.png 
   163728  2007-07-06 10:36   Images/Reptilia_American_alligator.jpg

7.3.3 Commande d'importation d'archive

La commande à lancer pour l'importation en console est :

./wsh.php --api=importDocuments --archive=yes --file=animals.zip

Note : L'option --archive=yes doit être indiquée pour ne pas confondre avec une importation classique de fichier CSV ou XML.

Le format d'archive peut être zip ou tgz.

×