Цитата:
Сообщение от
mnt_dx
а почему нет? Дт часть проводки может идти на один счет, Кт на другой или никуда не идти.
Не... тут другой случай. Метод fixTransDifference проверяет уже обработанные проводки ГК. Он бежит по временной таблице, данные в которой уже имеют и дебет и кредит, и проверяет нет ли дисбаланса, т.е. не получилось ли так, что дебет попал под правила трансляции, а кредит нет.
Так вот упомянутый мною код приводит к тому, что дебетовая и кредитовая часть проводки рассматривается отдельно. В результате дебет не находит кредита, а кредит дебета. Получаем дисбаланс, хотя по факту его нет.
Если код закомментировать до дебет и кредит обрабатываются в одной итерации цикла и ошибка уходит.