Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Валюта и N документа в таблице фактов
|
|||
|---|---|---|---|
|
#18+
Есть DW отгрузка по моделям : (пока набор DBF баз : схема - звезда время , регион , вид , контракт , отгрузка -ТФ ) зерно таблицы фактов (ТФ) : кол-во отгруженное по модели по документу ( без Roll-Up) Сумма в USD , Цена в ВАЛ , Сумма в ВАЛ 1? Так как часто интересует именно валюта док-та - Т.е. получается что ВАЛЮТУ надо выносить в отдельную размерность а в клиентской части контролировать чтобы не подбивались Сумма в ВАЛ без ВАЛ. ? 2? N документа хочу в ТФ Не хочется делать отдельную размерность по документам ( их много 1/8 от ТФ ) но при этом надо всегда иметь возможность ( узнать номера документов ) как поступают ? P.S Если кто-то может поделиться общими рекомендациями по DW отгрузке напишите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2003, 15:54 |
|
||
|
Валюта и N документа в таблице фактов
|
|||
|---|---|---|---|
|
#18+
Я в подобных случаях делаю виртуальную вьюшку на основе DBF-баз, на основе этой вьюшки - создаю куб, и настраиваю обратную навигацию, открывая из сегмента куба эту вьюшку с автоматической передачей фильтра (DrillThrough). Так решается задача с номерами документов. Что касается валюты - можно делать либо по одной мере для каждой валюты, либо выносить название валюты в отдельное измерение, либо хранить в модели куба справочник пересчета валют. P.S. Все вышесказанное относится к функциональности OLAP-сервера Cognos PowerPlay (у других OLAP-серверов часть подобной функциональности может отсутствовать). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.10.2003, 16:11 |
|
||
|
Валюта и N документа в таблице фактов
|
|||
|---|---|---|---|
|
#18+
Если речь идёт о реализации в MS AS, то чудес лучше не ожидать. Нужна детализация по номерам документов - делай измерение с номерами документов. Только это существенно увеличивает время процессинга куба. Если действительно нужно смотреть, в какой валюте была продажа в документе, то делай валюту отдельным измерением. Тогда итоги автоматически не будут суммировать разновалютные суммы. Но и тогда ты не сможешь получить общую сумму в единой валюте. Хотя в принципе можно, если будешь для каждой валюты дублировать записи в таблице фактов суммы движения. Но, опять же в этом случае у тебя увеличивается количество строк ТФ (кол строк*кол валют) и ты теряшь возможность проанализировать уникальность связей валюта - документ, потому что получается что у тебя по всем документам имеются суммы во всех валютах. Можно сделать и по другому. Например: 1. в ТФ, под каждую валюту ты делаешь отдельную колонку движения денег и для каждого документа, записываешь движения в соответсвующую колонку + всегда рассчитываешь и записываешь движение в единой валюте, например в рублях, что бы получить итоги по всем движениям. 2. Делаешь отдельную таблицу измерений, в которой перечисляешь наименования валют. Причем наименования валют должны символ в символ совпадать с наименования соответсвующих колонок движений денег в ТФ. 3. Строишь по этой таблице измерений: 3.1. Shared измерение, скажем "ВалютаПродаж" 3.2.Куб "Валюта" которое содержит только измерение "ВалютаПродаж" измерение. 4. Строишь по таблице фактов куб, скажем "Продажи". 5. Создаёшь виртуальный куб, скажем "Продажи_Виртуальный", который включает в себя: - куб "Продажи" со всеми мерами и измерениями - куб "Валюта" со всеми мерами и измерениями (т.е. по сути только с измрением "ВалютаПродаж") 6. В итоге, в кубах "Продажи" и "Продажи_Виртуальный" у тебя есть для каждой валюты отдельная мера. Пользователю будем отображать не все эти меры, а поле СМ, в которое будем подставлять значение из нужных мер валют. Нужную меру определяем по выбору пользователем члена измерения "ВалютаПродаж". Формула СМ, в которую будет смотреть пользователь очень проста: strToMember("[Measures].[ВалютаПродаж].CurrentMember.name") Плюсом такого подхода является то что не увеличивается количество строк (т.е. под каждую валютту не дублируется строка). В итоге, если в таблицу клиента ты поместишь измерение номера документа и выберешь в измерении "ВалютаПродаж" не единую валюту, то в таблице останутся только строки тех документов, по которым была продажа в данной валюте и итоги тоже посчитаются правильно. Конечно же при таком подходе ты не сможешь помещать в табличную часть измерение "ВалютаПродаж". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2003, 09:53 |
|
||
|
Валюта и N документа в таблице фактов
|
|||
|---|---|---|---|
|
#18+
Можешь еще так попробовать: Если не заморачиваться с DrillTrougth(хотя для просмотра номера дока, это лучший вариант). Можно сделать номер дока как листья в иерархии дат. А в таблице фактов создать поле - валюта, и сделать calculated member на основе member properties который либо показывает валюту если пользователь развернул до документа, либо показывает пусто если пользователь смотрит скажем за год. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.10.2003, 15:01 |
|
||
|
|

start [/forum/topic.php?fid=49&msg=32286376&tid=1873088]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
135ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
| others: | 249ms |
| total: | 487ms |

| 0 / 0 |
