Удаление повторяющихся записей в результатах работы средства поиска
Удаление повторяющихся записей в результатах работы средства поиска.
Научили меня недавно одному нехитрому способу удаления повторяющихся записей, отображающихся в результатах работы средства поиска. Об этом самом способе и будет данная заметка.
0. Задача
-
Создать средство поиска по пользовательской таблице.
-
Исключить появление повторяющихся записей в результатах работы средства поиска.
1. Решение задачи
1.1 Пользовательская таблица, по которой работать новое средство поиска
Итак, у меня есть таблица, в которой содержатся следующие записи
1.2 Средство поиска
По таблице, представленной в пункте # 1.1, мне необходимо создать элементарное средство поиска.
Как видно на 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
Затем укажите созданный функциональный модуль в средстве поиска, и выполните его активацию
1.4 Тестирование
Далее все просто. Запустите средство поиска, нажатием на кнопку
Результаты работы можно сравнить с анимацией, представленной на gif анимации в начале заметки.
Спасибо за внимание!