Открытие объекта 1С в тонком клиенте по ссылке
Разработка - Инструментарий разработчика
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Работает начиная с версии 1С: Предприятие 8.3, т.к. только там появилась возможность открытия ссылок из командной строки.
Текст файла регистрации:
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\e1c] @="URL:e1c" "URL Protocol"="e1c" "EditFlags"=hex:02,00,00,00 [HKEY_CLASSES_ROOT\e1c\DefaultIcon] @="C:\\Program Files (x86)\\1cv8\\common\\1ceunt.dll,17" [HKEY_CLASSES_ROOT\e1c\shell] [HKEY_CLASSES_ROOT\e1c\shell\open] [HKEY_CLASSES_ROOT\e1c\shell\open\command] @="\"C:\\Program Files (x86)\\1cv8\\common\\1cestart.exe\" /URL \"%1\""
Вступайте в нашу телеграмм-группу Инфостарт
См. также
Разработка Инструментарий разработчика Групповая разработка (Git, хранилище) Разработчик Платные (руб)
Практический курс по работе с AI-агентами для разработчиков 1С уровня middle и senior, а также тимлидов команд: от постановки задач и передачи контекста до создания расширений, интеграций, MCP-инструментов, тестов и проверки готового решения.
50000 руб.
10.09.2026 13280 104 0
Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Разработчик Руководитель проекта 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Россия Платные (руб)
Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP, УНФ, КА и т.д.). Поддерживаются серверные и файловые базы, управляемые и обычные формы, интерфейс 8.5. Может выполнять свертку одновременно в несколько потоков, а также без непосредственного участия пользователя. Решение в Реестре отечественного ПО.
24900 руб.
20.08.2024 83180 431 171
Инструментарий разработчика Роли и права Запросы СКД Разработчик Руководитель проекта 1С:Предприятие 8 Платные (руб)
Инструменты для разработчиков 1С 8.3 и 8.5: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.
16500 руб.
02.09.2020 285508 1606 423
Инструментарий разработчика Разработка Администрирование веб-серверов Системный администратор Разработчик Аналитик Руководитель проекта 1С 8.3 Платные (руб)
Analyzer 1C сводит выгрузку 1С — основную конфигурацию и все расширения — в единый граф знаний. Любой запрос по связям за доли секунды, с пометками «Доб.» / «Заимств.» / «Переопределено». Новое в 2.0 — обновление поставки: сравнение и объединение версий деревом «как в Конфигураторе» с выгрузкой плана решений; поиск конфликтов из-за перехватов расширений и висячих ссылок; загрузка из бинарных .cf/.cfe; циклические зависимости. Плюс анализ влияния, запросы BSL, роли и RLS, граф вызовов. Минута на развёртывание через Docker без необходимости подключения к Интернет. Любая 1С:Предприятие 8.3+.
14000 руб.
17.04.2026 16699 63 62
Пакетная печать Печатные формы Инструментарий разработчика Разработчик 1С:Предприятие 8 Платные (руб)
Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм. Обновление версии от 21.04.26
22570 руб.
06.10.2023 44125 122 54
Инструментарий разработчика Нейросети Платные (руб)
Первые попытки разработки на 1С с использованием больших языковых моделей (LLM) могут разочаровать. LLMки сильно галлюцинируют, потому что не знают устройства конфигураций 1С, не знают нюансов синтаксиса. Но если дать им подсказки с помощью MCP, то результат получается кардинально лучше. Далее в публикации: MCP для поиска по метаданным 1С, справке синтакс-помощника и проверки синтаксиса.
15250 руб.
25.08.2025 76755 147 41
Разработка Инструментарий разработчика Разработчик Руководитель проекта 1С 8.3 Платные (руб)
Pilot 1C превращает задачу, поставленную обычными словами, в техническое задание, код на встроенном языке и сценарии проверки. Прежде чем что-то предложить, он сверяется с устройством вашей конфигурации через граф Analyzer 1C: существует ли объект, из чего он состоит, кто его вызывает, какие роли дают права. Чего найти не удалось – спрашивает, а не выдумывает. Готовый код проходит более полутора сотен проверок по справочнику языка и стандартам разработки, который приезжает вместе с продуктом. Модель – ваша: любой сервер, совместимый с программным интерфейсом OpenAI, в том числе локальный. Правки в конфигурацию Pilot не вносит – их применяет разработчик.
18300 руб.
11.09.2026 3674 5 0
Инструменты администратора БД Инструментарий разработчика Роли и права Разработчик 1С:Предприятие 8 1C:Бухгалтерия Россия Платные (руб)
Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.
17000 руб.
10.11.2023 28700 103 46
Т.е. вместо:
e1c://server/server_name/base_name#e1cib/data/Документ.ЗаказКлиента?ref=80dc3d2b871a973a11e4ee771f1d4b2f
достаточно было указать:
e1c://server/Условное_Имя/Документ.ЗаказКлиента?ref=80dc9d2b871a973a11e4ee771f1d4b2f
а в настройках 1cestart.exe имелась возможность указать соответствие:
"Условное_Имя" соответствует "server_name/base_name"
Если бы была такая возможность
узла HKEY_CLASSES_ROOT использовать узел HKEY_CURRENT_USER\Software\Classes
Если необходимо в путях использовать расширяемые переменные (например %AppData%), то текст следует задавать в параметрах типа REG_EXPAND_SZ, а в файле реестра это будет выглядеть как @=hex(2):25,00.... Чтобы сформировать параметр по умолчанию в таком виде подручными средствами, можно в реестре в нужном узле создать параметр такого типа, и вставить в него текст с расширяемыми переменными , затем экспортировать узел с параметром, отредактировать экспортированный файл так, чтобы вместо названия параметра в кавычках был установлен знак @ (без кавычек). После импорта файла в реестр, параметр по умолчанию будет иметь нужный тип.
Пример простого работающего файла реестра:
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\Software\Classes\e1c]
@="1С:Предприятие"
"URL Protocol"=""
[HKEY_CURRENT_USER\Software\Classes\e1c\DefaultIcon]
@=hex(2):25,00,41,00,70,00,70,00,44,00,61,00,74,00,61,00,25,00,5c,00,31,00,43,\
00,5c,00,31,00,63,00,76,00,38,00,5c,00,63,00,6f,00,6d,00,6d,00,6f,00,6e,00,\
5c,00,31,00,63,00,65,00,75,00,6e,00,74,00,2e,00,64,00,6c,00,6c,00,2c,00,31,\
00,37,00,00,00
[HKEY_CURRENT_USER\Software\Classes\e1c\shell\open\command]
@=hex(2):22,00,25,00,41,00,70,00,70,00,44,00,61,00,74,00,61,00,25,00,5c,00,31,\
00,43,00,5c,00,31,00,63,00,76,00,38,00,5c,00,63,00,6f,00,6d,00,6d,00,6f,00,\
6e,00,5c,00,31,00,63,00,65,00,73,00,74,00,61,00,72,00,74,00,2e,00,65,00,78,\
00,65,00,22,00,20,00,2f,00,55,00,52,00,4c,00,20,00,22,00,25,00,31,00,22,00,\
00,00 ПоказатьЭтот же вариант, но без
@echo off
reg add HKCU\Software\Classes\e1c /ve /t REG_SZ /d 1С:Предприятие /f
reg add HKCU\Software\Classes\e1c /v "URL Protocol" /t REG_SZ /f
reg add HKCU\Software\Classes\e1c\DefaultIcon /ve /t REG_EXPAND_SZ /d %%AppData%%\1C\1cv8\common\1ceunt.dll,17 /f
reg add HKCU\Software\Classes\e1c\shell\open\command /ve /t REG_EXPAND_SZ /d "\"%%AppData%%\1C\1cv8\common\1cestart.exe\" /URL \"%%1\"" /f
1) Зачем-то использовали %AppData%, а надо было %ProgramFiles%
2) И даже если выполнить выше пункт № 1 у вас пути зачем-то включают "\1C" и тем самым ни чего не найдётся.
3) Забыли указать значение для параметра "URL Protocol".
4) Указание на иконку не корректное. Лучше ссылаться на нулевую иконку в самом 1cestart.exe.
5) И надо было указать кодировку, раз был выложен текст, а не сам файл. А то при сохранении в Notepad++ придётся заранее переключать кодировку текста, чтобы указанное у вас русское название "1С:Предприятие" корректно сохранилось.
Тем самым корректный CMD скрипт выглядит так (проверено - работает) + сразу указано использовать кодировку UTF-8 (код её для CMD 65001):
@echo off
chcp 65001>>nul
reg add HKCR\e1c /ve /t REG_SZ /d "1С:Предприятие" /f
reg add HKCR\e1c /v "URL Protocol" /t REG_SZ /d "e1c" /f
reg add HKCR\e1c\DefaultIcon /ve /t REG_EXPAND_SZ /d "%%ProgramFiles%%\1cv8\common\1cestart.exe,0" /f
reg add HKCR\e1c\shell\open\command /ve /t REG_EXPAND_SZ /d "\"%%ProgramFiles%%\1cv8\common\1cestart.exe\" /URL \"%%1\"" /f
Регистрация e1c в реестре (административный).cmd
@echo off
chcp 65001>>nul
reg add HKCR\e1c /ve /t REG_SZ /d "1С:Предприятие" /f
reg add HKCR\e1c /v "URL Protocol" /t REG_SZ /d "e1c" /f
reg add HKCR\e1c\DefaultIcon /ve /t REG_EXPAND_SZ /d "%%LOCALAPPDATA%%\Programs\1cv8_x64\common\1cestart.exe,0" /f
reg add HKCR\e1c\shell\open\command /ve /t REG_EXPAND_SZ /d "\"%%LOCALAPPDATA%%\Programs\1cv8_x64\common\1cestart.exe\" /URL \"%%1\"" /f@echo off
chcp 65001>>nul
reg add HKCU\Software\Classes\e1c /ve /t REG_SZ /d "1С:Предприятие" /f
reg add HKCU\Software\Classes\e1c /v "URL Protocol" /t REG_SZ /d "e1c" /f
reg add HKCU\Software\Classes\e1c\DefaultIcon /ve /t REG_EXPAND_SZ /d "%%LOCALAPPDATA%%\Programs\1cv8_x64\common\1cestart.exe,0" /f
reg add HKCU\Software\Classes\e1c\shell\open\command /ve /t REG_EXPAND_SZ /d "\"%%LOCALAPPDATA%%\Programs\1cv8_x64\common\1cestart.exe\" /URL \"%%1\"" /fРегистрация e1c в реестре (пользовательский, общая установка).cmd
Регистрация e1c в реестре (пользовательский, пользовательская установка).cmd
e1c://server/<сервер>/<Имя базы># и тогда в почтовых уведомлениях будет приходить ссылка, которая откроется приложением 1С без изменения типовой конфигурации.
Если веб-адрес базы не указан, то рассылается внутренняя ссылка, т.е. часть после знака #
В веб-версиях почтовых сайтов (например, Mail.ru и Яндекс) ссылка e1c:// выделяется цветом, но не кликабельна. А если пользоваться почтовой программой, например, Outlook - то ссылка кликабельна.
Наверное, кликабельность ссылок блокируется в целях безопасности.
1. Если письмо формируется программно, то достаточно сформировать его в формате HTML и оформить ссылку соответствующим образом.
2. Если письмо создается вручную и ссылка вставляется руками (через буфер обмена, например), то необходимо, при вставке адреса, самостоятельно оформить его как гиперссылку средствами редактора Outlook (Вставка\Гиперссылка).
Подскажите, пожалуйста, можно ли при открытии таких ссылок записать, например, новых контрагентов в базе... Есть ли у вас какой-то пример использования данного метода? Или может посоветуете где найти информацию?
Спасибо.
@="\"C:\\Program Files (x86)\\1cv8\\common\\1cestart.exe\" /URL \"%1\" /C \"%1\"" и обработать переданный параметр ПриНачалеРаботы(). Но и тут сложность. Если ИБ не прописана в загрузчике, то параметр будет пустым.
<a href="e1c:⁄⁄server/[АдресСервера]/[ИмяБазы]#e1cib/data/Справочник.Контрагенты?ref=00000000000000000000000000000000">Мой контрагент</a>Надо только убедиться, что существует 1cestart.exe по пути указанному в реестре.
e1c://server/[АдресСервера]/[ИмяБазы]#e1cib/data/Справочник.Контрагенты?ref=80bf001e67d4b29711e5794d1a2e5ce6
Через html-файл:
<html>
</html>
Система 1С стартует, но пишет ошибку:
server_addr=erver Этот хост неизвестен.
Т.е., как я понимаю, система раскладывает строку "e1c://server/..." и считает последовательность символов "/s" как параметр клиент-сервер и ,соответственно, "erver" как имя сервера.
Открываю в "Adobe Acrobat Reader DC", при нажатии на гиперссылку ничего не происходит...
Для запуска тонкого клиента (не браузера) опубликованной базы как следует задать путь у ссылки?
Т.е. для серверных баз понятно что так:
e1c://server/<сервер>/<Имя базы>
а для веб как?
Вот так не проходит
e1c://server/http://путь.ru<и т.д. навигационня ссылка>
Говорит этот хост неизвестен
Есть особенности?
Если поменять на 1С, то все web-ссылки будут путаться открываться в 1С.
Написал разработчикам на этот счет. Добавили бы, что ли, e1c://web/http://путь.ru<и т.д. навигационная ссылка>
В реестр добавил параметр.
В Outlook что в пакет офиса входит все отлично. Проблема именно в OWA.
наверное я тупой..
У меня ошибка при синхронизации с бухней от УНФ
Направление: Отправка.
ПОД: Справочник_ДоговорыКонтрагентов_Отправка.
ПКО: Справочник_ДоговорыКонтрагентов_Отправка.
Объект: Справочник объект: Договоры, Основной договор (e1cib/data/Справочник.ДоговорыКонтрагентов?ref=89ba894acaf1bf9e11e965ba7bbee02a).
{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(4019)}: Ошибка при вызове метода контекста (Проверить)
ОбъектXDTO.Проверить();
по причине:
Ошибка проверки данных XDTO:
Структура объекта '/КлючевыеСвойства/Контрагент' не соответствует типу: {}КлючевыеСвойстваКонтрагент
Проверка свойства 'ИНН':
форма: Элемент
имя: {}ИНН
тип:
Не установлено значение одного из следующих свойств: Наименование
Как мне найти этот обьект?
спасибо)
в ссылке ИмяСервера и ИмяБазы должно быть так же как прописывается в файле %AppData%\Roaming\1C\1CEStart\ibases.v8i
некоторые почтовые сервисы блокируют показ таких ссылок (Mail.ru и gMail.com) при показе через web-интерфейс
Yandex.ru пока что пропускает
UPD:
Увидел, что механизм запуска ссылок как раз поменяли в 24, но пока не разобрался как именно он должен работать по новому
имя базы: ERP_2021?Z=%2B%2C%2B вообще отсекается и ествественно ссылка не работает.
Я это смотрю в отладке, пытаюсь разобраться, не могу
открывала карточку контрагента в одном и том же окне, если база BASETEST еще не была откыта, открывала новое окно тонкого клиента, если уже открыта, в открытом окне.
после перехода на 25 платформу, такая конструкция ссылки открывается каждый раз в новом окне, если добавить "?Z=%2B%2C%2B"
и вызывать ПерейтиПоНавигационнойСсылке("C:\Program Files\1cv8\common\1cestart.exe"/URL e1c://server/SERVERTEST/BASETEST?Z=%2B%2C%2B#e1cib/data/Справочик.Контрагенты?ref=908e0050560a12d411ef7fe6659fc6bb");
то, в случае если клиент базы BASETEST открыт заранее, то все передаваемые ссылки будут в нем открыты, но если открытого окна клиента нет, то при попытке откытия первый раз клиента выпадает окно авторизации.
пробовал прописать все 3 варианта батниками выше и админский, пользовательский и общий из поста (46), пробовал рекомендации отсюда
но там опять же платформа версии 24, может это у 25 такая проблема.
Из командной пробовал заупскать
C:\>"C:\Program Files\1cv8\common\1cestart.exe"/URL "e1c://server/SERVERTEST/BASETEST#e1cib/data/Справочик.Контрагенты?ref=908e0050560a12d411ef7fe6659fc6bb"
каждый запуск в новом окне, но авторизацию не просит,
C:\>"C:\Program Files\1cv8\common\1cestart.exe"/URL "e1c://server/SERVERTEST/BASETEST?Z=%2B%2C%2B#e1cib/data/Справочик.Контрагенты?ref=908e0050560a12d411ef7fe6659fc6bb"
если так, в открытом заранее окне базы все ок, если открытого окна нет, выпадает окно авторизации.
из описания ключей,
используется Аутентификация ОС
Если указана внешняя ссылка ‑ выполняется поиск запущенного клиентского приложения с той же строкой соединения, которая указана в параметре. В найденном клиентском приложении не должно быть открыто модальное или блокирующее окно. После этого выполняется попытка перехода по локальной ссылке из исходной навигационной ссылки и активизируется основное окно приложения. В случае неудачи клиентское приложение продолжает работу. Если исходная навигационная ссылка не содержит локальной ссылки (содержит только адрес информационной базы), то попытка перехода не выполняется, активируется основное окно найденного клиентского приложения.
Если подходящего клиентского приложения не найдено, строка соединения определяется из параметра командной строки /URL.
Если указана локальная ссылка ‑ клиентское приложение запускается в общем порядке. После запуска выполнится попытка перехода по переданной локальной ссылке.
Для ссылок формата http(s) всегда запускается (или находится активный) тонкий клиент.
Возможно без "?Z=%2B%2C%2B" прогамма восприимает такую ссылку как внутреннию, и следует правилу "Если указана локальная ссылка ‑ клиентское приложение запускается в общем порядке. После запуска выполнится попытка перехода по переданной локальной ссылке."
Раньше передавал внешнюю ссылку .../erp#e1cib/..., каждый раз при открытии стало открываться новое приложение 1с.
Исправил на .../erp?Z=%2B%2C%2B#e1cib/... -стало как открываться в текущем сеансе.
Ссылки вида
C:\Program Files\1cv8\common\1cestart.exe /URL "e1c://server/SRV:2541/BAZA_PROD?Z=%2B%2C%2B#e1cib/data/Справочник.Пользователи?ref=a20f005056918c8e11eb444e186739bd"
открываются только в случае уже открытой базы BAZA_PROD. Если база не открыта, то не смотря на NTLM авторизацию, открывается выбор пользователя, причем в другой области данных (даже списка пользователей не видно). Разделение по областям мы не используем (отключены на уровне констант).
Если ключ Z убрать, то все время открывается новый сеанс. Ранее (на 23 платформе) такого не было.
В самой базе есть пара разделителей, которые и указаны в ?Z=%2B%2C%2B. Переключить их в режим "Не разделять" не имеем возможности.
Вернуться на старую платформу не можем по объективным причинам.
Если ли корректный выход из ситуации?
Платформа 25.
Отправляем ссылку в письме и ее невозможно открыть, при открытии из-за наличия в ней русских букв происходит перекодирование, русские буквы заменяются на URL коды, а параметр Z=%2B%2C%2B наоборот раскодируется в
Z=+,+
Есть какие-то пути решения этой проблемы?
Ссылка открывается если ее скопировать в нормальном виде (как ее 1с сформировала) в строку браузера, если база уже открыта то открывается нужный объект из ссылки.
И так же как и тут ранее была проблема,на нашей установленной версии платформы 8.3.25.1374 если база закрыта, то
происходит запуск базы но при вводе пароли 1с его не принимает, хотя он правильно вводится, видимо это баг, который до-сих пор не устранен.
Теперь появилась новая не значительная проблема при открытии объекта по присланной ссылке, объект открывается , но фокус на само приложение не переходит, после щелчка по ссылка в почтовом письме 1с база остается в свернутом виде и ее нужно развернуть из панели задач.
Возможно есть решение по передаче фокуса на открытое приложение 1с?
Поиски пока ни к чему не привели..
Вы можете заказать платную консультацию или разработку у автора. Будет создан приватный заказ на «Бирже заказов» для автора.
№ 293871
Создание 11.08.14 18:18
Обновление 11.08.14 18:18
Просмотры 103886
Загрузки 114
Рейтинг
85
Комментарии 58
Код открыт Не указано
Рубрики Инструментарий разработчика
Тип файла Внешняя обработка (ert,epf)
Платформа 1С:Предприятие 8
Конфигурация 1C:Бухгалтерия
Операционная система Windows
Страна Не имеет значения
Отрасль Не имеет значения
Налоги Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Абонемент ($m)