Forum Discussion

mussol_'s avatar
mussol_
Advocate II
8 years ago
Solved

reuse variables

Hi all!

My question is very simple:

Can I reuse variables I created in another mesure?

If answer is "yes", how can I do this?

Many thanks in advance!

Josep.

  • No, you would want to create measures for each variable, then they are reuseable but variables within a measure only have local scope of the measure they are in.

5 Replies

  • Greg_Deckler's avatar
    Greg_Deckler
    Community Champion

    No, you would want to create measures for each variable, then they are reuseable but variables within a measure only have local scope of the measure they are in.

  • Anonymous's avatar
    Anonymous
    Not applicable

    As far as I know, you can't use a variable declared within a measure with VAR anywhere else. If you need to reuse that data, consider making that variable into a standalone measure.

     

    Although, I would be curious if it's possible to implement similar behavior as to what happens when you use a dot operator after a date.

     

  • Anonymous's avatar
    Anonymous
    Not applicable

    You can create a measure that contains the variable that you want and then, reuse your measure (that will be same a your variable).

     

     

  • Both: thanks a lot.

    It's a pity :-((

    I think i would be useful once you already create the variable to use in another measure. Otherwise, it is necessary to create the same variables on each measure.

    Josep.

    • Greg_Deckler's avatar
      Greg_Deckler
      Community Champion

      Well, the idea is that if you are going to need to create the same variable in multiple measures, create the variable as a stand-alone measure. Then you can reuse it. So, if you have measures like:

       

      Measure = 

      VAR __myVar = COUNTROWS(SUMMARIZE('Table',[Column]))

      RETURN __myVar * 20

       

      Measure1 = 

      VAR __myVar = COUNTROWS(SUMMARIZE('Table',[Column]))

      RETURN __myVar / 20

       

      Then you could create a measure like:

       

      MeasureMyCount = COUNTROWS(SUMMARIZE('Table',[Column]))

       

      Then your measures become:

       

      Measure = [MeasureMyCount] * 20

      Measure1 = [MeasureMyCount] / 20