1
0
mirror of https://github.com/kuzyara/JobsConsole2019.epf.git synced 2024-11-24 08:32:18 +02:00

Добавил кнопку интерактивного запуска регламентного задания

This commit is contained in:
ROSSKO\Nikolay.Kuznecov 2018-09-17 09:47:26 +07:00
parent dbdc3188cf
commit a80c4a53e1
5 changed files with 268 additions and 38 deletions

View File

@ -298,21 +298,6 @@
ОбновитьСписокФоновыхЗаданий();
КонецПроцедуры
&НаСервере
Процедура ЗапуститьРегламентноеЗаданиеНаСервере()
//ТекущаяСтрока = Элементы.СписокФоновыхЗаданий.ТекущаяСтрока;
//Если ТекущаяСтрока <> Неопределено Тогда
// ТекСтрока = СписокФоновыхЗаданий.НайтиПоИдентификатору(ТекущаяСтрока);
// ТекущийИдентификатор = ТекСтрока.Идентификатор;
// РегламентныеЗадания.
//КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ЗапуститьРегламентноеЗадание(Команда)
ЗапуститьРегламентноеЗаданиеНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура СписокФоновыхЗаданийПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа)
Отказ = Истина;
@ -550,3 +535,69 @@
ОтключитьОбработчикОжидания("ОбработчикАвтообновленияРегламентныхЗаданий");
КонецПроцедуры
&НаКлиенте
Процедура ЗапуститьЗадание(Команда)
ТекущаяСтрока = Элементы.СписокРегламентныхЗаданий.ТекущиеДанные;
Если ТекущаяСтрока <> Неопределено Тогда
ЗапуститьЗаданиеНаСервере(ТекущаяСтрока.Идентификатор);
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ЗапуститьЗаданиеНаСервере(УникальныйИдентификатор)
Идентификатор = Новый УникальныйИдентификатор(УникальныйИдентификатор);
Задание = РегламентныеЗадания.НайтиПоУникальномуИдентификатору(Идентификатор);
//Если Задание.Использование Тогда
//проверка на выполнение в текущий момент
Отбор=Новый Структура;
Отбор.Вставить("Ключ",Строка(Задание.УникальныйИдентификатор));
Отбор.Вставить("Состояние ",СостояниеФоновогоЗадания.Активно);
МассивЗаданий=ФоновыеЗадания.ПолучитьФоновыеЗадания(Отбор);
Если МассивЗаданий.Количество()=0 Тогда
НаименованиеФоновогоЗадания = "Запуск вручную: "+ Задание.Метаданные.Синоним;
ФоновоеЗадание = ФоновыеЗадания.Выполнить(Задание.Метаданные.ИмяМетода, Задание.Параметры, Строка(Задание.УникальныйИдентификатор), НаименованиеФоновогоЗадания);
Иначе
Сообщить("Задание уже запущено");
КонецЕсли;
//КонецЕсли;
ОбновитьСписокРегламентныхЗаданий();
ОбновитьСписокФоновыхЗаданий();
КонецПроцедуры
&НаСервере
Процедура ВыполнитьЗаданиеВручнуюНаСервере(УникальныйИдентификатор)
Идентификатор = Новый УникальныйИдентификатор(УникальныйИдентификатор);
Задание = РегламентныеЗадания.НайтиПоУникальномуИдентификатору(Идентификатор);
ИмяМетода = Задание.Метаданные.ИмяМетода;
// Подготовка команды для выполнения метода вместо фонового задания.
СтрокаПараметров = "";
Индекс = 0;
Пока Индекс < Задание.Параметры.Количество() Цикл
СтрокаПараметров = СтрокаПараметров + "Задание.Параметры[" + Индекс + "]";
Если Индекс < (Задание.Параметры.Количество()-1) Тогда
СтрокаПараметров = СтрокаПараметров + ",";
КонецЕсли;
Индекс = Индекс + 1;
КонецЦикла;
Выполнить("" + ИмяМетода + "(" + СтрокаПараметров + ");");
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьЗаданиеВручную(Команда)
ТекущаяСтрока = Элементы.СписокРегламентныхЗаданий.ТекущиеДанные;
Если ТекущаяСтрока <> Неопределено Тогда
ВыполнитьЗаданиеВручнуюНаСервере(ТекущаяСтрока.Идентификатор);
КонецЕсли;
КонецПроцедуры

