"Мне кажется ошибки кроются в след. строках общего модуля "КорректировкаСтоимости" (Стр. 2960):<br> <br>Если СуммаПоСредней - ВыпДвижение[ЭлСтоимость.Ключ]<>0 Тогда // корректировка на разницу между списание по-средней и фактическим<br> ВыполнятьДвижения = Истина;<br>КонецЕсли;<br>Как мне кажется, сдесь не учитывается количество, на которое приходится сумма, т.е. например в движении была сумма 100 руб для 10 шт,<br>а СуммаПоСредней расчитана для 5 шт. Естественно они будут различны.<br> <br>Исправлено след. образом:<br> Разница = СуммаПоСредней/?(Количество=0, 1, Количество) - ВыпДвижение[ЭлСтоимость.Ключ]/?(ВыпДвижение.Количество=0, 1, ВыпДвижение.Количество);<br> Если Разница<0 Тогда<br> Разница = -Разница;<br> КонецЕсли;<br> Если (Разница>0.0001) Тогда // корректировка на разницу между списание по-средней и фактическим<br> ВыполнятьДвижения = Истина;<br> Иначе<br> ВыполнятьДвижения = Ложь;<br> КонецЕсли;<br> <br>а так же стр. 2988:<br> <br>Количество = Количество - ВыпДвижение.Количество;<br> <br>В случае невыполения условия в строке 2943 (Если ВыпДвижение.Количество<Количество Тогда)<br>Получаем тек. количество отрицательное, зачем тогда стоит проверка в стр. 2939 (Если Количество=0 Тогда Продолжить; КонецЕсли;)?<br>Исправлено как:<br>Количество = Количество - Количество*КоэффСписания;<br> <br>В стр. 2939 логичнее было бы написать Если Количество=0 Тогда Прервать; КонецЕсли;, дабы не обходить отобранные движения вхолостую.<br> <br>P.S. Не понятно что хотели получить, поэтому не совсем ясно, правильно ли написано.<br>В любом случае любопытно услышать коментарии сотрудников 1С.<br>"