Версия для печати темы (https://pro1c.org.ua/index.php?s=fc79d798be2bfa4c86c31cc4d5ae8852&showtopic=7340)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование управляемых форм 1С 8.2 _ Регламентное задание

Автор: Irina_ 14.05.12, 10:36

Здравствуйте smile.gif
Платформа 8,2,15,294
Конфигурация самописная.

Возник вопрос в создании регламентного задания по загрузке погоды. Данные берутся с Гисметео, в обработке идет подключение к сайту, берется XML, разбирается и записывается все это дело в регистр сведений.
Данные на сайте обновляются через каждых 6 часов.
Создала регламентное задание, нарисовала ему расписание.
Создала общий модуль и туда поместила код программы по загрузке данных.
Интуитивно понимаю что нужно где-то этот модуль вызывать, и наверно подключать какие-то обработчики ожидания (во как умнО все )))
Но что подключать и где, учитывая что база самописная, не совсем понимаю ))
Помогите кто чем может )

Автор: logist 14.05.12, 11:20

Цитата(Irina_ @ 14.05.12, 11:36) *
что нужно где-то этот модуль вызывать

В свойствах регл.задания - Имя метода - указать процедуру которая инициирует получение данных.

Автор: Ardi 14.05.12, 11:23

logist
Нужно ли устанавливать 1с сервер?

Автор: logist 14.05.12, 12:01

Цитата(Ardi @ 14.05.12, 12:23) *
Нужно ли устанавливать 1с сервер?

Если 1С будет все время открыта (и у открытого сеанса будет возможность запускать регл.задания) то нет.

Автор: Ardi 14.05.12, 12:11

logist
А если сервер не установлен.
И запущено 10 экземпляров 1с - оно как-то разруливает что одно задание только один раз на всех 10 экземплярах должно отработать или нет?
Видит ли что на другом экземпляре задание уже начало выполняться но ещё не выполнено/отменено?

Автор: logist 14.05.12, 12:50

Цитата(Ardi @ 14.05.12, 13:11) *
оно как-то разруливает что одно задание только один раз на всех 10 экземплярах должно отработать или нет?

Как-то разруливает, конечно))

Автор: Vofka 14.05.12, 13:09

Цитата(logist @ 14.05.12, 13:01) *
Если 1С будет все время открыта (и у открытого сеанса будет возможность запускать регл.задания) то нет.

При выполнении всех выше указанных условий всёравно ничего не произойдет. Не произойдет, пока не выполним:

Цитата
Глобальный контекст (Global context)
ВыполнитьОбработкуЗаданий (ProcessJobs)
Синтаксис:

ВыполнитьОбработкуЗаданий(<ВремяОбработки>)
Параметры:

<ВремяОбработки> (необязательный)

Тип: Число.
Время в секундах обработки очередной порции заданий. Если время не задано, будет выполнен только один цикл обработки.
Описание:

Вызывает обработку текущих заданий. Имеет смысл только для файлового варианта.
В управляемом режиме в толстом, тонком и веб-клиентах приводит к появлению диалога, содержащего сообщение о выполнении обработки заданий и кнопку "Прервать", нажатие на которую приводит к прерыванию цикла обработки заданий.

Доступность:

Тонкий клиент, веб-клиент, толстый клиент.

Автор: Batchir 14.05.12, 13:40

Цитата(logist @ 14.05.12, 13:50) *
Как-то разруливает, конечно))

Не забываем, "как-то разруливает" описано в типовых конфигурациях, а тут дело имеем с самописной конфигурацией.
И почему то мне кажется что раз с регламентными заданиями идет знакомство, то оно никак не разруливает.

Автор: Vofka 14.05.12, 13:48

Как написал Batchir, механизм разруливания описан в самой конфе. Но там все просто: есть константа, в которой хранится пользователь для выполнения регламетных заданий. При запуске система проверяет не текущий ли это пользователь. Если текущий, то вызывает метод, который я привёл выше.

Автор: Irina_ 14.05.12, 14:04

Ну константу добавить не проблема, а как проверить пользователя при запуске системы?
В модуле управляемого приложения ни ПараметрыСеанса ни ПользователиИнформационнойБазы при запуске не определяются, матюкается вобщем

появилась идея запускать обработку при входе в систему под определенным служебным пользователем, и в настройках самой винды создать расписание и по нему заходить в 1С под данным пользователем через те же 6 часов (ну как-то так) ))

Автор: pablo 14.05.12, 14:17

У меня в типовой конфе допиленной на УФ есть регламентные задания, выполняющиеся только на сервере. Выполняться они начали только после установки галочки "Предопределенное" в свойствах регламентного задания

Автор: Vofka 14.05.12, 14:30

Цитата(pablo @ 14.05.12, 15:17) *
Выполняться они начали только после установки галочки "Предопределенное" в свойствах регламентного задания

Потому что само по себе регламентное задание - это информация о намерении с ним работать. Если оно помечено как "предопределенное", то оно стартует само, а иначе его надо стартовать программно.

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua