боткаЗаполненія (ДанниеЗаполненія, СтандартнаяОбработка)
//{{__ КОНСТРУКТОР_ВВОД_НА_ОСНОВАНІІ
//Даний фрагмент побудований конструктором.
//При повторному використанні конструктора, внесені вручну зміни будуть загублені !!!
Якщо ТіпЗнч (ДанниеЗаполненія)=Тип ( ДокументСсилка.РасходнаяНакладная ) Тоді
//Заповнення шапки
Накладна=ДанниеЗаполненія.Ссилка;
Контрагент=ДанниеЗаполненія.Контрагент;
Для Кожного ТекСтрокаСпісокНоменклатури З ДанниеЗаполненія.СпісокНоменклатури Цикл
НоваяСтрока=СпісокНоменклатури.Добавіть ();
НоваяСтрока.КолічествоОтправлено=ТекСтрокаСпісокНоменклатури.Колічество;
НоваяСтрока.Номенклатура=ТекСтрокаСпісокНоменклатури.Номенклатура;
НоваяСтрока.Сумма=ТекСтрокаСпісокНоменклатури.Сумма;
НоваяСтрока.Цена=ТекСтрокаСпісокНоменклатури.Цена;
КонецЦікла;
КонецЕсли;
//}} __ КОНСТРУКТОР_ВВОД_НА_ОСНОВАНІІ
КонецПроцедури
Процедура ОбработкаПроведенія (Відмова, Режим)
//регістр ОтгрузкіТоваров
Двіженія.ОтгрузкіТоваров.Запісивать=Істина;
Для Кожного ТекСтрокаСпісокНоменклатури З СпісокНоменклатури Цикл
Рух=Двіженія.ОтгрузкіТоваров.Добавіть ();
Двіженіе.Період=Дата;
Двіженіе.Номенклатура=ТекСтрокаСпісокНоменклатури.Номенклатура;
Двіженіе.КолічествоПолучено=ТекСтрокаСпісокНоменклатури.КолічествоПолучено;
КонецЦікла;
//Зниження боргу при недопоставці
Двіженія.Взаіморасчети.Запісать ();
Двіженія.Взаіморасчети.Запісивать=Істина;
Запит=Новий Запит;
Запрос.Текст="ВИБРАТИ
| АктПріемаПередачіСпісокНоменклатури.Номенклатура ЯК Номенклатура,
| СУММА(АктПриемаПередачиСписокНоменклатуры.КоличествоОтправлено) ЯК КолічествоОтправлено,
| СУММА(АктПриемаПередачиСписокНоменклатуры.КоличествоПолучено) ЯК КолічествоПолучено,
| СУМА (АктПріемаПередачіСпісокНоменклатури.Цена) ЯК Ціна
| помістити ВТСпісок
| ІЗ
| Документ.АктПріемаПередачі.СпісокНоменклатури ЯК АктПріемаПередачіСпісокНоменклатури
| ДЕ
| АктПріемаПередачіСпісокНоменклатури.Ссилка= amp; Посилання
|
| згруповані за
| АктПріемаПередачіСпісокНоменклатури.Номенклатура
|
| індексувати за
| Номенклатура
|;
|
|////////////////////////////////////////////////////////////////////////////////
| ВИБРАТИ
| ВТСпісок.Номенклатура,
| ВИБІР
| КОЛИ ВТСпісок.КолічествоОтправлено - ВТСпісок.КолічествоПолучено lt;=ВТСпісок.КолічествоОтправлено * ЕСТЬNULL (НормиУбилі.НормаУбиліПроцент, 0)/100
| ТОДІ 0
| ІНАКШЕ ВТСпісок.КолічествоОтправлено - ВТСпісок.КолічествоПолучено - ВТСпісок.КолічествоОтправлено * ЕСТЬNULL (НормиУбилі.НормаУбиліПроцент, 0)/100
| КІНЕЦЬ ЯК ПревишеніеПотерь,
| ВТСпісок.Цена,
| ВТСпісок.КолічествоОтправлено - ВТСпісок.КолічествоПолучено ЯК ПотеріФакт
| ІЗ
| ВТСпісок ЯК ВТСпісок
| ЛІВЕ З'ЄДНАННЯ РегістрСведеній.НормиУбилі ЯК НормиУбилі
| ПО ВТСпісок.Номенклатура=НормиУбилі.Номенклатура" ;
Запрос.УстановітьПараметр ( Посилання raquo ;, Лінк);
Вибірка=Запрос.Виполніть (). Вибрати ();
СніженіеДолга=0;
Поки Виборка.Следующій () Цикл
Якщо Виборка.ПревишеніеПотерь gt; 0 Тоді
СніженіеДолга=СніженіеДолга + Виборка.Цена * Виборка.ПотеріФакт;
КонецЕсли;
КонецЦікла;
Якщо СніженіеДолга gt; 0 Тоді
Рух=Двіженія.Взаіморасчети.Добавіть ();
Двіженіе.ВідДвіженія=ВідДвіженіяНакопленія.Пріход;
Д...