Sziasztok,

A mai napon két fórumba is leírtam a kínomat.
Viszonylag friss, de már két hetes az ismerettségem a C-Tools CDE eszközével és nagy nehezen felfogtam, hogy egy komponens (legtöbbje) a "Post Change" belépési pontján még meg tudom manipulálni akármelyik "parameter"-t/JS változót majd a Dashboards.fireChange('parameter',újérték); érvényre is tudom léptetni a változást.

Ha egy MDX Query (kipróbált ) -nek így adom át a paramétert (pl.: P_type), akkor egy "select" komponenssel szépen lehet váltogatni a táblázatban megjelenő oszlopot.
SELECT
NON EMPTY {Hierarchize({[tipus.default].[tipus].[${P_type}]})} ON COLUMNS,
NON EMPTY {Hierarchize({[deptNa.default].[hosp].[I. Belgyógyászati Klinika].Children})} ON ROWS
FROM [BSz]

Jött az ötlet, hogy mi lenne, ha a ${P_type}, azaz a P_type kerülne kívül felépítésre kb. mint így (itt már legyen egy másik paraméter -> pmdxquery):
SELECT
NON EMPTY {Hierarchize({[tipus.default].[tipus].[XXX],
[tipus.default].[tipus].[YYY]})} ON COLUMNS,
NON EMPTY {Hierarchize({[deptNa.default].[hosp].[I. Belgyógyászati Klinika].Children})} ON ROWS
FROM [BSz]

Konrét (kínlódás, már más fázisban) példa a SELECT Post Change:

function(a){
var s=a.toString();
var sa=s.split(',');
var l=sa.length;
var r='';
for(i=0;i<l;i++){
if(r=='') { r='[tipus.default].[tipus].[' + sa[i] + ']';} else { r=r + ',[tipus.default].[tipus].[' + sa[i] + ']';}
}
//if( l==1) r='[tipus.default].[tipus].[' + sa[0] + ']';
//alert('Eredmény:\n' + r);
var q='SELECT' +
' NON EMPTY {Hierarchize({' + ptypemdx + '})} ' +
' ON COLUMNS,NON EMPTY {Hierarchize({[deptNa.default].[hosp].Members})} ON ROWS FROM [BSz]';

Dashboards.fireChange('ptypemdx',r);
Dashboards.fireChange('pmdxquery',q);
//alert(q)
}
akkor a DataSource Query -je elégha csak így nézne ki:
${pmdxquery}

Ha a "pmdxquery" értékét kiíratom és bemásolom egy MDX Query Editor ablakba, akkor ott szépen látom az eredményt.
Mivel láttam, de nem írtam magamnak ki (azóta meg nincs meg) egy javaslatot a fórumon, elkezdtem kísérleteni az MDX function() -k használatával.
SELECT
NON EMPTY {Hierarchize(StrToMember('${ptypemdx}'))}
ON COLUMNS,NON EMPTY {Hierarchize({[deptNa.default].[hosp].Members})}
ON ROWS
FROM [BSz]
Ha a catalina.out és a pentaho.log naplókat nézem, akkor meg:
ERROR [MondrianModel] Parse Failure
mondrian.olap.MondrianException: Mondrian Error:Failed to parse query 'SELECT
NON EMPTY {Hierarchize(SetToStr('[tipus.default].[tipus].[MSAORA]'))}
ON COLUMNS,NON EMPTY {Hierarchize({[deptNa.default].[hosp].Members})}
ON ROWS
FROM [BSz]'

Tudtok valamilyen tanácsot adni, hogy hogyan lehetne az MDX Query -t sokkal dinamikusabban összerakni egy szinttel korábban és azt átadni a DataSource -nak?


Előre is köszönök minden választ vagy anyagot!
Üdv,
ltorok