Which table are you evaluating the calculation from?
Those calculation fields are in "Table_Estimate_Line_Items".
I have a "Supplier" field where the supplier name can go.
1. Aren't you using IDs for your relationships? If not, you should!
2. You don't define a calculation in a calc field in terms of that field itself. (Unless you're trying to hack a recursive function.)
Also, you can't set (change the value of) another field here: in calcField = someOtherField = someValue, that latter part doesn't work as an assignment, but is simply an expression that evaluates to True or False, i.e. 1 or 0.
For a calc field that multiplies fields a and b, write a * b, not calcField = a * b; it's implicit that you want to set that field (in fact, if you look more closely, it says so above the calculation area : fieldName = ).
3. You shouldn't reference prices, markups and similar, time-in-point dependent data; rather, look them up and store them in a regular field.
You could try
IsEmpty ( Self ) ; // especially on record creation
Supplier::HKDJ% ; // put in a value of 0 for your own Supplier record
Case ( // here we know it is not empty
Supplier::id = yourOwnID ;
0 ; // always reset for own
Self // keep for others