Escribir mensajes en una caja de herramientas Python

Cuando se ejecuta una herramienta, ArcPy está completamente al tanto de la aplicación que la invoca, como ArcMap o ArcCatalog. Un efecto principal de esto es que puede escribir mensajes en Python y sus mensajes aparecen automáticamente en el cuadro de diálogo de progreso, en el resultado de la herramienta en la ventana Resultados y la ventana Python. También significa que cualquier modelo o herramienta de secuencia de comandos que invoque la herramienta tiene acceso a los mensajes que usted escribe.

Para obtener más información sobre la mensajería, consulte Entender el envío de mensajes en las herramientas de secuencia de comandos.

En una caja de herramientas Python, un objeto de mensajes se utiliza para agregar mensajes adicionales de nuevo a la herramienta.

Métodos de mensaje

Descripción

addMessage(message)

Agrega un mensaje informativo a los mensajes de la herramienta

addErrorMessage(message)

Agrega un mensaje de error a los mensajes de la herramienta

NotaNota:

addErrorMessage no lanzará una excepción.

addWarningMessage(message)

Agrega un mensaje de advertencia a los mensajes de la herramienta

addIDMessage(message_type, message_ID, add_argument1=None, add_argument2=None)

Agrega un mensaje de cualquier tipo usando los códigos de mensajede geoprocesamiento

addGPMessages()

Agrega mensajes de la última ejecución de geoprocesamiento a los mensajes de la herramienta

Ejemplo de agregar mensajes

En el ejemplo siguiente, la entrada se evalúa y si no contiene entidades de entrada, se agrega un mensaje de error a la herramienta y una excepción de arcpy.ExecuteError se eleva al extremo de la herramienta.

def execute(self, parameters, messages):     input  = parameters[0].valueAsText     output = parameters[1].valueAsText              # If the input has no features, add an error message, and raise     #  an arcpy.ExecuteError     if int(arcpy.GetCount_management(input).getOutput(0)) == 0:         messages.addErrorMessage("{0} has no features.".format(input))         raise arcpy.ExecuteError                  return
NotaNota:

También puede agregar mensajes con las funciones ArcPy como AddMessage. Consulte Comprender la severidad y tipos de mensajes para obtener más información.

Temas relacionados

5/9/2014