Résumé
Obtenez des informations telles que la description du jeu de données réseau utilisé pour l'analyse et les limites d'exécution d'un outil dans le service de géotraitement.
Utilisation
L'outil est destiné à être utilisé avant d'exécuter les autres outils dans le service de géotraitement. Par exemple, si vous devez identifier le nombre maximum d'arrêts pris en charge par l'outil FindRoutes, vous pouvez exécuter l’outil GetToolInfo pour déterminer la limite.
Syntaxe
arcpy.naagol.GetToolInfo(serviceName, toolName)
Paramètre | Explication | Type de données |
serviceName | Le nom du service contenant l'outil. La valeur du paramètre doit être spécifiée avec l'un des mots-clés suivants qui référence un service de géotraitement spécifique :
La valeur par défaut est asyncRoute. | String |
toolName | Le nom de l'outil dans le service de géotraitement. La valeur du paramètre doit être un nom d'outil valide dans le service de géotraitement spécifié par le paramètre serviceName. Les noms d’outils valides sont les suivants :
La valeur par défaut est FindRoutes. | String |
Sortie dérivée
Nom | Explication | Type de données |
toolInfo | Informations supplémentaires concernant un outil dans le service de géotraitement. | Chaîne |
Exemple de code
Exemple d'utilisation de l'outil GetToolInfo
Le script Python ci-dessous illustre l’utilisation de l’outil GetToolInfo dans un script.
'''
The script shows how to use the GetToolInfo tool to get the maximum number of stops
that can be used as inputs with FindRoutes tool.
'''
import sys
import json
import arcpy
#Change the username and password applicable to your own ArcGIS Online account
username = "<your user name>"
password = "<your password>"
utility_service = "https://logistics.arcgis.com/arcgis/services;World/Utilities;{0};{1}".format(username, password)
#Add the geoprocessing service as a toolbox.
arcpy.ImportToolbox(utility_service)
#Call the tool to get the limits for the FindRoutes tool
result = arcpy.Utilities.GetToolInfo("asyncRoute", "FindRoutes")
#Print any warning or error messages returned from the tool
result_severity = arcpy.GetMaxSeverity()
if result_severity == 2:
arcpy.AddMessage("An error occured when running the tool")
arcpy.AddMessage(arcpy.GetMessages(2))
sys.exit(2)
elif result_severity == 1:
arcpy.AddMessage("Warnings were returned when running the tool")
arcpy.AddMessage(arcpy.GetMessages(1))
#Retrieve the tool info and convert it to a dictionary
output_tool_info_json = result.getOutput(0)
output_tool_info_dict = json.loads(output_tool_info_json)
#Retrieve the maximum number of stops allowed by the service
max_stops = int(output_tool_info_dict["serviceLimits"]["maximumStops"])
arcpy.AddMessage("The maximum number of stops supported by the FindRoutes tool: {}" .format(max_stops))
Environnements
Cet outil n'utilise pas d’environnement de géotraitement.