Клиент-серверный режим базы данных 1С8 для тестирования

30.09.21

База данных - Инструменты администратора БД

В публикации рассматриваются некоторые аспекты настройки базы данных 1С8.3 в серверном режиме, для тестирования обработок или расширений.

Не раз было такое... подключаюсь к заказчику из-за какой-то новой ошибки, и вот опять:

А проблема, собственно, в том, что некоторые алгоритмы, которые успешно выполняются в режиме "Файловый", выполняются с ограничениями или не выполняются в режиме "Серверный". Один из популярных случаев - работа с DCOM компонентами. Когда, например, "Excel.Application" выполняется на сервере, а на клиенте не учитывается факт, что компонента может быть недоступна для службы Агента сервера 1С:Предприятие. Или другой случай - в обработке реализуется работа с файлами, которые должны сохраняться на клиенте через асинхронные процедуры Получение/ПомещениеФайлаНаСервере. В файловом режиме может работать без проблем, а в серверном оказывается, что не выполнена настройка какого-нибудь важного параметра. Еще случай - создание и использование схемы компоновки данных (СКД) должно выполняться на сервере, а на клиенте пересылаться с использованием процедур Поместить/ПолучитьИзВременногоХранилища, что может приводить к проблемам при неправильной программной генерации СКД.

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

Аккуратно! Программистам и администраторам 1С8 с большим опытом дальше не читать) Не претендую на лавры. Публикация в помощь коллегам и друзьям с небольшим опытом.

В публикации не рассматривается настройка и тестирование базы данных в режиме "Веб-сервер".

Необходимые этапы настройки сервера 1С:Предприятие:

  Название что в гугле
1. Установка платформы 1С со службами сервера ----->
2. Установка системы управления базами данных - СУБД (например, SQL Server) ----->
3. Создание информационной базы на сервере СУБД ----->
4. Выгрузка файловой базы данных 1С и загрузка на сервер СУБД ----->
5. Подключение к серверу СУБД по сети для запуска 1С на клиенте ----->
6. Включения отладки в режиме клиент-сервер ----->

Пункты 1,2,3,4,6 выполняются на серверной стороне, пункт 5 - и на сервере, и на клиенте.

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

Клиент-серверная архитектура предполагает 2 точки использования базы данных - клиент и сервер.

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

ВЫБРАННЫЕ УСЛОВИЯ запуска: в качестве примера, используем стандартный ПК на основе Windows 10 Pro (x86-64) с обычной администраторской учетной записью для клиентской и серверной стороны, которые подключены к одной и той же сети со стандартными настройками, подобно домашней локальной и беспроводной сети. Используемая версия платформы: 1C:Предприятие 8 (x86-64) (8.3.18.1289).

Возможная схема нашей примитивной информационной системы:

I. Выполнение пункта 1 "Установка платформы 1С со службами сервера"

На сервере. Во время установки, для использования сервера 1C:Предприятие 8, добавить компоненты:

Понятно, что мы используем лицензионную версию с аппаратным ключом.

Если выбрать настройку "Создать пользователя USR1CV8", то служба Windows сервера 1C:Предприятие 8 будет запускаться учетной записью USR1CV8. По умолчанию, эта учетная запись создается со стандартными правами (не администраторскими), и если нужно будет выполнять действия, которые затрагивают системные компоненты (например, DCOM), то эти действия будут выполняться с ошибками.

Изменение типа учетной записи USR1CV8 (Параметры-Учетные записи-Семья и другие пользователи):

Если, всё таки, потребуется отказаться от использования учетной записи USR1CV8, то это можно изменить в панели "Службы" для "Агент сервера 1С:Предприятие" (Win+R, services.msc, OK):

Проверка, что фоновые процессы сервера 1С:Предприятие работают (Ctrl+Shift+Esc):

II. Выполнение пункта 2 "Установка системы управления базами данных - СУБД (например, SQL Server)"

На сервере. Для тестирования своих разработок достаточно установить бесплатную версию SQL Server Express. Например, подойдёт версия SQL Server 2014 Express. Поскольку запуск выполняется в Windows 10 Pro x86-64, скачиваем и устанавливаем SQL Server 2014 Express Edition with Tools with Service Pack 3, x64, English.

