РК_ПроверкаСерий 1.3.1.73: исправить запрос и вывод ошибок.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
mihailkudravcev
2026-08-17 11:25:50 +03:00
parent cf9f49d73e
commit 498d5e0e6f
5 changed files with 69 additions and 8 deletions
+7
View File
@@ -4,6 +4,13 @@
--- ---
## 1.3.1.73 (2026-08-17)
### РК_ПроверкаСерий — исправление поиска проблем
- Запрос: убрано несуществующее поле `Сер.Владелец` (в crm3-26 серии не подчинены номенклатуре).
- Поле формы **Последняя ошибка** — полный текст ошибки для копирования; дублируется в окно сообщений.
## 1.3.1.72 (2026-08-17) ## 1.3.1.72 (2026-08-17)
### Исправление ### Исправление
+1 -1
View File
@@ -1 +1 @@
1.3.1.72 1.3.1.73
+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.72</Version> <Version>1.3.1.73</Version>
<DefaultStyle/> <DefaultStyle/>
<DefaultLanguage>Language.Русский</DefaultLanguage> <DefaultLanguage>Language.Русский</DefaultLanguage>
<BriefInformation/> <BriefInformation/>
@@ -25,6 +25,23 @@
<ContextMenu name="РежимТестКонтекстноеМеню" id="6"/> <ContextMenu name="РежимТестКонтекстноеМеню" id="6"/>
<ExtendedTooltip name="РежимТестРасширеннаяПодсказка" id="7"/> <ExtendedTooltip name="РежимТестРасширеннаяПодсказка" id="7"/>
</CheckBoxField> </CheckBoxField>
<InputField name="ТекстПоследнейОшибки" id="157">
<DataPath>ТекстПоследнейОшибки</DataPath>
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Последняя ошибка</v8:content>
</v8:item>
</Title>
<TitleLocation>Top</TitleLocation>
<ReadOnly>true</ReadOnly>
<MultiLine>true</MultiLine>
<Height>3</Height>
<AutoMaxHeight>false</AutoMaxHeight>
<VerticalStretch>false</VerticalStretch>
<ContextMenu name="ТекстПоследнейОшибкиКонтекстноеМеню" id="158"/>
<ExtendedTooltip name="ТекстПоследнейОшибкиРасширеннаяПодсказка" id="159"/>
</InputField>
<Pages name="ГруппаСтраницы" id="70"> <Pages name="ГруппаСтраницы" id="70">
<Title> <Title>
<v8:item> <v8:item>
@@ -432,6 +449,21 @@
</Type> </Type>
<MainAttribute>true</MainAttribute> <MainAttribute>true</MainAttribute>
</Attribute> </Attribute>
<Attribute name="ТекстПоследнейОшибки" id="2">
<Title>
<v8:item>
<v8:lang>ru</v8:lang>
<v8:content>Последняя ошибка</v8:content>
</v8:item>
</Title>
<Type>
<v8:Type>xs:string</v8:Type>
<v8:StringQualifiers>
<v8:Length>0</v8:Length>
<v8:AllowedLength>Variable</v8:AllowedLength>
</v8:StringQualifiers>
</Type>
</Attribute>
</Attributes> </Attributes>
<Commands> <Commands>
<Command name="НайтиПроблемы" id="1"> <Command name="НайтиПроблемы" id="1">
@@ -20,9 +20,10 @@
Попытка Попытка
Количество = НайтиПроблемыНаСервере(); Количество = НайтиПроблемыНаСервере();
Исключение Исключение
ПоказатьПредупреждение(, КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); СообщитьОшибкуОперации(ИнформацияОбОшибке(), "Найти проблемы");
Возврат; Возврат;
КонецПопытки; КонецПопытки;
ОчиститьТекстПоследнейОшибки();
ПоказатьОповещениеПользователя("Проверка серий", , ПоказатьОповещениеПользователя("Проверка серий", ,
"Найдено проблем: " + Формат(Количество, "ЧН=0; ЧГ=0")); "Найдено проблем: " + Формат(Количество, "ЧН=0; ЧГ=0"));
@@ -69,9 +70,10 @@
Попытка Попытка
Результат = ИсправитьОтмеченныеНаСервере(); Результат = ИсправитьОтмеченныеНаСервере();
Исключение Исключение
ПоказатьПредупреждение(, КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); СообщитьОшибкуОперации(ИнформацияОбОшибке(), "Исправить отмеченные");
Возврат; Возврат;
КонецПопытки; КонецПопытки;
ОчиститьТекстПоследнейОшибки();
Текст = СтрШаблон("Исправлено: %1; ошибок: %2%3", Текст = СтрШаблон("Исправлено: %1; ошибок: %2%3",
Формат(Результат.Исправлено, "ЧН=0; ЧГ=0"), Формат(Результат.Исправлено, "ЧН=0; ЧГ=0"),
@@ -97,9 +99,10 @@
Попытка Попытка
Количество = НайтиДублиНаСервере(); Количество = НайтиДублиНаСервере();
Исключение Исключение
ПоказатьПредупреждение(, КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); СообщитьОшибкуОперации(ИнформацияОбОшибке(), "Найти дубли");
Возврат; Возврат;
КонецПопытки; КонецПопытки;
ОчиститьТекстПоследнейОшибки();
Элементы.ГруппаСтраницы.ТекущаяСтраница = Элементы.СтраницаДубли; Элементы.ГруппаСтраницы.ТекущаяСтраница = Элементы.СтраницаДубли;
ПоказатьОповещениеПользователя("Дубли серий", , ПоказатьОповещениеПользователя("Дубли серий", ,
"Найдено групп: " + Формат(Количество, "ЧН=0; ЧГ=0")); "Найдено групп: " + Формат(Количество, "ЧН=0; ЧГ=0"));
@@ -150,9 +153,10 @@
Попытка Попытка
Результат = ОбъединитьОтмеченныеГруппыНаСервере(); Результат = ОбъединитьОтмеченныеГруппыНаСервере();
Исключение Исключение
ПоказатьПредупреждение(, КраткоеПредставлениеОшибки(ИнформацияОбОшибке())); СообщитьОшибкуОперации(ИнформацияОбОшибке(), "Объединить группы");
Возврат; Возврат;
КонецПопытки; КонецПопытки;
ОчиститьТекстПоследнейОшибки();
Текст = СтрШаблон("Объединено ссылок: %1; групп: %2; ошибок: %3%4", Текст = СтрШаблон("Объединено ссылок: %1; групп: %2; ошибок: %3%4",
Формат(Результат.ОбъединеноСсылок, "ЧН=0; ЧГ=0"), Формат(Результат.ОбъединеноСсылок, "ЧН=0; ЧГ=0"),
@@ -177,6 +181,25 @@
#Область СлужебныеПроцедурыИФункции #Область СлужебныеПроцедурыИФункции
&НаКлиенте
Процедура СообщитьОшибкуОперации(ИнформацияОбОшибке, Заголовок = "")
ТекстОшибки = ПодробноеПредставлениеОшибки(ИнформацияОбОшибке);
Если ЗначениеЗаполнено(Заголовок) Тогда
ТекстОшибки = Заголовок + ":" + Символы.ПС + ТекстОшибки;
КонецЕсли;
ТекстПоследнейОшибки = ТекстОшибки;
ОбщегоНазначенияКлиент.СообщитьПользователю(ТекстОшибки);
КонецПроцедуры
&НаКлиенте
Процедура ОчиститьТекстПоследнейОшибки()
ТекстПоследнейОшибки = "";
КонецПроцедуры
&НаКлиенте &НаКлиенте
Функция ЕстьОтмеченныеСтроки() Функция ЕстьОтмеченныеСтроки()
@@ -231,7 +254,6 @@
Запрос.Текст = Запрос.Текст =
"ВЫБРАТЬ "ВЫБРАТЬ
| Сер.Ссылка КАК Серия, | Сер.Ссылка КАК Серия,
| Сер.Владелец КАК Номенклатура,
| Сер.ВидНоменклатуры КАК ВидНоменклатуры, | Сер.ВидНоменклатуры КАК ВидНоменклатуры,
| Сер.Наименование КАК Наименование, | Сер.Наименование КАК Наименование,
| Сер.Номер КАК Номер, | Сер.Номер КАК Номер,
@@ -301,7 +323,7 @@
НовСтр = Объект.ПроблемныеСерии.Добавить(); НовСтр = Объект.ПроблемныеСерии.Добавить();
НовСтр.Отметка = Истина; НовСтр.Отметка = Истина;
НовСтр.Серия = Выборка.Серия; НовСтр.Серия = Выборка.Серия;
НовСтр.Номенклатура = Выборка.Номенклатура; НовСтр.Номенклатура = Справочники.Номенклатура.ПустаяСсылка();
НовСтр.ВидНоменклатуры = Выборка.ВидНоменклатуры; НовСтр.ВидНоменклатуры = Выборка.ВидНоменклатуры;
НовСтр.Наименование = Выборка.Наименование; НовСтр.Наименование = Выборка.Наименование;
НовСтр.Номер = Выборка.Номер; НовСтр.Номер = Выборка.Номер;