Приложение 2. Форматы навигационных ссылок
страницаПриложение 2. Форматы навигационных ссылок
В данном приложении описаны форматы ссылок, которые используются в «1С:Предприятии». Ссылки бывают внешние и внутренние. Внешние ссылки предназначены для применения вне «1С:Предприятия», внутренние ссылки предназначены для внутреннего использования (в том числе для помещения в список избранного и истории работы).
2.1. Общее описание формата ссылки
Ссылка состоит из двух частей:
● Адрес хоста информационной базы – описывает расположение информационной базы относительно клиентского приложения. Для получения этой части ссылки предназначен метод ПолучитьНавигационнуюСсылкуИнформационнойБазы().
● Внутренняя ссылка – описывает расположение запрашиваемой информации внутри информационной базы.
Внутренние ссылки бывают нескольких видов:
● объект информационной базы,
● реквизит объекта информационной базы,
● реквизит табличной части объекта информационной базы,
● реквизит записи регистра информационной базы,
● запись регистра информационной базы,
● отчет,
● обработка,
● раздел,
● команда раздела,
● временное хранилище.
Внешняя ссылка образуется добавлением к адресу хоста внутренней ссылки. Если по ссылке открывается форма или осуществляется навигация в главном окне, то внешняя ссылка образуется по следующему правилу:
<адрес хоста ИБ>#<внутренняя ссылка>
Такими ссылками являются ссылки на объект информационной базы, отчет, обработку, раздел, команду раздела.
Если ссылка обозначает просто ресурс, то внешняя ссылка формируется следующим образом:
<адрес хоста ИБ>/<внутренняя ссылка>
Такими ссылками являются ссылки на реквизит объекта информационной базы или записи регистра сведений или временное хранилище.
совет. Если с информационной базой работают из разных клиентов, не рекомендуется запоминать внешние ссылки на объекты информационной базы, так как это может привести к неработоспособности ссылки, созданной на одном клиенте, в другом клиенте. Например, внешняя ссылка, созданная в веб-клиенте, может оказаться неработоспособной в тонком клиенте, подключенном «напрямую» к серверу «1С:Предприятия». Рекомендуется запоминать внутренние ссылки.
Если в метод ПерейтиПоНавигационнойСсылке``() или в диалог перехода по навигационной ссылке передается внешняя ссылка, у которой есть в пути сигнатура e1cib, а начало ссылки не совпадает с навигационной ссылкой информационной базы, то вначале осуществляется выделение из переданной ссылки внутренней и выполняется попытка перехода по выделенной части. Если попытка не удается, то осуществляется переход по полной ссылке.
2.2. Формат адреса хоста
В зависимости от вида информационной базы строка, описывающая адрес хоста, может иметь разный вид.
Файловый вариант информационной базы
Если путь к файлу базы данных задан в формате 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
2.3. Внутренние ссылки
Общий формат внутренней ссылки выглядит следующим образом:
e1cib/<тип>/<путь>[?<параметр>=<значение параметра>[&<параметр>=<значение параметра>]]
Более подробное описание форматов ссылок, в зависимости от типа, приведено далее.
2.3.1. Ссылка на объект информационной базы
Формат:
e1cib/data/<путь к метаданным>?ref=<идентификатор ссылки>
Где:
● путь к метаданным – тип объекта, на который указывает ссылка, например Документ.РасходТовара;
● идентификатор ссылки – уникальный идентификатор объекта в информационной базе.
2.3.2. Ссылка на реквизит объекта информационной базы
Формат:
e1cib/data/<путь к метаданным>.<имя реквизита>?ref=<идентификатор ссылки>
Где:
● путь к метаданным – тип объекта, на который указывает ссылка, например Документ.РасходТовара;
● имя реквизита – имя реквизита объекта информационной базы;
● идентификатор ссылки – уникальный идентификатор объекта в информационной базе.
2.3.3. Ссылка на реквизит табличной части объекта информационной базы
Формат:
e1cib/data/<путь к метаданным>.<имя табличной части>.<имя реквизита>?ref=<идентификатор ссылки>&index=<индекс строки табличной части>
Где:
● путь к метаданным – тип объекта, на который указывает ссылка, например Документ.РасходТовара;
● имя табличной части – имя табличной части объекта метаданных, например Товары;
● имя реквизита – имя реквизита табличной части объекта информационной базы;
● идентификатор ссылки – уникальный идентификатор объекта в информационной базе;
● индекс строки табличной части – индекс строки табличной части.
2.3.4. Ссылка на запись регистра информационной базы
Формат:
e1cib/data/<путь к метаданным>?<имя ключевого поля>=<значение>[&<имя ключевого поля>=<значение>]
Где:
● путь к метаданным – тип объекта, на который указывает ссылка, например РегистрСведений.ОстаткиТоваров;
● имя ключевого поля – имя измерения регистра (для периодических регистров добавляется измерение Период);
● значение – внутреннее представление значения отбора. Значение отбора кодируется в соответствии с разделом 2.2. URL Character Encoding Issues стандарта RFC 1738 (http://tools.ietf.org/html/rfc1738) – с помощью символа «%» и двух шестнадцатеричных символов.
2.3.5. Ссылка на реквизит записи регистра информационной базы
Формат:
e1cib/data/<путь к метаданным>.<имя реквизита>?<имя ключевого поля>=<значение>[&<имя ключевого поля>=<значение>]
Где:
● путь к метаданным – тип объекта, на который указывает ссылка, например РегистрСведений.ОстаткиТоваров;
● имя реквизита – имя реквизита записи;
● имя ключевого поля – имя измерения регистра (для периодических регистров добавляется измерение Период);
● значение – внутреннее представление значения отбора. Значение отбора кодируется в соответствии с разделом 2.2. URL Character Encoding Issues стандарта RFC 1738 (http://tools.ietf.org/html/rfc1738) – с помощью символа «%» и двух шестнадцатеричных символов.
2.3.6. Ссылка на отчет
Формат:
e1cib/app/<путь к метаданным>
Где:
● путь к метаданным – тип объекта, на который указывает ссылка, например Отчет.ОстаткиТоваров.
2.3.7. Ссылка на обработку
Формат:
e1cib/app/<путь к метаданным>
Где:
● путь к метаданным – тип объекта, на который указывает ссылка, например Обработка.ФормированиеЗаказа.
2.3.8. Ссылка на раздел
Формат:
e1cib/navigationpoint/<имя раздела>
Где:
● имя раздела – имя подсистемы первого уровня, на который указывает ссылка, например ПродажиТоваров.
2.3.9. Ссылка на точку навигации, образованную стандартной командой
Формат:
e1cib/navigationpoint/<имя раздела>/<имя команды>
Где:
● имя раздела – имя подсистемы первого уровня, на который указывает ссылка, например ПродажиТоваров;
● имя команды – имя команды, например Справочник.Товары.ОткрытьСписок.
2.3.10. Ссылка на временное хранилище
Формат:
e1cib/tempstorage/<идентификатор временного значения>
Где:
● идентификатор временного значения – идентификатор временного значения.
2.3.11. Ссылка на запись таблицы внешнего источника данных
Формат:
e1cib/data/<путь к метаданным>?<имя ключевого поля>=<значение>[&<имя ключевого поля>=<значение>]
Где:
● путь к метаданным – описывает таблицу внешнего источника данных, например ВнешнийИсточникДанных.Чеки.Таблица.CheckHeaders.
● имя ключевого поля – имя поля ключа таблицы внешнего источника данных.
● значение – внутреннее представление значения отбора. Значение отбора кодируется в соответствии с разделом 2.2.``URL``Character``Encoding``Issues стандарта RFC 1738 (http://tools.ietf.org/html/rfc1738) – с помощью символа «%» и двух шестнадцатеричных символов.
2.3.12. Ссылки на команды глобального командного интерфейса
Формат:
e1cib/command/<имя команды>
Где:
● имя команды – имя команды:
● стандартная команда – Справочник.Товары.Создать;
● общая команда – ОбщаяКоманда.ПоискОбъектов;
● команда – Справочник.Товары.Команда.ПечатьШтрихКода.
2.3.13. Ссылки на списки
Формат:
e1cib/list/<имя списка>
Где:
● имя списка – имя открываемого списка, например Справочник.Товар, Документы.РасходТоваров.
2.3.14. Ссылка на начальную страницу
Формат:
e1cib/navigationpoint/desktop
В режиме совместимости с версией 8.3.2 и младше.
Формат:
e1cib/navigationpoint/startpage
В режиме совместимости старше, чем версия 8.3.2.