Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: Напоминание события!  (Прочитано 13120 раз)
0 Пользователей и 1 Гость смотрят эту тему.
proFiq
Новенький

ua
Offline Offline

« : 10-07-2011 12:36 » 

Kivals как-то писал про обработку напоминания:
----------------------------------------------------------------------------------------------------
Я для подобных вещей делал периодический регистр сведений, в котором в принципе достаточно таких полей: Ответственный, Объект (любая ссылка), Сообщение (строка), Выполнено (булево)
Период записи регистра определяет когда должно выскочить напоминание.
После этого создал Регламентное задание (можно и отчетом, но я ориентировался на серверную версию) в методе которого:
1. выполнял запрос, выбирая все записи из регистра сведений, у которых Период меньше текущего времени и Выполнено=Ложь
2. по всем записям отправлял уведомления (по e-mail и смс) ответственным
3. выставлял значение Выполнено=Истина

P.S. в реальной задаче регистр сложнее, т.к. по одному событию позволяет добавлять несколько предварительных напоминаний. Но для понимания описанной схемы достаточно.

----------------------------------------------------------------------------------------------------

Был бы очень признателен, если показал мне сам росписаный модуль в методике, который использует Регламентное задание.
Записан
Kivals
Модератор

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 10-07-2011 12:55 » 

В чем собственно вопрос?
Обработка регламентного задания - это вызов процедуры (или функции) без параметров (т.е. в самой процедуре/функции параметры могут быть, но при вызове их значения будут значениями по умолчанию) из общего модуля с установленным признаком Сервер.
У меня эта функция выглядит вот так:
Код:
// Общий модуль: Уведомления

Функция ПроверитьУведомления() Экспорт
Мас=СписокУведомлений("ПоПочте");
Для каждого Эл Из Мас Цикл
Состояние(Эл);
Если Уведомления.ОтправитьУведомлениеПоПочте(Эл) Тогда
Сообщить(Эл, СтатусСообщения.Информация);
Об=Эл.ПолучитьОбъект();
Об.ОтправленоПоПочте=ТекущаяДата();
Об.Записать();
КонецЕсли;
//Сообщить(Эл, СтатусСообщения.БезСтатуса);
КонецЦикла;

Мас=СписокУведомлений("ПоСМС");
Для каждого Эл Из Мас Цикл
Состояние(Эл);
Если Уведомления.ОтправитьУведомлениеПоСМС(Эл) Тогда
Сообщить(Эл, СтатусСообщения.Информация);
Об=Эл.ПолучитьОбъект();
Об.ОтправленоПоСМС=ТекущаяДата();
Об.Записать();
КонецЕсли;
КонецЦикла;
КонецФункции // ПроверитьУведомления()

Когда обращаться к этой функции - настраивается в расписании регламентного задания:


* sc-20110710155337.png (25.44 Кб - загружено 3573 раз.)
Записан
proFiq
Новенький

ua
Offline Offline

« Ответ #2 : 10-07-2011 13:23 » 

Конкретно, у меня задача стоит так - создать напоминание события в определенное время. Релиз(выполнение) должно проходить примерно так:
Поля формы:
-задать время когда создалось напоминание;
-задать время исполнения напоминания;
-задать повтор;
-сообщение которое несёт напоминание;
Картинка - http://files.mail.ru/9QY3JW?t=1
И когда безпосредственно настаёт время исполнения, должно появитса окно сообщения.
Записан
Kivals
Модератор

ca
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 10-07-2011 13:27 » 

...
И когда безпосредственно настаёт время исполнения, должно появитса окно сообщения.
Вот эта фраза абсолютно переворачивает задачу, т.к. "появиться окно" - это клиент, а "регламентные задания" - это сервер.
Судя по картинке - у тебя 8.2
Пока не готов ответить какие есть события чтобы там это реализовать. Посмотрю - напишу.
Записан
proFiq
Новенький

ua
Offline Offline

« Ответ #4 : 12-07-2011 17:04 » 

Народ, есть какие-то предложения, как лучше зделать напоминалку событий с выплыванием окна?
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines