Отдельная таблица
Целый спектр возможность открывается, если использовать Z-таблицы в качестве справочников. Однако, если дать разработчикам полную свободу, то засилье Z-таблиц рано или поздно приведёт к “мусорке”, в которой трудно найти что-либо нужное.
Здесь самое главное предварительно определиться, действительно ли нужен отдельный справочник в конкретном случае. Во многих случая допустимо:
- обойтись другими техническими методами решения
- использовать существующие информационные данные системы
- использовать другие объекты в системе SAP
- использовать один из нижеописанных вариантов
И если он уже нужен настоящий справочник, то “вперёд и с песней”, со всеми преимуществами и недостатками.
Обобщённые справочники
Можно использовать для объединения нескольких независимых справочников в одну Z-таблицу и одну группу функций ведения:
- Если некоторые справочники можно уложить в одну “концепцию” по каталогу полей
- Таких справочников получается достаточно много
- Управление ими находится почти в одних руках
- одинаковые правила по переносам и зависимостью от манданта
Например, можно использовать следующие подходы:
- код + описание, независимость от манданта, с запросами
- Показатель + дата_с + дата_по + значение, без запросов, зависимость от манданта
Преимущества:
- Более простое управление
- Только одна таблица и только одна группа функций
- Нет проблем с общей группой функций при добавлении новых справочников
Домен
Небольшие справочники можно заводить и непосредственно в свойствах домена:
Однако основные нюансы:
- Список значений – постоянный и не настраиваемый
- Значения справочника являются частью разработки, а не настройки
- Справочник не зависит от манданта
- Только два поля – код (длина 10) и описание (длина 60)
- Средство поиска будет само подставляться при использовании поля
- Значения полей описаний зависят от языка
- Найти значения можно в таблицах DD07L(коды) и DD07T(описания) по ключу (имя домена)
Поэтому мои рекомендации в части использования такого подхода:
- Заводить сюда справочники можно только очень выборочно – только в том случае, если вы уверены, что данный справочник — “навсегда” и не будет пересмотрен без пересмотра программного кода
- Количество записей в таком справочнике должно быть небольшим (не больше 10)
- Настройщик и пользователь – не имеют доступа к просмотру и изменению значений
- Управлением занимается только разработчик, который ведёт разработку программы, в которой используется таблица, в которой включен этот домен
- Использование вторичных средств поиска возможно, но не рекомендуется
Общие справочники
И ещё… некоторые справочники, имеющие глобальный характер, необходимо держать в некотором “межпроектном” пространстве.
К таким справочникам можно отнести почти все справочники, утверждённые “сверху” (классификаторы по материалам, классификаторы по платежам, классификаторы по контрагентам и тому подобные).
Использование в коде
В качестве предупреждения: не используйте неявные ссылки на справочник. Журнал использования должен быть (по мере возможности) полным.