Была похожая проблема. Составлял отчет, который собирает данные о лимитах сотрудника за определенный период и выводит их вместе с личными данными и оргприсвоением. При выводе запроса не на конкретную дату, а за некоторый период, если у сотрудника менялось оргприсвоение, то записи лимитов за этот период дублируются.
После некоторых опытов и консультаций со старшими... удалось выяснить, что механизм выбора по периоду в SAP Query работает следующим образом.
При выборе переключателя "Другой период" и вводе даты в поля "Период выбора данных" (BEGDA и ENDDA) - анализируются записи всех инфо-типов, включенных в запрос и выводятся записи по всем инфо-типам, действительные в указанный период. Отсюда и дублирование. И при этом еще выбранные вами условия выбора игнорируются (например,если вы хотели получить данные только по активным работникам, то не тут то было... вам впридачу еще и уволенных выдадут).
При выборе переключателя "Другой период" и вводе даты в поля "ПериодВремВыбПерсонала" (BEGPS и ENDPS) - анализируются записи по сотрудникам только в инфо-типе 0001 и выводятся записи, для которых в указанный период для сотрудника существовало оргприсвоение.
А вообще из опыта работы с SAP Query сделал для себя следующий вывод: Чтобы обеспечить корректную выборку без дублирования информации, необходимо по возможности сузить перечень инфо-типов вывода. И в каждом конкретном случае анализировать, какая из групп полей BEGDA/ENDDA или BEGPS/ENDPS больше подходит для указания периода выбора
|
|