Не работает обработка навигационной ссылки

Sysadminium

База знаний системного администратора

Ошибка 1С. Неверно задана навигационная ссылка

Из 1С можно переходить по ссылкам. Но иногда может возникнуть следующая ошибка: “Не удалось пройти по ссылке https://… по причине: Неверно задана навигационная ссылка”.

Об ошибке

Ранее я уже писал про ошибки в 1С, например про такую: “Расширение мешает обновлению 1С“. А теперь разберём другую ошибку в 1С.

Например, вы пытаетесь открыть портал ИТС из базы 1С:

И вместо открытия странички в браузере, получаете следующую ошибку:

Чтобы её исправить, вам нужно всего лишь установить в системе браузер, который будет использоваться по умолчанию.

Вообще навигационная ссылка, это не всегда ссылка для открытия web страничек в браузере. Разработчики могут их использовать, как ссылки на объекты в базе 1С. А пользователи ими могут пользоваться как показано в этом видео.

Установка браузера по умолчанию

Windows 10 и Windows Server 2019

В Windows 10 и Windows Server 2019 установка браузера по умолчанию делается следующим способом. В меню “Пуск” открываем “Параметры“:

Затем, в открывшемся окне выбираем “Приложения“:

После чего, нажимаем кнопку “Приложения по умолчанию“:

Ну и наконец-то делаем то, что и хотели. А именно выбираем браузер, который будет использоваться по умолчанию в нашей системе и для нашего пользователя. Да, если это терминальный сервер и пользователей много, это нужно проделать под каждым пользователем:

В серверной системе Windows Server 2019 браузер по умолчанию устанавливается аналогичным способом.

Windows 7 и Windows Server 2012

На Windows Server 2012 r2 и Windows 7 настройка браузера по умолчанию выполняется из Панели управления. Там выбираем “Программы по умолчанию“:

Дальше, в открывшемся окне, нажимаем ссылку “Задание программ по умолчанию“:

И следующим шагом в списке программ находим ваш браузер, и нажимаем кнопку “Использовать эту программу по умолчанию“:

Источник

Заметки из Зазеркалья

Данная статья является анонсом новой функциональности.
Не рекомендуется использовать содержание данной статьи для освоения новой функциональности.
Полное описание новой функциональности будет приведено в документации к соответствующей версии.
Полный список изменений в новой версии приводится в файле v8Update.htm.

Читайте также:  Как настроить снайперский прицел вот

Планируется в версии 8.3.19 Пробовать

Как известно, практически на любой объект информационной базы можно получить навигационную ссылку, которую, например, можно переслать коллеге, чтобы однозначно сослаться на документ, отчёт и т.д. В версии платформы 8.3.19 мы расширим функциональность навигационных ссылок – в них можно будет передавать дополнительные параметры.

С помощью этой функциональности можно будет не просто передать ссылку на отчёт, а передать ссылку на отчёт с конкретными параметрами (например, с заранее указанным периодом). Или передать ссылку на форму с динамическим списком с выбранной текущей строкой. Или передать ссылку на команду с параметрами.

Изменится диалог получения навигационной ссылки (который открывается по системной кнопке «Получить ссылку» или по сочетанию клавиш Ctrl + F11). Теперь его внешний вид зависит от типа объекта, на котором его вызвали. Вот как он выглядит для формы с динамическим списком:

А вот как – для отчёта:

При получении «расширенной» ссылки можно задать ее имя:

Под этим именем ссылка будет сохранена в специальном хранилище навигационных ссылок, и если пользователь, например, получит эту ссылку в сообщении Системы взаимодействия – она будет отображена как гиперссылка с текстом этого «дружественного» имени. Это же имя будет использовано при добавлении ссылки в Избранное.


Платформа поддерживает автоматическое формирование и обработку навигационных ссылок с дополнительными параметрами для следующих объектов:

Отчеты. Поддерживаются варианты отчетов и настройки.

Формы с динамическими списками. Поддерживаются текущие настройки и текущая строка динамического списка.

У форм появилось два новых обработчика – ОбработкаПолученияСпискаНавигационныхСсылок и ОбработкаПолученияНавигационнойСсылки.

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

СписокНавигационыхСсылок.Добавить(«СегодняшниеПисьма», «Сегодняшние письма»);

