Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Want to see what's currently in public preview? We've pulled it all together in one place. Check it out here
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Variable in expression

Hi, i am trying to use a variable in an expression using IF statement as shown below.

without the IF statement, if i pull the variable in a table i get the required values but when i use the IF statement i am not getting any values. This could be due the the way i am calling variables but i am not able to figure the correct way.

Any help is much welcome !!

Data:

Stock field contains stock quantity

Qty field Contains inbound quantity

Variables:

1) Stock_Launch_1 (Structure: Add current Stock & inbound stock then reduce sales till launch week ; definition:

////////////////////////////////

sum( total <[Item Code], [Item 2735D Ssn],DeptName,GroupName> {<Store = {"=left(Store,3) like('SOH')"}>

+

<Store = {"=left(Store,3) like('CDC')"}>} Stock) + sum({<[Expected WHSE delivery Week] = {"<$(=($1))"}>}Qty)

-  rangemin(sum(aggr(sum([Last 13 Weeks sale qty]/13),[Item Code],[Item 2735D Ssn],DeptName,GroupName))*(($1)- 200-$(Week No.)), sum(  {<Store = {"=left(Store,3) like('SOH')"}> + <Store = {"=left(Store,3) like('CDC')"}>} Stock))

)

/////////////////////////////////////

2) Launch (Structure: Number ; definition: 442)

3) Week No. (Structure: Number; definition: 40)

expression to calculate stock: $(Stock_Launch_1($(Launch))) - works well

expression using IF statement: sum(aggr(if($(Stock_Launch_1($(Launch))) > 0,1,0),[Item Code]))- DOESN'T work

P.S. I realized that if I define the variable Stock_Launch_1 to use Launch as a parameter & NOT $(Launch) the if statement works - no idea why but i can not use it that way.

Labels (1)
3 Replies
Anil_Babu_Samineni
MVP
MVP

Can you try if.. statement alone without sum(aggr(...)) initially

Best Anil, When applicable please mark the correct/appropriate replies as "solution" (you can mark up to 3 "solutions". Please LIKE threads if the provided solution is helpful
Anonymous
Not applicable
Author

Hi Anil - I tried it and it doesn't work in either form:

Form 1 - variable that uses (Launch) as a parameter: sum((if($(Stock_Launch_1($(Launch))) > 0,1,0)))

Form 2 - variable that uses ($Launch) as parameter: sum((if($(Stock_Launch(Launch)) > 0,1,0)))

P.S. I am trying to get the output in a table with Item Code as a dimension as shown below. The IF statement is for the expression "Avail" which returns a 0 OR 1 based on the IF statement.

Capture.JPG

Anil_Babu_Samineni
MVP
MVP

Did you find the solution? Or still expecting

Best Anil, When applicable please mark the correct/appropriate replies as "solution" (you can mark up to 3 "solutions". Please LIKE threads if the provided solution is helpful