IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SSAS Discussion :

Récupérer la dernière année avec des données en MDX


Sujet :

SSAS

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Développeur décisionnel
    Inscrit en
    Février 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur décisionnel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 6
    Points : 6
    Points
    6
    Par défaut Récupérer la dernière année avec des données en MDX
    Bonjour,

    J'ai un cube avec une dimension temps (Temps_Niv_Annee)
    Je souhaite récupérer la dernière année pour laquelle j'ai mon indicateur Nb Clients Cibles n'est pas null.
    J'ai trouvé deux solutions
    Solution 1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    WITH SET [Annees pleines] AS 'filter([Temps_Niv_Annee].[Annee].members,not isempty([Measures].[Nb Clients Cibles]))' 
    SET [Annee en cours] AS 'tail([Annees pleines],1)'  
    MEMBER [Temps_Niv_Annee].[MultiFiltre] as 'AGGREGATE({[Annee en cours]})'
    Solution 2
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    WITH SET [Annees pleines] AS 'filter([Temps_Niv_Annee].[Annee].members,not isempty([Measures].[Nb Clients Cibles]))' 
    MEMBER [Temps_Niv_Annee].[Annee en cours] AS 'tail([Annees pleines],1).item(0)'
    Ces 2 solutions ne me donnent pas les mêmes temps de réponse suivant l'indicateur dont j'ai besoin.
    Pourriez-vous m'aider à comprendre pourquoi ? et quelle solution vaut-il mieux utiliser ?

    merci de votre aide

  2. #2
    Membre émérite Avatar de FrancoisJehl
    Homme Profil pro
    BI Engineer
    Inscrit en
    Juillet 2009
    Messages
    1 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : BI Engineer
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2009
    Messages : 1 485
    Points : 2 883
    Points
    2 883
    Par défaut
    Et en faisant plutot:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Tail
    (
       NonEmpty
       (
          [Temps_Niv_Annee].[Annee].Members,
          [Measures].[Nb Clients Cibles]
       )
    ).Item(0)
    François JEHL
    BI Engineer | MVP SQL Server
    http://fjehl.wordpress.com
    Pour me contacter, par MP ou ici, mais pas pour des questions techniques.

    /*
    Avant de poster cherchez dans la FAQ et utilisez la fonction "Rechercher" du forum.
    Au moment de poster, posez votre question dans le bon sous-forum (Débuter, SSAS, SSRS, SSIS), en utilisant les TAGs prédéfinis ([2K], [2K5], [2K8], [2K8R2]).
    */

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Développeur décisionnel
    Inscrit en
    Février 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur décisionnel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2012
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Merci, cette solution est un légèrement moins rapide (2s au lieu d'1s).

    Je vais détailler un peu plus.
    J'ai des rapports dans lesquels "Annee en cours" (dernière année avec de la donnée) est en filtre. Dans ce cas un Membre calculé fonctionne bien et les temps de réponse sont corrects (1s).

    J'ai d'autre rapport dans lesquels "Annee en cours" (dernière année avec de la donnée) est en ligne ou en colonne et là je dois utiliser un jeu nommé pour savoir de quelle année il s'agit. Si j'utilise mon jeu nommé en ligne ou en colonne les temps de réponse sont corrects mais si j'utilise ce jeu nommé en filtre, les temps de réponse sont beaucoup plus long (je passe de 1s à 16s) avec certain indicateur, notamment ceux qui utilisent la fonction Descendant.

    Aujourd'hui, je souhaite mettre "Annee en cours" dans ma base OLAP que je pourrais ensuite utiliser dans plusieurs rapports en ligne ou en colonne ou en filtre. Je cherche donc une solution qui me permette d'avoir des temps de réponse corrects tout en créant un minimum d'élément dans ma base OLAP.

    merci de votre aide

Discussions similaires

  1. Réponses: 6
    Dernier message: 11/07/2006, 10h56
  2. INNER JOIN avec des données de sélection
    Par EK1_ dans le forum Langage SQL
    Réponses: 2
    Dernier message: 17/05/2006, 18h40
  3. [VBA-A]Remplir une textbox avec des données de tables.
    Par cuicui08 dans le forum VBA Access
    Réponses: 1
    Dernier message: 24/03/2006, 10h28
  4. [datagrid]lier avec des données
    Par Alex35 dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 11/12/2005, 10h10
  5. Créer du xml avec des données Oracle
    Par Baumont dans le forum Oracle
    Réponses: 3
    Dernier message: 23/11/2005, 15h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo