Skip To Content

esri_fielddef_get (AutoLISP)

此函数以关联列表形式获取要素图层的要素图层字段属性。

语法

(esri_fielddef_get flname field [subtype])

参数

  • flname | 字符串 | 必填 | 工程图中的现有要素图层名称。
  • field | 字符串 | 必填 | 字段名称。
  • subtype | 字符串 | 可选 | 如果您想要获取可能与父要素图层不同的目标子类型的相应字段定义,则子类型名称为必填项。

示例用法

尝试获取 UtilityPoles 要素图层 steel 子类型 PoleType 字段的字段属性。

(esri_fielddef_get "UtilityPoles" "PoleType" "steel")

结果示例用法

以关联列表的形式返回 UtilityPoles 要素图层 steel 子类型 PoleType 字段的字段属性。

(("NAME" . "PoleType") ("TYPE" . "Short") ("READONLY" . 0) ("LENGTH" . -1) ("VALUE" . 0) ("DOMAIN" . "UtilityPoles_TypeDomain"))

返回值

以下是可能的返回值:

  • 如果成功,则将以点对关联列表的形式返回字段属性,定义如下:
    • "NAME"| 字符串 | 返回字段名称。
    • "TYPE" | 字符串 | 返回字段类型值 {"Double", "Integer", "Short", "String"}
    • "READONLY" | 字符串 | 返回字段是否为只读 {1= yes, 0 = no}
    • "LENGTH" | 整型 | 返回字段的长度。
    • "VALUE" | 变量 | 返回字段定义的默认值。 如果字段具有编码值属性域,则默认值为索引值,而不是描述值。
    • "DOMAIN" | 字符串 | 字段属性域定义的名称。
  • 如果失败,则该函数将返回一个列表,其中第一个值为 nil,然后是一个包含键值 "Error" 的关联列表以及字符串形式的关联错误消息:(nil ( "Error" . "<message>"))

失败的返回值

出于以下任一原因,可能出现失败的返回值:

  • (nil ("Error" . "Field not found"))

    在指定要素图层上未找到指定字段。

  • (nil ("Error" . "Feature layer not found."))

    指定的要素图层值不是工程图中的有效要素图层。

  • (nil ("Error" . "Missing required argument."))

    未提供必填参数。