и сложнее, но работает правильно.
Операция.Дебет.НарядНаКомплектацию = ТекущийДокумент();
Операция.Кредит.МестоХранения = Склад;
Операция.Кредит.Комплектующее = КомП;
Операция.Кредит.ПриходнаяНакладная = ДокП;
Операция.Фирма = ФирмаДокумента;
Операция.Комментарий = "Передача комплектующих на сборку";
Операция.НомерЖурнала = "10";
Операция.Сумма = СумО;
Операция.Количество = Колич;
СуммаОпер=СуммаОпер+СумО;
ТабКом.УстановитьЗначение(СтрП,"Кол",КолП-Колич);
ТабКом.УстановитьЗначение(СтрП,"Сум",СумП-СумО);
// Опустошаем партию частично и переходим к следующей комплектующей
Прервать;
КонецЕсли;
КонецЦикла; // По Партии
КонецЦикла; // По Комплектующей
КонецЦикла; // По Изделию
Операция.Содержание = "Запуск производства";
Операция.СуммаОперации = СуммаОпер;
Операция.Автор = АвторДокумента;
Операция.Записать();
КонецПроцедуры
Новый вариант хотя и сложнее, но работает правильно. И даже быстрее, так как обращений к Бухгалтерским итогам будет меньше или столько же, ведь они вынесены за цикл по изделиям.
Проверим работу нашего документа с разными наборами данных.
2.40 Документ ПриходныйОрдер.
Товар отгружен, пора получить за него денежки. Деньги мы будем получать с покупателя наличными в кассу по Приходному ордеру. Проводка в документе будет всего одна (Д 50.1 – К 62). Списывать долг с конкретного покупателя мы будем в разрезе конкретной накладной на отгруз. Причем, если сумма в ордере больше непогашенного остатка по указанной накладной, то мы раскидаем остаток прихода денег по остальным непогашенным накладным клиента, а если накладная не указана, то спишем долг по самой ранней накладной. Этот документ будет очень похож на Расходный ордер, поэтому просто скопируем его и внесем небольшие изменения.
Содержание Назад Вперед