Интеркампани в УНФ без цены
Клиенту нужно было сделать, чтобы товар передавался из одной организации в другую без наценки. Искал решение на форуме, но типовая конфигурация такое не предусматривает. Реализовать это оказалось не так сложно.
В модуль менеджера документа ПередачаТоваровМеждуОрганизациями:
&Вместо("СформироватьТаблицаЗапасы") Процедура интксс_СформироватьТаблицаЗапасы(ДокументСсылкаПередачаТоваровМеждуОрганизациями, СтруктураДополнительныеСвойства) ПродолжитьВызов(ДокументСсылкаПередачаТоваровМеждуОрганизациями, СтруктураДополнительныеСвойства); Для Каждого Строка ИЗ СтруктураДополнительныеСвойства.ТаблицыДляДвижений.ТаблицаЗапасы Цикл Если Строка.ВидДвижения = ВидДвиженияНакопления.Приход Тогда Строка.Сумма = Строка.СуммаИнт; Строка.СуммаБезНДС = Строка.СуммаБезНДСИнт; КонецЕсли; КонецЦикла; КонецПроцедуры
Однако было бы еще неплохо, чтобы пустые цены ставились, например в 1 рубль, потому что цена передачи в данном случае не имеет никакого значения.
В модуле документа ПередачаТоваровМеждуОрганизациями:
&Перед("ПередЗаписью") Процедура интксс_ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения) интксс_ЗаполнитьЦены(); КонецПроцедуры &Перед("ОбработкаПроверкиЗаполнения") Процедура интксс_ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты) интксс_ЗаполнитьЦены(); КонецПроцедуры &Перед("ОбработкаПроведения") Процедура интксс_ЗаполнитьЦены() Для Каждого Строка ИЗ ЭтотОбъект.Запасы Цикл Если Не ЗначениеЗаполнено(Строка.Цена) Тогда //Меняем цену на 1 рубль... Строка.Цена = 1; ПараметрыРасчета = Новый Структура; ПараметрыРасчета.Вставить("СуммаВключаетНДС", ЭтотОбъект.СуммаВключаетНДС); ТабличныеЧастиУНФКлиентСервер.РассчитатьСуммыВСтрокеТЧ(Строка, ПараметрыРасчета); КонецЕсли; КонецЦикла; КонецПроцедуры
Почему то перед записью работает, а при проведении нет. Видимо, для уже записанных документов «Перед записью» не срабатывает, поэтому добавил заполнение и в проверку заполнения.


Среда: УНФ 3.0.9.105. Объем: 1.5 час




Свежие комментарии