Een MDX-query met een statistische functie retourneert #Error voor de celwaarden in SQL Server 2005 Analysis Services


Symptomen


U hebt een multidimensionale expressies (MDX) query die de statistische functie gebruikt. De set die is opgegeven in de statistische functie bevat een berekend lid. Wanneer u de MDX-query op een exemplaar van Microsoft SQL Server 2005 Analysis Services uitvoeren, retourneert de query #Error voor de waarden van cellen. Als u op een cel klikt, wordt het volgende foutbericht weergegeven in het dialoogvenster Eigenschappen van cel :
Een set is opgetreden die geen berekende leden
Opmerking U ontvangt het foutbericht weergegeven in de kolom waarde van de eigenschap VALUE en de eigenschap FORMATTED_VALUE .

Oorzaak


Dit probleem treedt op omdat een berekend lid de statistische functie bevat en deze functie een reeks niet-aggregatable leden heeft.

Neem bijvoorbeeld de MDX-query die wordt vermeld in de sectie 'Meer informatie'. In de Adventure works DW voorbeelddatabase, het [geval]. [Scenariolid] is niet aggregatable. De eigenschap IsAggregatable voor dit dimensiekenmerk is ingesteld op False. Als u deze MDX-query uitvoert, ontvangt u het foutbericht dat wordt vermeld in de sectie 'Symptomen'.

Status


Microsoft heeft bevestigd dat dit probleem kan optreden in de Microsoft-producten die worden vermeld in de sectie 'Van toepassing op'.

Meer informatie


Stappen om het probleem te reproduceren

  1. Open het voorbeeldproject van Adventure Works DW Enterprise Edition in SQL Server Business Intelligence Development Studio.

    Opmerking Het voorbeeldproject van Adventure Works DW Enterprise Edition is opgenomen in de Analysis Services-database-project. Downloaden van de Analysis Services-databaseproject, gaat u naar de volgende Microsoft-website:
  2. Het voorbeeldproject implementeren naar een exemplaar van SQL Server 2005 Analysis Services.
  3. Open SQL Server Management Studio en maak verbinding met de Analysis Services-instantie.
  4. Klik op Nieuwe query.
  5. Voer in het queryvenster de volgende MDX-query:
    WITH MEMBER[Scenario].[Scenario].[MyMember] 
    AS
    AGGREGATE(
    {[Scenario].[Scenario].&[1],
    [Scenario].[Scenario].&[2],
    [Scenario].[Scenario].&[3],
    [Scenario].[Scenario].[Budget Variance]
    })

    SELECT
    {[Measures].[Amount]} ON AXIS(0)
    FROM
    [Adventure Works]
    WHERE [Scenario].[Scenario].[MyMember]