Текущее время: Сб, дек 06 2025, 14:01

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Композитный провайдер, соединение с историческим справочником.
СообщениеДобавлено: Ср, окт 28 2015, 14:36 
Начинающий
Начинающий

Зарегистрирован:
Ср, окт 28 2015, 14:03
Сообщения: 3
Добрый день Всем!
Недавно изучаю SAP BW, понадобился отчет в Bex на композитном провайдере, в котором есть два обьекта, например заказ(поля: дата, товар) и прайс-лист(товар,цена, дата_с, дата_по), в sql
соединить просто:
Code:
select * from заказ,прайс-лист where заказ.товар=прайс-лист.товар(+) and заказ.дата between прайс-лист.дата_с(+) and прайс-лист.дата_по(+)

но в sap можно сделать только outer join:заказ.товар=прайс-лист.товар(+), а вот по дате с between никак или не знаю. Возможно в провайдере сделать join только по товару, а в Bex сделать фильтр заказ.дата between прайс-лист.дата_с and прайс-лист.дата_по, но и тут пока не понимаю как. Подскажите как решают такие соединения.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Композитный провайдер, соединение с историческим справочником.
СообщениеДобавлено: Ср, окт 28 2015, 16:40 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Вот как бы я не стал делать... :D

DSO_1:
материал
дата

DSO_2:
материал
дата_с
дата_по
цена (пусть будет показатель, потому что так делать не стоит)

INFOSET:
DSO_1 left outer join DSO_2 по материалу

Query:
В строках (все признаки без итогов):
Материал
Дата
Дата_с (скрыть)
Дата_по (скрыть)

В столбцах:
NODIM(Цена)*Формула на переменных замены
Цена (скрыть)
Формула на переменных замены (скрыть): (DATE_FROM <= DATE and DATE <= DATE_TO) or ((DATE_FROM + DATE_TO) == 0)

Условие:
Формула на переменных замены > 0
в разрезе:
Материал
День
Дата_с
Дата_по

DSO_1:
Материал Дата
1 10.01.2015
2 10.01.2015
2 15.01.2015
2 20.01.2015

DSO_2:
Материал Дата_с Цена Дата_по
2 05.01.2015 70,00 11.01.2015
2 12.01.2015 100,00 16.01.2015

Результат:
Материал Календарный день Цена
1 10.01.2015 0
2 10.01.2015 70
2 15.01.2015 100


Последний раз редактировалось murmur Ср, окт 28 2015, 17:37, всего редактировалось 2 раз(а).

Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Композитный провайдер, соединение с историческим справочником.
СообщениеДобавлено: Ср, окт 28 2015, 17:07 
Начинающий
Начинающий

Зарегистрирован:
Ср, окт 28 2015, 14:03
Сообщения: 3
Спасибо.
Несколько смущает 'неполный' join, фильтровать придется [товар X на всю историю по товару] строк на стороне апп-сервера, ну да ладно. А в итогах скрытые строки учитываются?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Композитный провайдер, соединение с историческим справочником.
СообщениеДобавлено: Ср, окт 28 2015, 17:30 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
В итогах скрытые строки учитываются

Я же написал, что так делать не надо (хотя ОНО и работает)... 8)

PS: Если бы возникла потребность, то сделал бы через виртуальные признаки или же старым добрым способом - в процессе загрузки цену бы привязывал


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: Ahrefs [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB