Показать сообщение отдельно
Старый 27.09.2012, 19:00   #19  
Starling is offline
Starling
Участник
Дети Юза
 
530 / 76 (4) ++++
Регистрация: 20.10.2005
Адрес: Kiev
Цитата:
Сообщение от mnt_dx Посмотреть сообщение
а почему нет? Дт часть проводки может идти на один счет, Кт на другой или никуда не идти.
Не... тут другой случай. Метод fixTransDifference проверяет уже обработанные проводки ГК. Он бежит по временной таблице, данные в которой уже имеют и дебет и кредит, и проверяет нет ли дисбаланса, т.е. не получилось ли так, что дебет попал под правила трансляции, а кредит нет.

Так вот упомянутый мною код приводит к тому, что дебетовая и кредитовая часть проводки рассматривается отдельно. В результате дебет не находит кредита, а кредит дебета. Получаем дисбаланс, хотя по факту его нет.
Если код закомментировать до дебет и кредит обрабатываются в одной итерации цикла и ошибка уходит.