Skip To Content

esri_fielddef_add (AutoLISP)

Добавляет новое определение полей для существующего векторного слоя документа.

Примечание:

Вы не можете изменить определения полей векторного веб-слоя.

Синтаксис

(esri_fielddef_add flname field_properties)

Аргументы

  • flname | string | обязательный | имя существующего векторного слоя документа текущего чертежа.
  • field_properties | связанный список | обязательный | список параметров в виде разделенных точками пар значений, как указано в следующей таблице:

Связанная надписьТип значенияОписание значенияОбязательные или дополнительные
"NAME"

string

Имя поля.

обязательный

"TYPE"

string

Значение типа поля. {"Double", "Short", "GUID", "Integer", "String", "Float", "Date"}

дополнительный (по умолчанию - "String")

"LENGTH"

integer

Длина поля.

optional

"VALUE"

variant

Значение поля по умолчанию.

Примечание:

При работе с полями, имеющими кодированные значения доменов, это описание, а не код.

дополнительный

Пример использования

Попытайтесь добавить короткое целое поле YearPurchased в векторный слой Parks.

(esri_fielddef_add "Parks"
  (list
    (cons "name" "YearPurchased")
    (cons "Type" "Short")
    (cons "value" "1954")
  )
)

Пример использования результата

Короткое целочисленное поле YearPurchased добавляется к векторному слою Parks и возвращается список, содержащий имя поля.

("YearPurchased")

Возвращаемые значения

  • В случае успеха возвратится список с именем поля в виде строки.
  • В случае неудачи возвращается список с первым значением nil, а затем связанный список, содержащий значение ключа "Error" и соответствующее сообщение об ошибке в виде строки: (nil ( "Error" . "<message>"))

Не удалось возвратить значения

Неудачное возвращение значения может произойти по любой из следующих причин:

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

    Не указан один или несколько обязательных аргументов.

  • (nil ("Error" . "Field name already exists."))

    Используемое имя поля уже существует.

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

    Заданный векторный слой не является допустимым слоем чертежа.

  • (nil ("Error" . " Schema doesn't support editing."))

    Вы не можете изменить определения полей векторного веб-слоя.