View File

@ -3,4 +3,4 @@ Form\ДиалогОтбораРегламентногоЗадания\Форма
Form\ДиалогОтбораФоновогоЗадания\Форма.bsl-->f0fbdb48-9687-4440-95c8-bb9707cb3d44.0 (1 164, 1 293)
Form\ДиалогРегламентногоЗадания\Форма.bsl-->199fbba9-3359-40b5-b3d5-243624d29bfe.0 (1 517, 1 648)
Form\ДиалогФоновогоЗадания\Форма.bsl-->2d080fc3-1a07-4c39-bc1e-98f41c8b2a29.0 (485, 515)
Form\Форма\Форма.bsl-->666d4981-6ccb-43bd-b0c1-072a2dec6d2f.0 (2 928, 3 480)
Form\Форма\Форма.bsl-->666d4981-6ccb-43bd-b0c1-072a2dec6d2f.0 (3 057, 3 660)

View File

@ -106,7 +106,7 @@
},
{7,3,0,1,100},
{0,0,0},1,
{0,0,1},4,cd5394d0-7dda-4b56-8927-93ccbe967a01,
{0,0,1},6,cd5394d0-7dda-4b56-8927-93ccbe967a01,
{22,
{52,02023637-7868-4a5f-8576-835a76e0c9ba},0,0,1,
{0,
@ -373,6 +373,118 @@
},0,1,2,
{1,
{1,0},0},0,0,1,0,0,1,0,3,3,0},
{"U"},1,0,0,1,0,0,0,3,3,3,0,0,0,0,0},a9f3b1ac-f51b-431e-b102-55a69acdecad,
{29,
{109,02023637-7868-4a5f-8576-835a76e0c9ba},0,1,
{0,
{0,
{"B",1},0}
},0,"СписокРегламентныхЗаданийВыполнитьЗадание",
{1,0},1,
{12,409b9a53-7f7e-4178-86c1-33176c7c7a7a},
{0},3,0,0,0,2,2,0,0,0,
{3,4,
{0}
},
{3,4,
{0}
},
{3,4,
{0}
},
{7,3,0,1,100},
{0,0,0},0,
{4,3,
{0},"",-1,-1,0,
{
{#base64:iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAGXRFWHRTb2Z0d2Fy
ZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAt1JREFUeNqMkl1IU2EYx5+znW06d+bW
3GRtTZ1tiJGpiBh9QYSpQVJRzKAoCC8ENykqoq8LyZskZiHdFBUzMKygbkwDyyLa
RVoJ+TErczpnm/Njc+rcOTu979l2tIugB57zHs45/9/zf//nJaDQDsl62Li/0jky
aV0IRQp+zy2pZ+aXBRJSFJLLJC7zRs2du+19bclv2c82biVYluVuapu7He7pYHV5
aQ5VZMoE8yYVPH/zA5zfpsA7uwjeQDCiVct7euyHq2BdcYDam92OjPTUoycr8iVY
yDDozaMWELXZ4eKRdojFAGaCSzA84WdSU8junpY1iDCr2FL5YXDiynlLqTQvSwUx
ZAg3vbUMHJoqCMyvAPaYIhZBqkQsGHb7DF+HF38d3G0YwACB0zVp3VeSQ5n0KqDR
ZDyNRYQYcoZ3h8Vco4tSJgWNgpKMen31SQcCHFihSQM0EjGoaQTAzXCQNXESpVHK
IBheMfMAH0p7sz4DpBVGzgFNswkAwKh7Dow6BRj1CsjWKcH+sgaKzFqIRGkqCSAx
HQuXj9sgyiTmxOI5nD1RigJFzti4q1mfFcq350KncyTGO1ClS/1D4zMQPGZFIDbu
gt8KWpFYIIiCmAxD2GKD0ckAYA0PkKWJB/pd05wQO6CR92gSlAiVFK7C6cZd8HOx
C2QpLFBIwwMKc3S3e/vHQyPuAC9iEkHGElngbU15vFB/+RS891xlL53REzygwZLf
qVVTL56+HYq4JmbjAIYARUcLGC253O/EJUojQCQn4N3H10TDgwN7O9w3es8NFAv5
o1zT2OWY8gerd27LprYYM8GkU3GTv3sCoM2g4cK9HUBKCSARiFtR55Uo7/MAXM2P
Byu/jHmsofBqQWBhSY2f4cBsNWb62rM9hqRYIhcsF5SprwtJ4tZfgH/VQtTfeqi1
qA6LDXnUK41OWteU+2mMOwfwH4UTk2tF/vziDfVNpr4n69/9EWAAuo9hdKy34+4A
AAAASUVORK5CYII=}
},0,""},1,
{"Pattern"},"",2,0,1,
{11,
{110,02023637-7868-4a5f-8576-835a76e0c9ba},0,0,0,0,"СписокРегламентныхЗаданийВыполнитьЗаданиеРасширеннаяПодсказка",
{1,0},
{1,0},1,0,0,2,2,
{3,4,
{0}
},
{7,3,0,1,100},
{0,0,0},1,
{5,0,0,3,0,
{0,1,0},
{3,4,
{0}
},
{3,4,
{0}
},
{3,0,
{0},0,1,0,48312c09-257f-4b29-b280-284dd89efc1e}
},0,1,2,
{1,
{1,0},0},0,0,1,0,0,1,0,3,3,0},
{"U"},1,0,0,1,0,0,0,3,3,3,0,0,0,0,0},a9f3b1ac-f51b-431e-b102-55a69acdecad,
{29,
{111,02023637-7868-4a5f-8576-835a76e0c9ba},0,1,
{0,
{0,
{"B",1},0}
},0,"СписокРегламентныхЗаданийВыполнитьЗаданиеВручную",
{1,0},1,
{13,409b9a53-7f7e-4178-86c1-33176c7c7a7a},
{0},3,0,0,0,2,2,0,0,0,
{3,4,
{0}
},
{3,4,
{0}
},
{3,4,
{0}
},
{7,3,0,1,100},
{0,0,0},0,
{4,1,
{0,0ce78048-0196-4f80-a781-9829cdb7f43e},"",-1,-1,0,0,""},1,
{"Pattern"},"",2,0,1,
{11,
{112,02023637-7868-4a5f-8576-835a76e0c9ba},0,0,0,0,"СписокРегламентныхЗаданийВыполнитьЗаданиеВручнуюРасширеннаяПодсказка",
{1,0},
{1,0},1,0,0,2,2,
{3,4,
{0}
},
{7,3,0,1,100},
{0,0,0},1,
{5,0,0,3,0,
{0,1,0},
{3,4,
{0}
},
{3,4,
{0}
},
{3,0,
{0},0,1,0,48312c09-257f-4b29-b280-284dd89efc1e}
},0,1,2,
{1,
{1,0},0},0,0,1,0,0,1,0,3,3,0},
{"U"},1,0,0,1,0,0,0,3,3,3,0,0,0,0,0},1,0,0,0,3,3,0},9,77ffcc29-7f2d-4223-b22f-19666e7250ba,
{34,
{5,02023637-7868-4a5f-8576-835a76e0c9ba},1,0,1,
@ -3225,21 +3337,6 @@
ОбновитьСписокФоновыхЗаданий();
КонецПроцедуры
&НаСервере
Процедура ЗапуститьРегламентноеЗаданиеНаСервере()
//ТекущаяСтрока = Элементы.СписокФоновыхЗаданий.ТекущаяСтрока;
//Если ТекущаяСтрока <> Неопределено Тогда
// ТекСтрока = СписокФоновыхЗаданий.НайтиПоИдентификатору(ТекущаяСтрока);
// ТекущийИдентификатор = ТекСтрока.Идентификатор;
// РегламентныеЗадания.
//КонецЕсли;
КонецПроцедуры
&НаКлиенте
Процедура ЗапуститьРегламентноеЗадание(Команда)
ЗапуститьРегламентноеЗаданиеНаСервере();
КонецПроцедуры
&НаКлиенте
Процедура СписокФоновыхЗаданийПередНачаломДобавления(Элемент, Отказ, Копирование, Родитель, Группа)
Отказ = Истина;
@ -3477,6 +3574,72 @@
ОтключитьОбработчикОжидания(""ОбработчикАвтообновленияРегламентныхЗаданий"");
КонецПроцедуры
&НаКлиенте
Процедура ЗапуститьЗадание(Команда)
ТекущаяСтрока = Элементы.СписокРегламентныхЗаданий.ТекущиеДанные;
Если ТекущаяСтрока <> Неопределено Тогда
ЗапуститьЗаданиеНаСервере(ТекущаяСтрока.Идентификатор);
КонецЕсли;
КонецПроцедуры
&НаСервере
Процедура ЗапуститьЗаданиеНаСервере(УникальныйИдентификатор)
Идентификатор = Новый УникальныйИдентификатор(УникальныйИдентификатор);
Задание = РегламентныеЗадания.НайтиПоУникальномуИдентификатору(Идентификатор);
//Если Задание.Использование Тогда
//проверка на выполнение в текущий момент
Отбор=Новый Структура;
Отбор.Вставить(""Ключ"",Строка(Задание.УникальныйИдентификатор));
Отбор.Вставить(""Состояние "",СостояниеФоновогоЗадания.Активно);
МассивЗаданий=ФоновыеЗадания.ПолучитьФоновыеЗадания(Отбор);
Если МассивЗаданий.Количество()=0 Тогда
НаименованиеФоновогоЗадания = ""Запуск вручную: ""+ Задание.Метаданные.Синоним;
ФоновоеЗадание = ФоновыеЗадания.Выполнить(Задание.Метаданные.ИмяМетода, Задание.Параметры, Строка(Задание.УникальныйИдентификатор), НаименованиеФоновогоЗадания);
Иначе
Сообщить(""Задание уже запущено"");
КонецЕсли;
//КонецЕсли;
ОбновитьСписокРегламентныхЗаданий();
ОбновитьСписокФоновыхЗаданий();
КонецПроцедуры
&НаСервере
Процедура ВыполнитьЗаданиеВручнуюНаСервере(УникальныйИдентификатор)
Идентификатор = Новый УникальныйИдентификатор(УникальныйИдентификатор);
Задание = РегламентныеЗадания.НайтиПоУникальномуИдентификатору(Идентификатор);
ИмяМетода = Задание.Метаданные.ИмяМетода;
// Подготовка команды для выполнения метода вместо фонового задания.
СтрокаПараметров = """";
Индекс = 0;
Пока Индекс < Задание.Параметры.Количество() Цикл
СтрокаПараметров = СтрокаПараметров + ""Задание.Параметры["" + Индекс + ""]"";
Если Индекс < (Задание.Параметры.Количество()-1) Тогда
СтрокаПараметров = СтрокаПараметров + "","";
КонецЕсли;
Индекс = Индекс + 1;
КонецЦикла;
Выполнить("""" + ИмяМетода + ""("" + СтрокаПараметров + "");"");
КонецПроцедуры
&НаКлиенте
Процедура ВыполнитьЗаданиеВручную(Команда)
ТекущаяСтрока = Элементы.СписокРегламентныхЗаданий.ТекущиеДанные;
Если ТекущаяСтрока <> Неопределено Тогда
ВыполнитьЗаданиеВручнуюНаСервере(ТекущаяСтрока.Идентификатор);
КонецЕсли;
КонецПроцедуры
",
{4,11,
{9,
@ -4066,7 +4229,7 @@ L3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiPg0KCTxvdXRwdXRQ
YXJhbWV0ZXJzLz4NCjwvU2V0dGluZ3M+}
},
{0,0},
{0,11,
{0,12,
{9,
{1,409b9a53-7f7e-4178-86c1-33176c7c7a7a},"ОбновитьРегламентныеЗадания",
{1,1,
@ -4228,12 +4391,12 @@ YXJhbWV0ZXJzLz4NCjwvU2V0dGluZ3M+}
{0,479470e0-ea0f-4266-8549-e2b1e8c06534},"",-1,-1,1,0,""},"ОтключитьОтборФоновыхЗаданий",3,0,0,
{0,0},1,0,1,0,0,2},
{9,
{11,409b9a53-7f7e-4178-86c1-33176c7c7a7a},"ЗапуститьРегламентноеЗадание",
{12,409b9a53-7f7e-4178-86c1-33176c7c7a7a},"ЗапуститьЗадание",
{1,1,
{"ru","Запустить регламентное задание"}
{"ru","Запустить задание"}
},
{1,1,
{"ru","Запустить регламентное задание"}
{"ru","Запустить сейчас"}
},
{0,
{0,
@ -4241,7 +4404,23 @@ YXJhbWV0ZXJzLz4NCjwvU2V0dGluZ3M+}
},
{0,0,0},
{4,0,
{0},"",-1,-1,1,0,""},"ЗапуститьРегламентноеЗадание",3,0,0,
{0},"",-1,-1,1,0,""},"ЗапуститьЗадание",3,0,0,
{0,0},1,0,1,0,0,2},
{9,
{13,409b9a53-7f7e-4178-86c1-33176c7c7a7a},"ВыполнитьЗаданиеВручную",
{1,1,
{"ru","Выполнить задание вручную"}
},
{1,1,
{"ru","Выполнить задание вручную"}
},
{0,
{0,
{"B",1},0}
},
{0,0,0},
{4,0,
{0},"",-1,-1,1,0,""},"ВыполнитьЗаданиеВручную",3,0,0,
{0,0},1,0,1,0,0,2}
},
{0,0},

