132 документа
← К списку

Приложение 2. Форматы навигационных ссылок

страница

Приложение 2. Форматы навигационных ссылок

2.1. Описание формата навигационной ссылки

2.1.1. Общая информация и виды ссылок

В данном приложении описаны форматы навигационных ссылок, которые используются в «1С:Предприятии». Навигационные ссылки бывают внешние и внутренние. Внешние ссылки предназначены для применения вне «1С:Предприятия», внутренние ссылки предназначены для внутреннего использования (в том числе для помещения в список избранного и истории работы).

Навигационная ссылка состоит из нескольких частей:

● Адрес хоста информационной базы ‑ описывает расположение информационной базы относительно клиентского приложения. Для получения этой части ссылки предназначен метод ПолучитьНавигационнуюСсылкуИнформационнойБазы().

● Внутренняя ссылка ‑ описывает расположение запрашиваемой информации внутри информационной базы.

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

Внутренние ссылки бывают нескольких видов:

● объект информационной базы,

● реквизит объекта информационной базы,

● реквизит табличной части объекта информационной базы,

● реквизит записи регистра информационной базы,

● запись регистра информационной базы,

● отчет,

● обработка,

● раздел,

● команда раздела,

● временное хранилище;

● обсуждение системы взаимодействия.

Внешняя ссылка образуется добавлением к адресу хоста внутренней ссылки. Если по ссылке открывается форма или осуществляется навигация в главном окне, то внешняя ссылка образуется по следующему правилу:

Копировать в буфер обмена

<адрес хоста ИБ>#<внутренняя ссылка>?<параметры ссылки>

Такими ссылками являются ссылки на объект информационной базы, отчет, обработку, раздел, команду раздела.

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

Копировать в буфер обмена

<адрес хоста ИБ>/<внутренняя ссылка>?<параметры ссылки>

Такими ссылками являются ссылки на реквизит объекта информационной базы или записи регистра сведений или временное хранилище.

2.1.2. Параметры навигационной ссылки

Параметры навигационной ссылки указываются в навигационной ссылке после символа «?», который отделяет саму ссылку от списка параметров. Если навигационная ссылка принимает несколько параметров, то параметры между собой разделяются символом «&». Собственно параметр состоит из имени параметра и значения параметра, которые разделены символом «=». Если в качестве значения параметра выступает массив, то значения элементов массива разделяются символами «,». Если в качестве значения параметры выступает ссылка на объект какого-либо типа, то значение ссылки должно предваряться именем типа. При этом имя типа отделяется от значения ссылки символом «:», например: ДокументСсылка.РасходнаяНакладная:``a9``b000055``d49``b45``e11``db8``c4``c9``d5``c4223.

Таким образом, навигационная ссылка вида: e1``cib/``data/Справочник.Товары?``ref=949``b0050569``f397311``e8``bb08``fb974``c0``a представляет из себя:

● Внутреннюю навигационную ссылку, т. к. в ней не указан адрес информационной базы.

● Это ссылка на элемент справочника Товары.

● У ссылки есть параметр, который имеет имя ref и значение 949``b``0050569``f``397311``e``8``bb``08``fb``974``c``0``a.

Если в строке указано несколько одноименных параметров, то используется только первый параметр (считая слева-направо). Неизвестные параметры в навигационных ссылках игнорируются.

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

Навигационная ссылка позволяет передать список параметров в открываемый объект. В этом случае необходимо использовать параметр навигационной ссылки extdata. В качестве значения этого параметра выступает идентификатор значения в хранилище внешних данных навигационных ссылок. То, каким образом будет интерпретироваться значение, полученное из хранилища внешних данных навигационных ссылок, зависит от обхекта, который открывается с помощью навигационной ссылки.

2.1.3. Формат адреса хоста

В зависимости от вида информационной базы строка, описывающая адрес хоста, может иметь разный вид.

Файловый вариант информационной базы

Если путь к файлу базы данных задан в формате UNC, то адрес хоста выглядит следующим образом:

Копировать в буфер обмена

e1c:/file/<UNC путь>

