Skip to content

Commit

Permalink
Добавлена проверка необходимости перезапуска при изменении метаданных
Browse files Browse the repository at this point in the history
  • Loading branch information
Bayselonarrend committed Nov 26, 2024
1 parent fab9f12 commit 6c7f489
Show file tree
Hide file tree
Showing 5 changed files with 70 additions and 12 deletions.
18 changes: 18 additions & 0 deletions OpenYellow.YPM/src/CommonModules/YPM_Основные/Module.bsl
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,24 @@
Возврат РасширенияКонфигурации.Получить(Новый Структура("Имя", "YPM"))[0].Версия;
КонецФункции

Функция ПроверитьРаботоспособностьПолученияДанных() Экспорт

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ ПЕРВЫЕ 1
| YPM_УстановленныеРешения.Репозиторий КАК Репозиторий
|ИЗ
| РегистрСведений.YPM_УстановленныеРешения КАК YPM_УстановленныеРешения";

Попытка
РезультатЗапроса = Запрос.Выполнить();
Возврат Истина;
Исключение
Возврат Ложь;
КонецПопытки;

КонецФункции

#КонецОбласти

#Область СлужебныеПроцедурыИФункции
Expand Down
Binary file not shown.
3 changes: 2 additions & 1 deletion OpenYellow.YPM/src/Configuration/Configuration.mdo
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,9 @@
<containedObjects classId="51f2d5d8-ea4d-4064-8892-82951750031e" objectId="c62a728c-05e8-4129-97b9-2080ff244f0a"/>
<containedObjects classId="e68182ea-4237-4383-967f-90c1e3370bc7" objectId="1f1989bb-5509-4b32-8805-618f4f0e2c62"/>
<containedObjects classId="fb282519-d103-4dd3-bc12-cb271d631dfc" objectId="d7ea9c21-199f-42cc-8f3d-091986243cdb"/>
<keepMappingToExtendedConfigurationObjectsByIDs>true</keepMappingToExtendedConfigurationObjectsByIDs>
<namePrefix>YPM_</namePrefix>
<configurationExtensionCompatibilityMode>8.3.13</configurationExtensionCompatibilityMode>
<configurationExtensionCompatibilityMode>8.3.11</configurationExtensionCompatibilityMode>
<configurationExtensionPurpose>Customization</configurationExtensionPurpose>
<scriptVariant>Russian</scriptVariant>
<vendor>Bayselonarrend</vendor>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3571,6 +3571,24 @@
<common>true</common>
</edit>
</attributes>
<attributes>
<name>НачалоОбновления</name>
<title>
<key>ru</key>
<value>Начало обновления</value>
</title>
<id>12</id>
<valueType>
<types>Date</types>
<dateQualifiers/>
</valueType>
<view>
<common>true</common>
</view>
<edit>
<common>true</common>
</edit>
</attributes>
<formCommands>
<name>СохранитьАдресИндекса</name>
<title>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -266,8 +266,8 @@

ВывестиЗапросПерезапуска();

Иначе

Иначе
Элементы.СписокПакетов.Обновить();
Элементы.СписокФайлов.Обновить();

Expand Down Expand Up @@ -298,10 +298,12 @@
СообщениеУдаления = УдалитьРасширениеНаСервере(ТДФ.UUID);

Если ЗначениеЗаполнено(СообщениеУдаления) Тогда

Сообщить(СообщениеУдаления);

Элементы.СписокПакетов.Обновить();
Элементы.СписокФайлов.Обновить();

Иначе
ВывестиЗапросПерезапуска();
КонецЕсли;
Expand Down Expand Up @@ -393,11 +395,11 @@

Если УдаляемоеРасширение.Количество() <> 0 Тогда

УдаляемоеРасширение = УдаляемоеРасширение[0];
ИзменяетМетаданные = УдаляемоеРасширение.ИзменяетСтруктуруДанных();

УдаляемоеРасширение = УдаляемоеРасширение[0];
УдаляемоеРасширение.Удалить();
СообщениеУдаления = "Обработка завершена!";

ИзменяетМетаданные = Не YPM_Основные.ПроверитьРаботоспособностьПолученияДанных();
СообщениеУдаления = "Обработка завершена!";

КонецЕсли;

Expand Down Expand Up @@ -436,10 +438,16 @@

КонецФункции

&НаСервереБезКонтекста
Функция ПолучитьДатуСервера()
Возврат ТекущаяДатаСеанса();
КонецФункции

&НаСервере
Процедура ОбновитьИндексНаСервере()

КлючХранилища = ПоместитьВоВременноеХранилище("", УникальныйИдентификатор);
НачалоОбновления = ТекущаяДатаСеанса();
КлючХранилища = ПоместитьВоВременноеХранилище("", УникальныйИдентификатор);

Элементы.ГруппаЛево.Видимость = Ложь;
Элементы.ГруппаПраво.Видимость = Ложь;
Expand Down Expand Up @@ -525,8 +533,10 @@

НовоеРасширение.Записать(Двоичные);

Возврат НовоеРасширение.ИзменяетСтруктуруДанных();

ИзменяетСтруктуру = Не YPM_Основные.ПроверитьРаботоспособностьПолученияДанных();

Возврат ИзменяетСтруктуру;

КонецФункции

&НаКлиенте
Expand Down Expand Up @@ -678,17 +688,28 @@
&НаКлиенте
Процедура ПроверитьВыполнениеФоновогоЗадания() Экспорт

Завершено = Ложь;

Если ПолучитьДатуСервера() > НачалоОбновления + 180 Тогда
Завершено = Истина;
Сообщить("Не удалось обновить индекс! Таймаут обновления");
КонецЕсли;

Если ПроверитьВыполнениеФоновогоЗаданияСервер() Тогда

СтруктураОбновления = ПолучитьИзВременногоХранилища(КлючХранилища);
Завершено = Истина;

Попытка
ЗаписатьЛогНаСервере(СтруктураОбновления["Лог"]);
ОткрытьФормуОбновления(СтруктураОбновления);
Исключение
Сообщить("Не удалось обновить индекс! Возможно, для расширения установлен безопасный режим");
КонецПопытки;


КонецЕсли;

Если Завершено Тогда

Элементы.ГруппаЛево.Видимость = Истина;
Элементы.ГруппаПраво.Видимость = Истина;
Expand Down

0 comments on commit 6c7f489

Please sign in to comment.