РАЗРАБОТКА ABAPP1L2

CDS view entities: семантика и слои модели данных

Роль CDS view entities в семантической модели SAP, границы слоёв, associations и проверки агрегирования для финансовой аналитики.

Ревизия 2 Общие понятия Частичное покрытие Контекст: CTX-GENERAL документальная опора: недостаточно данных
Справочный материал. Контракты данных, архитектурные решения и ограничения применения. Источники приведены в материалах, где используются внешние основания.

CDS view entities: семантика и слои модели данных#

CDS view entity задаёт модель поверх одного или нескольких источников данных. Помимо списка полей, она может описывать связи через associations, вычисляемые выражения, параметры и семантические аннотации. Поэтому CDS полезна как переиспользуемый контракт бизнес-данных для приложений и аналитики, а не только как короткая форма SQL-запроса.

В модели обычно разделяют базовый слой сущностей и специализированные проекции для конкретного сценария. Базовая сущность должна выражать устойчивую бизнес-семантику и ключи; верхний слой задаёт отбор, отображение или аналитическую роль для конкретного потребителя. Не стоит превращать один универсальный view в хранилище всех исключений: это скрывает кардинальность и делает изменение одного сценария неожиданным для других.

Ключи и associations#

CDS key обозначает ключевые элементы представления, но сам по себе не исправляет дубликаты в источнике и не гарантирует уникальность результата после join. До публикации модели установите уровень детализации каждой сущности, кратность association и ожидаемое поведение при отсутствии связанной записи. Для финансовых данных проверьте, не умножает ли связь проводки на несколько текстов, статусов, назначений или периодов действия.

Associations помогают объявить навигационные отношения и могут быть развёрнуты в запросе потребителя. Это не означает, что стоимость и результат любого пути навигации очевидны без анализа сформированного запроса. Проверяйте фактическую выборку, число строк и суммы на репрезентативном наборе, прежде чем использовать модель для сверки.

Семантика финансовых полей#

Сумма должна быть связана с валютой, количество - с единицей измерения, а дата - с её деловым смыслом. Аннотации помогают потребителям интерпретировать эти поля, но не заменяют корректную модель исходных данных. Разделяйте ledger, компанию, фискальный период, валютный тип и статус позиции там, где они меняют смысл результата.

Аналитическая проекция должна явно задавать допустимое агрегирование и уровень детализации результата. Не суммируйте несовместимые валюты, единицы, ledger или повторно показанные уровни иерархии. Проверяйте пустые и начальные значения, знаки сторно и правила включения незавершённых записей на фиксированных примерах.

Версия и контракт потребителя#

CDS-функции, доступные аннотации, ограничения модификации и поведение потребителя зависят от версии ABAP Platform и продукта. Проверьте целевой release и документацию его модели данных. Для разработки в ограниченном языке ABAP дополнительно проверьте, что используемый CDS-объект доступен как released API.

Порядок проверки: определить потребителя и grain; описать ключи и кардинальности; добавить семантику суммы, валюты и даты; проверить выборку на тестовых данных; затем проверить доступность объектов и аннотаций в целевой версии. Этот материал не описывает конкретную конфигурацию Universal Journal и не подтверждает запуск CDS в SAP runtime.

Источники и статус доказательств#

Источники и документация

  1. View Entities ↗
  2. ABAP SQL - Overview ↗

Источники нужны для самостоятельной проверки. Примеры и интерпретации на сайте могут быть учебными упрощениями.