|
Отмена длительной обработки на сервере | ☑ | ||
---|---|---|---|---|
0
Александра1с
12.12.23
✎
16:20
|
здравствуйте, есть обработка весь код на сервере, довольно длительная из-за большого объема данных, хочу реализовать кнопку "отмена" которая отменяла бы выполнение обработки при нажатии на её пользователем, возможно ли такое реализовать и если да, то как накиньте идея пожалуйста) Пока надумала только отлавливать нажатие клавиш ctrl+break( тоже вариант но мб можно сделать красивее кнопкой)
|
|||
1
Donkey_hot
12.12.23
✎
16:26
|
Запускайте выполнение в фоне, запоминайте идентификатор, по кнопке отмены вызывайте ДлительныеОперации.ОтменитьВыполнениеЗадания(ИдентификаторЗадания)
|
|||
2
Александра1с
12.12.23
✎
16:27
|
(1) спасибо сейчас буду вникать и реализовывать
|
|||
3
lEvGl
12.12.23
✎
16:27
|
Александра Александра, 1С оно кривое, накажи его судьбою, вставь проверку булев`о
|
|||
4
Donkey_hot
12.12.23
✎
16:28
|
(1) Или, если нет БСП, то ФоновоеЗадание.Отменить()
|
|||
5
Александра1с
12.12.23
✎
16:35
|
(4) всё гуд БСП
|
|||
6
Александра1с
13.12.23
✎
15:18
|
и снова хочу уточнить=( код во внешней обработке как запустить процедуру в фоновое выполнение, в каком модуле она должна быть и как корректно писать в параметрах процедуры имя обработки?
|
|||
7
Александра1с
13.12.23
✎
15:18
|
НаименованиеЗадания = НСтр("ru = 'Запуск загрузки заказов поставщику'");
ДополнительнаяОбработкаСсылка = Справочники.ДополнительныеОтчетыИОбработки.НайтиПоНаименованию("Загрузить заказы из файла Excel"); ВыполняемыйМетод = "ДлительныеОперации.ВыполнитьПроцедуруМодуляОбъектаОбработки"; ПараметрыЗадания = Новый Структура; //имя внешней обработки ПараметрыЗадания.Вставить("ИмяОбработки", "ВнешняяОбработка.ЗагрузкаЗаказовПоставщикамИзФайла"); //имя экспортной серверной процедуры обработки ПараметрыЗадания.Вставить("ИмяМетода", "тест"); //входящие параметры процедуры //ПараметрыЗадания.Вставить("ПараметрыВыполнения", ); //признак внешней обработки ПараметрыЗадания.Вставить("ЭтоВнешняяОбработка", Истина); //ссылка на доп. обработку в базе ПараметрыЗадания.Вставить("ДополнительнаяОбработкаСсылка",ДополнительнаяОбработкаСсылка); //получаем пустую структуру параметров выполнения фонового задания и заполняем ее необходимыми данными ПараметрыВыполнения = ДлительныеОперации.ПараметрыВыполненияВФоне(УникальныйИдентификатор); ПараметрыВыполнения.НаименованиеФоновогоЗадания = НаименованиеЗадания; ПараметрыВыполнения.ЗапуститьВФоне = Истина; ПараметрыВыполнения.Вставить("ИдентификаторФормы", УникальныйИдентификатор); //запускаем выполнение фонового задания СтруктураФоновогоЗадания = ДлительныеОперации.ВыполнитьВФоне(ВыполняемыйМетод, ПараметрыЗадания, ПараметрыВыполнения); Возврат СтруктураФоновогоЗадания; |
|||
8
Александра1с
13.12.23
✎
15:19
|
вот такой код у меня сейчас, но выдает ошибку
|
|||
9
Александра1с
13.12.23
✎
15:59
|
ап
|
|||
10
Волшебник
13.12.23
✎
16:18
|
ошибка? бывает...
|
|||
11
AlexeyKh
13.12.23
✎
16:37
|
а зачем вот этот весь код?
Дополнительную обработку, в настройках можно задать и запустить как регламентное задание! (задать расписание, запускать и завершать вручную) |
|||
12
Начинающий Восьмерочн
13.12.23
✎
16:41
|
(8) В дополнительных обработках фоновые задания не работают, только если перенести выполнение в общий модуль.
|
|||
13
AlexeyKh
13.12.23
✎
16:50
|
ну не знаю, БСП умеет запускать допОбработки как регламентные задания. а работа рег задания это и есть фоновое задание.
наверно с вами у нас совсем разные версии БСП (проверено было в УТ10 и в УТ11) |
|||
14
lEvGl
13.12.23
✎
16:55
|
если читать тему не по диагонали, то со сложившейся ситуации можно и поржать потихоньку) пока потихоньку..
|
|||
15
Начинающий Восьмерочн
13.12.23
✎
17:23
|
(13) Речь идет про фоновое задание внутри обработки, вы утверждаете что у вас фоновые задания работают внутри доп обработки ?
Релиз платформы своей скажите. |
|||
16
AlexeyKh
13.12.23
✎
17:47
|
нет, подразумевал, что сама ВСЯ обработка является регламентным заданием.
это же легко реализуется, код помещается в модуль обработки .... |
|||
17
Начинающий Восьмерочн
13.12.23
✎
17:59
|
(16) Таки да невнимательно посмотрел, вы правы он само там работает.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |