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

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 Платные (руб)

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

6000 руб.

16.01.2015    62128    43    59    

81

[Расширения] Динамическое управление видимостью и доступностью элементов форм (УФ) (8.3.6+)

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

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

5000 руб.

14.01.2016    54718    16    21    

42

Управление дашбордами

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

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

2400 руб.

29.06.2020    16916    22    4    

36

Новогоднее оформление для 1С

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

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

27.12.2023    11206    762    elcoan    45    

106

Конструктор HTML, CSS и javascript

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

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

2 стартмани

10.04.2023    9913    153    acces969    31    

119

Модель состояния для MVC

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

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    3958    kalyaka    4    

29

Табло очереди заказов на экран телевизора

WEB-интеграция Работа с интерфейсом Платформа 1С v8.3 1С:Розница 2 Платные (руб)

Связка из веб-приложения и расширения для 1С: Розница 2.3.

3600 руб.

29.04.2022    12312    1    5    

10

Условное оформление элементов форм в пользовательском режиме 1С (управление видимостью и доступностью элементов форм)

Работа с интерфейсом Платформа 1С v8.3 Платные (руб)

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

6000 руб.

18.01.2022    8963    1    2    

6
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. МимохожийОднако 141 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 97 15.05.22 10:35 Сейчас в теме
(2) ошибка связана с уровнем совместимости, ограниченным в настройках. повысьте уровень до 8.3.19
levante90; +1 Ответить
Оставьте свое сообщение