Текущее время: Чт, июл 24 2025, 01:52

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




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: Виртуальный куб на основе ФМ
СообщениеДобавлено: Чт, июл 18 2013, 10:36 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Есть виртуальный куб и ФМ, реализующий его логику. В параметрах ФМ-у передаются 2 таблицы: одна с глобальными параметрами (фильтр запроса) и локальные ограничения на показателях

*" REFERENCE(I_T_RANGE) TYPE RSDRI_T_RANGE OPTIONAL
*" REFERENCE(I_TX_RANGETAB) TYPE RSDRI_TX_RANGETAB OPTIONAL

Мне надо всю логику ФМ-а, которая была ранее, подменить вызовом данных из нового мультипровайдера. Для этого пытаюсь использовать ФМ RSDRI_INFOPROV_READ, но в нем нет эквивалентного параметра I_TX_RANGETAB. Как можно выкрутиться из данной ситуации (I_TX_RANGETAB должна обязательно присутствовать в параметрах - это важно)? Может есть какие-то альтернативные модули чтения мультипровайдера, где все параметры соответствуют?


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Виртуальный куб на основе ФМ  Тема решена
СообщениеДобавлено: Чт, июл 18 2013, 11:11 
Начинающий
Начинающий

Зарегистрирован:
Чт, июл 04 2013, 14:31
Сообщения: 4
Можно попробовать воспользоваться методом READ класса CL_RSDRI_INFOPROV, если не пугает страшная надпись рядом с этим параметром (I_TX_RANGETAB TYPE RSDRI_TX_RANGETAB): "For internal use only: do not use!".


Пометить тему как нерешенную
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Виртуальный куб на основе ФМ
СообщениеДобавлено: Пт, июл 19 2013, 23:21 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, сен 30 2011, 11:47
Сообщения: 62
Пол: Мужской
стандартный код примерно такой (пишу по памяти, надо проверять):
Code:
DATA:
  l_t_range type rsdri_t_range.

  l_t_range[] = i_t_range[].

  loop at i_tx_rangetab assigning <l_s_rangetab>.
     append <l_s_rangetab>-t_range to l_t_range.
  endloop.



i_t_range - глобальные фильтры
i_tx_rangetab - фильтры для элементов структур


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Виртуальный куб на основе ФМ
СообщениеДобавлено: Сб, июл 20 2013, 06:58 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Таким кодом вы логическое выражение V1*(V2+V3+V4) раскрываете как V1*V2*V3*V4, что неправильно. Так что "зелененькая штучка" остается за Розовым слоном

где
V1 - i_t_range - глобальные фильтры
V2, V3, V4 - i_tx_rangetab - фильтры для элементов структур


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Виртуальный куб на основе ФМ
СообщениеДобавлено: Сб, июл 20 2013, 18:22 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, сен 30 2011, 11:47
Сообщения: 62
Пол: Мужской
На самом деле.
Ну тогда надо галочку поставить "Использовать только глобальные условия выбора" у кубика и вообще не использовать I_TX_RANGETAB.

А что, от зеленых штучек есть какой-то профит?


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Виртуальный куб на основе ФМ
СообщениеДобавлено: Пн, июл 22 2013, 07:52 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Не использование I_TX_RANGETAB приведет к тому, что данных будет больше извлекаться, и разбиваться запрос на несколько подзапросов (по крайней мере в моем случае) не сможет.


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Виртуальный куб на основе ФМ
СообщениеДобавлено: Пн, июл 22 2013, 21:41 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, сен 30 2011, 11:47
Сообщения: 62
Пол: Мужской
Если уж виртуальник для отчетности, то зачем он вообще такой нужен с большими объемами данных...


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Виртуальный куб на основе ФМ
СообщениеДобавлено: Вт, июл 23 2013, 07:51 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

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


Пометить тему как нерешенную
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Виртуальный куб на основе ФМ
СообщениеДобавлено: Вт, июл 23 2013, 21:29 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, сен 30 2011, 11:47
Сообщения: 62
Пол: Мужской
Софистика...
Ну, как я это вижу... Если источник данных будет DSO, то навряд ли будет профит от нескольких запросов к нему. Если это кубы, то можно подумать еще о целесообразности анализа критериев для FEMS... кэш для подзапросов и все такое.
Интересно, что будет в случае, если есть показатель без фильтров и другой с фильтрами - получается, что все равно нужны все записи... как-нибудь надо посмотреть что передается в I_TX_RANGETAB.

Если найдете красивое решение, отпишитесь, будет интересно посмотреть.


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

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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