We have a few places that we receive pricing for a product, so to account for it in our sales beastmode I have been using the below formula but it sometimes provides numbers much greater than the equation should provide. An example would be a quantity of one * a price of 32 has (incredibly infrequently) given a price hundreds of times larger.
The beastmode is written in order of importance, and if the unit_price exists we would want to ignore the other options, but if it doesnt exist I want it to check for alternative_unit_price, etc.
Am I missing something? Is there a better way to write the beastmode, or a more elegant solution? Any feedback appreciated!
SUM(((CASE when `unit_price`>0 then `unit_price` when `alternative_unit_price`>0 then `alternative_unit_price` when `backup_unit_price`>0 then `backup_unit_price` else 0 end) *`unit_quantity`) + ((CASE when `case_price`>0 then `case_price` when `alternative_case_price`>0 then `alternative_case_price` when `backup_case_price`>0 then `backup_case_price` else 0 end) *`case_quantity`))
I don’t think you need the sum() part. Drop the sum and just use the + sign
______________________________________________________________________________________________ “There is a superhero in all of us, we just need the courage to put on the cape.” -Superman ______________________________________________________________________________________________