Tablas, Campos y Registros
Una Base contiene tablas ordenadas. Cada tabla contiene definiciones de campos, valores de registros, matrices de datos de celda opcionales, recursos, vistas e índices utilizados por la lógica de representación y búsqueda.
Las tablas nuevas comienzan con cero registros; agréguelos explícitamente mediante la API Facade o los datos de una instantánea importada.
Instantánea de la tabla
| Propiedad | Tipo | Descripción |
|---|---|---|
| id | string | Id. de tabla. |
| name | string | Nombre de tabla. |
| fields | Record\<string, IFieldSnapshot\> | Definiciones de campos codificadas por ID de campo. |
| fieldOrder | string[] | Lista ordenada de ID de campo. |
| records | Record\<string, IRecordSnapshot\> | Datos de registro codificados por ID de registro. |
| recordOrder? | string[] | Lista ordenada de ID de registro. |
| primaryFieldId | string | Id. de campo principal. |
| views | Record\<string, IViewSnapshot\> | Vistas codificadas por vista id. |
| viewOrder | string[] | Lista ordenada de ID de vista. |
| resources? | IBaseResources | Opciones compartidas, miembros y recursos adjuntos. |
Instantánea del campo
| Propiedad | Tipo | Descripción |
|---|---|---|
| id | string | Id. de campo. |
| name | string | Nombre de campo. |
| description? | string | Descripción de campo. |
| type | BaseFieldType | Tipo de campo. |
| config | Record\<string, unknown\> | Configuración de campo específico del tipo. |
| defaultValue? | BaseCellValue | Valor predeterminado para nuevo registros. |
| system? | boolean | Si el campo está administrado por el sistema. |
| readonly? | boolean | Si los valores son de solo lectura. |
Tipos de campos
Los tipos de campos comunes incluyen text, number, currency, progress, rating, checkbox, singleSelect, multiSelect, person, group, date, attachment, formula, createdAt, updatedAt, createdBy y updatedBy.
Utilice enumeraciones de fachada al crear el código de aplicación:
TypeScript
const field = table.addField('Due date', univerAPI.Enum.BaseFieldType.Date)Registrar instantánea
| Propiedad | Tipo | Descripción |
|---|---|---|
| id | string | Id. del registro. |
| values | Record\<string, BaseCellValue\> | Valores codificados por id. del campo. |
| orderKey | string | Clave de pedido estable. |
| createdAt | number | Marca de tiempo de creación. |
| updatedAt | number | Marca de tiempo de actualización. |
| createdBy? | string | Creador id. |
| updatedBy? | string | Id. del último actualizador. |
Ejemplo de fachada
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',})¿Cómo es esta guía?