Obtenir les noms des modèles de diagramme (Outils des diagrammes de réseau)
Résumé
Renvoie les noms de tous les modèles de diagramme associés à un réseau.
Utilisation
Cet outil n’est pas pris en charge en cas d’utilisation d’un service de réseau de distribution ou de traces. Vous devez utiliser un réseau de distribution ou un réseau de traces dans une géodatabase fichier ou mobile, ou une connexion de base de données à un réseau de distribution ou de traces dans une géodatabase d’entreprise. Lorsque vous utilisez une géodatabase d’entreprise, tenez compte des exigences suivantes :
Réseau de distribution ou réseau de traces auquel les noms de modèle de diagramme sont associés.
Utility Network; Trace Network
Sortie dérivée
Nom
Explication
Type de données
out_template_names
Noms des modèles de diagramme en sortie.
String
Exemple de code
Exemple d’utilisation de GetDiagramTemplateNames (processus)
Exportez les définitions de tous les modèles de diagramme associés à un réseau donné.
L’outil de script suivant récupère la liste des modèles de diagramme associés à un réseau et exporte les définitions de chaque modèle dans des fichiers .ndbd et .ndld dans un dossier donné.
Pour ajouter et configurer cet outil de script, procédez comme suit :
Copiez le script ci-dessous dans l’IDE Python de votre choix et enregistrez avec l’extension .py.
Lancez ArcGIS Pro avec un nouveau projet ou un projet existant.
Ajoutez une nouvelle boîte à outils ou, dans la fenêtre Catalog (Catalogue), cliquez sur Project (Projet) et utilisez la boîte à outils de projet par défaut sous Toolboxes (Boîtes à outils).
Cliquez avec le bouton droit de la souris sur cette boîte à outils et sélectionnez New > Script (Nouveau > Script).
Complétez l’onglet General (Général) comme suit :
Name (Nom)—Entrez ExportAllDiagramTemplateDefinitions.
Label (Intitulé)—Entrez Exporter toutes les définitions de modèle de diagramme.
Script File (Fichier de script)—Accédez au fichier .py créé à l’étape 1 et sélectionnez-le.
Complétez l’onglet Parameters (Paramètres) comme suit :
1er paramètre
Label (Intitulé)—Entrez Réseau en entrée.
Name (Nom)—Conservez le nom par défaut, Input_Network.
Data Type (Type de données)—Sélectionnez Utility Network (Réseau de distribution) et Trace Network (Réseau de traçages).
Type—Sélectionnez Required (Obligatoire).
Direction—Sélectionnez Input (Entrée).
2e paramètre
Label (Intitulé)—Entrez Dossier d’exportation des fichiers de définition.
Name (Nom)—Conservez le nom par défaut, Definition_Files_Export_Folder.
Data Type (Type de données)—Sélectionnez Folder (Dossier).
Type—Sélectionnez Required (Obligatoire).
Direction—Sélectionnez Input (Entrée).
Cliquez sur OK. La boîte de dialogue Script Tool (Outil de script) se ferme.
Pour exécuter l'outil de script, procédez comme suit :
Développez la boîte à outils et double-cliquez sur l’outil pour l’ouvrir.
Spécifiez le paramètre Input Network (Réseau en entrée). Autrement dit, accédez au fichier de connexion de base de données ou à la géodatabase fichier ou mobile référençant le réseau à partir duquel vous souhaitez exporter toutes les définitions de modèle, et sélectionnez-le.
Spécifiez le paramètre Output Folder (Dossier en sortie). Autrement dit, accédez au dossier en sortie où vous souhaitez exporter les fichiers de définition de modèle et sélectionnez-le.
Cliquez sur Run (Exécuter).
# Name: ExportAllDiagramTemplateDefinitions.py
# Description: Export definitions of all diagram templates related to a given network.
# Import system modules
import arcpy
import os
import re
# Initialize variables
msgInputsErr = "Invalid arguments."
msgScriptErr = "Error during script operation."
ndbd_ext = ".ndbd"
ndld_ext = ".ndld"
# Set overwrite option
arcpy.env.overwriteOutput = True
# Decodes parameters
try:
input_Network = arcpy.GetParameterAsText(0)
input_Folder = arcpy.GetParameterAsText(1)
if input_Network == "" or input_Folder == "" :
raise Exception()
except Exception:
arcpy.AddError(msgInputsErr)
raise
# Main code
try:
arcpy.AddMessage("Retrieving the templates list...")
output_TemplateNames = arcpy.nd.GetDiagramTemplateNames(input_Network)
templateNamesList = re.split(';', str(output_TemplateNames))
arcpy.AddMessage("Looping on each template...")
for template in templateNamesList:
message = "Exporting template: {}".format(template)
arcpy.AddMessage(message)
arcpy.nd.ExportDiagramTemplateDefinitions(input_Network, template,
os.path.join(input_Folder, template + ndbd_ext),
os.path.join(input_Folder, template + ndld_ext))
except Exception:
arcpy.AddError(msgScriptErr)
raise
Environnements
Cet outil n’utilise pas d’environnement de géotraitement.