Making Maintain Charges mandatory at So Confirmation Level

May be you have MarkUpTrans reference to the salesLine. You also need to check if there is a specific markupTrans for the salesLine (I have said this already in my previous posts).

You may also have to get used to the debugging to find the issues in your code