AddIDMessage (arcpy)
Краткая информация
Позволяет использовать системные сообщения с инструментом-скриптом. Перечень используемых сообщений и идентификаторов имеется в разделе Ошибки и предупреждения инструментов геообработки (Understanding geoprocessing tool errors and warnings).
Обсуждение
Ошибки и предупреждения возвращаются инструментами геообработки в виде шестизначного кода и текстового сообщения. Для каждого сообщения об ошибке и предупреждения существует страница описания в Справочной системе. На этой странице содержится подробное описание ошибки и возможный способ исправления. В диалоговых окнах инструментов, окне Python и окне Результаты код ID представляет собой ссылку, если щёлкнуть на которую, вы попадаете на страницу описания.
Синтаксис
Параметр | Объяснение | Тип данных |
message_type |
Сообщения бывают следующих типов – сообщения об ошибке, предупреждающие сообщения и информационные сообщения. Существуют следующие типы сообщений:
| String |
message_ID |
Идентификатор (ID) сообщения позволяет вам ссылаться на имеющиеся сообщения в случае ошибок сценария или предупреждений. | Integer |
add_argument1 |
В зависимости от используемого ID сообщения, для завершения этого сообщения может потребоваться аргумент. В основном это набор данных или имя поля. Тип данных может быть строкой, целым числом или числом двойной точности. | Object |
add_argument2 |
В зависимости от используемого ID сообщения, для завершения этого сообщения может потребоваться аргумент. В основном это набор данных или имя поля. Тип данных может быть строкой, целым числом или числом двойной точности. | Object |
Пример кода
Добавьте сообщение в инструмент-скрипт Python.
class overwriteError(Exception):
pass
import arcpy
in_feature_class = arcpy.GetParameterAsText(0)
out_feature_class = arcpy.GetParameterAsText(1)
try:
# If the output feature class already exists, raise an error
if arcpy.Exists(in_feature_class):
# Raise a custom exception
raise overwriteError(out_feature_class)
else:
arcpy.CopyFeatures_management(in_feature_class, out_feature_class)
except overwriteError as err:
# Use message ID 12, and provide the output feature class
# to complete the message.
arcpy.AddIDMessage("Error", 12, str(err))