diff --git a/CHANGELOG.md b/CHANGELOG.md index b3baaef..106ed66 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ --- +## 1.3.1.131 (2026-10-13) + +### #78: повторный выбор номенклатуры не пересчитывает сумму регл. + +- При включённом признаке смена номенклатуры в строке оставляет сумму регл. и НДС регл. как были до выбора. Сумма в валюте документа пересчитывается штатно. + ## 1.3.1.130 (2026-10-13) ### #78: признак суммы регл. на форме комиссии 2.5 diff --git a/VERSION b/VERSION index 9f0217d..4d488b9 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.3.1.130 +1.3.1.131 diff --git a/src/Configuration.xml b/src/Configuration.xml index 95d099f..63fef3d 100644 --- a/src/Configuration.xml +++ b/src/Configuration.xml @@ -62,7 +62,7 @@ Role.РК_ОсновнаяРоль - 1.3.1.130 + 1.3.1.131 Language.Русский diff --git a/src/Documents/ВводОстатковТоваров/Forms/ФормаТовары/Ext/Form/Module.bsl b/src/Documents/ВводОстатковТоваров/Forms/ФормаТовары/Ext/Form/Module.bsl index 87a9ee5..f8fec53 100644 --- a/src/Documents/ВводОстатковТоваров/Forms/ФормаТовары/Ext/Form/Module.bsl +++ b/src/Documents/ВводОстатковТоваров/Forms/ФормаТовары/Ext/Form/Module.bsl @@ -119,6 +119,77 @@ #КонецВставки КонецПроцедуры +&НаКлиенте +&ИзменениеИКонтроль("НоменклатураПриИзменении") +Процедура РК_НоменклатураПриИзменении(ИдентификаторТекущейСтроки = Неопределено) + + Если ИдентификаторТекущейСтроки <> Неопределено Тогда + ТекущаяСтрока = Объект.Товары.НайтиПоИдентификатору(ИдентификаторТекущейСтроки); + Иначе + ТекущаяСтрока = Элементы[ИмяТекущейТаблицыФормы].ТекущиеДанные; + КонецЕсли; + #Вставка + // --- РК --- + СуммаРеглДоПересчета = ТекущаяСтрока.СуммаРегл; + НДСРеглДоПересчета = ТекущаяСтрока.НДСРегл; + // --- + #КонецВставки + + СтруктураДействий = Новый Структура; + СтруктураДействий.Вставить("ПроверитьХарактеристикуПоВладельцу", ТекущаяСтрока.Характеристика); + СтруктураДействий.Вставить("ПроверитьЗаполнитьУпаковкуПоВладельцу", ТекущаяСтрока.Упаковка); + СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц", ПараметрыПересчетаКоличестваЕдиниц(Объект.ХозяйственнаяОперация)); + СтруктураДействий.Вставить("ЗаполнитьПризнакВедетсяУчетПоГТД", Новый Структура("Номенклатура", "ВедетсяУчетПоГТД")); + СтруктураДействий.Вставить("ЗаполнитьПризнакАртикул", Новый Структура("Номенклатура", "Артикул")); + СтруктураДействий.Вставить("ЗаполнитьПризнакТипНоменклатуры", Новый Структура("Номенклатура", "ТипНоменклатуры")); + СтруктураДействий.Вставить("ЗаполнитьПризнакТипИзмеряемойВеличины", Новый Структура("Номенклатура", "ТипИзмеряемойВеличины")); + + Если ЭтоОстаткиСобственныхТоваров + Или ЭтоОстаткиПринятойТары + Или ЭтоОстаткиПереданнойТары + Или ЭтоОстаткиПереданныхПереработчикамТоваров2_5 + Или ЭтоОстаткиПринятыхНаКомиссиюТоваров + Или ЭтоОстаткиПринятыхНаХранениеТоваров + Или ЭтоОстаткиПереданныхНаКомиссиюТоваров + Или ЭтоОстаткиПереданныхНаКомиссиюТоваров2_5 + Или ЭтоОстаткиПереданныхНаХранениеТоваров + Или ЭтоОстаткиПереданныхВПроизводствоТоваров + Или ЭтоОстаткиОтгруженныхТоваров Тогда + + УчетПрослеживаемыхТоваровКлиентСерверЛокализация.ДополнитьОписаниеНастроекЗаполненияСлужебныхРеквизитовТабличнойЧасти( + СтруктураДействий); + + КонецЕсли; + + ПараметрыПроверкиСерий = Новый Структура("Склад, ПараметрыУказанияСерий", Объект[ПараметрыУказанияСерий.ИмяПоляСклад], ПараметрыУказанияСерий); + СтруктураДействий.Вставить("ПроверитьСериюРассчитатьСтатус", ПараметрыПроверкиСерий); + + СтруктураДействий.Вставить("НоменклатураПриИзмененииПереопределяемый", Новый Структура("ИмяФормы, ИмяТабличнойЧасти", + ИмяФормы, ИмяТекущейТаблицыФормы)); + + ПакетнаяОбработкаТабличнойЧастиКлиент.ОбработатьСтрокуТЧ(ТекущаяСтрока, СтруктураДействий, КэшированныеЗначения); + Если НЕ ЗначениеЗаполнено(ТекущаяСтрока.СтавкаНДС) ИЛИ ИдентификаторТекущейСтроки = Неопределено Тогда + ТекущаяСтрока.СтавкаНДС = СтавкаНДСНоменклатуры(ТекущаяСтрока.Номенклатура, Объект.Организация, Объект.НалогообложениеНДС, Объект.Дата, Объект.ХозяйственнаяОперация); + КонецЕсли; + + Если Не ТекущаяСтрока.ВедетсяУчетПоГТД + И Не ТекущаяСтрока.ВедетсяУчетПоРНПТ Тогда + ТекущаяСтрока.НомерГТД = Неопределено; + ТекущаяСтрока.ТипНомераГТД = Неопределено; + КонецЕсли; + + УпаковкаПриИзменении(ИдентификаторТекущейСтроки); + #Вставка + // --- РК --- + Если Объект.РК_НеПересчитыватьСуммуРеглПоКурсу Тогда + ТекущаяСтрока.СуммаРегл = СуммаРеглДоПересчета; + ТекущаяСтрока.НДСРегл = НДСРеглДоПересчета; + КонецЕсли; + // --- + #КонецВставки + +КонецПроцедуры + &НаКлиенте Функция РК_КоэффициентСуммыРеглСтроки(СтрокаТовара, КоэффициентДаты)