View File

@ -1 +1 @@
{1,20,"",677731f5-f30f-4af7-9f6a-3840affaa2de,"167afd67-f00b-4ca2-b540-c97616d8bd34",4671343a-bc6d-4628-9d03-50fbd3d5e717,"199fbba9-3359-40b5-b3d5-243624d29bfe",548e87f6-3f02-4b6f-b3ef-465def77a8ea,"199fbba9-3359-40b5-b3d5-243624d29bfe.0",9a99c4d0-1edf-4036-bbb7-7c9afd887722,"2d080fc3-1a07-4c39-bc1e-98f41c8b2a29",33016971-bfa6-4618-9607-99c3a973fe71,"2d080fc3-1a07-4c39-bc1e-98f41c8b2a29.0",87948845-769d-465a-a42b-d51de25f5415,"666d4981-6ccb-43bd-b0c1-072a2dec6d2f",f3fc03e8-0777-44d2-ae06-ebb6df602404,"666d4981-6ccb-43bd-b0c1-072a2dec6d2f.0",5127f95a-0dce-42a9-af88-711d6de71b9f,"93b0e3b2-4ec5-4cb3-bac4-b4e3fc71a4e2",7d357c72-0836-42bf-ae0c-0050a1602ea2,"93b0e3b2-4ec5-4cb3-bac4-b4e3fc71a4e2.0",1be9dba8-225c-468d-994f-116fc8d68eea,"copyinfo",2ae994b8-42de-43b0-8616-05a843571a97,"d59d3b53-8f86-4641-bc85-a72ac2823659",c5d70697-38e7-452f-9277-bdbdacb44cfb,"d59d3b53-8f86-4641-bc85-a72ac2823659.0",caa230c2-f15f-4f93-a8a0-24d808716326,"df48c491-412d-4d8d-b902-f68bcf1fc4e4",26d6987d-f9d5-4981-8566-1122547db06a,"df48c491-412d-4d8d-b902-f68bcf1fc4e4.0",42401723-173f-452d-949c-756c571094eb,"f0fbdb48-9687-4440-95c8-bb9707cb3d44",617d0aac-91f9-4552-b18f-ff04c518ca92,"f0fbdb48-9687-4440-95c8-bb9707cb3d44.0",c5ef32e2-3cb8-4b7e-925f-cbfe2ca256b4,"root",afca1143-0bb5-4874-bd03-f3b9496434b3,"version",4b87d5bf-813e-4c79-afe9-bbe433196fe6,"versions",8f39b071-43e7-4d7f-8b70-69934ac32512}
{1,20,"",d8561490-e399-406a-a717-aa82f0728ff0,"167afd67-f00b-4ca2-b540-c97616d8bd34",4f68745b-2a02-4822-b3a2-4811342f9917,"199fbba9-3359-40b5-b3d5-243624d29bfe",6e85a451-3e68-4677-b9bb-a5c3a30bde84,"199fbba9-3359-40b5-b3d5-243624d29bfe.0",3bb37167-4048-4625-b16d-c865a0c37475,"2d080fc3-1a07-4c39-bc1e-98f41c8b2a29",f5b51631-306d-4cb0-a767-7065cea169fc,"2d080fc3-1a07-4c39-bc1e-98f41c8b2a29.0",eb3398f6-2ae7-4896-b8d2-4cc60937cd5b,"666d4981-6ccb-43bd-b0c1-072a2dec6d2f",eeda9237-5bed-4152-ac6b-17d9729a923c,"666d4981-6ccb-43bd-b0c1-072a2dec6d2f.0",a6fa624d-bfbe-4973-9301-d1dac8ccb5d5,"93b0e3b2-4ec5-4cb3-bac4-b4e3fc71a4e2",6c0fadb5-e82f-40ff-ac13-998ce277976d,"93b0e3b2-4ec5-4cb3-bac4-b4e3fc71a4e2.0",42d9633a-56d4-4b4a-8c5d-e8daed5c356f,"copyinfo",3b6fc32e-66b1-4c47-9796-2301c179d7ac,"d59d3b53-8f86-4641-bc85-a72ac2823659",c5d70697-38e7-452f-9277-bdbdacb44cfb,"d59d3b53-8f86-4641-bc85-a72ac2823659.0",caa230c2-f15f-4f93-a8a0-24d808716326,"df48c491-412d-4d8d-b902-f68bcf1fc4e4",be9452c5-b8a6-4cb8-b033-2d5c3cda621e,"df48c491-412d-4d8d-b902-f68bcf1fc4e4.0",b8274177-ff5e-4f9e-a8f2-6003a195a396,"f0fbdb48-9687-4440-95c8-bb9707cb3d44",a264c499-37cb-4a40-86aa-774b838f1a29,"f0fbdb48-9687-4440-95c8-bb9707cb3d44.0",4c1d2268-9d01-492d-8a1e-991c91efc8ba,"root",0113ec0e-2e66-45e2-8d58-4c91b77396da,"version",e6952d79-a064-43ca-878e-254b2ea29f5e,"versions",57e0c61e-d64b-4a27-bcbb-8a6acd991af3}

Binary file not shown.