2012-05-04 4 views
0

В Windows Server 2008, используя SQL Server 2005, службы Visual Studio и SQL Server Analysis Services, я создал OLAP-куб.SQL OLAP Cube и размер

Сценарий - это типичный магазин с продуктами для продажи, клиентами и агентами.

Куб выполнен таблицей фактов tblVendite (данные о продажах) и размерами, основанными на представлениях sql.

ПРИМЕЧАНИЕ: Я пытался вставлять картинки здесь, но они будут изменены и не разгуляешься, поэтому я отправил их в безопасное место для его просмотра:

SCREENSHOT: stucture of the cube

  • FACT TABLE tblVendite (продает)>PK: CdArticolo (IDProduct)
  • DIMENSION Prodotti (produtcs)
  • DIMENSION Calendario (календарь)
  • DIMENSION Agenti (агенты)
  • DIMENSION Clienti (заказчик)

Просмотр куба с основными фильтрами как календарь, клиент/агент, продукты, марка ...все отлично работаю

Теперь я должен предоставить новую функцию, как: , сравнивающую «сверху распродажу бренд» всю компанию с продажей каждого агента, чтобы увидеть, как он продает эту марку

Так я и сделал новая таблица и связанный с ним вид: vwMarcheOrd (верхняя продать бренд)

стол топ продать бренд предварительно населен sp и содержат 1 запись для каждой марки (CdMarca - Position - Description порядка по позиции)

ПРИМЕЧАНИЕ: от vwMarcheOrd я не могу иметь прямую связь с таблицей фактов, потому что PK является CdMarca и ее нет, поэтому мне нужно «мост» для просмотра продукции от CdMarca и получить CdArticolo связать таблицу фактов

Размер и атрибуты для Brand и Top Brand:

SCREENSHOT: cube dimension

BROWSE TH E CU И ПРОБЛЕМА

Добавление размерности Brand (1) в строке поля результата является правильным, но если я добавить Top Brand (2) неверна и многая бренд пропала без вести (но они существуют)

SCREENSHOT: browse Top Brand

Так что мои вопросы 2:

  1. Что я отсутствует или неправильно, или неправильно истолковать с Top Brand измерения?
  2. How i can display all records Top Brand в полях строк, даже если агент не продал ни одного товара этой марки (пустая строка)?

p.s. Я попытался также сделать измерение, основанное только на vMarcheOrd, а затем создать ссылку с привязкой с таблицей продуктов, чтобы скопировать CdMarca> CdArticolo> таблицу фактов, но результат тот же

Заранее спасибо, кто действительно может помочь мне решить эту проблему проблема, которая блокирует меня так много дней

+0

Что такое соединение между новым видом vwMarcheOrd и представлением продуктов? Что такое топ-бренд и как вы знаете, что это топ-бренд? Ваши изображения не читаются. –

+0

@Ali_Abadani Я обновил информацию, чтобы ответить на ваши вопросы. –

+0

Ответ Али, возможно, правильный, но из вашего описания очень неясно, что такое «топ-бренд». Продукт может быть только «топ» (большинство проданных единиц, большинство доходов, большинство маржи) в течение определенного периода времени, так как вы управляете топ-брендом за январь против топ-бренда в течение всего года? Или это не относится к вашему сценарию? – Pondlife

ответ

0

Из того, что я понимаю, похоже, что топ-бренд может меняться со временем. Это означает, что вам нужно как-то отслеживать это со временем.В моем случае самый простой способ сделать это - добавить TopBrandKey в таблицу фактов и присоединиться к размеру верхней марки непосредственно к таблице фактов. Таким образом, отслеживание времени выполняется для вас в таблице фактов. Когда появятся новые записи, вы будете искать ключ для топ-бренда и добавить это в таблицу фактов. Я не думаю, что так, как у вас есть, это сработает, потому что у продукта, который был продан, не будет бренда, который является лучшим брендом (это две разные вещи).

+0

Спасибо за разъяснение, но я не могу получить TopBrandKey в таблице фактов, в этом сценарии я могу только читать данные и ничего не меняют, потому что используются другие DataWareHouse. И TopBrandKey - это «отношения, на которые ссылается» на мосту vProdotti, как описано выше. Btw Я нашел проблему несколько минут назад и был тем столом (верхним брендом), который из-за переноса с SQL 2000 имел неправильные данные внутри. Поэтому, после восстановления таблицы и повторной обработки куба, все отлично работает. –

0

чао Luka :)

мне кажется, что у вас нет правильного отношения атрибутов между атрибутами на кубе.

Я вижу, что вы используете BIDS 2005, с которым я не очень хорошо знаком (в 2008 году было бы легче помочь), но вам нужно установить отношения между Prodoti -> Brand -> top brand

вы можете сделать это теми + знаками атрибутов ниже имени измерения.

+0

спасибо за помощь –

Смежные вопросы