{{tag>QGis action ogr2ogr PostGIS batch}}
====== Exporter les données d'une zone définie dans la base avec QGis ======
===== Question =====
Comment exporter facilement et régulièrement les données produites sur des périmètres environnementaux connus ?
===== Postulat =====
* mes périmètres sont dans la table export.zone_export_donnee
* mes données dans les tables tous_xxx_xxx_selon_format_esri
* je veux mettre les données exportées sur mon disque G, dans un répertoire correspondant à la structure
MKDIR "G:\SICEN\EXPORTS"\%1\sicen_%3
G:
CD "G:\SICEN\EXPORTS"\%1\sicen_%3
pgsql2shp -f sicen_point_espece.shp -h 192.168.1.230 -u dba -g geometrie sicen "SELECT export.tous_point_espece_selon_format_esri.*, classe, ordre, famille FROM export.tous_point_espece_selon_format_esri JOIN inpn.taxref ON export.tous_point_espece_selon_format_esri.cd_ref=cd_nom, export.zone_export_donnee WHERE st_intersects(export.tous_point_espece_selon_format_esri.geometrie, export.zone_export_donnee.geometrie) AND id_zone='%2';"
pgsql2shp -f sicen_perimetre_espece.shp -h 192.168.1.230 -u dba -g geometrie sicen "SELECT export.tous_perimetre_espece_selon_format_esri.*, classe, ordre, famille FROM export.tous_perimetre_espece_selon_format_esri JOIN inpn.taxref ON export.tous_perimetre_espece_selon_format_esri.cd_ref=cd_nom, export.zone_export_donnee WHERE st_intersects(export.tous_perimetre_espece_selon_format_esri.geometrie, export.zone_export_donnee.geometrie) AND id_zone='%2';"
pgsql2shp -f sicen_point_habitat.shp -h 192.168.1.230 -u dba -g geometrie sicen "SELECT export.tous_point_habitat_selon_format_esri.* FROM export.tous_point_habitat_selon_format_esri, export.zone_export_donnee WHERE st_intersects(export.tous_point_habitat_selon_format_esri.geometrie, export.zone_export_donnee.geometrie) AND id_zone='%2';"
pgsql2shp -f sicen_perimetre_habitat.shp -h 192.168.1.230 -u dba -g geometrie sicen "SELECT export.tous_perimetre_habitat_selon_format_esri.* FROM export.tous_perimetre_habitat_selon_format_esri, export.zone_export_donnee WHERE st_intersects(export.tous_perimetre_habitat_selon_format_esri.geometrie, export.zone_export_donnee.geometrie) AND id_zone='%2';"
DIR "G:\SICEN\EXPORTS"\%1\sicen_%3
explorer "G:\SICEN\EXPORTS"\%1\sicen_%3
=====utilisation =====
nom_de_la_commande.bat nom_de_la_structure id_zone 2011_08_25
===== Utilisation comme commande (action) avec QGis =====
La table export.zone_export_donnee est modifiable qans QGis.
Je renseigne une nouvelle zone (par exemple une demande d'un bureau d'étude).
Je clique sur l'action... et hop!
==== Définition de l'action ====
{{:outils:qgis:qgis_definition_action.png?400px|Définition de l'action}}
==== Déclenchement ====
{{:outils:qgis:qgis_clic_action.png?400px|Lancement de l'action depuis la fenêtre d'information de l'objet}}