В простейшем случае, все настройки установщика используются по умолчанию, за исключением одного пункта - "Режим авторизации (Authentication mode)", в котором нужно разрешить авторизацию с помощью аккаунтов SQL Server и задать пароль для стандартного аккаунта "sa":

Запоминаем эти данные: аккаунт "sa" и заданный пароль (например, "1").

III. Выполнение пункта 3 "Создание информационной базы на сервере СУБД"

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

Установщик платформы 1С 8.3 создает и добавляет в меню пуск ссылку на файл *.cmd для регистрации внешней компоненты radmin.dll консоли управления администрирования серверов 1С:

Далее, перед добавлением информационной базы, нужно проверить работу SQL Server. Для этого можно использовать консоль управления SQL Server Management Studio, которая добавляется при установке SQL Server или устанавливается отдельно.

Для подключения можно использовать стандартную учетную запись "sa" и пароль, заданный во время установки SQL Server:

Если подключение успешное, то можно приступить к созданию информационной базы в консоли управления администрирования серверов 1С:

Сервер базы данных - такой же как в консоли управления SQL Server Management Studio (в примере "DESKTOP-K80105I"). Тип СУБД - "MS SQL Server". Пользователь сервера - "sa" и пароль, заданный во время установки SQL Server (например, "1"). При создании новой информационной базы - обязательно установить флаг "Создать базу данных в случае её отсутствия".

Если все параметры введены правильно, то можно убедиться, что в консолях управления появилась создаваемая информационная база. Имя "unf1.6" нужно запомнить для следующего пункта.

IV. Выполнение пункта 4 "Выгрузка файловой базы данных 1С и загрузка на сервер СУБД"

На сервере. Файловую базу данных нужно выгрузить в файл формата *.dt. В многочисленных статьях подробно приводится инструкция. Коротко - в конфигураторе открываем файловую базу данных, далее пункт меню "Администрирование - Выгрузить информационную базу". Получится файл со стандартным названием 1Cv8.dt.

Добавляем новую информационную базу на сервере - в окне приветствия 1С. Используемое имя кластера серверов и информационной базы как в предыдущих пунктах. Загружаем файл 1Cv8.dt в конфигураторе:

V. Выполнение пункта 5 "Подключение к службе СУБД по сети для запуска 1С на клиенте"

На сервере. Основная задача этого пункта заключается в обеспечении доступа к серверу по сети, и главное препятствие здесь - сетевой экран (Брандмауэр или Firewall). Рассматриваем подключение клиента и сервера в одной и той же сети со стандартными настройками, подобно домашней локальной и беспроводной сети. А значит сетевой экран на маршрутизаторе со стандартными настройками (см.схему информационной системы выше).

Настройка Брандмауэра Windows (Firewall) выполняется на сервере в специальной консоли: Параметры — Сеть и интернет — Брандмауэр Windows — Дополнительные параметры.

Необходимо открыть входящее подключение: Правила для входящих подключений — Создать правило для порта — Протокол TCP (Определённые локальные порты: например, 1433) — Разрешить подключение

Порты на сервере с использованием SQL Server для входящих подключений (по умолчанию):

  • 1433 — на сервере SQL для управления экземплярами баз данных;
  • 1434 — на сервере SQL для выделенного административного соединения (например, с помощью sqlcmd);
  • 1540 — на сервере 1С для удаленных подключений с помощью утилиты администрирования (консоль 1CV8 Servers msc);
  • 1541 — на сервере 1С для менеджера кластера серверов;
  • Диапазон {1560-1591} — на сервере 1С для рабочих процессов.

В простейшем случае, достаточно открыть 2 порта: 1541,1560.

Если потребуются дополнительные другие порты, то при запуске 1С на клиенте, будет выведено уведомление.

На клиенте. На рабочей станции клиента установлена платформа 1С 8.3 со стандартными компонентами (без сервера 1С:Предприятие). Далее добавляем новую информационную базу. Используемое имя кластера серверов и информационной базы как в предыдущих пунктах. В приведенном примере имя кластера серверов совпадает с сетевым именем ПК сервера. Если все настройки сделаны верно, то запуск информационной базы на клиенте будет успешным.

Запускаем информационную базу "unf1.6_SQL_Server" на клиенте, чтобы убедиться в работоспособности:

VI. Выполнение пункта 6 "Включения отладки в режиме клиент-сервер"

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

  1. Остановить службу "Агент сервера 1С:Предприятия 8.3 (x86-64)" (Windows+R, services.msc, OK),
  2. Запустить редактор системного реестра. Нажать Windows+R (или Пуск-Выполнить), ввести regedit, ОК.
  3. Найти ветку реестра [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\1C:Enterprise 8.3 Server Agent\].
  4. Изменить свойство "ImagePath". Добавляем в строку "-debug".
  5. Записываем и запускаем службу "Агент сервера 1С:Предприятия 8.3 (x86-64)".

Именно на клиенте надо тестировать алгоритмы, которые успешно выполняются в режиме "Файловый", но выполняются с ограничениями или не выполняются в режиме "Серверный".

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

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

Публикация простая, где-то повтор. Не судите строго. Напишите предложения для улучшения, сообщите о недостатках в комментариях. Спасибо!

Готовое решение

Database Compression Tool (DCT): Универсальный инструмент сжатия, свертки и конвертации баз данных 1С

Универсальный инструмент сжатия, свертки и конвертации баз данных 1С.

Свертка баз данных еще никогда не была такой простой и быстрой!

DCT ускоряет работу базы, освобождая гигабайты пространства и повышая производительность системы. Доступна ДЕМО версия!


Сервер Клиент СУБД SQL Службы Администрирование Сеть Доступ

См. также

SALE! 15%

Инструментарий разработчика Чистка данных Свертка базы Инструменты администратора БД Системный администратор Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Платные (руб)

Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя.

8400 7140 руб.

20.08.2024    7756    55    22    

66

Инструменты администратора БД Роли и права Системный администратор Программист Пользователь 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 18.09.2024, версия 1.2

16800 руб.

06.12.2023    8835    42    5    

73

SALE! 15%

Инструменты администратора БД Инструментарий разработчика Роли и права Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 8500 руб.

10.11.2023    10406    36    20    

61

SALE! 35%

Инструментарий разработчика Инструменты администратора БД Системный администратор Программист Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

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

4800 3120 руб.

14.01.2013    187967    1138    0    

912

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    32659    106    152    

73

Инструменты администратора БД Системный администратор Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием Платные (руб)

Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.

4200 руб.

10.11.2015    62813    94    59    

79

Архивирование (backup) Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Платные (руб)

Данная разработка позволит решить вопрос с резервным копированием Ваших баз в автоматическом режиме, расположенных на сервере 1С. Система умеет ставить блокировки на вход, блокировать фоновые задания, принудительно отключать сеансы пользователей. И все это система делает в автоматически при создании бэкапа (или через команду). Выгрузка происходит в родной формат 1С - .dt. Так же система умеет архивировать данные выгрузки с установкой пароля. Умеет менять расширение файла zip или dt на любое указанное вами, что позволит сохранить выгрузки от шифровальщика. Может удалять старые копии выгрузок, оставляя указанное количество резервных копий, начиная с самой поздней. Только для WINDOWS!

6000 руб.

06.11.2012    72787    625    45    

84

Инструменты администратора БД Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Многие сталкиваются с проблемой когда изображения, находящиеся в базе разные по объему и размерам. Менеджеры могут добавить файлы в очень высоком разрешении, объемом свыше 20 Мегабайт. База данных становится слишком большой, выгрузка на сайт идёт медленно и требуется много место на хостинге. Как сжать картинки и уменьшить размер базы 1С? Это можно сделать с помощью данной обработки. Существует возможность выбрать различные варианты для того чтобы уменьшить картинки: в разы, в процентах от первоначального объема, а также сделать картинки одинаковой ширины. В результате размер базы 1С значительно сократится (в зависимости от количества и размера картинок), а изображения станут небольшого объема, равными по ширине, почти без потери качества. Работает на управляемых формах для УТ 11, КА, ERP.

3000 руб.

21.07.2022    9831    7    4    

15
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. PowerBoy 3416 30.09.21 12:57 Сейчас в теме
Забыл добавить параметр -debug в строку службы запуска сервера 1с.
kamo; user635667; etmarket; +3 Ответить
2. etmarket 910 30.09.21 20:59 Сейчас в теме
3. kamo 29.10.21 13:28 Сейчас в теме
Спасибо. Очень подробная статья!
etmarket; +1 Ответить
Оставьте свое сообщение