Пример:

Копировать в буфер обмена

// Путь к файловой информационной базе \dbsrvr\bases\mybase // Адрес хоста e1c:/file/dbsrvr/bases/mybase

Если путь к файлу указан с указанием буквы диска, то адрес хоста выглядит следующим образом:

Копировать в буфер обмена

e1c:/filev/<Буква диска>/<Путь к базе>

Пример:

Копировать в буфер обмена

// Путь к файловой информационной базе s:\bases\mybase // Адрес хоста e1c:/filev/s/bases/mybase

Клиент-серверный вариант информационной базы

Для клиент-серверного варианта информационной базы ссылка выглядит следующим образом:

Копировать в буфер обмена

e1c://server/<имя сервера>/<имя информационной базы>

Пример:

Копировать в буфер обмена

// Строка соединения с информационной базой srvsr="srv1C";ref="mybase" // Адрес хоста e1c://server/srv1C/mybase

При работе через веб-сервер (тонкий клиент или веб-клиент)

Для варианта информационной базы, работа с которой идет через веб-сервер, ссылка выглядит следующим образом:

Копировать в буфер обмена

httр://<адрес хоста>/<путь к информационной базе> httрs://<адрес хоста>/<путь к информационной базе>

Пример:

Копировать в буфер обмена

// Строка соединения с информационной базой http://localhost/mybase // Адрес хоста http://localhost/mybase

Значения разделителей

Вне зависимости от вида информационной базы, в адресе хоста могут располагаться значения разделителей. Значения разделителей добавляются в том случае, если ссылка получается в разделенной информационной базе. Для указания разделителей служит параметр ссылки Z, который указывается после символа «?»:

Копировать в буфер обмена

<адрес хоста>/<имя базы>[?Z=<значения разделителей>]

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

Смотри также:

● Указание разделителей (см. здесь).

● Указание разделителей в файле default.``vrd (см. здесь).

2.2. Внутренние ссылки

2.2.1. Общая информация

Общий формат внутренней ссылки выглядит следующим образом:

Копировать в буфер обмена

<принадлежность>/<тип>/<путь>[?<параметр>=<значение параметра>[&<параметр>=<значение параметра>]]

Принадлежность внутренней ссылки описывает, где расположен объект, идентифицируемый данной навигационной ссылкой:

● e``1``cib ‑ информация хранится в информационной базе.

● e``1``ccs ‑ информация хранится на сервере системы взаимодействия.

Более подробное описание форматов ссылок, в зависимости от типа, приведено далее.

2.2.2. Ссылки на объекты информационной базы

2.2.2.1. Ссылка на объект информационной базы

Формат:

Копировать в буфер обмена

e1cib/data/<путь к метаданным>?ref=<идентификатор ссылки>

Где:

● путь к метаданным ‑ тип объекта, на который указывает ссылка, например Документ.РасходТовара;

● идентификатор ссылки ‑ уникальный идентификатор объекта в информационной базе.

2.2.2.2. Ссылка на реквизит объекта информационной базы

Формат:

Копировать в буфер обмена

e1cib/data/<путь к метаданным>.<имя реквизита>?ref=<идентификатор ссылки>

Где:

● путь к метаданным ‑ тип объекта, на который указывает ссылка, например Документ.РасходТовара;

● имя реквизита ‑ имя реквизита объекта информационной базы;

● идентификатор ссылки ‑ уникальный идентификатор объекта в информационной базе.

2.2.2.3. Ссылка на реквизит табличной части объекта информационной базы

Формат:

Копировать в буфер обмена

e1cib/data/<путь к метаданным>.<имя табличной части>.<имя реквизита>?ref=<идентификатор ссылки>&index=<индекс строки табличной части>

Где:

● путь к метаданным ‑ тип объекта, на который указывает ссылка, например Документ.РасходТовара;

● имя табличной части ‑ имя табличной части объекта метаданных, например Товары;

● имя реквизита ‑ имя реквизита табличной части объекта информационной базы;

● идентификатор ссылки ‑ уникальный идентификатор объекта в информационной базе;

