Каталог решений - Навигационные ссылки с параметрами

Навигационные ссылки с параметрами

Навигационные ссылки с параметрами

В наличии

Публикация может быть полезна, если нужно создать навигационную ссылку для запуска обработки или вызова команды с дополнительными параметрами.

Категория:

Описание

Поиском на форуме находятся только темы, где пишется, что либо параметры навигационными ссылками не передаются, либо что эта возможность появилась в релизе 8.3.19.1150. У меня недавно встала похожая задача, и после некоторых исследований могу выложить примитивный пример использования.

Пример создания ссылки

//здесь просто из формы документа создаётся другой документ, в табличную часть Сообщения нового документа добавляется строка и в поле Ссылочка вставляется строка ссылки на обработку ЗалитьДанныевДокОбработка с параметром в виде структуры

Если ЗначениеЗаполнено(Объект.ДокументКуда) Тогда
	
	ДокОб=Объект.ДокументКуда.ПолучитьОбъект();
	
Иначе
	
	ДокОб=Документы.ДокументКудаЗаливаем.СоздатьДокумент();
	
	ДокОб.Дата=ТекущаяДата();
	
	ДокОб.Записать();
	
	Объект.ДокументКуда=ДокОб.Ссылка;
	
КонецЕсли;

НовСтр=ДокОб.Сообщения.Добавить();

ПараметрыСсылки=Новый Структура ("Документ,Контрагент,ВидОтчетности",Объект.Ссылка,Объект.Контрагент,Объект.ВидОтчетности);



//пример, собственно, вот

Ссылочка= ПолучитьНавигационнуюСсылку(Метаданные.Обработки.ЗалитьДанныевДокОбработка,Строка(Объект.Контрагент)+" " +Строка(Объект.ВидОтчетности),ПараметрыСсылки);

НовСтр.Ссылочка=Ссылочка;

ДокОб.Записать();

Ссылка имеет такой вид e1cib/app/Обработка.ЗалитьДанныевДокОбработка?extdata=a05a2bd4-7516-49f1-887c-e18d29ae8924 .

Далее в созданном документе по ссылке в строке табличной части можно перейти по навигационной ссылке в поле "Ссылочка".

 

&НаКлиенте
Процедура ПерейтиПоСсылке(Команда)
	
	ТекДанные=Элементы.Сообщения.ТекущиеДанные;
	
	ТекСтрока=Элементы.Сообщения.ТекущаяСтрока;
	
	Строка=Объект.Сообщения.Получить(ТекСтрока);
	
	ПерейтиПоНавигационнойСсылке(Строка.Ссылочка);
	
КонецПроцедуры

В результате открывается обработка ЗалитьДанныевДокОбработка, где в событии ПриСозданииНаСервере видно параметры, описанные в структуре.

Параметры ссылки сохраняются, как я понимаю,  в специальном хранилище внешних данных ссылок. Лично мне как-то не по себе, что по любой команде ПолучитьНавигационнуюСсылку в базу добавляются данные, которые потом нельзя посмотреть.

Это рабочий код на 1С:Предприятие 8.3 (8.3.19.1351).

has been added to your cart:
Оформление заказа