Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions doc/gestiongeo/document_methodologique.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,9 @@ Liste des fonctions appliquées sur un exemple: P:\Appli_GG\RECOL\100090331_5900

| ORDRE | COLONNE | FONCTION | RESULTAT | REMARQUE |
|-------|------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------|------------------------|
| 1 | DOS_NUM | =STXT(B2;CHERCHE("\|";SUBSTITUE(B2;"\";"\|";NBCAR(B2)-NBCAR(SUBSTITUE(B2;"\";""))))+1;CHERCHE("_";STXT(B2;CHERCHE("\|";SUBSTITUE(B2;"\";"\|";NBCAR(B2)-NBCAR(SUBSTITUE(B2;"\";""))))+1;CHERCHE("\|";SUBSTITUE(B2;"\";"\|";NBCAR(B2)-NBCAR(SUBSTITUE(B2;"\";"")))));1)-1) | 100090331 | |
| 2 | ID_DOS | =RECHERCHEV(C2;Feuil1!$A$2:$A$4525;2;FAUX) | 3744 | ATTENTION A LA MATRICE |
| 3 | NVX_CHEMIN | =CONCATENER(SUBSTITUE((STXT(B2;1;CHERCHE("\|";SUBSTITUE(B2;"\";"\|";NBCAR(B2)-NBCAR(SUBSTITUE(B2;"\";""))))));"\";"/");D2) | V:/PROJET/14_GESTION_GEO/Appli_GG/RECOL/3744 | |
| 1 | DOS_NUM | ``=STXT(B2;CHERCHE("|";SUBSTITUE(B2;"\";"|";NBCAR(B2)-NBCAR(SUBSTITUE(B2;"\";""))))+1;CHERCHE("_";STXT(B2;CHERCHE("|";SUBSTITUE(B2;"\";"|";NBCAR(B2)-NBCAR(SUBSTITUE(B2;"\";""))))+1;CHERCHE("|";SUBSTITUE(B2;"\";"|";NBCAR(B2)-NBCAR(SUBSTITUE(B2;"\";"")))));1)-1)`` | 100090331 | |
| 2 | ID_DOS | ``=RECHERCHEV(C2;Feuil1!$A$2:$A$4525;2;FAUX)`` | 3744 | ATTENTION A LA MATRICE |
| 3 | NVX_CHEMIN | ``=CONCATENER(SUBSTITUE((STXT(B2;1;CHERCHE("|";SUBSTITUE(B2;"\";"|";NBCAR(B2)-NBCAR(SUBSTITUE(B2;"\";""))))));"\";"/");D2)`` | V:/PROJET/14_GESTION_GEO/Appli_GG/RECOL/3744 | |


#### 1.4. Renommer les répertoires.
Expand Down
32 changes: 32 additions & 0 deletions integration/G_GESTIONGEO/CORRECTION_URL/1_GESTION_GEO_COMMANDE.bat
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
:: extraction des dossiers gestiongeo de la base
@ECHO OFF

:: 0.
SET /P CHEMIN_INSERTION="Veuillez saisir le chemin d'acces au repertoire contenant la liste des repertoires des dossiers GESTION_GEO: "
SET /p USER="Veuillez saisir l utilisateur Oracle : "
SET /p MDP="Veuillez saisir le MDP : "
SET /p INSTANCE="Veuillez saisir l instance Oracle :"

:: 1. Creation de la liste des repertoires présents dans le dossier gestion geo
CALL GESTION_GEO_liste_fichier_1.bat

:: 2. Encodage en UTF-8
chcp 65001

:: 3. Se mettre dans l'environnement de QGIS ;
c:
cd C:\Program Files\QGIS 3.20.3\bin

:: 4. Configurer le système d'encodage des caractères en UTF-8
SET NLS_LANG=AMERICAN_AMERICA.AL32UTF8

:: 5. Rediriger la variable PROJ_LIB vers le bon fichier proj.db afin qu'ogr2ogr trouve le bon scr
setx PROJ_LIB "C:\Program Files\QGIS 3.16\share\proj"

:: 6. Export de la liste des dossiers gestion geo
CALL ogr2ogr.exe -f OCI OCI:%USER%/%MDP%@%INSTANCE%:TEMP_LISTE_FICHIER_GESTION_GEO %CHEMIN%/liste_fichier_gestiongeo_test_incremente_colonne.csv -nln TEMP_LISTE_FICHIER_GESTION_GEO -lco ENCODING=UTF-8

:: 7. Mise en forme de la table TEMP_LISTE_FICHIER_GESTION_GEO afin de renommer les dossiers GESTION_GEO.
C:/ora12c/R1/BIN/sqlplus.exe %USER%/%MDP%@%INSTANCE% @%CHEMIN_INSERTION%\G_GESTION_GEO_MISE_EN_FORME_LIEN_1.sql

PAUSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
:: export des chemins corriges des dossiers GESTION_GEO.
@ECHO OFF

:: 0.
SET /P CHEMIN="Veuillez saisir le chemin de sortie des listes issues de la base: "
SET /P CHEMIN_SHELL="Veuillez saisir le chemin de localisation des traitements shell de renommage des fichiers et des dossiers.: "
SET /p USER="Veuillez saisir l utilisateur Oracle : "
SET /p MDP="Veuillez saisir le MDP : "
SET /p INSTANCE="Veuillez saisir l instance Oracle :"

:: 1. Se mettre dans l'environnement de QGIS ;
c:
cd C:\Program Files\QGIS 3.16.9\bin

:: 2. Configurer le système d'encodage des caractères en UTF-8
SET NLS_LANG=AMERICAN_AMERICA.AL32UTF8

:: 3. Rediriger la variable PROJ_LIB vers le bon fichier proj.db afin qu'ogr2ogr trouve le bon scr
setx PROJ_LIB "C:\Program Files\QGIS 3.16\share\proj"

:: 3. Export des nouveaux chemins des dossiers GESTION GEO.
CALL ogr2ogr.exe -f "CSV" %CHEMIN%/liste_repertoire_renommer.csv OCI:%USER%/%MDP%@%INSTANCE%: -sql "SELECT DISTINCT REPLACE(DOSSIER,'\','/') AS DOSSIER, REPLACE(LIEN_RENOMMAGE_DOSSIER,'\','/') AS LIEN_RENOMMAGE_DOSSIER FROM TEMP_LISTE_FICHIER_GESTION_GEO WHERE ID_DOS IS NOT NULL"

:: 4. Export des nouveaux chemins des fichier GESTION GEO.
CALL ogr2ogr.exe -f "CSV" %CHEMIN%/liste_fichier_renommer.csv OCI:%USER%/%MDP%@%INSTANCE%: -sql "SELECT REPLACE(LIEN,'\','/') AS FICHIER, REPLACE(LIEN_RENOMMAGE_FICHIER,'\','/') AS LIEN_RENOMMAGE_FICHIER FROM TEMP_LISTE_FICHIER_GESTION_GEO WHERE ID_DOS IS NOT NULL AND LIEN NOT LIKE '%Thumbs.db'"

:: 5. Retour dans le dossier ou ce trouve les deux fichiers shell pour renommer les repertoires.
cd %CHEMIN_SHELL%

:: 6. Appel de la commande GESTION_GEO_renommer_fichier_2 pour modifier le nom des repertoires
GESTION_GEO_renommer_fichier_2.sh

:: 7. Appel de la commande GESTION_GEO_renommer_repertoire_2 pour modifier le nom des repertoires
GESTION_GEO_renommer_repertoire_2.sh

PAUSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
:: suppression des fichiers CSV
@ECHO OFF

:: 0. Encodage en UTF-8
chcp 65001
SET /P CHEMIN="Veuillez saisir le chemin de sortie du fichier qui va contenir les nouveaux chemins des repertoires: "
SET /p USER="Veuillez saisir l utilisateur Oracle : "
SET /p MDP="Veuillez saisir le MDP : "
SET /p INSTANCE="Veuillez saisir l instance Oracle :"

:: Deplacement dans le repertoire fichier
CD %CHEMIN%

:: Suppression des fichiers CSV
DEL liste_fichier.csv
DEL liste_fichier_gestiongeo_test_incremente.csv
DEL liste_fichier_gestiongeo_test_incremente_colonne.csv
DEL liste_repertoire.csv
DEL liste_repertoire_gestiongeo_test_incremente.csv
DEL liste_repertoire_gestiongeo_test_incremente_colonne.csv
DEL liste_repertoire_renommer.csv

:: Suppression des éléments temporaire en base
:: table TEMP_LISTE_FICHIER_GESTION_GEO
:: table TEMP_LISTE_REPERTOIRE_GESTION_GEO

:: 7. Mise en forme de la table TEMP_LISTE_REPERTOIRE_GESTION_GEO afin de renommer les dossiers GESTION_GEO.
CALL C:/ora12c/R1/BIN/sqlplus.exe %USER%/%MDP%@%INSTANCE% @%CHEMIN%\G_GESTION_GEO_NETTOYAGE_3.sql

PAUSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
:: Le but de ces commandes est d'importer en base la liste des chemins des fichiers de chaque dossier créé avec GESTIONGEO en base.
:: Afin de corriger la colonne DOS_URL_FILE de la table GEO.TA_GG_DOSSIER

:: 1. Encodage en UTF-8
chcp 65001

:: 2. Déclaration des variables des chemins et des identifiants de la base Oracle:
SET /p CHEMIN='Entrez un chemin de sortie: '
SET /p CHEMIN_IC='Entrez le chemin des repertoire des donnees IC: '
SET /p CHEMIN_RECOL='Entrez le chemin des repertoires des donnees RECOL: '

:: 3. Commande pour avoir la liste des fichiers contenues dans le repertoire RECOL:
FOR /D %%A IN (%CHEMIN_RECOL%) DO (DIR /b /s /A-D>> %CHEMIN%\liste_fichier.csv "%%A\")
ECHO liste RECOL fait

:: 4. Commande pour avoir la liste des fichiers contenues dans le repertoire IC:
FOR /D %%A IN (%CHEMIN_IC%) DO (DIR /b /s /A-D>> %CHEMIN%\liste_fichier.csv "%%A\")
ECHO liste IC fait

:: 5. Mise en forme du fichier généré aux étapes 3 et 4 par des commandes linux. Appelle du fichier généré en shell

GESTION_GEO_liste_fichier_1.sh

PAUSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#!/bin/bash
# Ce script à pour objectif:
# 1. de rajouter une colonne OBJECTID a la liste CSV générer par le scipt batch commande_liste.bat.
# 2. importer le tableau dans ORACLE avec oger2ogr.
# Ce script est appelé par le fichier gestion_geo_import_liste.bat afin de mettre en forme le fichier liste_fichier_gestiongeo_test_incremente.csv pour qu'il puisse etre importé par ogr2ogr dans la base Oracle
#/!\ il faut placer le script à l'endroit ou le fichier liste_fichier_gestiongeo_test.csv est créé. Autrement dans le repertoire indiqué par la variable CHEMIN du fichier gestion_geo_import_liste.bat.

# incrémente le fichier CSV.
# awk -F";" '{$1=++i FS $1;}1' OFS=, liste_repertoire.csv > liste_repertoire_gestiongeo_test_incremente.csv

# ajout des titres des colonnes dans la premiere ligne du fichier
# awk 'BEGIN{print "OBJECTID;LIEN"}{print}' liste_repertoire_gestiongeo_test_incremente.csv > liste_repertoire_gestiongeo_test_incremente_colonne.csv

awk -F";" '{$1=++i FS $1;}1' OFS=, liste_fichier.csv > liste_fichier_gestiongeo_test_incremente.csv

# ajout des titres des colonnes dans la premiere ligne du fichier
awk 'BEGIN{print "OBJECTID;LIEN"}{print}' liste_fichier_gestiongeo_test_incremente.csv > liste_fichier_gestiongeo_test_incremente_colonne.csv



#form (){
# # incrémente le fichier CSV.
# awk -F";" '{$1=++i FS $1;}1' OFS=, $1/liste_repertoire.csv > $1/liste_repertoire_gestiongeo_test_incremente.csv
# # ajout des titres des colonnes dans la premiere ligne du fichier
# awk 'BEGIN{print "OBJECTID;LIEN"}{print}' $1/liste_repertoire_gestiongeo_test_incremente.csv > $1/liste_repertoire_gestiongeo_test_incremente_colonne.csv
# }

#echo indiquez le chemin de sorti

#read CHEMIN

#form $CHEMIN

#PAUSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/bash

# 1. COMMAND DE RENOMMAGE DES FICHIERS
exec &> liste_fichier_renommer.log
awk -F , '{ system("mv -v "$1" "$2"") }' liste_fichier_renommer.csv

PAUSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/bin/bash

# 1. COMMAND DE RENOMMAGE DES REPERTOIRES
exec &> liste_repertoire_renommer.log
awk -F , '{ system("mv -v "$1" "$2"") }' liste_repertoire_renommer.csv

PAUSE
Loading