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

18.02.22

Разработка - Работа с интерфейсом

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

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

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

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

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

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

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



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

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

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

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

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

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

 

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

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

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

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

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

См. также

Работа с интерфейсом Рабочее место Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Богатый редактор картинок 1С предназначен для обработки изображений в режиме «Предприятие», с возможностью РИСОВАТЬ на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    62986    44    59    

82

Работа с интерфейсом Программист Платформа 1С v8.3 Конфигурации 1cv8 1С:ERP Управление предприятием 2 Платные (руб)

Обработка предназначена для создания и управления дашбордами.

2400 руб.

29.06.2020    18855    26    6    

41

Работа с интерфейсом Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Редактор графов в 1С - внешний отчет, который формирует графы на основе таблицы значений, используя рисунки табличного документа. Есть возможность добавления, редактирования объектов графа и выгрузки результата в таблицу значений.

1500 руб.

06.10.2020    10228    7    7    

10

Работа с интерфейсом Программист Стажер Платформа 1С v8.3 Бесплатно (free)

Это инструкция по дизайну форм в среде 1С. Гайд охватывает рекомендации и стандарты для оптимизации пользовательского интерфейса. В гайде содержатся указания по использованию элементов интерфейса, включая как основные, так и продвинутые аспекты. Предоставляются также примеры и антипримеры для наглядного понимания принципов дизайна

20.08.2024    16816    mrXoxot    43    

121

Работа с интерфейсом Программист Платформа 1С v8.3 Бесплатно (free)

Пример простого и симпатичного прогресс-бара в динамическом списке, без картинок, используя редактирование запроса.

27.05.2024    7361    smielka    37    

100

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    14790    916    elcoan    47    

117

Инструментарий разработчика Работа с интерфейсом Программист Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Подходит для создания web-страниц для замены управляемых форм 1С, красивых отчетов, интерфейса мобильного приложения на платформе 1С и для простых страниц веб-сайтов.

2 стартмани

10.04.2023    11915    162    acces969    31    

124
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. МимохожийОднако 142 20.02.22 10:10 Сейчас в теме
Было бы неплохо добавить пример или рассказ, где это применяешь в практической работе.
4. GPL 3 22.02.22 17:14 Сейчас в теме
(1) Был ко мне вопрос. в табличной части документа хранилась таблица с переменным количеством колонок. И нужно было из других объектов базы иметь возможность читать и изменять ячейки этой таблицы (набор <документ, справочник 1, справочник 2 >) .
При этом добавлять реквизиты для хранения этого очень не хотелось. Таким образом с помощью ссылок в текстовой части можно сохранить ссылки для нужного набора ячеек. По ссылке запускается обработка, которая в табличной части документа (параметр 1) находит строку с нужными значениями полей (параметр 2, параметр 3). В обработке можно отредактировать нужные данные и сохранить.
У меня возникло сомнение, можно ли сделать такие ссылки в 1С. Поиск показал, что такая возможность появилась, но примеров не было.
На пустой базе попробовал реализовать, убедился, что можно и выложил результат, чтобы кому-то облегчить жизнь.
2. levante90 22.02.22 11:15 Сейчас в теме
У меня вот такая ошибка при получении навигационной ссылки с параметрами.
Может подсказать кто-нибудь?

{mngbase/GetURLListDlg.lf(74)}: Row.URL = FormHelperExtObj.GetURLByKey(Row.Key, URLPresentation);
{mngbase/GetURLListDlg.lf(200)}: UpdateURL();
по причине:
Ошибка получения навигационной ссылки. Не поддерживается параметр extdata.
3. GPL 3 22.02.22 16:52 Сейчас в теме
(2) приведите код, пожалуйста. навскидку я бы предположил, что релиз старый и не ещё не поддерживает эту возможность
5. andryandry 100 15.05.22 10:35 Сейчас в теме
(2) ошибка связана с уровнем совместимости, ограниченным в настройках. повысьте уровень до 8.3.19
levante90; +1 Ответить
Оставьте свое сообщение