Выполнение произвольного кода в фоновых заданиях

0. unichkin 1535 20.12.15 21:42 Сейчас в теме
Если надо быстро провести 100`000 документов...

Перейти к публикации

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. aspirator23 341 23.01.16 16:55 Сейчас в теме
Примерно также делал, только для контроля выполнения фоновых заданий использовал дополнительный регистр.
Позволяет наглядно выводить пользователю выполнение фоновых задач.
От ОжидатьЗавершения() отказался - не позволяет отражать процесс выполнения заданий.
С фоновыми заданиями кода получается много по сравнению с обычным последовательным выполнением, но оно того стоило.
Задачи которые выполнялись 40 минут, выполняются за 2-3 минуты. Для интерактивных операций то что нужно.
Да и для многих регламентных можно использовать.
2. tormozit 6870 30.01.16 02:12 Сейчас в теме
пользуюсь консолью инструментов разработчика, но почему-то в файловой базе она пасанула
Не пробовал сообщить описание проблемы разработчику?
3. unichkin 1535 30.01.16 16:01 Сейчас в теме
(2) tormozit, сообщу. Просто не придал этому большого значения. Благодаря твоей работе разработка стала на порядок проще, опишу конечно.
4. dimpson 20 03.04.17 18:33 Сейчас в теме
Возникла идея: можно написать универсальное фоновое задание, которое будет выполнять код из какого-нибудь справочника аля "Справочник фоновых заданий", т.е. в этом справочнике можно прописать выполняемый код, параметры и даже расписание.
Одно универсальное фоновое задание будет пытаться выполниться каждые, допустим, 10 секунд и если одно из заданий из справочника попадет под расписание, то исполнится код через Выполнить()...
unichkin; +1 Ответить
5. unichkin 1535 03.04.17 23:42 Сейчас в теме
(4) Тогда уж лучше регламент, если меняем конфу. Сейчас на платформе 8.3.9.217 с этим определенные проблемы... Так что лучше регламент)
6. AlX0id 04.04.17 15:39 Сейчас в теме
(4)
И этот справочник = "Дополнительные внешние обработки" из БСП ) И тут нужно не писать, а читать ИТС )
Пишешь код во внешней обработке, отлаживаешь ее, запихиваешь в дополнительные внешние и запускаешь по расписанию.
unichkin; +1 Ответить
7. kiruha 388 17.04.17 19:25 Сейчас в теме
При всем уважении - потенциальная дыра в безопасности.
8. unichkin 1535 18.04.17 00:03 Сейчас в теме
(7) Это да. Зато удобно. Правда "дыра" прямо скажем неочевидная... Я думаю если злоумышленник получает доступ к базе на таком уровне - то вся база одна сплошная дыра.
9. unoDosTres 23.06.17 11:26 Сейчас в теме
практика известная.

я бы еще добавил в эту процедуру ВыполнитьКодПотокаПоНаборуДанных один или несколько не значимых параметров.

практическое применение этому, ну например: передаем в фоновое задание в качестве параметра

АдресВХранилище = ПоместитьВоВременноеХранилище(Неопределено);


а в параметре код пишем в этот же параметр нужные данные чтобы потом отловить после выполенения фонового задания через "ПолучитьИзВременногоХранилища".
11. unichkin 1535 23.06.17 21:33 Сейчас в теме
(9) Не понял
(10) У автора не было такой нужды. О том что такое многопоточность и с чем ее есть и так найдется 100500 статей. Я публикую только свой подход к решению задачи.
12. unoDosTres 25.06.17 14:37 Сейчас в теме
(11), ну тема называется "Выполнение произвольного кода в фоновых заданиях" если на бы например я хотел получить результат выполнения фонового задания на клиенте я бы этого не смог сделать, ну как мне видится, то что предложил в (9) я это решает
13. unichkin 1535 25.06.17 18:58 Сейчас в теме
(12) У метода "ВыполнитьВФоне" второй параметр - ОжидатьЗавершения.
10. Frogger1971 23.06.17 12:28 Сейчас в теме
Оставьте свое сообщение
Вакансии
Консультант 1С
Москва
зарплата от 80 000 руб. до 150 000 руб.
Полный день

Программист 1С (ERP, УХ, КА 2, УТ 11), удаленно
Москва
зарплата от 160 000 руб.
Полный день

Аналитик 1С
Москва
зарплата от 200 000 руб.
Полный день

Консультант 1С / Специалист поддержки 1C
Екатеринбург
зарплата от 70 000 руб.
Полный день

Технический архитектор 1С
Екатеринбург
зарплата от 200 000 руб.
Полный день