Exportar las definiciones de todas las plantillas de diagrama relacionadas con una red determinada.
La siguiente herramienta de script recupera la lista de plantillas de diagrama relacionadas con una red y exporta las definiciones de cada plantilla a archivos .ndbd y .ndld en una carpeta dada.
Para agregar y configurar esta herramienta de script, siga estos pasos:
- Copie el siguiente script en cualquier IDE de Python y guárdelo con la extensión .py.
- Inicie ArcGIS Pro con un nuevo proyecto vacío o un proyecto existente.
- Agregue una nueva caja de herramientas o, en el panel Catálogo, haga clic en Proyecto y use la caja de herramientas predeterminada del proyecto en Cajas de herramientas.
- Haga clic con el botón derecho en esta caja de herramientas y haga clic en Nuevo > Script.
- Complete la pestaña General de la siguiente forma:
- Name: escriba ExportAllDiagramTemplateDefinitions.
- Label: escriba Export All Diagram Template Definitions.
- Script Filet: busque y seleccione el archivo .py creado en el paso 1.
- Complete la pestaña Parámetros de la siguiente forma:
- Primer parámetro
- Label: escriba Input Network.
- Name: conserve el nombre predeterminado, Input_Network.
- Data Type: seleccione Utility Network y Trace Network.
- Type: seleccione Required.
- Direction: seleccione Input.
- Segundo parámetro
- Label: escriba Definition Files Export Folder.
- Name: conserve el nombre predeterminado, Definition_Files_Export_Folder.
- Data Type: seleccione Folder.
- Type: seleccione Required.
- Direction: seleccione Input.
- Haga clic en Aceptar. El cuadro de diálogo Herramienta de script se cierra.
Para ejecutar la herramienta de script, siga estos pasos:
- Expanda la caja de herramientas y haga doble clic en la herramienta para abrirla.
- Especifique el parámetro Red de entrada, es decir, busque y seleccione el archivo de conexión de base de datos que hace referencia a la red de la que se desea exportar todas las definiciones de plantilla.
- Especifique el parámetro Carpeta de salida, es decir, busque y seleccione la carpeta de salida a la que desea exportar los archivos de definición de plantilla.
- Haga clic en Ejecutar.
# 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