2012-06-26 5 views
2

Est-ce que quelqu'un a réussi à obtenir ProcessAdd travaillant sur une dimension SSAS en utilisant AMO?SSAS ProcessAdd sur la dimension utilisant AMO

Il existe quelques exemples de traitement d'une partition, mais si je comprends bien pour une dimension, je dois déclarer un datasource hors-ligne.

Ma dimension ne comporte qu'une seule table.

Répondre

0

Essayez de changer la DSV à utiliser une vue sur la table (Just « SELECT * FROM Table »), puis configurez le code ci-dessous selon vos besoins (Cependant, vous identifiez de nouvelles lignes, devient la clause WHERE):

QueryBinding queryBinding = (QueryBinding)dimension.Source; 
queryBinding.QueryDefinition += " WHERE (AuditKey = " + AuditKey + ")";      
dimension.Process(ProcessType.ProcessAdd, queryBinding); 

Notez que je n'ai pas essayé ceci, je fais ProcessAdd pour les partitions mais je ne l'ai pas essayé avec des dimensions, mais à en juger par les définitions de fonction MS AMO cela devrait fonctionner.

+0

Merci Meff, je reviendrai dès que j'aurai l'occasion de l'essayer. Donc, ne respecte pas les vacances. – NeedHack

+0

Merci Meff, mais j'ai peur que ça ne marche pas. Vous ne pouvez pas convertir la liaison en un QueryBinding, et même si vous le pouvez (ou si vous créez un nouveau QueryBinding), il génère le mauvais XMLA. Il génère un élément Binding, alors que nous avons besoin d'un DataSourceView comme dans http://www.artisconsulting.com/blogs/greggalloway/Lists/Posts/Post.aspx?ID=4. – NeedHack

Questions connexes