При работе с программными продуктами 1С, такими как 1С:Розница, пользователи и начинающие разработчики часто сталкиваются с ситуацией, когда при запуске информационной базы через браузер кнопка Конфигуратор оказывается серой и недоступной. Рассмотрим подробнее, почему возникает эта проблема, разберем технологические причины таких ограничений и изучим пошаговые инструкции по настройке альтернативного доступа для конфигурирования системы.
Разберем ситуацию с точки зрения архитектуры платформы 1С:Предприятие 8.3. Конфигуратор — это полноценное бинарное приложение, которое относится к категории толстого клиента. Для его работы требуется прямое взаимодействие с операционной системой, файловой структурой (в случае файловой базы) или прямое сетевое соединение с сервером СУБД (в случае клиент-серверного варианта).
Веб-клиент же работает в среде интернет-браузера, который исполняет только HTML и JavaScript. Когда вы публикуете базу на веб-сервере (используя IIS или Apache), сервер транслирует только пользовательский интерфейс. Браузер технически не способен запустить исполняемые модули Конфигуратора, так как они не адаптированы под веб-технологии и требуют глубокого доступа к системным ресурсам, которые ограничены «песочницей» браузера в целях безопасности.
Проанализируем ключевые моменты: Конфигуратору нужен админский доступ к системным таблицам базы данных, чего веб-сервер обеспечить не может по определению. Именно поэтому при входе через URL-адрес кнопка настройки всегда будет неактивна.
Самый простой и распространенный способ получить доступ к Конфигуратору, если база находится на удаленном сервере — это использование протокола RDP (Remote Desktop Protocol). Рассмотрим этот процесс по шагам:
mstsc в строке поиска или окне «Выполнить»).1С:Предприятие обычным способом через ярлык на рабочем столе.Важное примечание: На серверных операционных системах, таких как Windows Server 2012 R2, по умолчанию разрешено до двух одновременных подключений администраторов. Этого достаточно для выполнения работ по конфигурированию без настройки специальных ролей служб удаленных рабочих столов.
Многие путают работу через браузер и работу через Тонкий клиент. Проанализируем разницу. Тонкий клиент — это небольшая программа, устанавливаемая на компьютер пользователя. Она может подключаться к базе через интернет по протоколу HTTP или HTTPS.
Однако здесь кроется важный нюанс: даже если вы используете установленный Тонкий клиент, но в списке баз указали путь к ней через http://адрес-сервера/имя-базы, кнопка Конфигуратор все равно останется неактивной. Для полноценной разработки платформа требует, чтобы база была добавлена либо как На данном компьютере или в локальной сети (с указанием пути к папке), либо как На сервере 1С:Предприятия (с указанием кластера).
Таким образом, для конфигурирования «по-настоящему» удаленно (без RDP), вам потребуется подключение к серверу 1С:Предприятия, если он опубликован в сети, либо использование систем контроля версий.
Посмотрим на ситуацию шире. Если стандартный Конфигуратор требует прямого соединения, то современная среда разработки EDT (на базе Eclipse) предлагает иной подход. С помощью EDT можно работать с проектом базы локально, в виде набора текстовых файлов и скриптов.
Разберем, как это помогает:
метаданных локально.Git или другие инструменты.Хотя для окончательного принятия изменений (обновления конфигурации базы данных) все равно может потребоваться доступ к серверу, основной процесс написания кода становится возможным без постоянного активного окна Конфигуратора через RDP.
Часто доступ к Конфигуратору нужен не только для изменения кода, но и для поиска ошибок (отладки). Выясним, как это сделать, если пользователь работает через браузер. Даже если вы не можете нажать кнопку Конфигуратор в браузере, вы можете запустить Конфигуратор локально и подключиться к сеансу пользователя на сервере для отладки.
Для этого в файле публикации default.vrd на веб-сервере должна быть разрешена отладка. Пример секции в файле:
<debug enable="true" url="tcp://localhost"/>
После включения этой опции, вы можете в своем локальном Конфигураторе через меню Отладка — Подключение найти сеанс веб-клиента и анализировать выполнение кода в реальном времени.
В процессе обсуждения на форумах часто всплывает сопутствующий вопрос: как работать с файлами Excel на сервере, если Конфигуратор недоступен или обработка выдает ошибки? Если ваша обработка использует COM-объекты (например, Excel.Application), то на сервере обязательно должен быть установлен Microsoft Office.
Однако мы рекомендуем использовать встроенные средства платформы 1С для работы с файлами .xlsx. Это надежнее и не требует установки стороннего ПО на Windows Server. Рассмотрим пример кода, который позволяет прочитать файл без использования Excel:
ТабДок = Новый ТабличныйДокумент;
ТабДок.Прочитать(ПутьКФайлу, СпособЧтенияЗначенийТабличногоДокумента.Значение);
ПострочныйОбход = ТабДок.ПолучитьОбласть(1, 1, ТабДок.ВысотаТаблицы, ТабДок.ШиринаТаблицы);
Использование объекта ТабличныйДокумент позволяет работать с данными прозрачно как на стороне клиента, так и на стороне сервера, включая веб-клиент. Это исключает зависимость от установленных программ на сервере и проблем с правами доступа DCOM.
Подводя итог, проанализируем основные выводы:
default.vrd.COM-компонент (как Excel) в пользу встроенных методов 1С, чтобы минимизировать проблемы при работе через веб-сервер.Следуя этим правилам, вы сможете эффективно администрировать и развивать систему 1С:Розница вне зависимости от способа подключения пользователей.