Таблицы, поля и записи

Base содержит упорядоченные таблицы. Каждая таблица содержит определения полей, значения записей, необязательные матрицы данных ячеек, ресурсы, представления и индексы, которые используются при отрисовке и поиске.

Новые таблицы создаются без записей; добавляйте их явно через Facade API или импортируемый снимок.

Снимок таблицы

СвойствоТипОписание
idstringИдентификатор таблицы.
namestringНазвание таблицы.
fieldsRecord\<string, IFieldSnapshot\>Определения полей, где ключом служит идентификатор поля.
fieldOrderstring[]Упорядоченный список идентификаторов полей.
recordsRecord\<string, IRecordSnapshot\>Данные записей, где ключом служит идентификатор записи.
recordOrder?string[]Упорядоченный список идентификаторов записей.
primaryFieldIdstringИдентификатор основного поля.
viewsRecord\<string, IViewSnapshot\>Представления, где ключом служит идентификатор представления.
viewOrderstring[]Упорядоченный список идентификаторов представлений.
resources?IBaseResourcesОбщие ресурсы вариантов выбора, участников и вложений.

Снимок поля

СвойствоТипОписание
idstringИдентификатор поля.
namestringНазвание поля.
description?stringОписание поля.
typeBaseFieldTypeТип поля.
configRecord\<string, unknown\>Конфигурация поля, зависящая от его типа.
defaultValue?BaseCellValueЗначение по умолчанию для новых записей.
system?booleanУказывает, управляется ли поле системой.
readonly?booleanУказывает, доступны ли значения только для чтения.

Типы полей

К распространённым типам полей относятся text, number, currency, progress, rating, checkbox, singleSelect, multiSelect, person, group, date, attachment, formula, createdAt, updatedAt, createdBy и updatedBy.

При разработке приложения используйте перечисления Facade:

TypeScript
const field = table.addField('Due date', univerAPI.Enum.BaseFieldType.Date)

Снимок записи

СвойствоТипОписание
idstringИдентификатор записи.
valuesRecord\<string, BaseCellValue\>Значения, где ключом служит идентификатор поля.
orderKeystringСтабильный ключ сортировки.
createdAtnumberВременная метка создания.
updatedAtnumberВременная метка обновления.
createdBy?stringИдентификатор создателя.
updatedBy?stringИдентификатор пользователя, выполнившего последнее обновление.

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

TypeScript
const table = base.insertTable('Tasks', { primaryFieldName: 'Title' })const title = table.getPrimaryField()const status = table.addField('Status', univerAPI.Enum.BaseFieldType.SingleSelect)const record = table.addRecord({  [title.getId()]: 'Write guide',  [status.getId()]: 'In progress',})

Насколько полезно это руководство?

© 2026 DreamNum Co., Ltd.