diff --git a/src/CommonModules/узОбщийМодульСервер/Ext/Module.bsl b/src/CommonModules/узОбщийМодульСервер/Ext/Module.bsl
index d45ccde2e..39fc85ccb 100644
--- a/src/CommonModules/узОбщийМодульСервер/Ext/Module.bsl
+++ b/src/CommonModules/узОбщийМодульСервер/Ext/Module.bsl
@@ -75,11 +75,35 @@
Возврат МассивАдресовЭлектроннойПочты;
КонецФункции
-Функция ЭтоСервернаяБаза() Экспорт
- пЭтоСервернаяБаза = Ложь;
- пСтрокаСоединения = СтрокаСоединенияИнформационнойБазы();
- Если СтрНайти(пСтрокаСоединения,"Srvr") > 0 Тогда
- пЭтоСервернаяБаза = Истина;
+Процедура узЗагрузкаИзмененийИзХранилища() Экспорт
+
+ ОбщегоНазначения.ПриНачалеВыполненияРегламентногоЗадания(Метаданные.РегламентныеЗадания.узЗагрузкаИзмененийИзХранилища);
+
+ Запрос = Новый Запрос;
+ Запрос.Текст =
+ "ВЫБРАТЬ
+ | узКонфигурации.Ссылка КАК Конфигурация,
+ | узКонфигурации.ПолучатьИзмененияИзХранилища
+ |ИЗ
+ | Справочник.узКонфигурации КАК узКонфигурации
+ |ГДЕ
+ | узКонфигурации.ПолучатьИзмененияИзХранилища
+ | И НЕ узКонфигурации.ПометкаУдаления";
+
+ РезультатЗапроса = Запрос.Выполнить();
+ Если РезультатЗапроса.Пустой() Тогда
+ Возврат;
Конецесли;
- Возврат пЭтоСервернаяБаза;
-КонецФункции
\ No newline at end of file
+
+ Выборка = РезультатЗапроса.Выбрать();
+
+ Пока Выборка.Следующий() Цикл
+ пКонфигурация = Выборка.Конфигурация;
+
+ ОбрОбъект = Обработки.узЗагрузкаИзмененийИзХранилища.Создать();
+ ОбрОбъект.Конфигурация = пКонфигурация;
+ ОбрОбъект.ВерсияС = Справочники.узИсторияХранилища.ПолучитьПоследнююЗагруженнуюВерсию(пКонфигурация);
+ РезультатФункции = ОбрОбъект.ЗагрузитьИзмененияИзХранилища();
+ Сообщить("Загружены изменения для конфигурации ["+пКонфигурация+"] с версии ["+ОбрОбъект.ВерсияС+"]");
+ КонецЦикла;
+КонецПроцедуры
diff --git a/src/Configuration.xml b/src/Configuration.xml
index e68f5c9c5..902a9fe69 100644
--- a/src/Configuration.xml
+++ b/src/Configuration.xml
@@ -870,6 +870,7 @@
УдалениеПомеченных
УдалениеУстаревшихПараметровРаботыВерсийРасширений
УстановкаПериодаРассчитанныхИтогов
+ узЗагрузкаИзмененийИзХранилища
ХранилищеВариантовОтчетов
АктуальнаяДатаОбновленияПовторноИспользуемыхЗначенийМРО
ВариантыВерсионированияОбъектов
diff --git a/src/DataProcessors/узЗагрузкаИзмененийИзХранилища/Forms/Форма/Ext/Form/Module.bsl b/src/DataProcessors/узЗагрузкаИзмененийИзХранилища/Forms/Форма/Ext/Form/Module.bsl
index 5762cbee2..5668cfaa2 100644
--- a/src/DataProcessors/узЗагрузкаИзмененийИзХранилища/Forms/Форма/Ext/Form/Module.bsl
+++ b/src/DataProcessors/узЗагрузкаИзмененийИзХранилища/Forms/Форма/Ext/Form/Module.bsl
@@ -16,27 +16,27 @@
Возврат пКонфигурация.ПолучатьИзмененияИзХранилища;
КонецФункции
-&НаКлиенте
-Функция ВыгрузитьИзмененияНаКлиенте()
- ИмяФайлаДляВыгрузки = ПолучитьФайлВыгрузкиИзмененийНаСервере();
- ФайлВыгрузкиИзменений = КаталогВременныхФайлов() + ИмяФайлаДляВыгрузки;
-
- НастройкиЗапускаКонфигуратора = ПолучитьНастройкиЗапускаКонфигуратораНаСервере(ФайлВыгрузкиИзменений);
- ТекстКоманды = НастройкиЗапускаКонфигуратора.ТекстКоманды;
-
- //Из за того, что на сервере команда выгрузки хранилища не работает, поэтому приходится вызывать на клиенте
- WshShell= Новый COMОбъект("WScript.Shell");
- WshShell.Run(ТекстКоманды, 0, 1);
-
- АдресФайлаПолученныйНаКлиенте = "";
- Если НЕ ПоместитьФайл(АдресФайлаПолученныйНаКлиенте, ФайлВыгрузкиИзменений,ИмяФайлаДляВыгрузки,Ложь) Тогда
- Сообщить("Ошибка! Не удалось поместить файл на сервер");
- Возврат Неопределено;
- КонецЕсли;
-
- РезультатФункции = ЗагрузитьИзмененияИзХранилищаНаСервере(АдресФайлаПолученныйНаКлиенте);
- Возврат РезультатФункции;
-КонецФункции
+//&НаКлиенте
+//Функция ВыгрузитьИзмененияНаКлиенте()
+// ИмяФайлаДляВыгрузки = ПолучитьФайлВыгрузкиИзмененийНаСервере();
+// ФайлВыгрузкиИзменений = КаталогВременныхФайлов() + ИмяФайлаДляВыгрузки;
+//
+// НастройкиЗапускаКонфигуратора = ПолучитьНастройкиЗапускаКонфигуратораНаСервере(ФайлВыгрузкиИзменений);
+// ТекстКоманды = НастройкиЗапускаКонфигуратора.ТекстКоманды;
+//
+// //Из за того, что на сервере команда выгрузки хранилища не работает, поэтому приходится вызывать на клиенте
+// WshShell= Новый COMОбъект("WScript.Shell");
+// WshShell.Run(ТекстКоманды, 0, 1);
+//
+// АдресФайлаПолученныйНаКлиенте = "";
+// Если НЕ ПоместитьФайл(АдресФайлаПолученныйНаКлиенте, ФайлВыгрузкиИзменений,ИмяФайлаДляВыгрузки,Ложь) Тогда
+// Сообщить("Ошибка! Не удалось поместить файл на сервер");
+// Возврат Неопределено;
+// КонецЕсли;
+//
+// РезультатФункции = ЗагрузитьИзмененияИзХранилищаНаСервере(АдресФайлаПолученныйНаКлиенте);
+// Возврат РезультатФункции;
+//КонецФункции
&НаСервере
Функция ПолучитьФайлВыгрузкиИзмененийНаСервере()
@@ -53,9 +53,9 @@
КонецФункции
&НаСервере
-Функция ЗагрузитьИзмененияИзХранилищаНаСервере(АдресФайла = Неопределено)
+Функция ЗагрузитьИзмененияИзХранилищаНаСервере()
пОбъект = РеквизитФормыВЗначение("Объект");
- РезультатФункции = пОбъект.ЗагрузитьИзмененияИзХранилища(АдресФайла);
+ РезультатФункции = пОбъект.ЗагрузитьИзмененияИзХранилища();
Возврат РезультатФункции;
КонецФункции
diff --git a/src/ScheduledJobs/узЗагрузкаИзмененийИзХранилища.xml b/src/ScheduledJobs/узЗагрузкаИзмененийИзХранилища.xml
new file mode 100644
index 000000000..ee526ccb1
--- /dev/null
+++ b/src/ScheduledJobs/узЗагрузкаИзмененийИзХранилища.xml
@@ -0,0 +1,22 @@
+
+
+
+
+ узЗагрузкаИзмененийИзХранилища
+
+
+ ru
+ Загрузка изменений из хранилища
+
+
+
+ CommonModule.узОбщийМодульСервер.узЗагрузкаИзмененийИзХранилища
+
+
+
+ true
+ 3
+ 10
+
+
+
\ No newline at end of file
diff --git a/src/ScheduledJobs/узЗагрузкаИзмененийИзХранилища/Ext/Schedule.xml b/src/ScheduledJobs/узЗагрузкаИзмененийИзХранилища/Ext/Schedule.xml
new file mode 100644
index 000000000..08ea87bc8
--- /dev/null
+++ b/src/ScheduledJobs/узЗагрузкаИзмененийИзХранилища/Ext/Schedule.xml
@@ -0,0 +1,7 @@
+
+
+
+ 1 2 3 4 5 6 7
+ 1 2 3 4 5 6 7 8 9 10 11 12
+
+
\ No newline at end of file