摘要
使用具有脚本工具的系统 ID 消息。
说明
对于脚本工具,可使用 AddWarning 和 AddError 函数创建自己的错误和警告消息。 或者,也可以使用 AddIDMessage 函数编写任何标准错误或警告消息。
但是,要重用标准错误或警告,首先必须了解六位代码。 这需要您进行一些研究;您必须在帮助中搜索描述以查找正确的六位代码。 在确定相应的 ID 之后,请对需要包含在消息中的附加信息做出注释,通常表示为 <值>。
语法
AddIDMessage (message_type, message_ID, {add_argument1}, {add_argument2})
参数 | 说明 | 数据类型 |
message_type | Specifies the message severity.
| String |
message_ID | The message ID allows you to reference existing messages for your scripting errors and warnings. | Integer |
add_argument1 | Depending on which message ID is used, an argument may be necessary to complete the message. Common examples include dataset or field names. Data type can be string, integer, or double. | Object |
add_argument2 | Depending on which message ID is used, an argument may be necessary to complete the message. Common examples include dataset or field names. Data type can be string, integer, or double. | Object |
代码示例
向 Python 脚本工具添加消息。 下面的 Python 示例可检查是否已提供一个要素类作为输入值;如果尚未提供,则使用 AddIDMessage 函数返回 ID 代码 12 (000012:<值> 已存在)。 可选参数用于将要素类名称代入到消息中。
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))