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

Научили меня недавно одному нехитрому способу удаления повторяющихся записей, отображающихся в результатах работы средства поиска. Об этом самом способе и будет данная заметка.

0. Задача

  • Создать средство поиска по пользовательской таблице.

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

1. Решение задачи

1.1 Пользовательская таблица, по которой работать новое средство поиска

Итак, у меня есть таблица, в которой содержатся следующие записи

1.2 Средство поиска

По таблице, представленной в пункте # 1.1, мне необходимо создать элементарное средство поиска.

См. Создание средства поиска

Рисунок 2. GIF-анимация: создание элементарного средства поиска по пользовательской таблице

Как видно на GIF-анимации, представленной на Рисунке #2, в результате запуска созданного средства поиска, отобразились все записи, первоначально занесенные в таблицу (включая дублированные, которые мне необходимо будет исключить).

1.3 Создание функционального модуля для удаления повторяющихся записей

Система SAP позволяет создавать функциональные модули, предназначенные для расширения логики работы средств поиска. Так называемые Search Help Exit

См. Search Help Exit

В качестве примера такого search help exit, посмотрите на функциональный модуль F4IF_SHLP_EXIT_EXAMPLE, открыв его с помощью транзакции SE37

Обратите внимание на комментарии, любезно предоставленные вендором, в исходном коде данного функционального модуля.

Создайте новый ФМ по аналогии с F4IF_SHLP_EXIT_EXAMPLE со следующим исходным кодом

Активируйте внесенные изменения

N.B. При создании нового функционального модуля, обратите внимание на то, чтобы параметры, определенные на закладках Changing / Tables совпадали с теми, что указаны в ФМ F4IF_SHLP_EXIT_EXAMPLE

Рисунок 5.

Затем укажите созданный функциональный модуль в средстве поиска, и выполните его активацию

Рисунок 6.

1.4 Тестирование

Далее все просто. Запустите средство поиска, нажатием на кнопку 

Рисунок 7. GIF-анимация: тестирование работы средства поиска, после исключения повторяющихся значений

Результаты работы можно сравнить с анимацией, представленной на gif анимации в начале заметки.

Спасибо за внимание!