|
|
|
MSTR связь фактов и измерений
|
|||
|---|---|---|---|
|
#18+
Простой кейс, 2 таблицы: Product_fact: product_key, qty_realesed Product_dim: id, category, type Оказлось что если у вас разные имена ключей, то выбрать таблицу для джойна нельзя. Нужно применить "heterogeneous mapping", окей: -создали аттрибут category -создали Form ID и добавили в него expression на таблицу фактов -добавили DESC - Category А теперь когда строим отчеты, получаем такой SQL: Код: plsql 1. 2. 3. А хотим получить, нормальный, с группировкой по категории а не по ключу: Код: plsql 1. 2. 3. Итого хотим: "heterogeneous mapping" + группировка не по ID Возможно ли такое сделать простым способом ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.04.2017, 19:21 |
|
||
|
MSTR связь фактов и измерений
|
|||
|---|---|---|---|
|
#18+
expel, Вам нужно создать один атрибут. В ID атрибута поместить product_key из факта и id из измерения(гетерогенный маппинг), при этом в качестве lookup таблицы выбрать измерение.В атрибут добавить форму DESC, в которую поместить category из измерения. Что у вас не получилось? Это основы работы с метамоделью в architect. Читайте внимательнее документацию по ProjectDesign. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2017, 09:21 |
|
||
|
MSTR связь фактов и измерений
|
|||
|---|---|---|---|
|
#18+
Beegoody, Вот я именно так и сделал как вы написали, но это не работает. Сейчас разобрался, нужно создать 2 аттрибута: 1) ID с гетерогенным маппингом (ID_FACT, ID_DIM) 2) ID = Category и указать attribute children на первый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2017, 12:55 |
|
||
|
MSTR связь фактов и измерений
|
|||
|---|---|---|---|
|
#18+
expel, У вас получался такой запрос: select f.product_key, max(d.category) category, qty_realesed from Product_fact f join Product_dim d ON d.id = f.product_key group by f.product_key Так было из-за того, что не верно указана LookUp таблица(в вашем случае была таблица фактов) Проверьте чтобы лукап таблица была Prodcut_dim ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2017, 15:35 |
|
||
|
MSTR связь фактов и измерений
|
|||
|---|---|---|---|
|
#18+
Beegoody, Да он всегда рисует этот max, если делать через 1 аттрибут. Lookup все стоят на дименшенах и это не помогает. Теперь когда сделал через 2 аттрибута(парент-чайлд), появились проблемы с добавлением нового измерения: Customer_dim: id, location, age Аттрибуты для него создал точно такие же, и хочу сделать в разрезе двух измерений. И теперь MSTR мне рисует какой-то лишний extra join: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. and a12.id = a13.id - откуда это я вообще не понимаю. Изменил все названия столбоцов, установил все mapping method = manual. Ничего не помогает =( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2017, 20:43 |
|
||
|
MSTR связь фактов и измерений
|
|||
|---|---|---|---|
|
#18+
expel, Добавьте в архитекте 3 таблицы из источника. Product_fact, Product_dim,Customer_dim. При добавлении таблицы в метамодель не создавайте атрибуты. Закройте и сохраните метамодель. Через Developer создайте атрибут Category с двумя формами: 1.ID имеющая два expression (1.Product_Key из факта и 2. id из Product_dim, лукап поставьте на измерении Product_dim) 2. DESC имеющая один expression (1. category из Product_dim) Создайте атрибут Customer с двумя формами: 1. ID имеющая два expression (1.customer_key из факта и 2.id из Customer_dim, лукап поставьте на измерении Customer_dim) 2. DESC имеющая один expression( 1. Location из Customer_dim) Не создавайте пока никакие связи parent-child. Проапдейте схему. В отчет закиньте два атрибута Category и Customer ну и какой-нибудь метрику по верх факта из Product_fact, например. При это в гриде проверье что формы DESC из обоих атрибутов отображаются в ReportObjects. Сохраните отчет и сгенерите SQL View. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2017, 21:47 |
|
||
|
|

start [/forum/topic.php?fid=49&gotonew=1&tid=1858277]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
165ms |
get topic data: |
12ms |
get first new msg: |
8ms |
get forum data: |
2ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 11ms |
| total: | 281ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...