Создание сообщение в наборе инструментов Python
Когда инструмент запущен, ArcPy точно знает, из какого приложения, например, ArcMap или ArcCatalog, он был вызван. Один из главных эффектов заключается в том, что вы можете записывать сообщения в Python, и ваши сообщения будут автоматически появляться в окне процесса, в окне Результаты инструмента, и в окне Python. Это также означает, что любая модель или инструмент-скрипт, которые вызывают ваш инструмент-скрипт, получают доступ к созданным вами сообщениям.
Более подробно о сообщениях см. Основы сообщений в инструментах-скриптах.
В наборе инструментов Python, объект messages используется для добавления дополнительных сообщений к инструменту.
Типы сообщений | Описание |
---|---|
addMessage(message) | Добавляет информационное сообщение в инструмент |
addErrorMessage(message) | Добавляет сообщение об ошибке в инструмент Примечание: addErrorMessage не создаст исключения. |
addWarningMessage(message) | Добавляет предупреждение в инструмент |
addIDMessage(message_type, message_ID, add_argument1=None, add_argument2=None) | Добавляет различных видов сообщения, используя коды сообщений геообработки |
addGPMessages() | Добавляет сообщения последнего запущенного инструмента геообработки в инструмент |
Пример добавления сообщений
В приведенном ниже примере оцениваются входные данные, и если они не содержат объектов, к инструменту добавляется сообщение и он прекращает работу с исключением 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.GetCount_management(input).getOutput(0)) == 0:
messages.addErrorMessage("{0} has no features.".format(input))
raise arcpy.ExecuteError
return
Сообщения могут быть также добавлены с помощь таких функций ArcPy, как, например, AddMessage. См. Типы сообщений и их опасность для получения более подробной информации.