РК_ПроверкаСерий 1.3.1.100: пометка дублей на удаление (#15)

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
mihailkudravcev
2026-08-20 14:49:22 +03:00
parent b07b7c96d6
commit 71e56dcecd
7 changed files with 88 additions and 2 deletions
+7
View File
@@ -4,6 +4,13 @@
--- ---
## 1.3.1.100 (2026-08-20)
### РК_ПроверкаСерий — пометка дублей на удаление (#15)
- Добавлен сохраняемый реквизит формы `Помечать дубли серии на удаление`.
- При объединении (не в режиме теста), если настройка включена, после `ЗаменитьСсылки` не-мастер серии помечаются на удаление.
## 1.3.1.99 (2026-08-20) ## 1.3.1.99 (2026-08-20)
### РК_ЗагрузкаЦен — актуальные цены из исходной ИБ (#18) ### РК_ЗагрузкаЦен — актуальные цены из исходной ИБ (#18)
+1 -1
View File
@@ -1 +1 @@
1.3.1.99 1.3.1.100
+1
View File
@@ -261,6 +261,7 @@
<Metadata name="DataProcessor.РК_ПроверкаСерий.Attribute.РежимТест" id="f14e0002-0002-4000-8000-000000000002"/> <Metadata name="DataProcessor.РК_ПроверкаСерий.Attribute.РежимТест" id="f14e0002-0002-4000-8000-000000000002"/>
<Metadata name="DataProcessor.РК_ПроверкаСерий.TabularSection.ПроблемныеСерии" id="f14e0003-0003-4000-8000-000000000003"/> <Metadata name="DataProcessor.РК_ПроверкаСерий.TabularSection.ПроблемныеСерии" id="f14e0003-0003-4000-8000-000000000003"/>
<Metadata name="DataProcessor.РК_ПроверкаСерий.Attribute.ГоденДоПоУмолчанию" id="f14e0004-0004-4000-8000-000000000004"/> <Metadata name="DataProcessor.РК_ПроверкаСерий.Attribute.ГоденДоПоУмолчанию" id="f14e0004-0004-4000-8000-000000000004"/>
<Metadata name="DataProcessor.РК_ПроверкаСерий.Attribute.ПомечатьДублиСерииНаУдаление" id="f14e0005-0005-4000-8000-000000000005"/>
<Metadata name="DataProcessor.РК_ПроверкаСерий.TabularSection.ПроблемныеСерии.Attribute.Отметка" id="f14e0010-0010-4000-8000-000000000010"/> <Metadata name="DataProcessor.РК_ПроверкаСерий.TabularSection.ПроблемныеСерии.Attribute.Отметка" id="f14e0010-0010-4000-8000-000000000010"/>
<Metadata name="DataProcessor.РК_ПроверкаСерий.TabularSection.ПроблемныеСерии.Attribute.Серия" id="f14e0011-0011-4000-8000-000000000011"/> <Metadata name="DataProcessor.РК_ПроверкаСерий.TabularSection.ПроблемныеСерии.Attribute.Серия" id="f14e0011-0011-4000-8000-000000000011"/>
<Metadata name="DataProcessor.РК_ПроверкаСерий.TabularSection.ПроблемныеСерии.Attribute.Номенклатура" id="f14e0012-0012-4000-8000-000000000012"/> <Metadata name="DataProcessor.РК_ПроверкаСерий.TabularSection.ПроблемныеСерии.Attribute.Номенклатура" id="f14e0012-0012-4000-8000-000000000012"/>
+1 -1
View File
@@ -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.99</Version> <Version>1.3.1.100</Version>
<DefaultStyle/> <DefaultStyle/>
<DefaultLanguage>Language.Русский</DefaultLanguage> <DefaultLanguage>Language.Русский</DefaultLanguage>
<BriefInformation/> <BriefInformation/>
@@ -119,6 +119,45 @@
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput> <ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
</Properties> </Properties>
</Attribute> </Attribute>
<Attribute uuid="f14e0005-0005-4000-8000-000000000005">
<Properties>
<Name>ПомечатьДублиСерииНаУдаление</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Помечать дубли серии на удаление</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:boolean</v8:Type>
</Type>
<PasswordMode>false</PasswordMode>
<Format/>
<EditFormat/>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>После замены ссылок помечать не-мастер серии группы на удаление</v8:content>
</v8:item>
</ToolTip>
<MarkNegatives>false</MarkNegatives>
<Mask/>
<MultiLine>false</MultiLine>
<ExtendedEdit>false</ExtendedEdit>
<MinValue xsi:nil="true"/>
<MaxValue xsi:nil="true"/>
<FillChecking>DontCheck</FillChecking>
<ChoiceFoldersAndItems>Items</ChoiceFoldersAndItems>
<ChoiceParameterLinks/>
<ChoiceParameters/>
<QuickChoice>Auto</QuickChoice>
<CreateOnInput>Auto</CreateOnInput>
<ChoiceForm/>
<LinkByType/>
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
</Properties>
</Attribute>
<TabularSection uuid="f14e0003-0003-4000-8000-000000000003"> <TabularSection uuid="f14e0003-0003-4000-8000-000000000003">
<InternalInfo> <InternalInfo>
<xr:GeneratedType name="DataProcessorTabularSection.РК_ПроверкаСерий.ПроблемныеСерии" category="TabularSection"> <xr:GeneratedType name="DataProcessorTabularSection.РК_ПроверкаСерий.ПроблемныеСерии" category="TabularSection">
@@ -26,6 +26,20 @@
<ContextMenu name="РежимТестКонтекстноеМеню" id="6"/> <ContextMenu name="РежимТестКонтекстноеМеню" id="6"/>
<ExtendedTooltip name="РежимТестРасширеннаяПодсказка" id="7"/> <ExtendedTooltip name="РежимТестРасширеннаяПодсказка" id="7"/>
</CheckBoxField> </CheckBoxField>
<CheckBoxField name="ПомечатьДублиСерииНаУдаление" id="210">
<DataPath>Объект.ПомечатьДублиСерииНаУдаление</DataPath>
<TitleLocation>Right</TitleLocation>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>После успешной замены ссылок помечать не-мастер серии на удаление</v8:content>
</v8:item>
</ToolTip>
<ToolTipRepresentation>ShowRight</ToolTipRepresentation>
<CheckBoxType>Auto</CheckBoxType>
<ContextMenu name="ПомечатьДублиСерииНаУдалениеКонтекстноеМеню" id="211"/>
<ExtendedTooltip name="ПомечатьДублиСерииНаУдалениеРасширеннаяПодсказка" id="212"/>
</CheckBoxField>
<Pages name="ГруппаСтраницы" id="70"> <Pages name="ГруппаСтраницы" id="70">
<Title> <Title>
<v8:item> <v8:item>
@@ -587,6 +601,7 @@
<MainAttribute>true</MainAttribute> <MainAttribute>true</MainAttribute>
<Save> <Save>
<Field>Объект.ГоденДоПоУмолчанию</Field> <Field>Объект.ГоденДоПоУмолчанию</Field>
<Field>Объект.ПомечатьДублиСерииНаУдаление</Field>
</Save> </Save>
</Attribute> </Attribute>
<Attribute name="ТекстПоследнейОшибки" id="2"> <Attribute name="ТекстПоследнейОшибки" id="2">
@@ -1628,8 +1628,15 @@
СтрГруппа.Объединено = Истина; СтрГруппа.Объединено = Истина;
Результат.ОбъединеноСсылок = Результат.ОбъединеноСсылок + Заменяемые.Количество(); Результат.ОбъединеноСсылок = Результат.ОбъединеноСсылок + Заменяемые.Количество();
Результат.ОбъединеноГрупп = Результат.ОбъединеноГрупп + 1; Результат.ОбъединеноГрупп = Результат.ОбъединеноГрупп + 1;
Если Объект.ПомечатьДублиСерииНаУдаление Тогда
СтрГруппа.Комментарий = "Тест: ссылки заменены, дубли были бы помечены на удаление ("
+ Формат(Заменяемые.Количество(), "ЧН=0; ЧГ=0") + ")";
КонецЕсли;
Иначе Иначе
ОбщегоНазначения.ЗаменитьСсылки(Заменяемые); ОбщегоНазначения.ЗаменитьСсылки(Заменяемые);
Если Объект.ПомечатьДублиСерииНаУдаление Тогда
ПометитьДублиСерииНаУдаление(Заменяемые);
КонецЕсли;
СтрГруппа.Объединено = Истина; СтрГруппа.Объединено = Истина;
Результат.ОбъединеноСсылок = Результат.ОбъединеноСсылок + Заменяемые.Количество(); Результат.ОбъединеноСсылок = Результат.ОбъединеноСсылок + Заменяемые.Количество();
Результат.ОбъединеноГрупп = Результат.ОбъединеноГрупп + 1; Результат.ОбъединеноГрупп = Результат.ОбъединеноГрупп + 1;
@@ -1645,4 +1652,21 @@
КонецФункции КонецФункции
&НаСервере
Процедура ПометитьДублиСерииНаУдаление(Заменяемые)
Для Каждого КлючИЗначение Из Заменяемые Цикл
СерияДубль = КлючИЗначение.Ключ;
Если Не ЗначениеЗаполнено(СерияДубль) Тогда
Продолжить;
КонецЕсли;
ОбСерии = СерияДубль.ПолучитьОбъект();
Если ОбСерии = Неопределено Или ОбСерии.ПометкаУдаления Тогда
Продолжить;
КонецЕсли;
ОбСерии.УстановитьПометкуУдаления(Истина);
КонецЦикла;
КонецПроцедуры
#КонецОбласти #КонецОбласти