РК_ПроверкаСерий 1.3.1.80: дубли по виду, номеру и сроку, без даты производства.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -62,7 +62,7 @@
|
||||
<xr:Item xsi:type="xr:MDObjectRef">Role.РК_ОсновнаяРоль</xr:Item>
|
||||
</DefaultRoles>
|
||||
<Vendor/>
|
||||
<Version>1.3.1.79</Version>
|
||||
<Version>1.3.1.80</Version>
|
||||
<DefaultStyle/>
|
||||
<DefaultLanguage>Language.Русский</DefaultLanguage>
|
||||
<BriefInformation/>
|
||||
|
||||
@@ -676,7 +676,7 @@
|
||||
<ToolTip>
|
||||
<v8:item>
|
||||
<v8:lang>ru</v8:lang>
|
||||
<v8:content>Найти группы дублей по виду, номеру, сроку и дате производства</v8:content>
|
||||
<v8:content>Найти группы дублей по виду, номеру и сроку годности</v8:content>
|
||||
</v8:item>
|
||||
</ToolTip>
|
||||
<Picture>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
// Проверка и исправление данных Справочник.СерииНоменклатуры (#14, #15).
|
||||
// Логика заполнения номера/срока из наименования — как docs/transfer/Код_исправления_серий_crm3-26.bsl.
|
||||
// Заполнение номера/срока — из наименования (не нумератор).
|
||||
// Дубли: вид + номер + ГоденДо (ДатаПроизводства в ключ не входит).
|
||||
|
||||
#Область ОбработчикиСобытийФормы
|
||||
|
||||
@@ -895,7 +896,6 @@
|
||||
| Сер.ВидНоменклатуры КАК ВидНоменклатуры,
|
||||
| Сер.Номер КАК Номер,
|
||||
| Сер.ГоденДо КАК ГоденДо,
|
||||
| Сер.ДатаПроизводства КАК ДатаПроизводства,
|
||||
| КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Сер.Ссылка) КАК КоличествоСерий
|
||||
|ИЗ
|
||||
| Справочник.СерииНоменклатуры КАК Сер
|
||||
@@ -904,8 +904,7 @@
|
||||
|СГРУППИРОВАТЬ ПО
|
||||
| Сер.ВидНоменклатуры,
|
||||
| Сер.Номер,
|
||||
| Сер.ГоденДо,
|
||||
| Сер.ДатаПроизводства
|
||||
| Сер.ГоденДо
|
||||
|ИМЕЮЩИЕ
|
||||
| КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Сер.Ссылка) > 1";
|
||||
|
||||
@@ -917,8 +916,7 @@
|
||||
Мастер = НайтиСериюМастерГруппы(
|
||||
ВыбГруппы.ВидНоменклатуры,
|
||||
ВыбГруппы.Номер,
|
||||
ВыбГруппы.ГоденДо,
|
||||
ВыбГруппы.ДатаПроизводства);
|
||||
ВыбГруппы.ГоденДо);
|
||||
Если Не ЗначениеЗаполнено(Мастер) Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
@@ -926,8 +924,7 @@
|
||||
СерииГруппы = СерииГруппыДублей(
|
||||
ВыбГруппы.ВидНоменклатуры,
|
||||
ВыбГруппы.Номер,
|
||||
ВыбГруппы.ГоденДо,
|
||||
ВыбГруппы.ДатаПроизводства);
|
||||
ВыбГруппы.ГоденДо);
|
||||
Если СерииГруппы.Количество() < 2 Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
@@ -943,7 +940,7 @@
|
||||
КонецФункции
|
||||
|
||||
&НаСервере
|
||||
Функция НайтиСериюМастерГруппы(Вид, Номер, ГоденДо, ДатаПроизводства)
|
||||
Функция НайтиСериюМастерГруппы(Вид, Номер, ГоденДо)
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст =
|
||||
@@ -957,7 +954,6 @@
|
||||
| Сер.ВидНоменклатуры = &Вид
|
||||
| И Сер.Номер = &Номер
|
||||
| И Сер.ГоденДо = &ГоденДо
|
||||
| И Сер.ДатаПроизводства = &ДатаПроизводства
|
||||
| И НЕ Сер.ПометкаУдаления
|
||||
|СГРУППИРОВАТЬ ПО
|
||||
| Сер.Ссылка
|
||||
@@ -967,7 +963,6 @@
|
||||
Запрос.УстановитьПараметр("Вид", Вид);
|
||||
Запрос.УстановитьПараметр("Номер", Номер);
|
||||
Запрос.УстановитьПараметр("ГоденДо", ГоденДо);
|
||||
Запрос.УстановитьПараметр("ДатаПроизводства", ДатаПроизводства);
|
||||
|
||||
Выборка = Запрос.Выполнить().Выбрать();
|
||||
Если Выборка.Следующий() Тогда
|
||||
@@ -978,7 +973,7 @@
|
||||
КонецФункции
|
||||
|
||||
&НаСервере
|
||||
Функция СерииГруппыДублей(Вид, Номер, ГоденДо, ДатаПроизводства)
|
||||
Функция СерииГруппыДублей(Вид, Номер, ГоденДо)
|
||||
|
||||
Запрос = Новый Запрос;
|
||||
Запрос.Текст =
|
||||
@@ -990,12 +985,10 @@
|
||||
| Сер.ВидНоменклатуры = &Вид
|
||||
| И Сер.Номер = &Номер
|
||||
| И Сер.ГоденДо = &ГоденДо
|
||||
| И Сер.ДатаПроизводства = &ДатаПроизводства
|
||||
| И НЕ Сер.ПометкаУдаления";
|
||||
Запрос.УстановитьПараметр("Вид", Вид);
|
||||
Запрос.УстановитьПараметр("Номер", Номер);
|
||||
Запрос.УстановитьПараметр("ГоденДо", ГоденДо);
|
||||
Запрос.УстановитьПараметр("ДатаПроизводства", ДатаПроизводства);
|
||||
|
||||
Результат = Новый Массив;
|
||||
Выборка = Запрос.Выполнить().Выбрать();
|
||||
@@ -1116,7 +1109,7 @@
|
||||
НовСтр.ВидНоменклатуры = ДанныеГруппы.ВидНоменклатуры;
|
||||
НовСтр.Номер = ДанныеГруппы.Номер;
|
||||
НовСтр.ГоденДо = ДанныеГруппы.ГоденДо;
|
||||
НовСтр.ДатаПроизводства = ДанныеГруппы.ДатаПроизводства;
|
||||
НовСтр.ДатаПроизводства = Мастер.ДатаПроизводства;
|
||||
НовСтр.СерияМастер = Мастер;
|
||||
НовСтр.КоличествоСерий = СерииГруппы.Количество();
|
||||
НовСтр.КоличествоЗамен = КоличествоЗамен;
|
||||
@@ -1203,8 +1196,7 @@
|
||||
СерииГруппы = СерииГруппыДублей(
|
||||
СтрГруппа.ВидНоменклатуры,
|
||||
СтрГруппа.Номер,
|
||||
СтрГруппа.ГоденДо,
|
||||
СтрГруппа.ДатаПроизводства);
|
||||
СтрГруппа.ГоденДо);
|
||||
Для Каждого Серия Из СерииГруппы Цикл
|
||||
Если Серия <> СтрГруппа.СерияМастер Тогда
|
||||
Заменяемые.Вставить(Серия, СтрГруппа.СерияМастер);
|
||||
|
||||
Reference in New Issue
Block a user