Skip To Content

esri_webfeaturelayer_set (AutoLISP)

esri_webfeaturelayer_set 函数用于更新工程图中的指定 web 要素图层的属性。

语法

(esri_webfeaturelayer_set flname subtype service_properties)

参数

  • flname | 字符串 | 必填 | 工程图中现有的 web 要素图层名称。
  • subtype | 字符串 | 可选 | 为要素图层定义的现有子类型名称,或使用空字符串 "" 表示所有子类型或不存在子类型。
  • service_properties | 关联列表 | 必填 | 点对形式的 web 要素图层属性的关联列表,如下表定义:

    相关标注值类型值描述必填或可选
    "BRANCH"

    字符串

    受影响编辑分支的名称。

    可选

    "CADLAYER"

    字符串

    AutoCAD 图层的名称,该图层将用于在追踪 Web 要素图层的要素时覆盖默认图层名称。

    可选

    "DEFINITIONEXPRESSION"

    字符串

    WHERE 子句表达式,用于按属性值限制图层中的要素。 WHERE 子句的语法取决于源数据。

    可选

    "DESCRIPTION"

    字符串

    如果类型为 {Block Reference},则为块名称;如果类型为 {"AECC_COGO_POINT"},则为描述

    可选

    "EDITMODE"

    整型

    编辑选项。 选项为 {1=edit, 0=no edit}

    可选

    "SUBLAYER_FIELD"

    字符串

    用于定义子图层的字段名称。 输入一个空字符串 "",以清除所有子图层,由此将删除现有子图层并将所有要素移至父图层。 这不会导致对要素几何图形或属性的任何修改。 在设置子图层字段之前,必须清除子图层。 具有服务定义的子类型字段的图层不支持自定义子图层。

    可选

    "SAVEASTEMPLATE"

    字符串

    有效值为 {"Local"},表示工程图中的本地存储。

    可选

    "TYPE"

    字符串

    {"POINT"}{"Block Reference"} {"AECC_COGO_POINT"} 默认元素类型

    可选

示例用法 1

Damage_to_Commercial_Buildings Web 要素图层 editor01.sampleBranch 分支的 Web 要素图层编辑属性设置为只读。

(esri_webfeaturelayer_set "Damage_to_Commercial_Buildings" ""
  (list
  (cons "EDITMODE" 0)
  (cons "BRANCH" "editor01.sampleBranch") 
  )
)

结果示例用法 1

Damage_to_Commercial_Buildings Web 要素图层 editor01.sampleBranch 分支的 Web 要素图层编辑属性设置为只读,并返回 true 列表。

(T)

示例用法 2

设置默认 AutoCAD 图层名称以追踪 Olympia_Meters Web 要素图层到 AutoCAD 图层 AB-METERS-EXCommercial 子类型,从而覆盖默认图层。

(esri_webfeaturelayer_set "Olympia_Meters" "Commercial"
  (list
  (cons "CADLAYER" "AB-METERS-EX")
  )
)

结果示例用法

Olympia_Meters Web 要素图层的 Commercial 子类型的 Web 要素图层编辑属性设置为只读编辑模式并返回 true 列表:

(T)

返回值

  • 如果成功,则该函数将返回一个 true 列表:(T)
  • 如果失败,则该函数将返回一个列表,其中第一个值为 nil,然后是一个包含键值 "Error" 的关联列表以及字符串形式的关联错误消息:(nil ("Error" . "<message>"))

失败的返回值

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

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

    未提供一个或多个必填参数。

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

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

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

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

  • (nil ("Error" . "Cannot set a type field on a sublayer.")

    无法在子图层上设置 type 字段。

  • (nil ("Error" . "Web feature layer does not support editing.")

    您可能正尝试在不支持编辑的 Web 要素图层上调整 EDITMODE。