Skip to main content

Сообщения набора инструментов Python

При запуске инструмента, ArcPy определяет приложение, из которого он был вызван. Это позволяет писать сообщения в Python. Эти сообщения автоматически отображаются в диалоговом окне инструмента, в Истории геообработки и в окне Python. Это также означает, что любая модель или инструмент-скрипт, которые вызывают ваш инструмент, получают доступ к созданным вами сообщениям.

Более подробно о сообщениях см. Основы сообщений в инструментах-скриптах.

В наборе инструментов Python объект messages можно найти в методе execute, и он используется для добавления дополнительных сообщений к инструменту. Существуют пять методов для записи сообщений:

Метод

Описание

addMessage(message)

К сообщению инструмента добавляется информационное сообщение.

addWarningMessage(message)

К сообщению инструмента добавляется предупреждение.

addErrorMessage(message)

К сообщению инструмента добавляется сообщение об ошибке.

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

Сообщение любого типа добавляется с использованием кодов сообщений геообработки.

addGPMessages()

К сообщению инструмента добавляются сообщения последнего запущенного инструмента геообработки.

Примечание:

Сообщения могут быть также добавлены с помощью таких функций инструмента-скрипта, как, например, AddMessage. Подробнее см. Запись сообщений в инструментах-скриптах.

Пример добавления сообщений

В приведенном ниже примере выполняется оценка входных данных и, если они не содержат входных объектов, в инструмент добавляется сообщение об ошибке и вызывается исключение arcpy.ExecuteError для завершения выполнения инструмента.

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.management.GetCount(input)[0]) == 0:
     messages.addErrorMessage("{0} has no features.".format(input))
     raise arcpy.ExecuteError

 return