je pense que vous avez deux choix:
1- Ajouter une colonne à votre fait (ou vue sur la vue de source de données basée sur la table de fait) comme:
case when unit_Price>2000 then 1
else 0
end as Unit_Price_Uper_Or_Under_10
et d'ajouter une dimension fictive basée sur cette valeur des colonnes. et ajoutez la requête nommée pour New Dimension (dire Range_Dimension dans DataSourceView: sélectionner 1 plage union tous sélectionnez 0 comme gamme
et après taht vous cant utilisé ce filtre comme autre dimension et l'attribut
SELECT [Store].[Stores].[Store].members ON COLUMNS,
[Unit Sales] ON ROWS
FROM [Warehouse and Sales]
WHERE [Test_Dimension].[Range].&[1]
.
le problème est pour chaque plage que vous devez ajouter When
état et seulement si la plage est statique cette solution est une bonne solution. et dynamique, il est préférable de formuler la gamme (selon la méthode disceretizing)
2- ajouter une dimension avec une granularité près de la table de fait sur la table de fait par exemple, si nous avons table fait avec Sale_id
clé primaire .nous peut ajouter dimension basée sur la table de fait avec une seule colonne sale_Id
et dimension Usage tab
nous pouvons relier cette new dimension
et measure group
avec le type de relation Fact
et après que mdx nous pouvons utiliser quelque chose comme:
filter([dim Sale].[Sale Id].[Sale Id].members,[Measures].[Unit Price]>2000)
Je vous remercie de votre entrée, ce n'est pas du tout l'e désiré Je vais pour. Votre exemple filtre un ensemble de magasins, mais ce que je recherche est un moyen de filtrer les enregistrements de faits. En utilisant votre exemple, disons que je voulais montrer les ventes unitaires moyennes par magasin, je veux toujours montrer chaque magasin, mais je ne veux pas que la moyenne globale des ventes unitaires> 2000. – Colin