if condition in App sheet

hi there,

i want to ask for solution for this problem that I have these condition in appsheet:

Ifs([Quantity]>500,Decimal(Select(All Rates[Upto 500 to 1000],[Item Name]=[_THISROW].[Item],true)), [Quantity]<=1000,Decimal(Select(All Rates[Upto 500 to 1000],[Item Name]=[_THISROW].[Item],true)), [Quantity]>1000,Decimal(Select(All Rates[Upto 1000 to 5000],[Item Name]=[_THISROW].[Item],true)), [Quantity]<=5000,Decimal(Select(All Rates[Upto 1000 to 5000],[Item Name]=[_THISROW].[Item],true)), [Quantity]>5000,Decimal(Select(All Rates[above 5000],[Item Name]=[_THISROW].[Item],true)),TRUE,“Normal”)

but I have got stuck when input the quantity=1690 but it still outputs in the range [500 1000]

I need your help,

Thank you

1 Like

Ifs(
[Quantity]>500,Decimal(Select(All Rates[Upto 500 to 1000],[Item Name]=[_THISROW].[Item],true)),
[Quantity]<=1000,Decimal(Select(All Rates[Upto 500 to 1000],[Item Name]=[_THISROW].[Item],true)),
[Quantity]>1000,Decimal(Select(All Rates[Upto 1000 to 5000],[Item Name]=[_THISROW].[Item],true)),
[Quantity]<=5000,Decimal(Select(All Rates[Upto 1000 to 5000],[Item Name]=[_THISROW].[Item],true)),
[Quantity]>5000,Decimal(Select(All Rates[above 5000],[Item Name]=[_THISROW].[Item],true)),
TRUE,“Normal”)

Few things.. If the Qty is begger than 500, like 1234, the first evaluation is always true. You need to rewrite the order inside of the IFS(). I assume something like..
IFS(
AND([Quantity]>=500,[Quantity]<=1000, DECIMAL(…),
AND([Quantity]>1000,[Quantity]<=5000, DECIMAL(…),
[Quantity]>5000, DECIMAL(…),
TRUE,“Normal”
)

1 Like