Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
hi all could you please reply me with your valuable answers,
I have two variables for current year and previous year,
Let vmaxyear='Max(Year)';
Let vpreyear = 'Max(Year)-1';
so how can I write an expression for
Current year - Previous year / Previous Year
Please help me
I wouldn't use variables for this. Variables are good for things which are frequently used or which are long and complex and not for very easy things - it's cluttered only the variable-overview. I would query this directly within a set analysis:
sum({< Year = {"$(=max(Year))"}>} value) - sum({< Year = {"$(=max(Year)-1)"}>} value)
- Marcus
Hi Marcus Thank you for your Reply,
I need to use multiple variables in the single set analysis so only I asked that question by giving small example
any other idea to create variables and to work out them properly
If you want to use variables I would create these both variables within the gui:
vmaxyear:
= Max(Year)
vpreyear:
= Max(Year)-1
and then:
sum({< Year = {"$(vmaxyear)"}>} value) - sum({< Year = {"$(vpreyear)"}>} value)
Here is an excellent explanation how to create variables: The Magic of Variables.
- Marcus
yes Marcus Thank you,
however same thing I done it ,
is not working properly for me,
what I done is
i took one text object gave first expression =sum({< Year = {"$(vmaxyear)"}>} value)
in another text object gave second one = sum({< Year = {"$(vpreyear)"}>} value)
if you take both the expressions ,
they are not working properly it is giving same value
without variables the value is:
for ex:
first one:3000
second one:5000
With Variables
for ex:
first one: 3000
Second one :3000
here not changing the value I hope you understand my problem
This looked that the variables aren't correct. Please check them again maybe by putting them within a textbox and they should be different. If this don't worked create a small example with a small inline-table and those variables and textboxes + charts.
- Marcus
Hi Marcus,
in the edit script I created two variables like this:
vmaxyear='max(Year)';
vprreyear='max(Year)-1';
and I took two bar charts one is for current year salaries, and one is for last year salaries
current I gave expression like this:sum({< Year_P = {"$(vmaxyear)"}>} Salaries)
last year I gave expression like this: sum({< Year_P = {"$(vpreyear)"}>} Salaries)
can you correct me where I have done mistake?
if you select 2008 or 2009 two bar charts showing same value
If you creates those variables within the script the variables contain no year-number else the expression as string. To use such variables you need $-sign expansion to get the string converted to an expression:
sum({< Year = {"$(=$(vmaxyear))"}>} value) - sum({< Year = {"$(=$(vpreyear))"}>} value)
Beside the above mentioned post The Magic of Variables see also The Magic of Dollar Expansions.
- Marcus
thank you marcus for your response,
please check below:
I gave like this is it correct?
let vmaxyear=' sum({< Year_P = {"$(=$(vmaxyear))"}>}Salaries)';
let vpreyear= 'sum({< Year_P = {"$(=$(vmaxyear)-1)"}>}Salaries)';
in the bar chart I had mention this $(vmaxyear) as a measure right?
if above one is right I am not getting correctly?
No, it's not correct. The $-sign expansion has to happens within the gui-expression and not by creating the variables within the script. I suggest you takes some minutes to read the both above mentioned postings which explain it very well which kinds of variable-creations are possible, how they differs to each other and how you could access these variables.
- Marcus