CurrentOrdinal (MDX)

Restituisce il numero di iterazioni corrente da un set durante l'iterazione.

Sintassi

  
Set_Expression.CurrentOrdinal  

Argomenti

Set_Expression
Espressione MDX (Multidimensional Expression) valida che restituisce un set.

Osservazioni:

Durante l'iterazione di un set, ad esempio con le funzioni Filter (MDX) o Generate (MDX), la funzione CurrentOrdinal restituisce il numero di iterazione.

Esempi

Nell'esempio semplice seguente viene illustrato come è possibile usare CurrentOrdinal con Generate per restituire una stringa contenente il nome di ogni elemento di un set insieme alla relativa posizione nel set:

WITH SET MySet AS [Customer].[Customer Geography].[Country].MEMBERS

MEMBER MEASURES.CURRENTORDINALDEMO AS

GENERATE(MySet, CSTR(MySet.CURRENTORDINAL) + ") " + MySet.CURRENT.ITEM(0).NAME, ", ")

SELECT MEASURES.CURRENTORDINALDEMO ON 0

FROM [Adventure Works]

L'utilizzo pratico di CurrentOrdinal è limitato ai calcoli molto complessi. Nell'esempio seguente viene restituito il numero di prodotti nel set univoci, usando la funzione Order per ordinare le tuple non vuote prima di utilizzare la funzione Filter . La funzione CurrentOrdinal viene usata per confrontare ed eliminare i legami.

WITH MEMBER [Measures].[PrdTies] AS Count  
   (Filter  
      (Order  
        (NonEmpty  
          ([Product].[Product].[Product].Members  
          , {[Measures].[Reseller Order Quantity]}  
          )  
       , [Measures].[Reseller Order Quantity]  
       , BDESC  
       ) AS OrdPrds  
    , NOT((OrdPrds.CurrentOrdinal < OrdPrds.Count   
       AND [Measures].[Reseller Order Quantity] =   
          ( [Measures].[Reseller Order Quantity]  
            , OrdPrds.Item  
               (OrdPrds.CurrentOrdinal  
               )  
            )  
         )  
         OR (OrdPrds.CurrentOrdinal > 1   
            AND [Measures].[Reseller Order Quantity] =   
               ([Measures].[Reseller Order Quantity]  
               , OrdPrds.Item  
                  (OrdPrds.CurrentOrdinal-2)  
                )  
             )  
          ))  
       )  
SELECT {[Measures].[PrdTies]} ON 0  
FROM [Adventure Works]  

Vedi anche

Guida di riferimento alle funzioni MDX (MDX)