Feed on Posts or Comments

BI EE &Discoverer Андрей Пивоваров on 27 May 2007 06:07 pm

Про ошибки nQSError 15001 и 15013 или как построить отчет на одной таблице

Очень часто, особенно во время изучения продукта, да и не только, есть необходимость построить отчет на основе одной таблицы. То есть, когда и факты и словари лежат физически в одной таблице или view.

Например:

ДАТА     МАГАЗИН   ТОВАР  ПРОДАНО РУБ
20.05.07 ЮГО-ЗАПАД ГВОЗДИ         300
20.05.07 СЕВЕР     МОЛОКО        3000

Интересно, что в Discoverer с этим нет никаких проблем: можно строить отчеты как на основе одной таблицы, так и связанных. В случае связанных, Discoverer сам построит необходимые соединения.

Однако в BI EE, если у вас одна таблица и вы пытаетесь сделать на ее основе бизнес модель, при проверке целостности модели выпадает ошибка следующего содержания:

BUSINESS MODEL NQS:
[nQSError: 15001] Could not load navigation space for subject area NQS.
[15013] Logical table, NQS.T1, does not join to any other logical table

Происходит это потому, что BI EE всегда требует существования таблицы фактов и таблиц(ы) словаря.

Если у вас таблица всего одна, то решить эту проблему можно следующим образом:

  1. Создаем новую бизнес модель и перетаскиваем туда таблицу с физического слоя.
  2. На уровне бизнес модели на таблице нажимаем правую кнопку мыши и выбираем Duplicate.
  3. У нас возникает две таблицы в бизнес области, указывающие на одну физическую.
  4. Выбираем, какая из двух копий будет таблицей фактов, а какая словарем и на диаграмме в бизнес модели строим новый Foreign Key, объединяющий таблицу фактов и словарь. (При построении внешнего ключа вам могут предложить создать в словаре ключ. Его нужно создать)
  5. Повторить шаги с 2 по 4 для всех \”словарей\”. В итоге у нас получается виртуальная \”звезда\”, состоящая из ссылок на одну и ту же физическую таблицу.
  6. Теперь можно удалить из \”словарей\” все атрибуты, не относящиейся к словарям, а в \”таблице фактов\” установаить правила агрегации для фактов.
  7. Создаем презентационный слой на основе нашей бизнес модели.

Теперь при проверке целостности ошибка должна исчезнуть и отчеты можно строить.

__________________________________
Читайте также:
А еще можно почитать мой твиттер @apivovarov

2 Responses to “Про ошибки nQSError 15001 и 15013 или как построить отчет на одной таблице”

  1. on 15 Apr 2008 at 7:01 pm 1.artur said …

    Spasibo ogromnoe!!!!! za sovet . Ya delal eto sosdavay views in database potom perenocia ih v Phisical Model.
    Budu rad prochitat vse vashi blogi

  2. on 15 Apr 2008 at 7:31 pm 2.Андрей Пивоваров said …

    Пожалуйста! :)

Trackback This Post | Subscribe to the comments through RSS Feed

Leave a Reply