|
Организация запуска обработки, по случайному времени | ☑ | ||
---|---|---|---|---|
0
Ne_Maks
23.03.15
✎
10:44
|
Доброго всем. Вопрос такой. Есть обработка которую я бы хотел выполнять в определенное время, надо придумать как это сделать. Скажите - регламентное задание. Но нет, мне надо выполнять задание в разные дни и разное время, которое я задаю в отдельном справочнике. Этот справочник имеет два реквизита. Один это дата и время, второй булево означающий что на эту дату задание было выполнено. Так вот и стоит задача сделать что-то типо регламентного задания, которое будет брать указанную дату время и выполнять обработку. А флаг выполнения можно уже из самой обработки ставить я думаю.
|
|||
1
ДенисЧ
23.03.15
✎
10:47
|
Регламентное задание, запускающееся каждую минуту и проверяющее, а не надо ли ему выполнииться.
|
|||
2
Stim
23.03.15
✎
10:48
|
а чем отличается дата в справочнике от даты в регламентном задании?
или ты хочешь задать 100500 дат на весь год? |
|||
3
patria0muerte
23.03.15
✎
10:51
|
выявление момента времени для запуска на выполнение кода нечто похожее вот...
|
|||
4
Лефмихалыч
23.03.15
✎
10:52
|
(0) регламентное задание - да, только надо, чтобы оно перед запуском твоей обработки проверяло, пора ее запускать или нет
|
|||
5
Serg_1960
23.03.15
✎
10:56
|
Чисто просто так, скользя мимо по поверхности:
А кто сказал что регламентное задание (точнее сказать - фоновое задание) не имеет права изменять своё же расписание? Почему нельзя устанавливать следующий запуск рег.задания при завершении работы обработки? |
|||
6
patria0muerte
23.03.15
✎
10:59
|
(5) Да как то не очень получается концепция, что расписание рег. задания завязано на выполнение самого рег.задания.
Право то имеет, но ИМХО, логичней расписание (ежели оно нестандартное) хранить отдельно.. |
|||
7
Лефмихалыч
23.03.15
✎
11:01
|
(5) можно и так, но представь, что будет, если очередной запуск не случился - например сервер был остановлен для регламентных работ. Оно ведь остановится на всегда, т.к. код, который должен был установить расписание следующего запуска, не выполнится уже ни когда
|
|||
8
patria0muerte
23.03.15
✎
11:04
|
(7) Как боженька смолвил...
|
|||
9
Ne_Maks
23.03.15
✎
11:06
|
(1) Неохото порождать миллион рег. заданий, надо создать что-то типо фонового задания которое будет ждать появления определенного времени.
|
|||
10
Ne_Maks
23.03.15
✎
11:06
|
Наподобие подписки на событие, вот как извратиться
|
|||
11
Лефмихалыч
23.03.15
✎
11:07
|
(9) одно породи
|
|||
12
Serg_1960
23.03.15
✎
11:07
|
(7) Если указать "Время начала", а в это время сервер, допустим не работал, то задание запустится как только сервер будет запущен. Кстати в самом задании можно "перепроверять" время "запланированного" и "фактического" запуска.
|
|||
13
Лефмихалыч
23.03.15
✎
11:08
|
(12) лишние заморочки, как по мне. Проще запускать его постоянно и проверять - пора или не пора каждый раз.
|
|||
14
Лефмихалыч
23.03.15
✎
11:11
|
(10) какая религия мешает тебе написать в ОДНОМ регламентном задании код
[code] Если Справочники.РасписаниеСпорадическогоВыполненияМоейСуперОбработкиНаВсеВремена.ПораВыполнятьОбработку() Тогда // выполнить обработку КонецЕсли; [/code] |
|||
15
Ne_Maks
23.03.15
✎
11:14
|
(11) Одно породить и внутри бесконечный цикл что ль?
(13) Ну и еще мне нужна точность до секунды, а регламентное задание, почему то, стоит через минуту и всё, ставить пытался через секунду там облом, может где устанавливается по умолчанию, галка какая нить. |
|||
16
EugeniaK
23.03.15
✎
11:17
|
(0) При сохранении записи в справочнике меняй программно расписание регламентного задание.
Т.е. пользователь сохранил запись - она вписалась в расписание. Убрал запись - она удалилась из расписания. |
|||
17
Stim
23.03.15
✎
11:19
|
(9)>>Неохото порождать миллион рег. заданий, надо создать что-то типо фонового задания которое будет ждать появления определенного времени.
повторю вопрос - что мешает указать конкретную дату (со временем) в расписании регл задания? к чему этот велосипед со справочником? |
|||
18
Ne_Maks
23.03.15
✎
11:20
|
(16) а вот это идея. А если я захочу написать расписание на месяц вперёд? или пол года? тогда мб создать лучше документ с таб. частью и хранить там дату выполнения? или это уже точно начинается гемор?)
|
|||
19
Лефмихалыч
23.03.15
✎
11:20
|
(15) открой уже глаза, включи голову в розетку, приди в сознание и прочитай (1)
|
|||
20
Serg_1960
23.03.15
✎
11:24
|
"...и еще мне нужна точность до секунды"(15) - надеюсь автор не пишет обработку запуска ядерных боеголовок на орбиту? Шутка:)
Какой минимальный период между запусками - такую периодичность и нужно установить в расписании. При запуске проверить расписание (которое хранится, например, в регистре сведений) и соответственно продолжить работу или завершить. |
|||
21
Ne_Maks
23.03.15
✎
11:28
|
(17) (19) (20) Будет список товаров, который будет продаваться в определённые дни, в определённое время и секунду, этот список товара будет создан приблизительно на год, один раз загрузив его в справочник либо в документ. Надо написать обработку чтоб этот товар продавался в то время которое будет указано. И никаких боеголовок (20)
|
|||
22
Ne_Maks
23.03.15
✎
11:30
|
С периодичностью в регламентном задании фигня какая то поставил чтоб заново выполнялась через 3 минуты, оно выполняется через минуту, поставил через 5 секунд, оно тож запускается через минуту.
|
|||
23
EugeniaK
23.03.15
✎
11:32
|
(18) (21) Посмотри на структуру хранения расписания в системе.
Если частых изменений нет, может даже проще регистр сведения и обновление расписания по отдельной кнопке формы списка. Откорректировал все даты вручную или загрузил. Нажал "Обновить расписание" |
|||
24
Ne_Maks
23.03.15
✎
11:46
|
(23) Благодарю, разобрался и настроил. Буду регистр создавать.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |