Фильтрация таблицы фактов для нескольких секций
Когда одна и та же таблица фактов используется для более чем одной секции в кубе, важно, чтобы одни и те же строки не использовались более чем для одной секции. Возможно, что строка, которая используется более чем в одной секции, будет включена несколько раз при обработке или создании запросов к кубу. Это может привести к тому, что запросы будут возвращать некорректные данные.
Можно использовать фильтры в секциях, чтобы гарантировать, что данные не дублируются между секциями. Фильтр секции задает, какие данные в таблице фактов используются в секции. Важно, чтобы фильтры для всех секций в кубе извлекали взаимоисключающие наборы данных из таблицы фактов. Например, следующие фильтры являются взаимоисключающими в пределах каждого набора:
Набор 1:
"Год_продаж" = 2004
"Год_продаж" = 2005
Набор 2:
"Континент" = 'Северная_Америка'
"Континент" = 'Европа'
"Континент" = 'Южная_Америка'
Набор 3:
"Страна" = 'США'
"Страна" = 'Мексика'
("Страна" <> 'США' AND "Страна" <> 'Мексика')
Запрос для ограничения строк в таблице указывается на странице Ввод запроса для ограничения строк мастера секционирования. На этой странице установите флажок Указать запрос для ограничения строк, а затем постройте запрос, ограничивающий строки.
При создании взаимоисключающих запросов для секций убедитесь, что комбинированные данные секций включают все данные, которые необходимо включить в куб. Обычно необходимо удалить секцию по умолчанию, которая была основана на самой таблице, иначе секции, основанные на запросах, будут перекрываться с запросом, основанным на полной таблице.
Примечание |
---|
Вместо фильтрации данных в секции можно использовать тот же запрос для создания именованного запроса в представлении источника данных, а потом настроить секцию на основе этого именованного запроса. |