From 5de96b7ca711adabbfb6bb19c33418b1fc7bee32 Mon Sep 17 00:00:00 2001 From: Anton Ivanov Date: Sun, 23 Oct 2016 10:40:27 +0300 Subject: [PATCH] =?UTF-8?q?#71,=20=D0=A3=D0=BF=D1=80=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=B7=D0=B0=D0=B4=D0=B0=D1=87=D0=B0?= =?UTF-8?q?=D0=BC=D0=B8,=20=D0=98=D0=B2=D0=B0=D0=BD=D0=BE=D0=B2=20=D0=A1?= =?UTF-8?q?=D0=B4=D0=B5=D0=BB=D0=B0=D1=82=D1=8C=20=D1=80=D0=B5=D0=B3=D0=BB?= =?UTF-8?q?=D0=B0=D0=BC=D0=B5=D0=BD=D1=82=20=D0=BF=D0=BE=20=D0=B7=D0=B0?= =?UTF-8?q?=D0=B3=D1=80=D1=83=D0=B7=D0=BA=D0=B5=20=D0=B8=D0=B7=D0=BC=D0=B5?= =?UTF-8?q?=D0=BD=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=B8=20=D1=83=D0=B4=D0=B0?= =?UTF-8?q?=D0=BB=D0=B8=D1=82=D1=8C=20=D0=BB=D0=B8=D1=88=D0=BD=D0=B8=D0=B5?= =?UTF-8?q?=20=D0=BF=D0=B0=D1=80=D0=B0=D0=BC=D0=B5=D1=82=D1=80=D1=8B=20?= =?UTF-8?q?=D1=81=D0=B5=D0=B0=D0=BD=D1=81=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../узОбщийМодульСервер/Ext/Module.bsl | 38 ++++++++++++--- src/Configuration.xml | 1 + .../Forms/Форма/Ext/Form/Module.bsl | 46 +++++++++---------- .../узЗагрузкаИзмененийИзХранилища.xml | 22 +++++++++ .../Ext/Schedule.xml | 7 +++ 5 files changed, 84 insertions(+), 30 deletions(-) create mode 100644 src/ScheduledJobs/узЗагрузкаИзмененийИзХранилища.xml create mode 100644 src/ScheduledJobs/узЗагрузкаИзмененийИзХранилища/Ext/Schedule.xml 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 + 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