01.06.2019, 13:55 | #11 |
Участник
|
Цитата:
Сначала ответь на поставленный вопрос, потом обзирай. Цитата:
Сообщение от ax_mct
Правильно так
X++: public boolean runsImpersonated() { // false means that the batch must run on a client. return false; } Во-первых, этот метод работает только начиная с 2009, где ввели таски в пакетном задании. Во-вторых, похоже, этот метод требует минимум трех классов: = управляющий класс, который собственно и создает пакетное задание = клиентский класс для выполнения действий на клиенте = серверный класс для выполнения действий на сервере метод runsImpersonated() не решает задачу передачи данных с клиента на сервер. по-прежнему, можно передавать данные через таблицу, создавая тикет для сессии, и занимаясь обслуживанием сессионных данных (удаление устаревших, нумератор сессии, уникальность нумератора в случае отказов и т.п.) Мало того, этот метод сильно усложняет saveLast. Либо я чего-то кардинально не понимаю. Похоже, что для работы не обязательно создавать клиентский пакетник. Хотя и можно. Похоже, что клиентская таска может выполняться сразу после запуска, а не по расписанию.Тут пока много непонятного. Кто-нибудь ходил этим путем? Есть рекомендации? ============ пока вариант с двумя классами и со свойством runOn кажется более простым. там только одна сложность - как передать расписание запуска второму классу и сбросить эти параметры с первого. Последний раз редактировалось mazzy; 01.06.2019 в 14:07. |
|
|
За это сообщение автора поблагодарили: ax_mct (2). |
Теги |
как правильно |
|
|