Ciao Stefano,
da quello che scrivi avevo interpretato correttamente. Sinceramente non mi è mai capitato di "nascondere" nei metadati dei membri di dimensione in funzione delle misure. Al momento sono impossibilitato a fare qualche test (spero nel weekend!), comunque qualche considerazione la posso fare.
1) In 2005 le Dimension Data security (database dimension o cube dimension) vengono configurate a livello di attributo. Quindi è possibile definire un set di Allowed o Denied members per un dato attributo. Per effetto dell'autoexists, però, vengono influenzati anche i membri degli altri attributi della dimensione, quindi, implicitamente, si definisce una sicurezza a livello di dimensione.
2) Teoricamente quello che hai fatto in SSAS 2000 è quindi replicabile in SSAS 2005
3) Nel codice MDX che utilizzavi in SSAS 2000, non vengono definite nè la misura nè la data. Quindi significa che quel codice utilizzerà i rispettivi default member. Per ciò che riguarda la misura ciò comporta che il codice funzionerà solo con una misura e che, nel caso tu abbia una sola misura, con l'intero cubo. Per ciò che riguarda la data se, come spesso accade, questa dimensione ha un membro "All" e quest'ultimo è il default member, significa che quel codice elimina tutti i membri che non hanno la default measure valorizzata nell'intero cubo (data = "All") Se queste ipotesi sono vere potresti considerare l'eventualità di "eliminare" direttamente nella fase ETL i membri non valorizzati (cosa che mi è capitata spesso di fare)
4) Considera anche la possibilità di usare la funzione NonEmpty() (al posto di Filter(Set, NOT IsEmpty(Value))) che fornisce prestazioni migliori in quanto simula il comportamento dell'autoexists
Spero di riuscire presto a trovare il tempo per fare qualche prova e darti una risposta definitiva per il tuo problema
Francesco