кто нибудь уже пытался организовать оповещение о новой задаче? если пользователь не сидит в документообороте, для того что бы ему было видно что пришла новая задача.
(1) Nadushka74, отправляю по почте.
1. Необходимо создать учетную запись.
Настройка и администрирование - Учетная запись.
2. У пользователей прописать E-mail.
У кого нибудь есть пошаговая реализация уведомлений?
актуальны любые.. с помощью скрипта, в аску, программу агента... также 1с интегрировало сервер взаимодействия..как бы самое то чтобы это реализовать..но почему то фирма этого не сделала...
> можно поподробнее алгоритм реализации?
> возможно ли сделать без внесения изменений в конфигурацию? например через виды бизнес событий (создание задачи) ... какой код в обработчик события надо поставить?
1) Код для подключения агента клиентского приложения приведен в главе "4.7.3. Программный интерфейс агента" https://its.1c.ru/db/v8313doc#bookmark:adm:TI000000856 2) Пример создания служебного обсуждения приведен в "Пример 2" https://its.1c.ru/db/v8314doc#bookmark:dev:TI000002051: 2.1) В вашем случае вместо одного общего обсуждения, следует создавать персональные обсуждения для каждого пользователя, причём отображаемые;
3) Пример отправки сообщения в служебное обсуждение приведен в "Пример 2" https://its.1c.ru/db/v8314doc#bookmark:dev:TI000002051;
4) Да, через виды бизнес-событий можно реализовать:
4.1) Пример создания уведомления с помощью бизнес-событий приведен здесь https://its.1c.ru/db/metod8dev#content:5930:hdoc;
4.2) В вашем случае, вместо формирования очереди уведомлений следует выполнять отправку сообщения в служебное обсуждение пользователя.
К сожалению, ответить будет это гаранитированно работать или нет - возможности нет - данная возможность не проверялась, конфигурация находится в режиме совместимости 8.3.8. В данном случае следует рассчитывать только на данные из документации к платформе, причём именно вашей версии (просьба обратить внимание на версию платформы в документации). Если уже включена система взаимодействии - рекомендуется проверить возможность на нужной вам платформе в режиме совместимости через код во внешних обработках, как указано в шагах (1,2,3). Если это сработает - рекомендуем приступать к шагу(4), значит оно сработает.
(10) действительно , если поток писем большой, то для уведомлений "с мигалками" можно завести отдельную учетку, и настроить для нее почтовик, а остальной почтой пользоваться как раньше))
Мы тоже используем электронку для оповещений, завели все учетки на gmail и поставили gtalk. А вот соображения asved.ru действительно интересные, можно по подробнее... ну или что нить для примера...
(11) Так и делал - подписку на событие и модуль. В модуле небольшой скрипт на vbs, выбрасывающий сообщение в отдельном непотопляемом окне, чтобы пользователь не отвертелся "я не видел".
Код, выводящий уведомление:
ScrCtrl = новый COMОбъект("MSScriptControl.ScriptControl");
ScrCtrl.Language = "VBscript";
ScrCtrl.ExecuteStatement("msgbox(""Вам поступила новая заявка!"")");
(12) shiaju, А можно подобное оповещение сделать в правом нижнем углу экрана??? (К примеру как антивирукники сообщают об удалении вирусов или что-то подобное)
(23) Насколько я знаю, vbs не умеет нативно работать с такими оповещениями, например с ShowBalloonTip(), поэтому, если критично, чтобы появлялось именно в правом нижнем углу, придется найти какое-то стороннее приложение (или написать). Вызывать из 1с можно примерно тем же способом, однако для этого придется раскидать приложение, генерирующее окошки оповещения, на все машины, где оно может понадобиться. Имхо, не совсем удобно.
Опять-таки, BalloonTip, имхо, не особо привлекает внимание, в отличие от вылетающего в центре экрана окошка.
(23) Tanya_o, на есть же ПоказатьОповещениеПользователю (), показывает оповещение в правом углу, но оно исчезающее, поэтому его требуется зациклить на какое-нибудь событие.
(12) shiaju, а подскажите, пожалуйста, в каком модуле записывать обработчик, чтобы окна выскакивали в активных сеансах пользователей, для которых записана новая задача? что то я никак не догоняю!!!
Затем в этом же модуле добавляем вызываемую процедуру, у меня она выглядела как-то так:
Процедура ПроверитьНовыеЗаявки() Экспорт
НовКолЗаявок = УчетЗаявок.ЗаявокСегодня();
Если глКолТекЗаявок < НовКолЗаявок Тогда
Попытка
ScrCtrl = новый COMОбъект("MSScriptControl.ScriptControl");
ScrCtrl.Language = "VBscript";
ScrCtrl.ExecuteStatement("msgbox("+"""Вам поступила новая заявка!"""+")");
Исключение
Сообщить("Ошибка вывода уведомления, сообщите, пожалуйста, программисту! Вам поступила новая заявка!");
КонецПопытки;
глКолТекЗаявок = НовКолЗаявок;
КонецЕсли;
Если глКолТекЗаявок > НовКолЗаявок Тогда
глКолТекЗаявок = НовКолЗаявок;
КонецЕсли;
КонецПроцедуры;
Идея понятна? У меня с глКолТекЗаявок выдуман костыль, который мне показывать стыдно, а переделать как-то недосуг было, так что как это организовать, лучше подумайте сами. ;)
Можно засунуть в обработчик автообновления списка задач(появился в последнем релизе) или запустить свой обработчик ожидания при старте системы, который бы проверял задачи с датой появления в рамках последних 5 минут например. Неверно понялзадачу.
Можно цепляться по сом-соединению из внешнего скрипта и проверять новые задачи
Решила добавить дополнительный реквизит в задачи - Чтение, и опрашивать только те задачи которые пользователь не прочитал. Вопрос в том в какой форме документооборота при открытии устанавливать этот флаг???
я бы создал регистр сведений с измерением пользователь и реквизитом новая задача типа булево
при создании задачи писал бы туда истину
и обработка ожидания у пользователя например раз в 5 минут проверяет если истина то ставит ложь и
выводит сообщение/окно или еще чего
Настроил выполнение регламентных задач, в учётные записи, обрабатываемые регламентными задачами вбил ящики пользователей. В итоге юзеру приходит письмо с уведомлением о новой задаче с ЕГО ЖЕ ящика. Что я неправильно делаю?
(18) В разделе "настройка и администрирование", перейдите в "учетные записи", там должна быть так называемая "системная учетная запись" помечена значком, в её настройках должен быть указан существующий электронный адрес, с которого вы хотите чтобы приходили уведомления.... Вероятнее всего под системной уч. записью, вы используете уч. запись одного из пользователей.
Куда вставить обработчик? Делаю оповещение в форме рабочего стола - все работает, хочеться чтоб сообщение выдавалась вне зависимости в каком окне находиться пользователь...
http://www.pokalnetov.ru/?page_id=130 + Openfire, почтовый адрес у сотрудника является и логином в джабере, оповещение прикручивается в модуле рег.задания об оповещении о новых задачах
Что нужно настроить что бы приходили уведомления на почту?
Настройки учетных записей сделал, проверка отправки проходит успешно, но никаких извещений не приходит.
(28) Nadushka74,
Да, в карточках пользователей забил адреса.
Все равно не приходит.
Чем отличается встроенная и легкая почта,какую надо использовать? Нужно только чтобы извещения приходили.
(28) Nadushka74,
Почту указал в информации о пользователе (поле e-mail), Администратором проставил подписку на все события - все равно ничего не приходит.
Что нужно еще прописать, чтобы приходили оповещения о новых задачах?
(30) w3dw3d, релиз в студию? а то тут при обновлении изменения были, для отправки уведомлений почту надо указывать в персональных настройках в настройках уведомлений. Начиная с релиза 1,2.6
(37) w3dw3d, закладка администрирование
сервис - настройка программы - общие параметры - проверяйте галочки. Моим пользователям, у меня эта закладка не доступна, как в стандартной не знаю. так что лучше зайти под админом...
(34) w3dw3d, в настройках программы, с админскими правами. выполнение фоновых задач в меню администрирования - фоновые и регламентные задачи...
(35) bolush, если вы про самый первый вопрос, то задача уже выполнена. пришлось затронуть в двух местах код. но пользователи довольны и это главное. Если нужно, то самое простое решение вполне смогу выложить...
Теперь вопрос в том, что регламентные задания почему-то не запускаются сами, хотя в расписании стоит запуск каждые 10 минут.
Если запускаю вручную - все отрабатывает, извещения приходят
(43) w3dw3d, Дата начала работы регламентного задания стоит?Кнопка "Расписание", вкладка Общие, Дата начала - ставим сегодняшнюю дату, повторять каждые 1 дн, и ОК. Должно быть примерно так "с 16 октября 2012г. каждый день с 8:00:00 каждые 20000 сек"
(47) fifka555,
Не было такого, поставил.
Посмотрю как будет.
Еще тут возник вопрос.
В тексте приводится ссылка
"Ссылка: e1cib/data/Задача.ЗадачаИсполнителя?ref=ba51984be169972c11e234600b3dd9a7"
Возможно ли сделать чтобы по ней сразу переходили в 1С и задачу, с учетом терминального доступа к серверу 1С?
(46) w3dw3d,Тоже столкнулся с такой же проблемой.В клиент серверном варианте необходимо в "Администрировании серверов 1с" в свойствах самой sql базы убрать галочку "Блокировка регламентных заданий включена",тогда все должно полететь.
как вариант это отправка почты, которая будет приходить в аутглюк, где будет настроенно правило для отправителя(от которого шлет 1С) на выполнение. В таком варианте поверх всех окон будет выходить окно аутглюка с уведомлением.
Реализовывал отправку в асю/джабер/почту/смс оповещений о новых задачах. Если окошко с документооборотомсвернуто - через МС агент вызывал фигурку волшебника, которая стучалась в окно пользователю и говорила о задаче, через интеграцию документооборота в торговлю - выводил новую задачу туда, с возможностью управлять ей. Также был реализован обратный ответ через асю. Согласовал/ ознакомился. и т.д.
Ася реализована через компоненту Дюшелова. Сдесь на инфостарте она есть. (как подключить тоже написано)
Сразу оговорюсь что у меня неполучилось заставить ее нормально работать на стороне сервера (через регламентные задания - постоянно отваливалась, могла незайти и прочее) Поэтому реализовано на отдельном пользовательском сеансе, который стартовал автоматически.
В контактной информации пользователей забит номер ICQ.
При создании новой задачи - она отсылается через компоненту пользователю в формате: номер, тип бизнеспроцесса текст задачи. (Если во вложении файл - добавляется ссылка на внутренний фтп)
где номер является не номер задачи, а 4хзначный порядковый номер. который задается передотправкой.
Одновременно в РС пишется этот номер, ссылка на задачу и номер аси.
На клиентском приложении есть обработчик события:
Процедура ВнешнееСобытие(Источник, Событие, Данные)
Если Источник = "DushelovICQ" Тогда
Если Событие = "Сообщение" Тогда
здесь в данных, в текстовом виде содержится номер от кого пришло и текст сообщения.
Соответственно парсится сообщение.
Формат отправки у нас выглядит так:"<номер задачи> <согласовал/утвердил/несогласовал и тд> - весь остальной текст является коментарием"
Смотрится РС, получается ссылка на задачу и проходит утверждение/согласование.
Вся байда с другим номером нужна потому, что пользователю может прийти сразу несколько задач. И нужно идентифицировать которое он согласовывает, а стандартный номер очень громоздкий.
закрытые согласованные задачи убираются из рС, освобождая номер.