PDA

View Full Version : parametro in query mdx come leggelo e sfruttarlo per iif e case????



peppet
01-14-2013, 06:49 AM
Salve a tutti,
mi trovo davanti a questa situazione:

la mia query mdx presente in un datasource di un dashboard riceve dei parametri in ingresso nello specifico month e year

quello che vorrei fare è leggere il valore di month e a seconda del valore assunto mettere nella where un'opportuna espressione..

ho provato a creare un membro ed usarlo nella where con with member [data].x as iif(${month}="FEBBRAIO", [data].[{year}].[1].[${month}],xxxxxx)
è un esempio per dire di usare una certa espressione quando il valore di month è FEBBRAIO... solo che non funziona.. io credo di aver sbagliato sintassi...
potreste aiutarmi? grazie!!

lukolap
01-14-2013, 01:00 PM
Ciao peppet,
in questi casi io aggiungo un passaggio intermedio...

1) definisci un nuovo parametro "dataMdx"
2) aggiungi un TextComponent d'appoggio che ha come come listeners "month" e "year" e nella funzione javascript usi il valore di questi parametri per costruirti la stringa MDX da mettere nella where; poi sempre in questa funzione aggiorni il parametro "dataMdx" con il valore di questa stringa;
3) il componente che esegue la query sarà ora in ascolto di "dataMdx" e nella query userai ...where ${dataMdx}

Al TextComponent non associare un html object in modo che non sia visibile (visto che è solo d'appoggio).

La funzione sarà del tipo:

function() {
var mdx = "[data].[" + year + "]";
// altro codice che costruisce "mdx" usando "month"
Dashboards.fireChange("dataMdx", mdx) //aggiorna il parametro "dataMdx"
return mdx;
}

Spero di essere stato chiaro e utile

peppet
01-15-2013, 05:27 AM
grazie! sei stato molto utile!