Забавное использование стратегии деривации – в качестве хранилища данных

Транзакция FMDERIVE может использоваться как хранилище данных настроек.

В качестве минусов, конечно, можно отметить:

В ней очень удобно хранить некоторые данные – полей в структуре достаточно много, разрешены диапазоны, сроки действия, выстроена система переноса.

Примеры использования:

image

Конечно ни к каким балансовым единицам её привязывать не нужно.

В рамках этой стратегии создаём новый шаг – правило деривации:

image

В данном случае я задаю три исходных поля и одно целевое в качестве пустышки (требуется хотя бы одно поле).

Затем приступаем к заполнению данными:

image

Используем при необходимости диапазоны и сроки действия.

Ну и остался момент для того, чтобы использовать эту таблицу в собственном коде.

Сначала заглянем в таблицу TABADRS и ищем запись нашего шага стратегии:

image

PARAM_1 – это сгенерированная таблица где хранятся наши данные:

image

PARAM_2 – это инклюд с подпрограммами доступа к этой таблице, использовать ли его – дело вкуса.

Вот на основании всего этого и пишем наш собственный код

Сначала определения и инициализация:

image

И далее код вытягивания данных и реакции на результат:

image

Остаётся только попробовать в реальной работе…да и варианты использования можно ещё придумать…

Опубликовано 10.08.2010 в 17:52 · Автор ivan · Ссылка
Рубрики: ABAP

2 комментария

Подписаться на комментарии по RSS

  1. Написал(-а) Аноним
    27.09.2013 в 14:55
    Ссылка

    Спасибо! Статья очень хорошая!

  2. Написал(-а) Лиза
    27.08.2015 в 16:57
    Ссылка

    Для контроллинговых контировок можно использовать стандартную транзакцию:
    OKB9 — Изменение АвтоматПрисвоенКонтировок.
    (Для ведения большого числа записей можно делать LSMW используя «Позиционирование»).

    Ещё можно использовать FI-CO замещения и проверки в т.ч. писать свои расширения для них.
    GGB0 — Обработка проверок
    GGB1 — Обработка замещений

    В случае если меняется состав полей (исходных либо целевых) таблица деривации перегенерируется, да и переносом деривации можно затереть.
    Посмотреть название таблицы деривации можно также если провалиться в шаг деривации и выбрать функцию «Обзор» (Shift+F6). Дело в том, что порядковый номер правила может быть изменен. Например, Ваше фиктивное правило стоит 30-м, а нужно добавить 2 правила перед 10-м. Т.о., такие правила должны быть неактивными и стоять самыми первыми, чтобы не возникла необходимость их двигать.

Подписаться на комментарии по RSS

Написать комментарий