Domanda

Da alcuni motivi per cui ho bisogno di inserire una colonna artificiale (fitta) in un'espressione MDX.(La ragione è che ho bisogno di ottenere una query con un numero specifico di colonne)

Per illustrare, questa è la mia query del campione:

SELECT {[Measures].[AFR],[Measures].[IB],[Measures].[IC All],[Measures].[IC_without_material],[Measures].[Nonconformance_PO],[Measures].[Nonconformance_GPT],[Measures].[PM_GPT_Weighted_Targets],[Measures].[PM_PO_Weighted_Targets], [Measures].[AVG_LC_Costs],[Measures].[AVG_MC_Costs]}    ON COLUMNS,
([dim_ProductModel].[PLA].&[SME])
*  ORDER(  {([dim_ProductModel].[Warranty Group].children)} , ([Measures].[Nonconformance_GPT],[Dim_Date].[Date Full].&[2014-01-01]) ,desc)   
* ([dim_ProductModel].[PLA Text].members  - [dim_ProductModel].[PLA Text].[All]) 
* {[Dim_Date].[Date Full].&[2013-01-01]:[Dim_Date].[Date Full].&[2014-01-01]} ON ROWS
FROM [cub_dashboard_spares]
.

Non è molto importante, solo alcune misure e dimensioni crossjoined.Ora avrei bisogno di aggiungere f.e.2 colonne extra, non mi interessa se questa sarebbe una misura con valori null / 0 o un'altra dimensione crossienata.Posso farlo in modo semplice senza inserire dati nel mio cubo?

In SQL posso semplicemente scrivere Seleziona 0 o selezionare "Dummy1", ma qui non è possibile né in righe né in entrata a colonne parte della query.

Grazie mille per il tuo aiuto,

Saluti,

PETER

PS: Finora ho potuto semplicemente inserire qualche misura più volte, ma sono interessato se c'è la possibilità di inserire una colonna "fittizi"

È stato utile?

Soluzione

La tua query ha solo la dimensione delle misure sulle colonne.Il modo più semplice per estenderlo da alcune colonne sarebbe quello di ripetere l'ultima misura quante più volte ottieni il numero corretto di colonne.

Un'altra possibilità, che potrebbe essere più efficiente nel caso in cui l'ultima misura sia complessa da calcolare sarebbe quella di utilizzare

WITH member Measures.dummy as NULL
SELECT {[Measures].[AFR],[Measures].[IB],[Measures].[IC All],[Measures].[IC_without_material],[Measures].[Nonconformance_PO],[Measures].[Nonconformance_GPT],[Measures].[PM_GPT_Weighted_Targets],[Measures].[PM_PO_Weighted_Targets], [Measures].[AVG_LC_Costs],[Measures].[AVG_MC_Costs],
Measures.dummy, Measures.dummy, Measures.dummy
}
ON COLUMNS,

([dim_ProductModel].[PLA].&[SME])
*  ORDER(  {([dim_ProductModel].[Warranty Group].children)} , ([Measures].[Nonconformance_GPT],[Dim_Date].[Date Full].&[2014-01-01]) ,desc)   
* ([dim_ProductModel].[PLA Text].members  - [dim_ProductModel].[PLA Text].[All]) 
* {[Dim_Date].[Date Full].&[2013-01-01]:[Dim_Date].[Date Full].&[2014-01-01]}
ON ROWS

FROM [cub_dashboard_spares]
.

i.e.Aggiunta di una misura fittizia che non dovrebbe aver bisogno di molto calcolo tutte le volte che ne hai bisogno fino alla fine delle colonne.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top