РК_ПроверкаСерий 1.3.1.81: срок годности по умолчанию для пустого ГоденДо (#15).

This commit is contained in:
mihailkudravcev
2026-08-18 14:23:46 +03:00
parent 2727353b50
commit 1fecdb5975
7 changed files with 101 additions and 11 deletions
+8
View File
@@ -4,6 +4,14 @@
---
## 1.3.1.81 (2026-08-18)
### РК_ПроверкаСерий — срок годности по умолчанию (#15 / #14)
- На вкладке «Заполнение реквизитов» поле **Срок годности по умолчанию**.
- Для проблемы «Пустой срок годности» (срок обязателен по политике вида): сначала дата из наименования, если не разобралась — значение поля.
- Используется при «Найти проблемы», «Сформировать предложения» и «Заполнить по предложениям».
## 1.3.1.80 (2026-08-17)
### РК_ПроверкаСерий — ключ дублей (#15)
+1 -1
View File
@@ -1 +1 @@
1.3.1.80
1.3.1.81
+1
View File
@@ -202,6 +202,7 @@
<Metadata name="DataProcessor.РК_ОбработкаПарнеровКонтрагентов.ManagerModule" id="323c24ca-5279-461a-b03a-9571cb4f0911.2" configVersion="8634600cd7d76b5056a979c60692e47f616b3f5b"/>
<Metadata name="DataProcessor.РК_ПроверкаСерий" id="dfe0cb7f-a442-4f22-9f10-bf20a425b4d9" configVersion="a1b2c3d4e5f6789012345678abcdef0123456789">
<Metadata name="DataProcessor.РК_ПроверкаСерий.Attribute.РежимТест" id="f14e0002-0002-4000-8000-000000000002"/>
<Metadata name="DataProcessor.РК_ПроверкаСерий.Attribute.ГоденДоПоУмолчанию" id="f14e0004-0004-4000-8000-000000000004"/>
<Metadata name="DataProcessor.РК_ПроверкаСерий.TabularSection.ПроблемныеСерии" id="f14e0003-0003-4000-8000-000000000003"/>
<Metadata name="DataProcessor.РК_ПроверкаСерий.TabularSection.ПроблемныеСерии.Attribute.Отметка" id="f14e0010-0010-4000-8000-000000000010"/>
<Metadata name="DataProcessor.РК_ПроверкаСерий.TabularSection.ПроблемныеСерии.Attribute.Серия" id="f14e0011-0011-4000-8000-000000000011"/>
+1 -1
View File
@@ -62,7 +62,7 @@
<xr:Item xsi:type="xr:MDObjectRef">Role.РК_ОсновнаяРоль</xr:Item>
</DefaultRoles>
<Vendor/>
<Version>1.3.1.80</Version>
<Version>1.3.1.81</Version>
<DefaultStyle/>
<DefaultLanguage>Language.Русский</DefaultLanguage>
<BriefInformation/>
@@ -67,6 +67,58 @@
<ChoiceHistoryOnInput>Auto</ChoiceHistoryOnInput>
</Properties>
</Attribute>
<Attribute uuid="f14e0004-0004-4000-8000-000000000004">
<Properties>
<Name>ГоденДоПоУмолчанию</Name>
<Synonym>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Срок годности по умолчанию</v8:content>
</v8:item>
</Synonym>
<Comment/>
<Type>
<v8:Type>xs:dateTime</v8:Type>
<v8:DateQualifiers>
<v8:DateFractions>Date</v8:DateFractions>
</v8:DateQualifiers>
</Type>
<PasswordMode>false</PasswordMode>
<Format>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДФ=dd.MM.yyyy</v8:content>
</v8:item>
</Format>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДФ=dd.MM.yyyy</v8:content>
</v8:item>
</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">
<InternalInfo>
<xr:GeneratedType name="DataProcessorTabularSection.РК_ПроверкаСерий.ПроблемныеСерии" category="TabularSection">
@@ -70,6 +70,24 @@
<Event name="OnChange">ТолькоСОстаткомПриИзменении</Event>
</Events>
</CheckBoxField>
<InputField name="ГоденДоПоУмолчанию" id="184">
<DataPath>Объект.ГоденДоПоУмолчанию</DataPath>
<ToolTip>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Подставляется в предложенный срок, если у серии пустой ГоденДо (срок обязателен по политике вида) и дату не удалось извлечь из наименования. Используется при «Найти проблемы», «Сформировать предложения» и «Заполнить по предложениям».</v8:content>
</v8:item>
</ToolTip>
<ToolTipRepresentation>Button</ToolTipRepresentation>
<EditFormat>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>ДФ=dd.MM.yyyy</v8:content>
</v8:item>
</EditFormat>
<ContextMenu name="ГоденДоПоУмолчаниюКонтекстноеМеню" id="185"/>
<ExtendedTooltip name="ГоденДоПоУмолчаниюРасширеннаяПодсказка" id="186"/>
</InputField>
<Table name="ПроблемныеСерии" id="10">
<Representation>List</Representation>
<ChangeRowSet>false</ChangeRowSet>
@@ -440,11 +440,8 @@
КонецЕсли;
Если ИспСрок И ПустойСрок Тогда
ПредложенныйГоденДо = ИзвлечьГоденДоИзНаименования(Выборка.Наименование);
ПредложенныйГоденДо = ПредложенныйГоденДоПоСтроке(Выборка.Наименование);
Проблемы.Добавить("Пустой срок годности");
Если Не СрокГодностиЗаполнен(ПредложенныйГоденДо) Тогда
ПредложенныйГоденДо = '00010101';
КонецЕсли;
КонецЕсли;
Если Не ИспНомер И ПустоеИмя И СрокГодностиЗаполнен(Выборка.ГоденДо) Тогда
@@ -580,7 +577,8 @@
КонецЕсли;
Если Не СрокГодностиЗаполнен(Стр.ГоденДо) Или СтрНайти(Стр.Проблема, "Пустой срок годности") > 0 Тогда
ПредложенныйГоденДо = ИзвлечьГоденДоИзНаименования(ТекстНаименования);
ПодставлятьУмолчание = СтрНайти(Стр.Проблема, "Пустой срок годности") > 0;
ПредложенныйГоденДо = ПредложенныйГоденДоПоСтроке(ТекстНаименования, ПодставлятьУмолчание);
Если СрокГодностиЗаполнен(ПредложенныйГоденДо) Тогда
Стр.ПредложенныйГоденДо = ПредложенныйГоденДо;
Результат.Сроков = Результат.Сроков + 1;
@@ -623,10 +621,7 @@
КонецЕсли;
Если ИспСрок И СтрНайти(Стр.Проблема, "Пустой срок годности") > 0 Тогда
Стр.ПредложенныйГоденДо = ИзвлечьГоденДоИзНаименования(ТекстНаименования);
Если Не СрокГодностиЗаполнен(Стр.ПредложенныйГоденДо) Тогда
Стр.ПредложенныйГоденДо = '00010101';
КонецЕсли;
Стр.ПредложенныйГоденДо = ПредложенныйГоденДоПоСтроке(ТекстНаименования);
КонецЕсли;
Если Не ИспНомер И СтрНайти(Стр.Проблема, "Пустое наименование") > 0
@@ -772,6 +767,22 @@
КонецФункции
&НаСервере
Функция ПредложенныйГоденДоПоСтроке(ТекстНаименования, ПодставлятьУмолчание = Истина)
ПредложенныйГоденДо = ИзвлечьГоденДоИзНаименования(ТекстНаименования);
Если СрокГодностиЗаполнен(ПредложенныйГоденДо) Тогда
Возврат ПредложенныйГоденДо;
КонецЕсли;
Если ПодставлятьУмолчание И СрокГодностиЗаполнен(Объект.ГоденДоПоУмолчанию) Тогда
Возврат Объект.ГоденДоПоУмолчанию;
КонецЕсли;
Возврат '00010101';
КонецФункции
&НаСервере
Функция ИзвлечьНомерИзНаименования(ТекстНаименования)