Текущее время: Вс, июл 27 2025, 11:59

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




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Альтернативный календарь
СообщениеДобавлено: Пн, апр 07 2014, 12:39 
Специалист
Специалист

Зарегистрирован:
Пн, дек 26 2011, 18:05
Сообщения: 110
Откуда: МСК
Пол: Мужской
Коллеги, поделитесь опытом.

Необходимо создать два альтернативных календаря по неделям.

Например: я продал Товар Х 30-го декабря 2012 года. Этот факт должен быть отнесен одновременно на две недели - на последнюю неделю 2012-года и на первую неделю 2013 года. В отчете пользователь выбирает какой вариант календаря он хочет посмотреть и в соответствии с его выбором меняются цифры - в моем примере результаты продаж.

кто решал похожую задачу - отзовитесь. Спасибо :)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Альтернативный календарь
СообщениеДобавлено: Пн, апр 07 2014, 13:54 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

Зарегистрирован:
Вс, янв 11 2009, 14:41
Сообщения: 902
Откуда: Москва
Пол: Мужской
Заводим признак "Вариант календаря" со значениями:
1 - Первый вариант
2 - Второй вариант

При заполнении в трансформации этого признака, если запись должна быть отнесена к Первому варианту, пишем 1, если ко-второму - пишем 2, если к обоим - пишем 3 (т.к. по битовой логике 1+2 = 3)

В самом отчете заводим две переменные
- переменную для ввода (не на признаке - просто числовую)
- переменную множественного выбора USER-EXIT (на признаке "Вариант календаря"). В расширении ее обрабатываем таким образом: если пользователь ввел 1 в первой переменной, то вторая переменная заполняется значениями 1 и 3, если пользователь ввел 2 в первой переменной, то вторая переменная заполняется значениями 2 и 3

PS: И с вас тоже 1000 руб. коту на молочко


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Альтернативный календарь
СообщениеДобавлено: Пн, апр 07 2014, 16:32 
Специалист
Специалист

Зарегистрирован:
Пн, дек 26 2011, 18:05
Сообщения: 110
Откуда: МСК
Пол: Мужской
Да, такой вариант рассматривался :) Но у него есть один небольшой минус - приходится размножать данные. Такие образом данные по каждой продаже необходимо записывать на вариант 1 и вариант 2, что увеличивает объем записей в БД.

Хотелось бы как-то избежать этого размножения...


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Альтернативный календарь
СообщениеДобавлено: Пн, апр 07 2014, 21:21 
Гуру-эксперт
Гуру-эксперт
Аватара пользователя

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


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Альтернативный календарь
СообщениеДобавлено: Вт, апр 08 2014, 10:21 
Специалист
Специалист

Зарегистрирован:
Пн, дек 26 2011, 18:05
Сообщения: 110
Откуда: МСК
Пол: Мужской
Должна быть возможность смотреть данные в разрезе обоих календарей. Т.е. пользователь на селекционном экране выбирает как он хочет смотреть.

По вашей супер идеи: не понял почему не будут размножаться данные :( На сколько я понял схема такая: данные грузятся в куб. При загрузке они дублируются и в специальный признак (тип календаря) записываются к какому типу календаря относится цифра. Поясните, плиз, как ваше решение позволяет этого избежать. для тех кто в танке :)


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

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

Условно предположим вы загрузили строчку 30.12.2012 Продано 100 шт и размножили ее, превратив в

30.12.2012 Продано 100 шт Оригинал
01.01.2013 Продано 100 шт Виртуал

где Оригинал - соответствует оригинальным записям, Виртуал - сгенерированным. Тогда, при формировании отчета, вы можете указать в качестве параметров отчета:

- Год
- Вариант (1 или 2)

При этом выбор 1 приведет к тому, что отчет будет выбирать данные только со значением Оригинал, а выбор варианта 2 - выберет записи Оригинал и Виртуал.

Это я привел некий абстрактный пример. Может на самом деле вам нужно получать отчеты по таким ограничениям:

- Год (интервал)
- Вариант (1 или 2)

и тут картина резко меняется и размножение не поможет. Чтобы вам ответили точно, надо задавать ясный и конкретный ответ. "Должна быть возможность смотреть данные в разрезе обоих календарей" - это не конкретно!

Вы просили привести решение "похожей задачи". Я привел решение похожей задачи, которая, возможно, не решает в точности вашу проблему, но поможет вам в поиске правильного решения. Если взять за основу предыдущий пример, то он будет выглядеть так

29.12.2012 Продано 50 шт 1
30.12.2012 Продано 100 шт 3, где 3 = 1+2
01.01.2013 Продано 30 шт 2

Записи в этом варианте не размножены. Мы можем получить данные по условиям:

- только 1 (записи за 2012 год - вариант календаря 1)
- 1 и 3 (записи за 2012 год - вариант календаря 2)

- только 2 (записи за 2013 год - вариант календаря 1)
- 2 и 3 (записи за 2013 год - вариант календаря 2)

- 1 и 2 (интервал 2012-2013 год - вариант календаря 1 - возможно бессмысленный запрос!!!)
- 1, 2, 3 (интервал 2012-2013 год - вариант календаря 2)


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Альтернативный календарь
СообщениеДобавлено: Вт, апр 08 2014, 15:38 
Специалист
Специалист

Зарегистрирован:
Пн, дек 26 2011, 18:05
Сообщения: 110
Откуда: МСК
Пол: Мужской
Не совсем понял откуда в примере цифры 50 и 30? В изначальном варианте у нас была одна продажа на 100 шт. :?:


Цитата:
29.12.2012 Продано 50 шт 1
30.12.2012 Продано 100 шт 3, где 3 = 1+2
01.01.2013 Продано 30 шт 2


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Альтернативный календарь
СообщениеДобавлено: Вт, апр 22 2014, 13:11 
Ассистент
Ассистент

Зарегистрирован:
Чт, фев 26 2009, 00:21
Сообщения: 41
Tiktuger написал:
Коллеги, поделитесь опытом.

Необходимо создать два альтернативных календаря по неделям.

Например: я продал Товар Х 30-го декабря 2012 года. Этот факт должен быть отнесен одновременно на две недели - на последнюю неделю 2012-года и на первую неделю 2013 года. В отчете пользователь выбирает какой вариант календаря он хочет посмотреть и в соответствии с его выбором меняются цифры - в моем примере результаты продаж.

кто решал похожую задачу - отзовитесь. Спасибо :)

А что-нибудь мешает создать новый признак ZCALWEEK и заполнять 0calweek стандартом, чтобы не возникало неконсист. информации в кубе, а ZCALWEEK - как душе угодно? Размножать строки не придется, ограничения ставятся через user-exit, вопрос только с разверткой в отчете - устроит что есть 2 признака?


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

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


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

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


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

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