Obtenir les noms des modèles de diagramme (Diagramme 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 technique ou de réseau de traces. Vous devez utiliser un réseau technique ou un réseau de traçages dans une géodatabase fichier ou une connexion de base de données à un réseau technique ou à un réseau de traces dans une géodatabase d’entreprise. Lorsque vous utilisez une géodatabase d’entreprise, tenez compte des exigences suivantes :

  • Cet outil est principalement utilisé pour effectuer une boucle sur les modèles de diagramme lors de l’exécution dans ModelBuilder ou dans Python.

Syntaxe

arcpy.nd.GetDiagramTemplateNames(in_utility_network)
ParamètreExplicationType de données
in_utility_network

Réseau réseau de distribution ou réseau de traçage auquel les noms de modèle de diagramme sont associés.

Utility Network; Trace Network

Sortie dérivée

NomExplicationType de données
out_template_names

Noms des modèles de diagramme en sortie.

Chaîne

Exemple de code

Exemple d’utilisation de l’outil 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 :

  1. Copiez le script ci-dessous dans tout IDE Python et enregistrez avec l’extension .py.
  2. Lancez ArcGIS Pro avec un nouveau projet ou un projet existant.
  3. 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).
  4. Cliquez avec le bouton droit sur cette boîte à outils et cliquez sur New (Nouveau) > Script.
  5. Complétez l’onglet General (Général) comme suit :
    • Name (Nom) : saisissez ExportAllDiagramTemplateDefinitions.
    • Label (Intitulé) : saisissez Export All Diagram Template Definitions (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.
  6. Complétez l’onglet Parameters (Paramètres) comme suit :
    • 1er paramètre
      • Label (Intitulé) : saisissez Input Network (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 technique) et Trace Network (Réseau de traçages).
      • Type : sélectionnez Required (Obligatoire).
      • Direction : sélectionnez Input (Entrée).
    • 2e paramètre
      • Label (Étiquette) : 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).
  7. 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 :

  1. Développez la boîte à outils et double-cliquez sur l’outil pour l’ouvrir.
  2. Spécifiez le paramètre Input Network (Réseau en entrée). Autrement dit, parcourez et sélectionnez le fichier de connexion de base de données référençant le réseau à partir duquel vous souhaitez exporter toutes les définitions de modèle.
  3. Spécifiez le paramètre Output Folder (Dossier en sortie) : autrement dit, parcourez et sélectionnez le dossier en sortie où vous souhaitez exporter les fichiers de définition de modèle.
  4. 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.GetDiagramTemplateNames_nd(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.ExportDiagramTemplateDefinitions_nd(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.

Informations de licence

  • Basic: Non
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes