Да, я остался безутешен. Насколько я понял при заполнении полей TaxTrans.TaxAmount и CustInvoiceTrans.TaxAmountMST используется разный механизм расчета налога. Когда заполняется TaxTrans считается общая сумма налога и общая базовая сумма в валюте, потом эти валюты переводятся в основную валюту (рубли). Дальше при расчете налога по каждой строке базовая сумма переводится в рубли, а потом налог считается пропорционально общей сумме.
Т.е. есть курс 28.0845
Базовая сумма заказа: 4702.18$ или 4702.18 * 28.0845 = 132058.37 руб.
Сумма налога: 846.39$ или 846.39 * 28.0845 = 23770.44 руб.
Есть строка.
Базовая сумма: 0.41$ или 0.41 * 28.0845 = 11.51 руб.
Налог: 0.07$ или 0.07 * 28.0845 = 1.97 руб. (эта сумма в CustInvoiceTrans)
А теперь то, что идет в TaxTrans: 11.51 * 23770.44 / 132058.37 = 2.07 руб.
Похоже придется править либо механизм расчета в TaxTrans, либо механизм формирования книги продаж. Оба хуже