|
Запуск фонового задания при запуске клиента | ☑ | ||
---|---|---|---|---|
0
Buckbister
17.07.18
✎
10:31
|
Всем день добрый!
Мне надо запустить фоновое задание при запуске клиента. Фоновое задание расположил в модуле с галками "Клиент, Сервер, Управляемое приложение, Вызов сервера". В Модуле управляемого приложения пытаюсь обратиться к экспортной функции, расположенной в таком модуле - пишет ошибку. Что не так делаю? Как запустить такое фоновое задание? |
|||
1
Deon
17.07.18
✎
10:36
|
Написал ли ты у экспортной процедуры слово "Экспорт"?
|
|||
2
Tonik992
17.07.18
✎
10:36
|
А какую ошибку то пишет?
|
|||
3
DrWatson
17.07.18
✎
10:49
|
Телепат: ТС в этой функции использует менеджер фоновых заданий.
|
|||
4
Buckbister
17.07.18
✎
11:05
|
(1) Да, слово Экспорт есть. Вызов из других модулей работает корректно.
(2) {МодульУправляемогоПриложения(3)}: Метод объекта не обнаружен (СоздатьБэкапыИсточниковДанныхЭС) ЭС_Сервис.СоздатьБэкапыИсточниковДанныхЭС(2); (3) ... Собственно в этом задача - чтобы запуск сеанса на клиенте инициировал фоновое задание на сервере. - это незаконно? |
|||
5
Tonik992
17.07.18
✎
11:14
|
В режиме конфигуратора зайдите:
"Сервис -> Параметры". На закладке "Модули" -> "Проверка" проставьте ВСЕ флажки. После откройте модуль управляемого приложения и далее выполните "Текст" -> "Проверка модуля". Какие-нибудь ошибки выведутся? |
|||
6
DrWatson
17.07.18
✎
11:32
|
(4) Незаконно делать это на клиенте. Я пытался идентифицировать эту проблему. А оказывается запуск фонового задания здесь вообще не причем.
А нет ли вокруг СоздатьБэкапыИсточниковДанныхЭС инструкций препроцессора типа #Если Сервер? |
|||
7
hhhh
17.07.18
✎
11:33
|
(4) "в модуле с галками "Клиент, Сервер, Управляемое приложение, Вызов сервера".
понятно что ваш модуль вызовется в режиме Клиент. Зачем вы кучу других галок понаставили? |
|||
8
Buckbister
17.07.18
✎
11:51
|
(6) Нет, инструкций препроцессора нет
(7) Да когда непонятно что не работает, тыкаешь галки все подряд |
|||
9
DrWatson
17.07.18
✎
12:14
|
(4) "Вызов из других модулей работает корректно."
Вызов именно из клиентских процедур работает? А вообще что за процедура СоздатьБэкапыИсточниковДанныхЭС? По замыслу она серверная или клиентская? |
|||
10
Buckbister
17.07.18
✎
12:18
|
(9) По замыслу это чисто серверная процедура. Она должна пробежаться по списку источников и создать SQL-бэкапы
|
|||
11
DrWatson
17.07.18
✎
12:30
|
(9) А как Вы её сделали серверной, если на модуле стоит галка Клиент?
Что вообще можно сделать в таком модуле. Либо ставим #Если Сервер, чтобы исключить её с клиента. Но это не способ заставить исполнение перейти на сервер. Либо чисто серверные методы в этой процедуре вообще не дадут скомпилироваться модулю на клиенте. |
|||
12
Buckbister
17.07.18
✎
12:30
|
(9) - И да, вызов именно из клиентских процедур (по кнопке на форме) корректно работает.
|
|||
13
Buckbister
17.07.18
✎
12:33
|
(11) - !!!!! Спасибо огромное!!! да, это оно!
|
|||
14
DrWatson
17.07.18
✎
12:33
|
Не понимаю как серверная по замыслу и по коду процедура будет работать на клиенте.
Сделайте новый модуль с галками Сервер и Вызов сервера, без галок Клиент. Поместите туда эту процедуру. Вызовите её из модуля Управляемого приложения. Думаю это правильный метод. |
|||
15
Buckbister
17.07.18
✎
12:36
|
(14) - Именно так и сделал, как вы в (11) и написали! Еще раз спасибо!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |