Bonjour,
Je mets à disposition un outil Python permettant d’importer des désordres, ainsi que leurs observations et photos associées, dans SIRS à partir de fichiers GeoPackage (GPKG). Le cœur du processus consiste à formater le fichier GPKG de manière à permettre la création d'un JSON compatible avec CouchDB et SIRS. L’outil signale les erreurs de structure, les colonnes manquantes, les valeurs non conformes, etc.
Le code source et la documentation sont disponibles ici :
https://github.com/TechCabbalr/sirs_import
INSTALLATION:
pip install sirs_import
UTILISATION :
Usage principal: formater le fichier GPKG correctement:
cd chemin/vers/dossier
sirs_import

Pour extraire les linearId et contactId de la base faire:
cd chemin/vers/dossier
sirs_import –extract

Une fois le fichier validé on export vers la base avec:
cd chemin/vers/dossier
sirs_import –upload

Pour spécifier directement un fichier de configuration faire:
sirs_import –config chemin/vers/ma_config.toml
CONTENU DU DOSSIER DE TRAVAIL :
Le dossier dans lequel vous lancez sirs_import doit contenir :
  • 1. un fichier de configuration : config_sirs.toml par défaut si un autre nom est choisi il faut spécifier avec l'argument –config
  • 2. le fichier GPKG (géométrie des désordres)
  • 3. le dossier contenant les photos (les chemins doivent correspondre aux valeurs du GPKG)

FICHIER DE CONFIGURATION
Le fichier config_sirs.toml permet notamment :
  • définir quelles colonnes du GPKG correspondent aux champs de désordres
  • d’utiliser des valeurs « statiques » lorsque certaines colonnes n’existent pas
  • de définir des valeurs de repli (fallback) pour les observations et les photos lorsque des champs sont absents

Un exemple détaillé de fichier de configuration est fourni dans le dépôt GitHub: config_sirs.example.toml
RECOMMANDATION :
Pour vos premiers essais, il est fortement conseillé d’utiliser une base SIRS de test non synchronisée, afin de valider le résultat de l’import avant de travailler sur votre base principale.

REMARQUES:
Le package a été développé en se basant sur SIRS 2.52. la compatibilité avec SIRS 2.53, bien que probable, n'a pas été testée.

Cordialement

Julien
citer citer la sélection