Ссылки в оповещениях на почту

1. hoyo 24.06.19 11:24 Сейчас в теме
Доброго всем дня.
В 1С УХ есть возможность настроить уведомления на почту. И там в уведомлении приходит ссылка на документ, который согласуется. Проблема в том, что ссылка эта выглядит как "e1cib/data/..." и естественно попытки пользователей её открыть ни к чему не приводят. В 1С Документооборот можно было опубликовать базу на веб-сервере и указать в настройках оповещений этот веб-сервер, тогда ссылки начинали приходить в формате "http://1cweb.***.ru:8080/e1cib/data/" и у пользователя, который на неё нажимал, сразу открывался браузер с веб-версией 1С и нужным документом. Как тоже самое сделать в УХ? Я опубликовал его, прописал в "Общие настройки" - "Публикация информационной базы" - "Адрес в интернете" ссылку на веб-версию. И нифига, всё равно в оповещениях ссылки вида "e1cib/data/...", без веб-сервера.
collider; +1 Ответить
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. dandykry 10 24.06.19 11:51 Сейчас в теме
(1) В ДО есть общие модули формирования таких ссылок. В Ух вроде не встречал
К тому же нужно хотя бы внешнюю ссылку отправлять

http://prntscr.com/o5vqa7

Чтобы такая ссылка открывалась, нужно реестр виндовс править
3. hoyo 02.07.19 16:45 Сейчас в теме
Нашёл место в ДО, где подставлялся адрес веб-сервера в ссылку. Сделал в УХ так же. В общем модуле МодульУправленияОповещениямиУХ в процедуре ПодготовитьТекстОповещенияПоШаблону заменил:
ЗначениеПараметра = "<А href='" + НавигационнаяСсылка + "'>" + Строка(ЗначениеВСтруктуре) + "</a>";


на:

АдресПубликацииНаВебСервере = Константы.АдресПубликацииИнформационнойБазыВИнтернете.Получить();
				Если ЗначениеЗаполнено(АдресПубликацииНаВебСервере) Тогда
					Если Прав(АдресПубликацииНаВебСервере, 2) = "/#" Или  Прав(АдресПубликацииНаВебСервере, 1) = "#" Тогда
					// Адрес уже корректный
					ИначеЕсли Прав(АдресПубликацииНаВебСервере, 1) = "/" Тогда
						АдресПубликацииНаВебСервере = АдресПубликацииНаВебСервере + "#";
					Иначе
						АдресПубликацииНаВебСервере = АдресПубликацииНаВебСервере + "/#";
					КонецЕсли;
		                                                         
					ЗначениеПараметра = "<А href='" + АдресПубликацииНаВебСервере + НавигационнаяСсылка + "'>" + Строка(ЗначениеВСтруктуре) + "</a>";
				Иначе
					//До изменений была только эта строка
					ЗначениеПараметра = "<А href='" + НавигационнаяСсылка + "'>" + Строка(ЗначениеВСтруктуре) + "</a>";
				КонецЕсли;
Показать


Внимание, в коде где написано A href, там А - русская, при копировании заменяйте на английскую. Просто иначе инфостарт принимал то, что внутри, за ссылку и отображал криво.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот