
BOPF (Business Object Processing Framework) — это фреймворк для работы с бизнес объектами (BO). Данный фреймворк подразумевает инкапсуляцию данных и всех инструментов для работы с ними. То есть это ООП на глобальном уровне.
Основными транзакции для работы с BOPF:
BOBX — Business Object Enhancement Workbench
BOBT — BO Test
Кратко BO представляют собой древовидную структуру в которой у BO есть нода ROOT. У нее может быть несколько суб-нод, каждая из которых так же может иметь одну или несколько суб-нод. Кроме того нодой может быть ассоциация с другим BO.


Если дважды кликнуть по ноде ROOT, то можно увидеть её данные. Рассмотрим основные из них.
Data Structure — структурой, которая представляет собой перечень хранимых данных. В данном случае это /BOBF/S_CONF_LIB_D.
Transient Structure — структура, которой можно дополнять данные. Однако эти данные не сохраняются и представляют собой вычисляемые данные. В нашем примере этот параметр пуст.
Combined Structure — структура ноды. Она включает в себя структуру /BOBF/S_FRW_KEY с ключевыми полями ноды, Data Structure и Transient Structure. Именно эта структура хранит все данные записи ноды.
Combined Table Type — тип таблицы на основании Combined Structure. Её используют для работы с записями ноды.
Database Table — имя таблицы базы данных, в которой хранятся данные ноды.
Кроме того у ноды имеются следующие элементы:
Association — ассоциации, описывающие связи с другими нодами или зависимыми бизнес-объектами.
Determination — определения, позволяющие указывать содержимое записи нод как для вычисляемых полей, так и для стационарных.
Validation — проверки, которыми можно валидацию содержимого записей.
Action — действия, которыми предоставляют возможность управлять содержимым ноды или суб-ноды — например добавлять новую зависимую запись в суб-ноду
Queries — запросы, которыми позволяют получать данные из ноды
Alternative Keys — альтернативные ключи, которые описывают более читаемые ключи записям ноды, вместо служебных ключей с идентификатором записи.