|
Выполнить в фоне часть процедур во внешней обработке. | ☑ | ||
---|---|---|---|---|
0
Sevish
08.11.20
✎
18:40
|
Добрый день!
Как выполнить в фоне процедуру модуля конфигурации - проблем нет. Но возникла задача выполнить процедуру модуля внешней обработки. Файл - Открыть - Внешняя обработка. На форме кнопка. Нажимаем, и процедура именно этой обработки выполняется в фоне... Как это сделать, если возможно? |
|||
1
Конструктор1С
08.11.20
✎
18:44
|
(0) БСП подключена?
|
|||
2
jsmith82
08.11.20
✎
18:51
|
странно, что спросил. в интернете же есть
|
|||
3
Sevish
08.11.20
✎
19:20
|
БСП не подключена, голая УПП. В интернете есть, но если обработка подключена как внешняя обработка в справочник.
А мне надо просто - открыл и выполнил. |
|||
4
GedKo
08.11.20
✎
20:19
|
сделай расширение
|
|||
5
Провинциальный 1сник
08.11.20
✎
20:21
|
(4) Так голая же УПП, какие расширения, если там режим совместимости древний
|
|||
6
Sevish
08.11.20
✎
21:30
|
Да, все верно, древний, расширение то же не прокатит.
Вообще проблема-то вот в этой одной строке: ДлительныеОперации.ВыполнитьВФоне("ИмяМодуля.ИмяПроцедуры", СтруктураПараметров, ПараметрыВыполнения); У меня есть только ИмяПроцедуры в текущем модуле внешней обработки. |
|||
7
RomanYS
08.11.20
✎
21:40
|
(6) Значит нужно сделать общий модуль, который будет выполнять интерфейсную функцию. Или взять из БСП. В УПП готового не нашёл
|
|||
8
Конструктор1С
09.11.20
✎
06:59
|
(6) у тебя относительно свежая версия модуля длительных операций. В УПП давно не заглядывал, но должно прокатить вот так:
СтруктураПараметров.Вставить("ИмяМетода", "ТутНазваниеЭкспортнойПроцедурыМодуляОбработки"); ДлительныеОперации.ВыполнитьВФоне("ДлительныеОперации.ВыполнитьПроцедуруМодуляОбъектаОбработки", СтруктураПараметров, ПараметрыВыполнения); |
|||
9
ДенисЧ
09.11.20
✎
07:02
|
Закладка, как говорится )))
Не заметил при беглом просмотре... |
|||
10
SleepyHead
гуру
09.11.20
✎
08:58
|
(0) На инфостарте про это десятки статей, я даже свою пилил...
|
|||
11
ДенисЧ
09.11.20
✎
08:59
|
(10) Она золотая? ))
|
|||
12
SleepyHead
гуру
09.11.20
✎
09:03
|
(11) Я не знаю, разрешено ли правилами давать ссылку на свою статью здесь, на мисте, поэтому ограничиваюсь тонкими намеками, что мне можно написать в скайп.
|
|||
13
ДенисЧ
09.11.20
✎
09:03
|
(12) Я просто хотел пошутить )))
Если ты ё пилил, значит, она должна быть золотой ))) |
|||
14
SleepyHead
гуру
09.11.20
✎
09:07
|
(13) Простите, Остап Ибрагимович, я не сразу оценил, на что намек ))
Правила перечитал, запрета не нашел, поэтому вот http://catalog.mista.ru/1c/articles/1207439/ |
|||
15
Конструктор1С
09.11.20
✎
09:20
|
(14) это под БСП и УФ, а у ТС УПП на ОФ
|
|||
16
Конструктор1С
09.11.20
✎
09:21
|
но по идее зайдёт
|
|||
17
Kassern
09.11.20
✎
09:57
|
(0) Как вариант создать свой модуль для вызова фоновых заданий. А с внешних обработок уже отсылать код на выполнение в фоне.
Функция ЗапуститьФоновоеВыполнение(ТекстПроцедуры,СтруктураПараметров=Неопределено) Экспорт УникальныйИдентификатор = Новый УникальныйИдентификатор; ПараметрыВыполнения = Новый Массив; ПараметрыВыполнения.Добавить(ТекстПроцедуры); ПараметрыВыполнения.Добавить(СтруктураПараметров); ФоновыеЗадания.Выполнить("ФоновоеВыполнение.ФоноваяПроцедура",ПараметрыВыполнения,УникальныйИдентификатор); Возврат УникальныйИдентификатор; КонецФункции Процедура ФоноваяПроцедура(ТекстМодуля,ПараметрыВыполнения) Экспорт ПолныйТекстМодуля = ""; Для Каждого ТекПараметр Из ПараметрыВыполнения Цикл ПолныйТекстМодуля = ПолныйТекстМодуля+ТекПараметр.Ключ+"=ПараметрыВыполнения."+ТекПараметр.Ключ+";"+Символы.ПС; КонецЦикла; ПолныйТекстМодуля = ПолныйТекстМодуля + ТекстМодуля; Выполнить(ПолныйТекстМодуля); КонецПроцедуры |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |