Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
У меня есть 8 таблиц с фактами, из которых необходимо сделать аналитику. И ещё куча таблиц-словарей типа фамилии, названия городов, складов и т.д. Для аналитики (powerBI) необходимо, чтобы все факты располагались в центральной таблице. Это даст возможность сделать какую-то аналитику вроде "сумма фактов в третьей таблице разделить на сумму фактов в первой" и т.д. Приходится делать так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Есть ли какой-то способ не указывать эти "null"? При попытке добавить новый столбец фактов в таблицу B Код: sql 1. 2. 3. 4. 5. 6. приходится терпеливо прописывать null во всех остальных таблицах. Или эта задача вообще совсем иначе решается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2018, 18:16 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Ныне, присно и во веки веков 8 фактов будет? Анализируй это. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2018, 18:29 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
aleks222Ныне, присно и во веки веков 8 фактов будет? Анализируй это. факты могут добавиться. И какие могут быть предложения? Вот, у меня 8 таблиц, а фактов нифига не 8. Там есть и текстовые типа "категории", и т.д. - я задолбался уже эти столбцы добавлять и null по всем 8 таблицам раскидывать. Это те не факты типа "сумма в рублях", к которым в любой момент могут добавиться "сумма в долларах", "сумма в йенах" и т.д. Т.е. это именно глобальные факты: "объём дохода", "объём затрат", "объём заказа" и т.д. Есть таблица с инфой о подписанных договорах - она содержащих инфу о доходах, есть таблица со счетами всякими - она содержит инфу об затратах есть таблица поступивших заказов - она содержит инфу о заказах и так далее. Далее в PowerBI вычитаю из первого второе и получаю прибыль и т.д. В кубах подобные задачи решаются. Но ничего не могу поделать - нет тут сервера кубов у меня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2018, 18:58 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Charles Weyland, Колонки - это атрибуты, а у вас получается, что колонки - это сущности. Но задача в целом мне непонятна. С примером было бы гораздо нагляднее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2018, 19:13 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
PizzaPizzaCharles Weyland, Колонки - это атрибуты, а у вас получается, что колонки - это сущности. Но задача в целом мне непонятна. С примером было бы гораздо нагляднее. Все столбцы, начиная с четвёртого, - в рублях. Исполнитель_ID Офис_ID Дата Запланировано дохода Объём поступившего заказа(руб) объём(кол-во) отгружено(руб) отгружено(кол-во)11 1.01.2018 400nullnull11 1.02.2018 600nullnull11 1.03.2018 600nullnull11 24.01.2018 null 80 5 null null11 26.01.2018 null 120 3 null null11 31.01.2018 null 110 4 null null11 4.02.2018 null 50 3 null null11 6.02.2018 null 220 6 null null11 15.02.2018 null 90 6 null null11 25.02.2018 null 190 9 null null11 4.02.2018 null 230 4 null null11 26.01.2018 null null null 40 211 29.01.2018 null null null 140 211 3.02.2018 null null null 130 411 27.02.2018 null null null 100 611 7.02.2018 null null null 300 6 Таблица - результат объёдинения нескольких таблиц (планы, доходы, заказы). Это позволяет мне сделать ту самую пресловутую схему "звезда", зафигачив все факты в одну таблицу. И таким образом выбрав конкретного исполнителя, работающего в конкретном офисе, могу узнать его эффективность работы в январе, феврале, марте и суммарную, сравнить "Ожидания и реальность" и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2018, 19:51 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
ну вот, даже здесь две колонки забыл null'ами забить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2018, 19:52 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Charles WeylandТаблица - результат объёдинения нескольких таблиц (планы, доходы, заказы). Это позволяет мне сделать ту самую пресловутую схему "звезда", зафигачив все факты в одну таблицу . И таким образом выбрав конкретного исполнителя, работающего в конкретном офисе, могу узнать его эффективность работы в январе , феврале, марте и суммарную, сравнить "Ожидания и реальность" и т.д. А есть дата оформления заказа. Есть дата поступления товара на склад под заказ клиента. Есть дата начала действия заказа (когда клиент ожидает поступления товара). Есть дата первой отгрузки. Есть дата последней отгрузки. Есть дата первой оплаты. Есть дата последней оплаты. Есть дата возврата части оплаты как коррекции между бухгалтериями. Продавец продал 1 января клиенту вагон скрепок. 1 февраля вагон поступл на склад фирмы. 1 марта его перегрузили на грузовики и отправили. 1 апреля грузовик номер 1 доехал до клиента и был принят на его складе. 2 апреля грузовик оформили накладной. 3 апреля оформили платежное поручение на оплату за первый грузовик. 4 апреля приехал второй грузовик. Оказалось, что скрепки проржавели, пока ехали. 4 мая возвращенный грузовик оформили как возврат от клиента на складе фирмы. 1 июня пришел очередной вагон со скрепками для ДРУГОГО клиента. С которым было согласовано, что ему отправят один грузовик из двух, а один отправят тому клиенту, который уже давно ожидает. Разумеется, при оформлении поступления на склад 2 июня все скрепки из второго вагон были оформлены как заказ клиента номер 2. Далее второй грузовик в июле был отправлен и разгружен у первого клиента, в августе последний - второй платеж - до последнего шекеля был отправлен на банковский счет. 1 сентября бухгалтерия после сверки закрыла договор поставки как исполненный. Менеджер готовится получить свои бонусы за продажу. Вопрос - как по дате отследить успешность реализации для клиента номер 1 и менеджера по продажам номер 1, если выбрать фильтром заказы января? Видите, какой хороший вопрос? Ваши заказчики вообще понимают, ЧТО они увидят в отчетах PowerBI, или будет как в песне малоизвестной российской исполнительницы Алены Апиной - "я его слепила из того, что было, а потом, что было - то и полюбила". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2018, 20:21 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Charles WeylandДалее в PowerBI вычитаю из первого второе и получаю прибыль и т.д. А потом выяснится, что суммы по заказам без учета российского НДС, суммы по оплатам с учетом НДС и так далее. И что нельзя вычитать и делить ничего ни с чем. Вы таки знаете, я Вам скажу, только Вы не обижайтесь. Российский IT настолько бессмысленный и беспощадный, что прежде всего поражает воображение исполнителей - а потом уже по цепочке заказчиков таких "учетно"-"отчетных" систем и их пользователей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2018, 20:25 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Andy_OLAPCharles WeylandДалее в PowerBI вычитаю из первого второе и получаю прибыль и т.д. А потом выяснится, что суммы по заказам без учета российского НДС, суммы по оплатам с учетом НДС и так далее. И что нельзя вычитать и делить ничего ни с чем. Вы таки знаете, я Вам скажу, только Вы не обижайтесь. Российский IT настолько бессмысленный и беспощадный, что прежде всего поражает воображение исполнителей - а потом уже по цепочке заказчиков таких "учетно"-"отчетных" систем и их пользователей. да с чего ж обижаться. Всё верно описываете. Вся подробная информация о движении товара, с IDшниками и прочим - лежит в своих таблицах. В нужных валютах, с нужными примечаниями и прочим. У описанной выше таблицы есть конкретная задача, не привязанная к конкретным заказам. И суть состоит в том, что нужно просто посмотреть эффективность работы сотрудников и подразделений. Запланировано, что он сможет выполнить на одну сумму, поступает ему задач на другую, выполняет на третью. Нет задачи следить за конкретным заказчиком. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2018, 20:37 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Charles WeylandЗапланировано, что он сможет выполнить на одну сумму, поступает ему задач на другую, выполняет на третью. Нет задачи следить за конкретным заказчиком. А когда заказы по факту обслуживает другой менеджер по продажам? Первый ушел на больничный, а второй бегает по подразделениям, контролирует отгрузку, оплату, созванивается, когда будет возврат забракованного, и так далее. У Вас сейчас будет несколько таких "таблиц фактов", каждая из которых намертво привязана к одной дате. А далее заказчик системы вспомнит небольшой нюанс и будет просить сделать "мааааленькую переделку". Теперь представьте, как все таблицы фактов переделаются, как все формулы в отчетах PowerBI "едут" напрочь. Резюмирую - я не верю ни в "серебряную пулю", ни в единую таблицу фактов для любой, самой мелкой задачи, когда сравниваются план и факт из разных календарных периодов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2018, 20:47 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Charles Weyland, для меня непонятно, как вы эту одну таблицу наполнять собираетесь. если чисто для консолидированных или обзорных отчетов я б сделал вьюшку/ки и из неё/них уже делал бы Charles Weylandкакую-то аналитику вроде "сумма фактов в третьей таблице разделить на сумму фактов в первой" и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.12.2018, 20:54 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Charles Weyland, cделайте olap кубик, на который и натравите ваш powerBI ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2018, 10:34 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
PizzaPizzaCharles Weyland, для меня непонятно, как вы эту одну таблицу наполнять собираетесь. если чисто для консолидированных или обзорных отчетов я б сделал вьюшку/ки и из неё/них уже делал бы да никак ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2018, 11:28 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
StarikNavyCharles Weyland, cделайте olap кубик, на который и натравите ваш powerBI Charles WeylandВ кубах подобные задачи решаются. Но ничего не могу поделать - нет тут сервера кубов у меня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2018, 11:28 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Andy_OLAPА когда заказы по факту обслуживает другой менеджер по продажам? Вопросы здравые. Но цель годы делать сложную идеальную систему, которую не потребуется менять десятками лет - задача неправильная. Тут всё проще: наклепал запрос, загнал во вьюшку, сделал отчёт, народ посмотрел, подумал - нравится/не нравится. Забраковали, сделали другое решение. Подход к анализу данных всегда выбирается исходя из реалий и с определённой степенью достоверности. Яркий пример - значения "среднее" и "медиана" - тоже во многом бессмысленные и не точные и критиковать анализ "средних значений" можно бесконечно. Но всё равно востребованы, позволяют понять некоторые тенденции измеряемых величин. И ими совершенно нормально пользуются, держа в голове особенности исходных данных. Да, заказ взят в январе, а выполнен в марте. Но вычисления будут производиться "мартовский доход"/"мартовский объём заказа". Это во многом дебильно. Но заказчик хочет посмотреть на практике, насколько это отражает реальность, ведь многие заказы на самом деле закрываются в тот же день. ЗАКАЗЧИК"Давай для начала сделаем хоть что-то, покажи для начала хотя бы это решение, и уже на практике поговорим, почему оно имеет недостаточную достоверность и решим, как её улучшить". Статистика - вообще вещь такая: как повернёшь, то и получишь. Вот, люди хотят и так повертеть, и иначе повертеть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2018, 11:46 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Charles Weylandда никак Ну сделай генератор вьюшки из упрощенного шаблона. Null вставит железный механизм. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2018, 15:44 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Charles Weyland, Создайте сбор данных select-insert, не мучайте представления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2018, 18:20 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Charles WeylandPizzaPizzaCharles Weyland, для меня непонятно, как вы эту одну таблицу наполнять собираетесь. если чисто для консолидированных или обзорных отчетов я б сделал вьюшку/ки и из неё/них уже делал бы да никак если проблема именно с нуллами, то Код: sql 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2018, 22:01 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Charles WeylandPizzaPizzaCharles Weyland, Колонки - это атрибуты, а у вас получается, что колонки - это сущности. Но задача в целом мне непонятна. С примером было бы гораздо нагляднее. Все столбцы, начиная с четвёртого, - в рублях. Исполнитель_ID Офис_ID Дата Запланировано дохода Объём поступившего заказа(руб) объём(кол-во) отгружено(руб) отгружено(кол-во)11 1.01.2018 400nullnull11 1.02.2018 600nullnull11 1.03.2018 600nullnull11 24.01.2018 null 80 5 null null11 26.01.2018 null 120 3 null null11 31.01.2018 null 110 4 null null11 4.02.2018 null 50 3 null null11 6.02.2018 null 220 6 null null11 15.02.2018 null 90 6 null null11 25.02.2018 null 190 9 null null11 4.02.2018 null 230 4 null null11 26.01.2018 null null null 40 211 29.01.2018 null null null 140 211 3.02.2018 null null null 130 411 27.02.2018 null null null 100 611 7.02.2018 null null null 300 6 Таблица - результат объёдинения нескольких таблиц (планы, доходы, заказы). Это позволяет мне сделать ту самую пресловутую схему "звезда", зафигачив все факты в одну таблицу. И таким образом выбрав конкретного исполнителя, работающего в конкретном офисе, могу узнать его эффективность работы в январе, феврале, марте и суммарную, сравнить "Ожидания и реальность" и т.д. Вопрос в глобальной архитектуре. ЕСЛИ СДЕЛАТЬ ПРАВИЛЬНО, ТО Не надо объединять в одну таблицу. 1) Держите разные таблицы, 2) Сделайте дату гранулярной до дня. 3) Сделайте куб и по каждой таблице группу мер в кубе 4) Они вертикально сопоставятся по дате и другим совпадающим измерениям В SSAS это уже проработали ЕСЛИ ДЕЛАТЬ ПО БЫСТРОМУ, ТО ПОЛОЖИТЕ ЭТО В COLUMNSTORE и не парьтесь Вопрос в том, что вы пытаетесь реализовать самопальный OLAP, а можно воспользоваться готовым ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2018, 12:11 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
a_voronin, какой куб? У автора нет SSAS. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2018, 13:02 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Владислав Колосовa_voronin, какой куб? У автора нет SSAS. Так в том и вопрос, что может это сделать через куб/SSAS. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2018, 13:31 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
Владислав Колосов, Все подключается https://docs.microsoft.com/en-us/power-bi/desktop-ssas-multidimensional ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2018, 13:33 |
|
||
|
Как правильно сделать таблицу фактов?
|
|||
|---|---|---|---|
|
#18+
a_voroninВладислав Колосов, Все подключается https://docs.microsoft.com/en-us/power-bi/desktop-ssas-multidimensional вот странный ты человек. Говоришь, что "всё" подключается, а сам даёшь ссылку на статью, где чёрным по белому сказано, что не всё подключается. Есть у меня куб, не могу я его подключить. Пока что. Потом закупят - тогда смогу. Так что описанная выше задача носит исключительно временное решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2018, 14:34 |
|
||
|
|

start [/forum/topic.php?fid=46&fpage=121&tid=1688563]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
37ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
2ms |
| others: | 254ms |
| total: | 401ms |

| 0 / 0 |
