From 77212884f270df98fff5a0a8c19571d422825df2 Mon Sep 17 00:00:00 2001 From: mihailkudravcev Date: Tue, 13 Oct 2026 10:23:02 +0300 Subject: [PATCH] =?UTF-8?q?1.3.1.131:=20=D0=BF=D0=BE=D0=B2=D1=82=D0=BE?= =?UTF-8?q?=D1=80=D0=BD=D1=8B=D0=B9=20=D0=B2=D1=8B=D0=B1=D0=BE=D1=80=20?= =?UTF-8?q?=D0=BD=D0=BE=D0=BC=D0=B5=D0=BD=D0=BA=D0=BB=D0=B0=D1=82=D1=83?= =?UTF-8?q?=D1=80=D1=8B=20=D0=BD=D0=B5=20=D0=BF=D0=B5=D1=80=D0=B5=D1=81?= =?UTF-8?q?=D1=87=D0=B8=D1=82=D1=8B=D0=B2=D0=B0=D0=B5=D1=82=20=D1=81=D1=83?= =?UTF-8?q?=D0=BC=D0=BC=D1=83=20=D1=80=D0=B5=D0=B3=D0=BB.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit При включённом признаке сумма регл. и НДС регл. строки остаются как до выбора. Co-authored-by: Cursor --- CHANGELOG.md | 6 ++ VERSION | 2 +- src/Configuration.xml | 2 +- .../Forms/ФормаТовары/Ext/Form/Module.bsl | 71 +++++++++++++++++++ 4 files changed, 79 insertions(+), 2 deletions(-) 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 + Или ЭтоОстаткиПереданныхНаХранениеТоваров + Или ЭтоОстаткиПереданныхВПроизводствоТоваров + Или ЭтоОстаткиОтгруженныхТоваров Тогда + + УчетПрослеживаемыхТоваровКлиентСерверЛокализация.ДополнитьОписаниеНастроекЗаполненияСлужебныхРеквизитовТабличнойЧасти( + СтруктураДействий); + + КонецЕсли; + + ПараметрыПроверкиСерий = Новый Структура("Склад, ПараметрыУказанияСерий", Объект[ПараметрыУказанияСерий.ИмяПоляСклад], ПараметрыУказанияСерий); + СтруктураДействий.Вставить("ПроверитьСериюРассчитатьСтатус", ПараметрыПроверкиСерий); + + СтруктураДействий.Вставить("НоменклатураПриИзмененииПереопределяемый", Новый Структура("ИмяФормы, ИмяТабличнойЧасти", + ИмяФормы, ИмяТекущейТаблицыФормы)); + + ПакетнаяОбработкаТабличнойЧастиКлиент.ОбработатьСтрокуТЧ(ТекущаяСтрока, СтруктураДействий, КэшированныеЗначения); + Если НЕ ЗначениеЗаполнено(ТекущаяСтрока.СтавкаНДС) ИЛИ ИдентификаторТекущейСтроки = Неопределено Тогда + ТекущаяСтрока.СтавкаНДС = СтавкаНДСНоменклатуры(ТекущаяСтрока.Номенклатура, Объект.Организация, Объект.НалогообложениеНДС, Объект.Дата, Объект.ХозяйственнаяОперация); + КонецЕсли; + + Если Не ТекущаяСтрока.ВедетсяУчетПоГТД + И Не ТекущаяСтрока.ВедетсяУчетПоРНПТ Тогда + ТекущаяСтрока.НомерГТД = Неопределено; + ТекущаяСтрока.ТипНомераГТД = Неопределено; + КонецЕсли; + + УпаковкаПриИзменении(ИдентификаторТекущейСтроки); + #Вставка + // --- РК --- + Если Объект.РК_НеПересчитыватьСуммуРеглПоКурсу Тогда + ТекущаяСтрока.СуммаРегл = СуммаРеглДоПересчета; + ТекущаяСтрока.НДСРегл = НДСРеглДоПересчета; + КонецЕсли; + // --- + #КонецВставки + +КонецПроцедуры + &НаКлиенте Функция РК_КоэффициентСуммыРеглСтроки(СтрокаТовара, КоэффициентДаты)