● индекс строки табличной части ‑ индекс строки табличной части.

2.2.2.4. Ссылка на запись регистра информационной базы

Формат:

Копировать в буфер обмена

e1cib/data/<путь к метаданным>?<имя ключевого поля>=<значение>[&<имя ключевого поля>=<значение>]

Где:

● путь к метаданным ‑ тип объекта, на который указывает ссылка, например РегистрСведений.ОстаткиТоваров;

● имя ключевого поля ‑ имя измерения регистра (для периодических регистров добавляется измерение Период);

● значение ‑ внутреннее представление значения отбора. Значение отбора кодируется в соответствии с разделом 2.2.``URL``Character``Encoding``Issues стандарта RFC 1738 (https://datatracker.ietf.org/doc/html/rfc1738) ‑ с помощью символа «%» и двух шестнадцатеричных символов.

2.2.2.5. Ссылка на реквизит записи регистра информационной базы

Формат:

Копировать в буфер обмена

e1cib/data/<путь к метаданным>.<имя реквизита>?<имя ключевого поля>=<значение>[&<имя ключевого поля>=<значение>]

Где:

● путь к метаданным ‑ тип объекта, на который указывает ссылка, например РегистрСведений.ОстаткиТоваров;

● имя реквизита ‑ имя реквизита записи;

● имя ключевого поля ‑ имя измерения регистра (для периодических регистров добавляется измерение Период);

● значение ‑ внутреннее представление значения отбора. Значение отбора кодируется в соответствии с разделом 2.2.``URL``Character``Encoding``Issues стандарта RFC 1738 (https://datatracker.ietf.org/doc/html/rfc1738) ‑ с помощью символа «%» и двух шестнадцатеричных символов.

2.2.2.6. Ссылка на отчет

Формат:

Копировать в буфер обмена

e1cib/app/<путь к метаданным>?vrn=<имя варианта>&stngs=<ключ хранилища>

Где:

● путь к метаданным ‑ тип объекта, на который указывает ссылка, например Отчет.ОстаткиТоваров.

● vrn ‑ позволяет указать ключ варианта отчета, который надо использовать при открытии отчета. Значение параметра будет установлено в качестве значения параметра КлючВарианта открываемой формы отчета. Необязательный параметр.

● stngs ‑ позволяет указать ключ хранилища внешних данных навигационных ссылок. Значение в этом хранилище должны содержать настройки компоновки данных, которые будут установлены в качестве значения параметра Вариант формы открываемого отчета. Необязательный параметр.

Если в навигационной ссылке указаны одновременно и параметр vrn и параметр stngs, то параметр vrn игнорируется и для формирования отчета используется только параметр stngs.

2.2.2.7. Ссылка на обработку

Формат:

Копировать в буфер обмена

e1cib/app/<путь к метаданным>

Где:

● путь к метаданным ‑ тип объекта, на который указывает ссылка, например Обработка.ФормированиеЗаказа.

2.2.2.8. Ссылка на раздел

Формат:

Копировать в буфер обмена

e1cib/navigationpoint/<имя раздела>

Где:

● имя раздела ‑ имя подсистемы первого уровня, на который указывает ссылка, например ПродажиТоваров.

2.2.2.9. Ссылка на точку навигации, образованную стандартной командой

Формат:

Копировать в буфер обмена

e1cib/navigationpoint/<имя раздела>/<имя команды>

Где:

● имя раздела ‑ имя подсистемы первого уровня, на который указывает ссылка, например ПродажиТоваров;

● имя команды ‑ имя команды, например Справочник.Товары.ОткрытьСписок.

2.2.2.10. Ссылка на временное хранилище

Формат:

Копировать в буфер обмена

e1cib/tempstorage/<идентификатор временного значения>

Где:

● идентификатор временного значения ‑ идентификатор временного значения.

2.2.2.11. Ссылка на запись таблицы внешнего источника данных

Формат:

Копировать в буфер обмена

e1cib/data/<путь к метаданным>?<имя ключевого поля>=<значение>[&<имя ключевого поля>=<значение>]

Где:

● путь к метаданным ‑ описывает таблицу внешнего источника данных, например ВнешнийИсточникДанных.Чеки.Таблица.``CheckHeaders.

● имя ключевого поля ‑ имя поля ключа таблицы внешнего источника данных.

● значение ‑ внутреннее представление значения отбора. Значение отбора кодируется в соответствии с разделом 2.2.``URL``Character``Encoding``Issues стандарта RFC 1738 (https://datatracker.ietf.org/doc/html/rfc1738) ‑ с помощью символа «%» и двух шестнадцатеричных символов.

2.2.2.12. Ссылки на команды глобального командного интерфейса

Формат:

Копировать в буфер обмена

e1cib/command/<имя команды>?cmdprm=<параметр команды>&extdata=<адрес>

Где:

● имя команды ‑ имя команды:

● стандартная команда ‑ Справочник.Товары.Создать;

● общая команда ‑ ОбщаяКоманда.ПоискОбъектов;

● команда ‑ Справочник.Товары.Команда.ПечатьШтрихКода.

● cmdprm ‑ предназначен для передачи параметра команды. Если параметр может принимать несколько значений (массив), эти значения должны разделяться символом «,». Если значение имеет составной тип, то вначале следует указать тип значения, а затем, после символа «:», уже значение ссылки. Так, команда печати нескольких документов может выглядеть следующим образом:

Копировать в буфер обмена

e1cib/command/ОбщаяКоманда.ПечатьНакладной?cmdprm=ДокументСсылка.РасходнаяНакладная:a9b000055d49b45e11db8c4c9d5c4223,ДокументСсылка.РасходнаяНакладная:e440000a5d49b45b33de8c4c9d5c4223

Параметр является необязательным.

● exdata ‑ предназначен для указания адреса в хранилище внешних данных навигационных ссылок. Структура, полученная из этого хранилища, будет установлена в качестве значения свойства Параметры параметра обработчика команды ПараметрыВыполненияКоманды. Параметр является необязательным.

2.2.2.13. Ссылки на динамический список

Формат:

Копировать в буфер обмена

e1cib/list/<имя списка>?stngs=<ключ хранилища>

Где:

● имя списка ‑ имя открываемого списка, например Справочник.Товар, Документы.РасходТоваров.

● stngs ‑ позволяет указать ключ хранилища внешних данных навигационных ссылок. Значение в этом хранилище должны содержать настройки таблицы динамического списка (тип НастройкиТаблицыДинамическогоСписка), которые содержат фиксированные настройки (свойство ФиксированныеНастройки), пользовательские настройки (свойство ПользовательскиеНастройки), режим отображение для иерархических списков (свойство ОтображениеТаблицы), текущую строку (свойство ТекущаяСтрока).

Если свойство НастройкиТаблицыДинамическогоСписка.ТекущаяСтрока содержит значение Неопределено, то текущая строка в открываемом динамическом списке устанавливается в соответствии со свойствами динамического списка ВосстанавливатьТекущуюСтроку и НачальноеОтображениеСписка.

Необязательный параметр.

2.2.2.14. Ссылка на начальную страницу

Формат:

Копировать в буфер обмена

e1cib/navigationpoint/desktop

В режиме совместимости с версией 8.3.2 и младше.

Формат:

Копировать в буфер обмена

e1cib/navigationpoint/startpage

В режиме совместимости старше, чем версия 8.3.2.

2.2.3. Ссылки на объекты системы взаимодействия

2.2.3.1. Ссылка на обсуждение

Формат:

Копировать в буфер обмена

e1ccs/data/conv?id=<идентификатор обсуждения>

Где:

● идентификатор обсуждения ‑ уникальный идентификатор обсуждения в системе взаимодействия.

2.2.3.2. Ссылка на сообщение

Формат:

Копировать в буфер обмена

e1ccs/data/msg?id=<идентификатор сообщения>

Где:

● идентификатор сообщения ‑ уникальный идентификатор сообщения в системе взаимодействия.

Не поддерживается получени ссылок на сервисные и не отправленные сообщения.