5.9 KiB
Работа с записями
Запись — одна строка в справочнике (например, конкретный космический
аппарат «ISS» в справочнике spacecraft).
Добавить запись
- Открой справочник в каталоге
- Кнопка «Создать запись» в правом верхнем
- Заполни поля по схеме — обязательные помечены звёздочкой
- Период действия —
valid_from/valid_to:valid_from— с какой даты запись актуальна (по умолчанию: сейчас)valid_to— до какой даты (по умолчанию: открыто)
- «Сохранить» — запись появляется в списке
Бизнес-ключ
Если у справочника x-id-source: "code", бизнес-ключ берётся из поля
code. Иначе — задаётся отдельно при создании. Бизнес-ключ должен быть
уникален: попытка создать запись с уже существующим ключом → ошибка 409.
Локализованные поля
Поля с x-localized: true имеют отдельные значения для каждого языка:
Название [ru]: Международная космическая станция
Название [en]: International Space Station
Если оператор ввёл только одну локаль — остальные пусты, при чтении в
другой локали покажется fallback на язык по умолчанию словаря (обычно
ru для ЦУОД).
FK-поля (ссылки)
Поля с x-references отображаются как выпадающий список. Например, у
spacecraft поле type ссылается на satellite_type.code — оператор
выбирает значение из готового списка типов. Если нужный тип отсутствует —
сначала добавь его в справочник satellite_type, потом возвращайся.
Редактировать запись
- Клик по записи в списке → открывается боковая панель (drawer)
- Меняешь нужные поля, «Сохранить»
- Новая версия записи создаётся; предыдущая остаётся в истории (см. bitemporal модель)
История версий доступна:
- В drawer'е — кнопка «История версий»
- В timeline-режиме (
TimeTravel) — слайдер по датам
Что нельзя редактировать
- Бизнес-ключ — фиксирован с момента создания. Если ошибся — нужно закрыть запись (см. Закрытие записи) и создать новую.
- Схему — общая для всех записей справочника, меняется только через schema draft.
Поиск и фильтрация
В каталоге справочника — toolbar поиска и фильтров:
- Поиск по тексту — ищет по бизнес-ключу и локализованным полям
- Только заполненные — toggle, скрывает записи где конкретное поле пустое
- Период — фильтр по
valid_from/valid_to - Scope — фильтр по уровню доступа (для администраторов)
Глобальный поиск
В шапке (TopBar) — ⌘K / Ctrl+K — поиск через все справочники по
бизнес-ключу или фрагменту названия.
Bulk-операции
Сейчас bulk import / export — только через API (интеграционный гайд). В UI массовых операций пока нет — добавятся в будущих версиях по запросам от операторов.
Что произойдёт при сохранении
- В БД добавляется новая версия записи
- В Kafka-топик публикуется событие
RecordCreatedилиRecordUpdated(потребители — Альтум, геопортал, BI — узнают об изменении в течение секунд) - В audit log пишется кто изменил, когда, что было до и после
- Если справочник имеет включённую Redis-проекцию — кэш обновляется автоматически
Типичные ошибки
См. Разбор ошибок. Самые частые:
- «Бизнес-ключ уже существует» (409) — попробуй другой
codeили проверь, не закрыта ли существующая запись (фильтр истории) - «Поле X обязательно» (422) — посмотри
requiredв схеме - «FK не найден» (422) — значение
x-referencesуказывает на запись, которой нет; добавь в referenced справочник - «Период действия пересекается» (409) — для bitemporal: нельзя иметь две активные версии одной записи в один момент. См. Закрытие записи.