Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Вычисления по датам в Cognos PowerPlay / 16 сообщений из 16, страница 1 из 1
03.11.2004, 14:39
    #32766782
Тужибаев Тимур
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
Добый день, Уважаемые!
Стоит задача. Например есть таблица с полями:
ФИО
Дата начала работы
Дата окончания работы

Необходимо создать куб, в котором был бы показатель, показывающий, сколько человек работает в конкретную дату, месяц, год.
Подскажите пожалуйста, как это можно реализовать в Трансформере?
...
Рейтинг: 0 / 0
03.11.2004, 14:59
    #32766843
Summerson
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
Необходимо создать вычисляемую меру как count необходимого измерения. Например, если если есть измерение Employee представляющее собой всех работников, то надо создать count по нему. Сейчас подсказать точно не могу, перед глазами нет Transformer'а.
...
Рейтинг: 0 / 0
03.11.2004, 15:09
    #32766867
Тужибаев Тимур
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
Это я уже сделал. Проблема в том, что я не знаю как сделать так, чтобы это колличество работников было распределено по дням
...
Рейтинг: 0 / 0
03.11.2004, 15:52
    #32767014
Вычисления по датам в Cognos PowerPlay
Эх. Юрий ясный-красный в отпуске. Уж он то точно бы ответил.
Красиво. Четко. Ясно. Безкорысно.
...
Рейтинг: 0 / 0
03.11.2004, 16:04
    #32767066
Гликоген
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
Развернуть SQL-лем вашу таблицу в ежедневный снапшот, где будет по одной записи на каждого работающего в этот день сотрудника. Куб с показателем - счетчиком фактов.
По SQL-теории это неопримально, но по OLAP-практике - то, что доктор прописал.
...
Рейтинг: 0 / 0
04.11.2004, 06:31
    #32767758
Тужибаев Тимур
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
Логично. Я так тоже пробовал. А средствами Cognos подобное можно сделать? Уж больно большая база получается...
...
Рейтинг: 0 / 0
04.11.2004, 11:32
    #32768270
Гликоген
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
Где ж "большая"?
Я для майкрософта грубо прикинул, потребуется за 30 лет его существования примерно полмиллиарда записей.
В практике ХД это не много.
...
Рейтинг: 0 / 0
04.11.2004, 11:37
    #32768292
Тужибаев Тимур
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
ГликогенГде ж "большая"?
Я для майкрософта грубо прикинул, потребуется за 30 лет его существования примерно полмиллиарда записей.
В практике ХД это не много.

Понятно, я пока только начинаю работать в этой области. Думал, может Cognos решает такие задачи более красиво. Спасибо.
...
Рейтинг: 0 / 0
04.11.2004, 12:07
    #32768396
Aleshka
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
Попробуйте в качестве источника использовать такой запрос запрос:

select calendar_date, count(person_id)
from calendar as t1, d$persons as t2
where t1.calendar_date between t2.start_date and t2.finish_date
and year(calendar_date) between <год начала> and <год окончания>
group by calendar_date
order by calendar_date

В качестве <год начала> и <год окончания> укажите нужные даты
Показателем в PowerPlay будет count(person_id), а вот тип Rollup выбирайте. Либо это будут max или min, либо Time State Rollup - Last period, First period
...
Рейтинг: 0 / 0
05.11.2004, 10:29
    #32770054
Mona_Li
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
можно создать вычисляемый столбец данных, заполнить его единицами, и потом, задавая дату начала и дату конца, можно будет отследить количество работающих в это время.
...
Рейтинг: 0 / 0
05.11.2004, 16:52
    #32771162
Tsaryov S
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
to Aleshka
Заковыристый вопрос Тимура, легче критиковать чужой ответ чем ответить:
Код: plaintext
from calendar as t1
нигде не говорится, что есть таблица calendar.
Но без нее я не знаю как такую задачу решить - хоть средствами когноса, хоть другими.
...
Рейтинг: 0 / 0
05.11.2004, 17:05
    #32771194
Tsaryov S
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
to Тимур
а полмиллиарда записей, думаю, хранить не нужно. Если есть таблица calendar, достаточно в качестве источника данных указать такой запрос:
select calendar_date , (select count(*) from person p where c.calendar_date between p.start_date and p.finish_date) number_of_empl from calendar c

или запрос от Aleshka.
А указать такой источник можно в любом приложении Cognos - в самом Transformer, в Impromptu или в Architect
...
Рейтинг: 0 / 0
05.11.2004, 20:47
    #32771516
Jurii
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
2 Злобный ныпэрс:

Эх. Юрий ясный-красный в отпуске. Уж он то точно бы ответил.
Красиво. Четко. Ясно. Безкорысно.


С Вами трудно не согласиться Жаль только что я не в отпуске, а в форум редко захожу потому что сейчас много текущих дел...

2 Тужибаев Тимур:

Стоит задача. Например есть таблица с полями:
ФИО
Дата начала работы
Дата окончания работы
Необходимо создать куб, в котором был бы показатель, показывающий, сколько человек работает в конкретную дату, месяц, год.
Подскажите пожалуйста, как это можно реализовать в Трансформере?


Многие участники дискуссии уже посоветовали использовать классический подход - с таблицей Календарь. Я этот подход сам иногда использую.
Однако могу предложить альтернативный вариант решения задачи:
Сделайте таблицу фактов, в которой будут примерно следующие записи:
Иванов, 15.04.2002, 1
Иванов, 27.09.2003, -1
Петров, 16.05.1999, 1
(Имеется в виду что у Вас было изначально 2 записи:
Иванов, 15.04.2002, 27.09.2003
Петров, 16.05.1999, NULL).

Подобная структура может быть использована в модуле PowerPlay Transformer. Чтобы вычислить количество работающих людей, нужно будет взять нарастающий итог от единственного показателя - это можно делать либо путем создания относительных категорий времени в Transformer, либо в интерфейсе OLAP-клиента PowerPlay User.
...
Рейтинг: 0 / 0
05.11.2004, 21:03
    #32771523
Вычисления по датам в Cognos PowerPlay
Фух.. Слав богу, Юр, а то уже начал переживать. Не случилось ли чего.
...
Рейтинг: 0 / 0
08.11.2004, 15:22
    #32772524
Guest_321
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
А я вот беспокоюсь за товарища Иванова - не видно его что-то давно на форуме. Не отсиживает ли он срок за убийство инженеров, в адрес которых он как-то высказывал угрозы... ;)
...
Рейтинг: 0 / 0
16.11.2004, 08:25
    #32783392
Тужибаев Тимур
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вычисления по датам в Cognos PowerPlay
Всем огромное человеческое спасибо.
...
Рейтинг: 0 / 0
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Вычисления по датам в Cognos PowerPlay / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]