СписокНавигационыхСсылок.Добавить(«ПисьмаОтКлиентов», «Письма от клиентов»);

Результат работы:

В обработчике ОбработкаПолученияНавигационнойСсылки можно сформировать значение возвращаемой навигационной ссылки:

Процедура ОбработкаПолученияНавигационнойСсылки(Ключ, Представление,

Источник

[ Вопрос дня ] Почему при переходе по ссылке из списка ИБ к конкретному объекту ИБ возникает ошибка “Неверный тип навигационной ссылки”?

Доброго дня, коллеги!

В рамках темы “Программы запуска платформы «1С:Предприятие 8». Локальный кэш метаданных” курса Администрирование 1C: развертывание, автоматизация, управление пользователями и поддержка систем на 1С:Предприятие 8 слушатели изучают механизм навигационных ссылок в 1С. Есть некоторые нюансы в работе с этим механизмом. Разбираем!

Вопрос

Из видеокурса понял, что по этой ссылке можно перейти сразу из списка ИБ к конкретному объекту в конкретной ИБ, но в итоге выдается ошибка:

Ответ

Добрый день! Обратите внимание на кнопку “Внешняя” в окне “Получение ссылки”. Она определяет формат ссылки. Есть два варианта:

    Внутренняя. Ссылка начинается с “e1cib”, например:

Это ссылка для использования в рамках текущей ИБ, поскольку в ней не указан путь к базе, только объект и ссылка. То есть нужно сначала войти в базу, затем в ней при помощи пункта главного меню Перейти по ссылке (Shift+F11) можно выполнить переход.
Внешняя. Ссылка начинается с “e1c”, например:

То есть ссылка содержит дополнительно путь к базе. Вот такую ссылку можно использовать в списке ИБ. При переходе по такой ссылке откроется сначала база (по логину/паролю), затем в ней будет выполнен переход к конкретному объекту.

Источник

Как ПолучитьНавигационнуюСсылку() в Управляемом приложении и на Web-клиенте

Вариант 1: ОкноКлиентскогоПриложения (ClientApplicationWindow)
ПолучитьНавигационнуюСсылку (GetURL)
Синтаксис:
Код 1C v 8.х
Возвращаемое значение:
Тип: Строка.
Описание: Получает навигационную ссылку в формате 1С:Предприятия на текущую форму.
Доступность: Тонкий клиент, веб-клиент, толстый клиент, внешнее соединение.

Вариант 2: Глобальный контекст (Global context)
ПолучитьНавигационнуюСсылку (GetURL)
Синтаксис:
Код 1C v 8.х
Параметры: (обязательный)
Тип: Ссылка на объект информационной базы. Ссылка на объект. (необязательный)
Тип: Строка. Имя реквизита объекта или ресурса Регистра сведений, для которого нужно выяснить ссылку. Если это реквизит табличной части объекта, то параметр указывается как . , то есть с разделителем «.» (точка).
(необязательный)
Тип: Число. Индекс строки в табличной части, в том случае если объект является реквизитом табличной части. Первая строка имеет индекс равный 0.
Возвращаемое значение: Тип: Строка.
Описание: Получает текст ссылки на объект информационной базы или его реквизит в формате 1С:Предприятия.
В первом случае принимает в качестве параметра ссылку на объект (это может быть как ссылка, так и ключ записи регистра сведений). Объектом могут быть: справочник, документ, ключ записи регистра сведений, бизнес процессы, задачи.
Во втором, в качестве параметров принимает ключ объекта (это может быть как ссылка, так и ключ записи регистра сведений) и имя реквизита (ресурса). Если нужно получить ссылку на реквизит табличной части, перед именем реквизита необходимо добавить имя табличной части и точку «.».
Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Примечание: Выполняет обращение к серверу только при получении ссылки на реквизит. При получении ссылки на объект информационной базы запрос на сервер не выполняется.
Код 1C v 8.2 УП

Получить навигационную ссылку для константы?
Вопрос: В конфигурации есть константа с типом ХранилищеЗначения для хранения изображения. Пытаюсь реализовать Загрузку и Выгрузку изображения: СсылкаНаКартинку = ПолучитьНавигационнуюСсылку(Константы.Логотип.Получить());
где СсылкаНаКартинку — реквизит формы с типом строка, а на форме есть элемент, у которого путь к данным = СсылкаНаКартинку
Возможно ли реализовать отображение картинки таким образом, или стоит хранить картинку где-либо еще?
Ответ:
Навигационную ссылку на константу получить не получится(
Получится только так:
Код 1C v 8.2 УП
т.е. в процедуру ПриСозданииНаСервере поместить картинку во временное хранилище и она там сидит пока закроете форму

Есть форма списка справочника «Сотрудники».
В нем есть реквизит «Фото», который имеет тип «СправочникСсылка.ХранилищеДополнительнойИнформации» (справочник «ХранилищеДополнительнойИнформации» по структуре полностью совпадает анологичным справочником в 1С 8.1).
В реквизиты формы списка добавил «АдресКартинки» тип «строка», в элементы добавил поле «Картинка» (вид — поле картинки) с путем к данным «АдресКартинки». Как вывести Картинку?

Ответ:
Код 1C v 8.2 УП
«Хранилище» — это «стандартный» реквизит справочника «ХранилищеДополнительнойИнформации».

Имеется регистр сведений с именем «Изображения» следующей структуры:
Измерения:
— ИдИзображения (тип — уникальный идентификатор);
Реквизиты:
— Изображение (тип — ХранилищеЗначений)
Реализовать возможность записи изображений в него, проблемы не составило. А застрял на получении навигационной ссылки на нужную запись регистра?
Ответ — Для регистра сведений первым параметром должен быть ключ записи, а не ссылка на объект.
Т.е. если есть регистр сведений ХранилищеКартинок с изменением Ном (тип справочник Ном) и ресурс Картинка (тип хранилище значений) — код для получения навигационной ссылки должен быть примерно таким:
Код 1C v 8.2 УП

Источник

1С 8.3 Обработка перехода по навигационной ссылке — Программист 1С Минск. Автоматизация бизнеса.

1С 8.3 Обработка перехода по навигационной ссылке

Процедура Application_Launch ( ПараметрN1 , ПараметрN2 ) // с 8.3.18

// Intent (механизм намерений. Схема «myappfunc://» должна быть указана как поддерживаемая
// для ОС Android в создаваемом мобильном приложении
Старт = Новый ЗапускПриложенияМобильногоУстройства ( «android.intent.action.VIEW» , «myappfunc://testPath?key1=» + ПараметрN1 ); //Число
Старт . ДополнительныеДанные . Добавить ( «key2» , ПараметрN2 ); // Строка
Если Старт . ПоддерживаетсяЗапуск () Тогда
Старт . Запустить (Ложь);
КонецЕсли;

Процедура ОбработкаПереходаПоНавигационнойСсылке ( ДанныеПереходаПоНавСсылке , СтандартнаяОбработка ) // с 8.3.18

// Глубинная ссылка может быть:
// 1) С использованием собственной схемы (например, myfuncapp://comand?params)
// 2) С использованием сайта схемы (или http(s)://)
РаздС = Символы . ПС ;
Ссылка_Запуск = ДанныеПереходаПоНавСсылке . БазоваяНавигационнаяСсылка ;
Ссылка_Путь = ДанныеПереходаПоНавСсылке . ОтносительнаяНавигационнаяСсылка ;
ПараметрN1 = ДанныеПереходаПоНавСсылке . ПараметрыНавигационнойСсылки . Получить ( «key1» ); // Число: в URL глубинной ссылки

Доп_Данные = ДанныеПереходаПоНавСсылке . ДополнительныеДанныеПереходаВМобильноеПриложение ;
ПараметрN2 = Доп_Данные . Получить ( «key2» ); // Строка: описание вызова намерения (длина ограничена используемой ОС)

Текст_сообщения = «Старт запуска по ссылке:» + РаздС + » Cсылка: » + Ссылка_Запуск + РаздС +
«Относительный путь: » + Ссылка_Путь + РаздС + «Параметр N1: » + ПараметрN1 + РаздС + «Параметр N2: » + ПараметрN2 ;

Сообщить ( Текст_сообщения );
СтандартнаяОбработка = Ложь;

Источник

Оцените статью