the code in the file you have sent is totaly diferant from the code in your previous response.
in the file you sent, line 10 is:
$itmObj->TotalPrice = ($itmObj->Price + ((abs([Size] == '250ml'))?$itmObj->Price250ml:0) + ((abs([Size] == '400ml'))?$itmObj->Price400ml:0) ) * $itmObj->Quantity;//c
the cause of the problem is case sensitivity.
The size column is named:
with a lower case "s", this means in calculation, you will need to change [Size] to [size]
you keep on adding pieces to the puzzle without first understanding how to accomplish the initial piece.
It is very difficult to give advice on how to configure the cart when you keep moving the goal post. you need to give me a complete overview of all of the conditions you want to take into place.
Each one of those conditions will effect the overall approach to configuring the cart. When you keep adding pieces to puzzle, it just makes things more complicated because it has the potential to undo all of the previous work.
When you have a complete overview of the cart, let me know.