РК_ПроверкаСерий 1.3.1.98: доработка объединения дублей (#15)
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -4,6 +4,21 @@
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## 1.3.1.98 (2026-08-20)
|
||||||
|
|
||||||
|
### РК_ПроверкаСерий — доработка объединения дублей (#15)
|
||||||
|
|
||||||
|
- Исправлен ложный отказ «Отметьте группы для объединения»: перед проверкой завершается редактирование строки, колонка `Отметка` переведена в `EditMode=Directly`, уточнены сообщения (в т.ч. когда отмеченные группы уже объединены).
|
||||||
|
- При поиске дублей заполняется `ИдентификаторСерии` (UUID мастер-серии).
|
||||||
|
- Для таблицы `ГруппыДублей` добавлены сортировка по текущей колонке и открытие формы мастер-серии по событию `Выбор`.
|
||||||
|
- Команда **Выбрать другую мастер серию** (`Ctrl+C`) открывает `ФормаИзмененияМастерСерии` со списком серий группы; после выбора пересчитываются мастер, остатки и детали строки.
|
||||||
|
|
||||||
|
## 1.3.1.97 (2026-08-20)
|
||||||
|
|
||||||
|
### РК_ПроверкаСерий — заготовки UI объединения дублей (#15)
|
||||||
|
|
||||||
|
- Добавлены `ГруппыДублейДеталиОстатков1`, реквизит `ИдентификаторСерии`, пустая форма `ФормаИзмененияМастерСерии` (доработаны в 1.3.1.98).
|
||||||
|
|
||||||
## 1.3.1.96 (2026-08-20)
|
## 1.3.1.96 (2026-08-20)
|
||||||
|
|
||||||
### РК_ПроверкаСерий — исправление события двойного клика (#17)
|
### РК_ПроверкаСерий — исправление события двойного клика (#17)
|
||||||
|
|||||||
@@ -246,8 +246,8 @@
|
|||||||
</Metadata>
|
</Metadata>
|
||||||
<Metadata name="DataProcessor.РК_ПроверкаСерий.Form.Форма" id="f14e0001-0001-4000-8000-000000000001" configVersion="0717cd97a4a9d63560c7e131d1669d4a047a854d"/>
|
<Metadata name="DataProcessor.РК_ПроверкаСерий.Form.Форма" id="f14e0001-0001-4000-8000-000000000001" configVersion="0717cd97a4a9d63560c7e131d1669d4a047a854d"/>
|
||||||
<Metadata name="DataProcessor.РК_ПроверкаСерий.Form.Форма.Form" id="f14e0001-0001-4000-8000-000000000001.0" configVersion="919e4b8b0b5a0e0791dd0ccb7274f27b9dd9f285"/>
|
<Metadata name="DataProcessor.РК_ПроверкаСерий.Form.Форма.Form" id="f14e0001-0001-4000-8000-000000000001.0" configVersion="919e4b8b0b5a0e0791dd0ccb7274f27b9dd9f285"/>
|
||||||
<Metadata name="DataProcessor.РК_ПроверкаСерий.Form.ФормаИзмененияМастерСерии" id="2ef7dbf8-ecdd-4f24-b896-a5a95e049d34" configVersion="6aeef6f6c1ca58378b6d399a62fa041fc97cfe5a"/>
|
<Metadata name="DataProcessor.РК_ПроверкаСерий.Form.ФормаИзмененияМастерСерии" id="2ef7dbf8-ecdd-4f24-b896-a5a95e049d34" configVersion="6cca6a1c461aaf798ed1d6fa94cba6bb648697a6"/>
|
||||||
<Metadata name="DataProcessor.РК_ПроверкаСерий.Form.ФормаИзмененияМастерСерии.Form" id="2ef7dbf8-ecdd-4f24-b896-a5a95e049d34.0" configVersion="875ca479bc092da240d78de36bd851ee01a629ca"/>
|
<Metadata name="DataProcessor.РК_ПроверкаСерий.Form.ФормаИзмененияМастерСерии.Form" id="2ef7dbf8-ecdd-4f24-b896-a5a95e049d34.0" configVersion="5d61e4a1bc9153cb3e39744340027f254c8f5a7a"/>
|
||||||
<Metadata name="DefinedType.РаспоряжениеНаОтгрузку" id="afb3288b-968a-4b19-8b67-721e50974db4" configVersion="b4e7b9549112d57eb9da5a9947237f4f601039e7"/>
|
<Metadata name="DefinedType.РаспоряжениеНаОтгрузку" id="afb3288b-968a-4b19-8b67-721e50974db4" configVersion="b4e7b9549112d57eb9da5a9947237f4f601039e7"/>
|
||||||
<Metadata name="Document.ЗаказКлиента" id="83c6bfba-2c6d-4fe7-a05b-1b54e8208966" configVersion="0f1941010a3f2e5c6ace2f57e4dab142a17f8f20"/>
|
<Metadata name="Document.ЗаказКлиента" id="83c6bfba-2c6d-4fe7-a05b-1b54e8208966" configVersion="0f1941010a3f2e5c6ace2f57e4dab142a17f8f20"/>
|
||||||
<Metadata name="Document.РасходныйОрдерНаТовары" id="3d303157-526b-4725-8f94-4077b108b463" configVersion="43ce890f8166575f8e201b20e1bea4cf341f6e47">
|
<Metadata name="Document.РасходныйОрдерНаТовары" id="3d303157-526b-4725-8f94-4077b108b463" configVersion="43ce890f8166575f8e201b20e1bea4cf341f6e47">
|
||||||
|
|||||||
@@ -62,7 +62,7 @@
|
|||||||
<xr:Item xsi:type="xr:MDObjectRef">Role.РК_ОсновнаяРоль</xr:Item>
|
<xr:Item xsi:type="xr:MDObjectRef">Role.РК_ОсновнаяРоль</xr:Item>
|
||||||
</DefaultRoles>
|
</DefaultRoles>
|
||||||
<Vendor/>
|
<Vendor/>
|
||||||
<Version>1.3.1.97</Version>
|
<Version>1.3.1.98</Version>
|
||||||
<DefaultStyle/>
|
<DefaultStyle/>
|
||||||
<DefaultLanguage>Language.Русский</DefaultLanguage>
|
<DefaultLanguage>Language.Русский</DefaultLanguage>
|
||||||
<BriefInformation/>
|
<BriefInformation/>
|
||||||
|
|||||||
@@ -337,6 +337,11 @@
|
|||||||
<CommandName>Form.Command.СнятьОтметкуГруппыДублей</CommandName>
|
<CommandName>Form.Command.СнятьОтметкуГруппыДублей</CommandName>
|
||||||
<ExtendedTooltip name="ГруппыДублейКонтекстноеМенюСнятьОтметкуРасширеннаяПодсказка" id="85"/>
|
<ExtendedTooltip name="ГруппыДублейКонтекстноеМенюСнятьОтметкуРасширеннаяПодсказка" id="85"/>
|
||||||
</Button>
|
</Button>
|
||||||
|
<Button name="ГруппыДублейКонтекстноеМенюВыбратьДругуюМастерСерию" id="208">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.Command.ВыбратьДругуюМастерСерию</CommandName>
|
||||||
|
<ExtendedTooltip name="ГруппыДублейКонтекстноеМенюВыбратьДругуюМастерСериюРасширеннаяПодсказка" id="209"/>
|
||||||
|
</Button>
|
||||||
</ChildItems>
|
</ChildItems>
|
||||||
</ContextMenu>
|
</ContextMenu>
|
||||||
<AutoCommandBar name="ГруппыДублейКоманднаяПанель" id="86">
|
<AutoCommandBar name="ГруппыДублейКоманднаяПанель" id="86">
|
||||||
@@ -362,6 +367,16 @@
|
|||||||
<CommandName>Form.Command.СнятьОтметкуГруппыДублей</CommandName>
|
<CommandName>Form.Command.СнятьОтметкуГруппыДублей</CommandName>
|
||||||
<ExtendedTooltip name="ГруппыДублейСнятьОтметкуРасширеннаяПодсказка" id="94"/>
|
<ExtendedTooltip name="ГруппыДублейСнятьОтметкуРасширеннаяПодсказка" id="94"/>
|
||||||
</Button>
|
</Button>
|
||||||
|
<Button name="ГруппыДублейСортироватьПоКолонке" id="204">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.Command.СортироватьГруппыДублейПоКолонке</CommandName>
|
||||||
|
<ExtendedTooltip name="ГруппыДублейСортироватьПоКолонкеРасширеннаяПодсказка" id="205"/>
|
||||||
|
</Button>
|
||||||
|
<Button name="ГруппыДублейВыбратьДругуюМастерСерию" id="206">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.Command.ВыбратьДругуюМастерСерию</CommandName>
|
||||||
|
<ExtendedTooltip name="ГруппыДублейВыбратьДругуюМастерСериюРасширеннаяПодсказка" id="207"/>
|
||||||
|
</Button>
|
||||||
</ChildItems>
|
</ChildItems>
|
||||||
</AutoCommandBar>
|
</AutoCommandBar>
|
||||||
<ExtendedTooltip name="ГруппыДублейРасширеннаяПодсказка" id="95"/>
|
<ExtendedTooltip name="ГруппыДублейРасширеннаяПодсказка" id="95"/>
|
||||||
@@ -389,10 +404,13 @@
|
|||||||
<ContextMenu name="ГруппыДублейУправлениеПоискомКонтекстноеМеню" id="103"/>
|
<ContextMenu name="ГруппыДублейУправлениеПоискомКонтекстноеМеню" id="103"/>
|
||||||
<ExtendedTooltip name="ГруппыДублейУправлениеПоискомРасширеннаяПодсказка" id="104"/>
|
<ExtendedTooltip name="ГруппыДублейУправлениеПоискомРасширеннаяПодсказка" id="104"/>
|
||||||
</SearchControlAddition>
|
</SearchControlAddition>
|
||||||
|
<Events>
|
||||||
|
<Event name="Selection">ГруппыДублейВыбор</Event>
|
||||||
|
</Events>
|
||||||
<ChildItems>
|
<ChildItems>
|
||||||
<CheckBoxField name="ГруппыДублейОтметка" id="105">
|
<CheckBoxField name="ГруппыДублейОтметка" id="105">
|
||||||
<DataPath>Объект.ГруппыДублей.Отметка</DataPath>
|
<DataPath>Объект.ГруппыДублей.Отметка</DataPath>
|
||||||
<EditMode>EnterOnInput</EditMode>
|
<EditMode>Directly</EditMode>
|
||||||
<CheckBoxType>Auto</CheckBoxType>
|
<CheckBoxType>Auto</CheckBoxType>
|
||||||
<ContextMenu name="ГруппыДублейОтметкаКонтекстноеМеню" id="106"/>
|
<ContextMenu name="ГруппыДублейОтметкаКонтекстноеМеню" id="106"/>
|
||||||
<ExtendedTooltip name="ГруппыДублейОтметкаРасширеннаяПодсказка" id="107"/>
|
<ExtendedTooltip name="ГруппыДублейОтметкаРасширеннаяПодсказка" id="107"/>
|
||||||
@@ -821,5 +839,44 @@
|
|||||||
</Picture>
|
</Picture>
|
||||||
<Action>СнятьОтметкуГруппыДублей</Action>
|
<Action>СнятьОтметкуГруппыДублей</Action>
|
||||||
</Command>
|
</Command>
|
||||||
|
<Command name="СортироватьГруппыДублейПоКолонке" id="204">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Сортировать по колонке</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Сортировать таблицу групп дублей по текущей колонке</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<Picture>
|
||||||
|
<xr:Ref>StdPicture.SortListAsc</xr:Ref>
|
||||||
|
<xr:LoadTransparent>true</xr:LoadTransparent>
|
||||||
|
</Picture>
|
||||||
|
<Action>СортироватьГруппыДублейПоКолонке</Action>
|
||||||
|
</Command>
|
||||||
|
<Command name="ВыбратьДругуюМастерСерию" id="205">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Выбрать другую мастер серию</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Выбрать другую мастер-серию из серии группы дублей текущей строки</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<Shortcut>Ctrl+C</Shortcut>
|
||||||
|
<Picture>
|
||||||
|
<xr:Ref>StdPicture.ChooseValue</xr:Ref>
|
||||||
|
<xr:LoadTransparent>true</xr:LoadTransparent>
|
||||||
|
</Picture>
|
||||||
|
<Action>ВыбратьДругуюМастерСерию</Action>
|
||||||
|
</Command>
|
||||||
</Commands>
|
</Commands>
|
||||||
</Form>
|
</Form>
|
||||||
@@ -233,8 +233,19 @@
|
|||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
Если Не ЕстьОтмеченныеГруппыДублей() Тогда
|
// Зафиксировать значение колонки «Отметка», если ячейка ещё в режиме редактирования.
|
||||||
ПоказатьПредупреждение(, "Отметьте группы для объединения");
|
Если Элементы.ГруппыДублей.ТекущиеДанные <> Неопределено Тогда
|
||||||
|
Элементы.ГруппыДублей.ЗакончитьРедактированиеСтроки(Ложь);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СостояниеОтметок = СостояниеОтметокГруппДублей();
|
||||||
|
Если СостояниеОтметок.КОбъединению = 0 Тогда
|
||||||
|
Если СостояниеОтметок.ОтмеченоВсего > 0 Тогда
|
||||||
|
ПоказатьПредупреждение(,
|
||||||
|
"Отмеченные группы уже объединены. Снимите признак «Объединено» повторным поиском дублей или отметьте другие группы.");
|
||||||
|
Иначе
|
||||||
|
ПоказатьПредупреждение(, "Отметьте группы для объединения (колонка «Отметка»)");
|
||||||
|
КонецЕсли;
|
||||||
Возврат;
|
Возврат;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
@@ -293,6 +304,85 @@
|
|||||||
УстановитьОтметкуВыделенныхСтрок("ГруппыДублей", Ложь);
|
УстановитьОтметкуВыделенныхСтрок("ГруппыДублей", Ложь);
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Процедура СортироватьГруппыДублейПоКолонке(Команда)
|
||||||
|
|
||||||
|
ТекущееПоле = Элементы.ГруппыДублей.ТекущийЭлемент;
|
||||||
|
Если ТекущееПоле = Неопределено Тогда
|
||||||
|
ПоказатьПредупреждение(, "Выберите колонку таблицы (щёлкните ячейку)");
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ИмяКолонки = ИмяКолонкиСортировкиГруппДублей(ТекущееПоле.Имя);
|
||||||
|
Если Не ЗначениеЗаполнено(ИмяКолонки) Тогда
|
||||||
|
ПоказатьПредупреждение(, "По этой колонке сортировка недоступна");
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СортироватьГруппыДублейНаСервере(ИмяКолонки + " Возр");
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Процедура ГруппыДублейВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
|
||||||
|
|
||||||
|
ТекущаяСтрока = ТекущаяСтрокаГруппыДублей();
|
||||||
|
Если ТекущаяСтрока = Неопределено Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СтандартнаяОбработка = Ложь;
|
||||||
|
ОткрытьФормуСерии(ТекущаяСтрока.СерияМастер);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Процедура ВыбратьДругуюМастерСерию(Команда)
|
||||||
|
|
||||||
|
ТекущаяСтрока = ТекущаяСтрокаГруппыДублей();
|
||||||
|
Если ТекущаяСтрока = Неопределено Тогда
|
||||||
|
ПоказатьПредупреждение(, "Выберите строку группы дублей");
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если ТекущаяСтрока.Объединено Тогда
|
||||||
|
ПоказатьПредупреждение(, "Группа уже объединена");
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ПараметрыФормы = Новый Структура;
|
||||||
|
ПараметрыФормы.Вставить("СерияМастер", ТекущаяСтрока.СерияМастер);
|
||||||
|
ПараметрыФормы.Вставить("ВидНоменклатуры", ТекущаяСтрока.ВидНоменклатуры);
|
||||||
|
ПараметрыФормы.Вставить("Номер", ТекущаяСтрока.Номер);
|
||||||
|
ПараметрыФормы.Вставить("ГоденДо", ТекущаяСтрока.ГоденДо);
|
||||||
|
|
||||||
|
Описание = Новый ОписаниеОповещения(
|
||||||
|
"ВыбратьДругуюМастерСериюЗавершение",
|
||||||
|
ЭтотОбъект,
|
||||||
|
ТекущаяСтрока.ПолучитьИдентификатор());
|
||||||
|
ОткрытьФорму(
|
||||||
|
"DataProcessor.РК_ПроверкаСерий.Form.ФормаИзмененияМастерСерии",
|
||||||
|
ПараметрыФормы,
|
||||||
|
ЭтотОбъект,
|
||||||
|
,
|
||||||
|
,
|
||||||
|
,
|
||||||
|
Описание,
|
||||||
|
РежимОткрытияОкнаФормы.БлокироватьОкноВладельца);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Процедура ВыбратьДругуюМастерСериюЗавершение(Результат, ИдентификаторСтроки) Экспорт
|
||||||
|
|
||||||
|
Если Результат = Неопределено Или Не ЗначениеЗаполнено(Результат) Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
ПрименитьНовуюМастерСериюНаСервере(ИдентификаторСтроки, Результат);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
#КонецОбласти
|
#КонецОбласти
|
||||||
|
|
||||||
#Область СлужебныеПроцедурыИФункции
|
#Область СлужебныеПроцедурыИФункции
|
||||||
@@ -422,12 +512,60 @@
|
|||||||
&НаКлиенте
|
&НаКлиенте
|
||||||
Функция ЕстьОтмеченныеГруппыДублей()
|
Функция ЕстьОтмеченныеГруппыДублей()
|
||||||
|
|
||||||
|
Возврат СостояниеОтметокГруппДублей().КОбъединению > 0;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Функция СостояниеОтметокГруппДублей()
|
||||||
|
|
||||||
|
Результат = Новый Структура("ОтмеченоВсего, КОбъединению", 0, 0);
|
||||||
Для Каждого Стр Из Объект.ГруппыДублей Цикл
|
Для Каждого Стр Из Объект.ГруппыДублей Цикл
|
||||||
Если Стр.Отметка И Не Стр.Объединено Тогда
|
Если Не Стр.Отметка Тогда
|
||||||
Возврат Истина;
|
Продолжить;
|
||||||
|
КонецЕсли;
|
||||||
|
Результат.ОтмеченоВсего = Результат.ОтмеченоВсего + 1;
|
||||||
|
Если Не Стр.Объединено Тогда
|
||||||
|
Результат.КОбъединению = Результат.КОбъединению + 1;
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
КонецЦикла;
|
КонецЦикла;
|
||||||
Возврат Ложь;
|
Возврат Результат;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Функция ТекущаяСтрокаГруппыДублей()
|
||||||
|
|
||||||
|
Если Элементы.ГруппыДублей.ТекущиеДанные = Неопределено Тогда
|
||||||
|
Возврат Неопределено;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат Элементы.ГруппыДублей.ТекущиеДанные;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Функция ИмяКолонкиСортировкиГруппДублей(ИмяПоляФормы)
|
||||||
|
|
||||||
|
СоответствиеИмен = Новый Соответствие;
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейОтметка", "Отметка");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейИдентификаторГруппы", "ИдентификаторГруппы");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейСерияМастер", "СерияМастер");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейПредупреждение", "Предупреждение");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейВидНоменклатуры", "ВидНоменклатуры");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейНомер", "Номер");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейГоденДо", "ГоденДо");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейДатаПроизводства", "ДатаПроизводства");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейКоличествоСерий", "КоличествоСерий");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейКоличествоЗамен", "КоличествоЗамен");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейОстатокМастер", "ОстатокМастер");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейОстатокДублей", "ОстатокДублей");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейСерийСОстатком", "СерийСОстатком");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейДеталиОстатков", "ДеталиОстатков");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейОбъединено", "Объединено");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейКомментарий", "Комментарий");
|
||||||
|
СоответствиеИмен.Вставить("ГруппыДублейИдентификаторСерии", "ИдентификаторСерии");
|
||||||
|
Возврат СоответствиеИмен.Получить(ИмяПоляФормы);
|
||||||
|
|
||||||
КонецФункции
|
КонецФункции
|
||||||
|
|
||||||
@@ -1304,6 +1442,19 @@
|
|||||||
&НаСервере
|
&НаСервере
|
||||||
Процедура ДобавитьСтрокуГруппыДублей(НомерГруппы, ДанныеГруппы, Мастер, СерииГруппы, Остатки)
|
Процедура ДобавитьСтрокуГруппыДублей(НомерГруппы, ДанныеГруппы, Мастер, СерииГруппы, Остатки)
|
||||||
|
|
||||||
|
НовСтр = Объект.ГруппыДублей.Добавить();
|
||||||
|
НовСтр.ИдентификаторГруппы = НомерГруппы;
|
||||||
|
НовСтр.ВидНоменклатуры = ДанныеГруппы.ВидНоменклатуры;
|
||||||
|
НовСтр.Номер = ДанныеГруппы.Номер;
|
||||||
|
НовСтр.ГоденДо = ДанныеГруппы.ГоденДо;
|
||||||
|
НовСтр.Объединено = Ложь;
|
||||||
|
ЗаполнитьПоказателиГруппыДублей(НовСтр, Мастер, СерииГруппы, Остатки);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
&НаСервере
|
||||||
|
Процедура ЗаполнитьПоказателиГруппыДублей(СтрГруппа, Мастер, СерииГруппы, Остатки)
|
||||||
|
|
||||||
ОстатокМастер = ОстатокСерииИзСоответствия(Остатки, Мастер);
|
ОстатокМастер = ОстатокСерииИзСоответствия(Остатки, Мастер);
|
||||||
ОстатокДублей = 0;
|
ОстатокДублей = 0;
|
||||||
СерийСОстатком = 0;
|
СерийСОстатком = 0;
|
||||||
@@ -1331,21 +1482,57 @@
|
|||||||
Предупреждение = "У дублей есть остатки → перенос на мастер";
|
Предупреждение = "У дублей есть остатки → перенос на мастер";
|
||||||
КонецЕсли;
|
КонецЕсли;
|
||||||
|
|
||||||
НовСтр = Объект.ГруппыДублей.Добавить();
|
СтрГруппа.ДатаПроизводства = Мастер.ДатаПроизводства;
|
||||||
НовСтр.Отметка = ПустаяСтрока(Предупреждение);
|
СтрГруппа.СерияМастер = Мастер;
|
||||||
НовСтр.ИдентификаторГруппы = НомерГруппы;
|
СтрГруппа.ИдентификаторСерии = Мастер.УникальныйИдентификатор();
|
||||||
НовСтр.ВидНоменклатуры = ДанныеГруппы.ВидНоменклатуры;
|
СтрГруппа.КоличествоСерий = СерииГруппы.Количество();
|
||||||
НовСтр.Номер = ДанныеГруппы.Номер;
|
СтрГруппа.КоличествоЗамен = КоличествоЗамен;
|
||||||
НовСтр.ГоденДо = ДанныеГруппы.ГоденДо;
|
СтрГруппа.ОстатокМастер = ОстатокМастер;
|
||||||
НовСтр.ДатаПроизводства = Мастер.ДатаПроизводства;
|
СтрГруппа.ОстатокДублей = ОстатокДублей;
|
||||||
НовСтр.СерияМастер = Мастер;
|
СтрГруппа.СерийСОстатком = СерийСОстатком;
|
||||||
НовСтр.КоличествоСерий = СерииГруппы.Количество();
|
СтрГруппа.Предупреждение = Предупреждение;
|
||||||
НовСтр.КоличествоЗамен = КоличествоЗамен;
|
СтрГруппа.ДеталиОстатков = СтрСоединить(Детали, "; ");
|
||||||
НовСтр.ОстатокМастер = ОстатокМастер;
|
Если Не СтрГруппа.Объединено Тогда
|
||||||
НовСтр.ОстатокДублей = ОстатокДублей;
|
СтрГруппа.Отметка = ПустаяСтрока(Предупреждение);
|
||||||
НовСтр.СерийСОстатком = СерийСОстатком;
|
КонецЕсли;
|
||||||
НовСтр.Предупреждение = Предупреждение;
|
|
||||||
НовСтр.ДеталиОстатков = СтрСоединить(Детали, "; ");
|
КонецПроцедуры
|
||||||
|
|
||||||
|
&НаСервере
|
||||||
|
Процедура ПрименитьНовуюМастерСериюНаСервере(ИдентификаторСтроки, НоваяМастерСерия)
|
||||||
|
|
||||||
|
СтрГруппа = Объект.ГруппыДублей.НайтиПоИдентификатору(ИдентификаторСтроки);
|
||||||
|
Если СтрГруппа = Неопределено Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если СтрГруппа.Объединено Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Если СтрГруппа.СерияМастер = НоваяМастерСерия Тогда
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
СерииГруппы = СерииГруппыДублей(
|
||||||
|
СтрГруппа.ВидНоменклатуры,
|
||||||
|
СтрГруппа.Номер,
|
||||||
|
СтрГруппа.ГоденДо);
|
||||||
|
Если СерииГруппы.Найти(НоваяМастерСерия) = Неопределено Тогда
|
||||||
|
СтрГруппа.Комментарий = "Выбранная серия не входит в группу дублей";
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Остатки = СведенияОстатковПоСериям(СерииГруппы).Остатки;
|
||||||
|
ЗаполнитьПоказателиГруппыДублей(СтрГруппа, НоваяМастерСерия, СерииГруппы, Остатки);
|
||||||
|
СтрГруппа.Комментарий = "Мастер-серия изменена вручную";
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
&НаСервере
|
||||||
|
Процедура СортироватьГруппыДублейНаСервере(ВыражениеСортировки)
|
||||||
|
|
||||||
|
Объект.ГруппыДублей.Сортировать(ВыражениеСортировки);
|
||||||
|
|
||||||
КонецПроцедуры
|
КонецПроцедуры
|
||||||
|
|
||||||
|
|||||||
@@ -6,13 +6,200 @@
|
|||||||
<v8:content>Выбор мастер серии</v8:content>
|
<v8:content>Выбор мастер серии</v8:content>
|
||||||
</v8:item>
|
</v8:item>
|
||||||
</Title>
|
</Title>
|
||||||
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1"/>
|
<WindowOpeningMode>LockOwnerWindow</WindowOpeningMode>
|
||||||
|
<AutoCommandBar name="ФормаКоманднаяПанель" id="-1">
|
||||||
|
<Autofill>false</Autofill>
|
||||||
|
<ChildItems>
|
||||||
|
<Button name="ФормаВыбрать" id="1">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<DefaultButton>true</DefaultButton>
|
||||||
|
<CommandName>Form.Command.Выбрать</CommandName>
|
||||||
|
<ExtendedTooltip name="ФормаВыбратьРасширеннаяПодсказка" id="2"/>
|
||||||
|
</Button>
|
||||||
|
<Button name="ФормаОтмена" id="3">
|
||||||
|
<Type>CommandBarButton</Type>
|
||||||
|
<CommandName>Form.StandardCommand.Cancel</CommandName>
|
||||||
|
<ExtendedTooltip name="ФормаОтменаРасширеннаяПодсказка" id="4"/>
|
||||||
|
</Button>
|
||||||
|
</ChildItems>
|
||||||
|
</AutoCommandBar>
|
||||||
|
<Events>
|
||||||
|
<Event name="OnCreateAtServer">ПриСозданииНаСервере</Event>
|
||||||
|
</Events>
|
||||||
|
<ChildItems>
|
||||||
|
<LabelDecoration name="НадписьПодсказка" id="5">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Выберите серию группы, которая станет мастер-серией</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ContextMenu name="НадписьПодсказкаКонтекстноеМеню" id="6"/>
|
||||||
|
<ExtendedTooltip name="НадписьПодсказкаРасширеннаяПодсказка" id="7"/>
|
||||||
|
</LabelDecoration>
|
||||||
|
<Table name="СерииГруппы" id="8">
|
||||||
|
<Representation>List</Representation>
|
||||||
|
<ChangeRowSet>false</ChangeRowSet>
|
||||||
|
<ChangeRowOrder>false</ChangeRowOrder>
|
||||||
|
<ChoiceMode>true</ChoiceMode>
|
||||||
|
<DataPath>СерииГруппы</DataPath>
|
||||||
|
<RowFilter xsi:nil="true"/>
|
||||||
|
<ContextMenu name="СерииГруппыКонтекстноеМеню" id="9"/>
|
||||||
|
<AutoCommandBar name="СерииГруппыКоманднаяПанель" id="10">
|
||||||
|
<Autofill>false</Autofill>
|
||||||
|
</AutoCommandBar>
|
||||||
|
<ExtendedTooltip name="СерииГруппыРасширеннаяПодсказка" id="11"/>
|
||||||
|
<SearchStringAddition name="СерииГруппыСтрокаПоиска" id="12">
|
||||||
|
<AdditionSource>
|
||||||
|
<Item>СерииГруппы</Item>
|
||||||
|
<Type>SearchStringRepresentation</Type>
|
||||||
|
</AdditionSource>
|
||||||
|
<ContextMenu name="СерииГруппыСтрокаПоискаКонтекстноеМеню" id="13"/>
|
||||||
|
<ExtendedTooltip name="СерииГруппыСтрокаПоискаРасширеннаяПодсказка" id="14"/>
|
||||||
|
</SearchStringAddition>
|
||||||
|
<ViewStatusAddition name="СерииГруппыСостояниеПросмотра" id="15">
|
||||||
|
<AdditionSource>
|
||||||
|
<Item>СерииГруппы</Item>
|
||||||
|
<Type>ViewStatusRepresentation</Type>
|
||||||
|
</AdditionSource>
|
||||||
|
<ContextMenu name="СерииГруппыСостояниеПросмотраКонтекстноеМеню" id="16"/>
|
||||||
|
<ExtendedTooltip name="СерииГруппыСостояниеПросмотраРасширеннаяПодсказка" id="17"/>
|
||||||
|
</ViewStatusAddition>
|
||||||
|
<SearchControlAddition name="СерииГруппыУправлениеПоиском" id="18">
|
||||||
|
<AdditionSource>
|
||||||
|
<Item>СерииГруппы</Item>
|
||||||
|
<Type>SearchControl</Type>
|
||||||
|
</AdditionSource>
|
||||||
|
<ContextMenu name="СерииГруппыУправлениеПоискомКонтекстноеМеню" id="19"/>
|
||||||
|
<ExtendedTooltip name="СерииГруппыУправлениеПоискомРасширеннаяПодсказка" id="20"/>
|
||||||
|
</SearchControlAddition>
|
||||||
|
<Events>
|
||||||
|
<Event name="Selection">СерииГруппыВыбор</Event>
|
||||||
|
</Events>
|
||||||
|
<ChildItems>
|
||||||
|
<CheckBoxField name="СерииГруппыЭтоМастер" id="21">
|
||||||
|
<DataPath>СерииГруппы.ЭтоМастер</DataPath>
|
||||||
|
<ReadOnly>true</ReadOnly>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<CheckBoxType>Auto</CheckBoxType>
|
||||||
|
<ContextMenu name="СерииГруппыЭтоМастерКонтекстноеМеню" id="22"/>
|
||||||
|
<ExtendedTooltip name="СерииГруппыЭтоМастерРасширеннаяПодсказка" id="23"/>
|
||||||
|
</CheckBoxField>
|
||||||
|
<InputField name="СерииГруппыСерия" id="24">
|
||||||
|
<DataPath>СерииГруппы.Серия</DataPath>
|
||||||
|
<ReadOnly>true</ReadOnly>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="СерииГруппыСерияКонтекстноеМеню" id="25"/>
|
||||||
|
<ExtendedTooltip name="СерииГруппыСерияРасширеннаяПодсказка" id="26"/>
|
||||||
|
</InputField>
|
||||||
|
<InputField name="СерииГруппыОстаток" id="27">
|
||||||
|
<DataPath>СерииГруппы.Остаток</DataPath>
|
||||||
|
<ReadOnly>true</ReadOnly>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<Width>10</Width>
|
||||||
|
<ContextMenu name="СерииГруппыОстатокКонтекстноеМеню" id="28"/>
|
||||||
|
<ExtendedTooltip name="СерииГруппыОстатокРасширеннаяПодсказка" id="29"/>
|
||||||
|
</InputField>
|
||||||
|
<LabelField name="СерииГруппыИдентификаторСерии" id="30">
|
||||||
|
<DataPath>СерииГруппы.ИдентификаторСерии</DataPath>
|
||||||
|
<ReadOnly>true</ReadOnly>
|
||||||
|
<EditMode>EnterOnInput</EditMode>
|
||||||
|
<ContextMenu name="СерииГруппыИдентификаторСерииКонтекстноеМеню" id="31"/>
|
||||||
|
<ExtendedTooltip name="СерииГруппыИдентификаторСерииРасширеннаяПодсказка" id="32"/>
|
||||||
|
</LabelField>
|
||||||
|
</ChildItems>
|
||||||
|
</Table>
|
||||||
|
</ChildItems>
|
||||||
<Attributes>
|
<Attributes>
|
||||||
<Attribute name="Объект" id="1">
|
<Attribute name="СерииГруппы" id="1">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Серии группы</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
<Type>
|
<Type>
|
||||||
<v8:Type>cfg:DataProcessorObject.РК_ПроверкаСерий</v8:Type>
|
<v8:Type>v8:ValueTable</v8:Type>
|
||||||
|
</Type>
|
||||||
|
<Columns>
|
||||||
|
<Column name="Серия" id="1">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Серия</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>cfg:CatalogRef.СерииНоменклатуры</v8:Type>
|
||||||
|
</Type>
|
||||||
|
</Column>
|
||||||
|
<Column name="Остаток" id="2">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Остаток</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>xs:decimal</v8:Type>
|
||||||
|
<v8:NumberQualifiers>
|
||||||
|
<v8:Digits>15</v8:Digits>
|
||||||
|
<v8:FractionDigits>3</v8:FractionDigits>
|
||||||
|
<v8:AllowedSign>Any</v8:AllowedSign>
|
||||||
|
</v8:NumberQualifiers>
|
||||||
|
</Type>
|
||||||
|
</Column>
|
||||||
|
<Column name="ЭтоМастер" id="3">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Мастер</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>xs:boolean</v8:Type>
|
||||||
|
</Type>
|
||||||
|
</Column>
|
||||||
|
<Column name="ИдентификаторСерии" id="4">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>UUID</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>v8:UUID</v8:Type>
|
||||||
|
</Type>
|
||||||
|
</Column>
|
||||||
|
</Columns>
|
||||||
|
</Attribute>
|
||||||
|
<Attribute name="СерияМастер" id="2">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Серия мастер</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<Type>
|
||||||
|
<v8:Type>cfg:CatalogRef.СерииНоменклатуры</v8:Type>
|
||||||
</Type>
|
</Type>
|
||||||
<MainAttribute>true</MainAttribute>
|
|
||||||
</Attribute>
|
</Attribute>
|
||||||
</Attributes>
|
</Attributes>
|
||||||
</Form>
|
<Commands>
|
||||||
|
<Command name="Выбрать" id="1">
|
||||||
|
<Title>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Выбрать</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</Title>
|
||||||
|
<ToolTip>
|
||||||
|
<v8:item>
|
||||||
|
<v8:lang>ru</v8:lang>
|
||||||
|
<v8:content>Назначить выбранную серию мастер-серией группы</v8:content>
|
||||||
|
</v8:item>
|
||||||
|
</ToolTip>
|
||||||
|
<Action>Выбрать</Action>
|
||||||
|
</Command>
|
||||||
|
</Commands>
|
||||||
|
</Form>
|
||||||
|
|||||||
+130
@@ -0,0 +1,130 @@
|
|||||||
|
#Область ОбработчикиСобытийФормы
|
||||||
|
|
||||||
|
&НаСервере
|
||||||
|
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
|
||||||
|
|
||||||
|
СерияМастер = Параметры.СерияМастер;
|
||||||
|
ВидНоменклатуры = Параметры.ВидНоменклатуры;
|
||||||
|
Номер = Параметры.Номер;
|
||||||
|
ГоденДо = Параметры.ГоденДо;
|
||||||
|
|
||||||
|
ЗаполнитьСерииГруппы(ВидНоменклатуры, Номер, ГоденДо);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область ОбработчикиКомандФормы
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Процедура Выбрать(Команда)
|
||||||
|
|
||||||
|
ВыбраннаяСерия = ТекущаяВыбраннаяСерия();
|
||||||
|
Если Не ЗначениеЗаполнено(ВыбраннаяСерия) Тогда
|
||||||
|
ПоказатьПредупреждение(, "Выберите серию в таблице");
|
||||||
|
Возврат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Закрыть(ВыбраннаяСерия);
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область ОбработчикиСобытийЭлементовТаблицыФормыСерииГруппы
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Процедура СерииГруппыВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
|
||||||
|
|
||||||
|
СтандартнаяОбработка = Ложь;
|
||||||
|
ВыбраннаяСерия = ТекущаяВыбраннаяСерия();
|
||||||
|
Если ЗначениеЗаполнено(ВыбраннаяСерия) Тогда
|
||||||
|
Закрыть(ВыбраннаяСерия);
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
|
|
||||||
|
#Область СлужебныеПроцедурыИФункции
|
||||||
|
|
||||||
|
&НаКлиенте
|
||||||
|
Функция ТекущаяВыбраннаяСерия()
|
||||||
|
|
||||||
|
Если Элементы.СерииГруппы.ТекущиеДанные = Неопределено Тогда
|
||||||
|
Возврат Неопределено;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Возврат Элементы.СерииГруппы.ТекущиеДанные.Серия;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
&НаСервере
|
||||||
|
Процедура ЗаполнитьСерииГруппы(ВидНоменклатуры, Номер, ГоденДо)
|
||||||
|
|
||||||
|
СерииГруппы.Очистить();
|
||||||
|
|
||||||
|
Запрос = Новый Запрос;
|
||||||
|
Запрос.Текст =
|
||||||
|
"ВЫБРАТЬ
|
||||||
|
| Сер.Ссылка КАК Серия
|
||||||
|
|ИЗ
|
||||||
|
| Справочник.СерииНоменклатуры КАК Сер
|
||||||
|
|ГДЕ
|
||||||
|
| Сер.ВидНоменклатуры = &Вид
|
||||||
|
| И Сер.Номер = &Номер
|
||||||
|
| И Сер.ГоденДо = &ГоденДо
|
||||||
|
| И НЕ Сер.ПометкаУдаления";
|
||||||
|
Запрос.УстановитьПараметр("Вид", ВидНоменклатуры);
|
||||||
|
Запрос.УстановитьПараметр("Номер", Номер);
|
||||||
|
Запрос.УстановитьПараметр("ГоденДо", ГоденДо);
|
||||||
|
|
||||||
|
Серии = Новый Массив;
|
||||||
|
Выборка = Запрос.Выполнить().Выбрать();
|
||||||
|
Пока Выборка.Следующий() Цикл
|
||||||
|
Серии.Добавить(Выборка.Серия);
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Остатки = ОстаткиСерий(Серии);
|
||||||
|
Для Каждого Серия Из Серии Цикл
|
||||||
|
НовСтр = СерииГруппы.Добавить();
|
||||||
|
НовСтр.Серия = Серия;
|
||||||
|
НовСтр.ЭтоМастер = (Серия = СерияМастер);
|
||||||
|
НовСтр.ИдентификаторСерии = Серия.УникальныйИдентификатор();
|
||||||
|
Остаток = Остатки.Получить(Серия);
|
||||||
|
НовСтр.Остаток = ?(Остаток = Неопределено, 0, Остаток);
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
СерииГруппы.Сортировать("ЭтоМастер Убыв, Остаток Убыв, Серия");
|
||||||
|
|
||||||
|
КонецПроцедуры
|
||||||
|
|
||||||
|
&НаСервере
|
||||||
|
Функция ОстаткиСерий(Серии)
|
||||||
|
|
||||||
|
Результат = Новый Соответствие;
|
||||||
|
Если Серии.Количество() = 0 Тогда
|
||||||
|
Возврат Результат;
|
||||||
|
КонецЕсли;
|
||||||
|
|
||||||
|
Запрос = Новый Запрос;
|
||||||
|
Запрос.Текст =
|
||||||
|
"ВЫБРАТЬ
|
||||||
|
| Ост.Серия КАК Серия,
|
||||||
|
| СУММА(Ост.ВНаличииОстаток) КАК Количество
|
||||||
|
|ИЗ
|
||||||
|
| РегистрНакопления.ТоварыНаСкладах.Остатки(, Серия В (&Серии)) КАК Ост
|
||||||
|
|СГРУППИРОВАТЬ ПО
|
||||||
|
| Ост.Серия";
|
||||||
|
Запрос.УстановитьПараметр("Серии", Серии);
|
||||||
|
|
||||||
|
Выборка = Запрос.Выполнить().Выбрать();
|
||||||
|
Пока Выборка.Следующий() Цикл
|
||||||
|
Результат.Вставить(Выборка.Серия, Выборка.Количество);
|
||||||
|
КонецЦикла;
|
||||||
|
|
||||||
|
Возврат Результат;
|
||||||
|
|
||||||
|
КонецФункции
|
||||||
|
|
||||||
|
#КонецОбласти
|
||||||
Reference in New Issue
Block a user