1
0
mirror of https://github.com/BlizD/Tasks.git synced 2025-03-19 21:07:53 +02:00

#263 Добавлена возможность вывести навигационную ссылку в шаблон

This commit is contained in:
Дубинский Сергей 2020-11-08 11:09:11 +03:00
parent 555a495b1b
commit d9951e8fe1
3 changed files with 43 additions and 0 deletions

View File

@ -425,6 +425,11 @@
СтрокаТЗ.Имя = "узИзменения_по_комментариям";
СтрокаТЗ.Текст = НСтр("ru = 'Список изменений по комментариям'; en = 'List of changes by comments'");
СтрокаТЗ = ДопПараметры.Добавить();
СтрокаТЗ.Код = "узНавигационнаяСсылка";
СтрокаТЗ.Имя = "узНавигационнаяСсылка";
СтрокаТЗ.Текст = НСтр("ru = 'Внешняя навигационная ссылка'; en = 'External ref'");
Возврат ДопПараметры;
КонецФункции

View File

@ -1553,6 +1553,13 @@
ДопПараметрыИзЗадачи.Вставить("узТемаПисьмаСобытие", ДопПараметры.ТемаПисьмаСобытие);
ДопПараметрыИзЗадачи.Вставить("узНомерЗадачи", ДопПараметры.НомерЗадачи);
ДопПараметрыИзЗадачи.Вставить("узИзмененияПоКомментариям", ТекстИзмененнийПоКомментариям);
ВнешняяНавигационнаяСсылка = узОбщийМодульСервер.ПолучитьВнешнююНавигационнуюСсылкуИБ();
Если ВнешняяНавигационнаяСсылка = "" Тогда
СтрокаСсылки = ПолучитьНавигационнуюСсылку(Ссылка);
Иначе
СтрокаСсылки = ВнешняяНавигационнаяСсылка+"#"+ПолучитьНавигационнуюСсылку(Ссылка);
КонецЕсли;
ДопПараметрыИзЗадачи.Вставить("узНавигационнаяСсылка", СтрокаСсылки);
ДополнительныеПараметры = Новый Структура;
ДополнительныеПараметры.Вставить("ПараметрыСообщения", ДопПараметрыИзЗадачи);

View File

@ -1309,3 +1309,34 @@
ОтправитьУведомлениеПередЗаписьюВходящегоПисьма(Источник);
КонецПроцедуры
// {{ SLD - получение внешней навигационной ссылки
// Возвращает левую часть навигационной ссылки
// "e1c://server/ИмяСеревера/ИмяБазы
// Имя сервера и имя базы определяется по строке подключения
Функция ПолучитьВнешнююНавигационнуюСсылкуИБ() Экспорт
Попытка
СтрПодключения = СтрокаСоединенияИнформационнойБазы();
СтруктураПодключения = СтроковыеФункцииКлиентСервер.ПолучитьПараметрыИзСтроки(СтрПодключения);
Если СтруктураПодключения.Свойство("FILE") Тогда
Возврат ""; // для файловой базы ничего не возвращаем
КонецЕсли;
ИмяБазы = СтруктураПодключения.Ref;
// на случай, если это кластерное подключение, формат Srvr="serv1;serv2";Ref="basename";
МассивСерверов = СтрРазделить(СтруктураПодключения.Srvr, ";", Ложь);
ИмяСервера = МассивСерверов[0]; // берем первый
Если ЗначениеЗаполнено(ИмяСервера) И ЗначениеЗаполнено(ИмяБазы) Тогда
Возврат "e1c://server/"+ИмяСервера+"/"+ИмяБазы;
Иначе
Возврат ""; // чего-то не хватает в строке подключения...
КонецЕсли;
Исключение
Возврат "";
КонецПопытки;
КонецФункции
// }} SLD - получение внешней навигационной ссылки