Club Power BI

Please login or click SIGN UP FOR FREE to create your PowerBIUG account to join this user group.
  • 1.  Référencer une colonne d'une variable de type table

    Bronze Contributor
    Posted Oct 27, 2021 11:09 AM
    Bonjour,

    Dans l'exemple ci-dessous, je chercher à créer une mesure qui va faire la somme des valeures contenu dans une colonne (VnbPdt) d'une table stockée dans une variable (tbl)
    Visiblement, je n'ai pas le droit de faire de la sorte car j'ai le message suivant :

    La variable de table «tbl» ne peut pas être utilisée dans le contexte actuel car une table de base est attendue.

    Pour tester, si je remplace SUM(tbl[VNbPdt]) par un COUNTROWS(tbl) par exemple, je n'ai pas d'erreur.

    Je suppose qu'il y a une notion de syntaxe qui m'échappe.... ?

    Merci d'avance

    NbPdtUse =
    VAR NbPdtMax = 60
    VAR tbl=
    UNION (
    FILTER (
    SUMMARIZE (
    BDD_AD,
    BDD_AD[CAT],
    "VNbPdt", [NbPdt],
    "AFI", MAX ( BDD_AD[AFI]
    )
    ),
    [AFI] = "Autres"
    && [NbPdt] <= NbPdtMax
    ),
    FILTER (
    SUMMARIZE (
    BDD_AD,
    BDD_AD[CAT],
    "VNbPdt", [NbPdt],
    "AFI", MAX ( BDD_AD[AFI]
    )
    ),
    [AFI] <> "Autres"
    )
    )
    RETURN
    SUM(tbl[VNbPdt])


    ------------------------------
    Franck Servant-Roumey
    Directeur Conseil / CDO /DPO
    Histoire d'Adresses
    75001 PARIS
    ------------------------------


  • 2.  RE: Référencer une colonne d'une variable de type table

    Gold Contributor
    Posted Oct 28, 2021 04:21 AM

    Bonjour Franck,

    La fonction SUM() en DAX attend une table/colonne 'native' (physique) de ton modèle de données. Tu ne peux donc pas référencer une table /colonne virtuelle dans un SUM().

    En revanche, c'est possible via un SUMX.
    Donc dans ton cas, l'instruction SUMX (tbl , [VNbPdt] ) fonctionnera (à mettre après ton RETURN évidemment!).

    2 commentaires:
    - Je te déconseille très fortement d'utiliser Summarize pour ajouter des colonnes en DAX. Tu devrais plutôt combiner Summarize avec AddColumns. Explications ici: Best Practices Using SUMMARIZE and ADDCOLUMNS - SQLBI
    - Je m'interroge également sur la logique algorithmique de ton calcul. Je me suis contenté de t'aider sur la syntaxe mais ton code mériterait d'être creusé... :)



    ------------------------------
    Tristan Malherbe
    Co-Fondateur du Club Power BI
    Expert/Formateur Power BI - Microsoft MVP
    06 09 27 06 97
    ------------------------------



  • 3.  RE: Référencer une colonne d'une variable de type table

    Bronze Contributor
    Posted Oct 28, 2021 05:19 AM
    C'est parfait !

    Merci beaucoup @Tristan Malherbe pour ton aide et tes précieux conseils d'optimisation ;)

    Bonne journée


    ------------------------------
    Franck Servant-Roumey
    Directeur Conseil / CDO /DPO
    Histoire d'Adresses
    75001 PARIS
    ------------------------------