WEB – сервис для закрытия сеансов 1с на Node.js.

01.09.16

Разработка - Инструментарий разработчика

Простой веб-сервис для сброса сессий 1с на сервере или пример того как подружить V83.COMConnector и Node.js

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
sesions
.rar 780,50Kb ver:1.0
10 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Зачем и почему :

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

Когда база маленькая и пользователей мало, то можно просто зайти в консоль  сервера 1с  сбросить сеанс кому нужно. Рано или поздно у программистов появляется желание это как-нибудь упростить/автоматизировать  с помощью 1С через V83.COMConnector  и это я считаю логично.

Но что делать таким «счастливчикам»    у которых доступа к серверу нету и V83.COMConnector на сервере не поднимается, только просить админов его зарегистрировать. А админы не настраивают (не хотят/не могут/нету времени). А если еще в кластере несколько серверов  то на каждом надо COM-компоненту настроить, и при обновлении релиза у нас во всяком случае обязательно слетает.

Все эти неудобства и натолкнули меня на мысль что было бы неплохо иметь веб-сервис который будет крутится на машинке которую администрирую непосредственно я. То есть поднимать   V83.COMConnector  по запросу пользователя и сбрасывать нужный  сеанс.

Реализация :

Пишем простенькую страничку с одним полем для ввода данных и одной кнопкой.  По нажатии кнопки данные о номере сеанса передаются на сервер, где с помощью пакета edge выполняется процедура на C# которая на входе принимает номер сеанса , поднимает  объект V83.COMConnector , и пытается убить нужный сеанс. Далее отображаем результат в консоль сервера и возвращаем ответ пользователю.

Для тех кому интересно попробовать - инструкция по установке  :

  1. Устанавливаем Node.js , у себя использую версию 5.6.0 (https://nodejs.org/download/release/v5.6.0/)
  2. Распаковываем скачанный архив в удобное нам место.
  3. Запускаем консоль (cmd.exe) и заходим в папку проекта (sesions)  пишем 
    npm install
    и пакетный менеджер ноды выкачает нам в эту же папку все необходимые зависимости.
  4. Далее  нам необходимо прописать данные для подключения к базе – открываем файл с именем com_api.js  и заполняем значения переменным:
        string server_name="ИмяСервера ";
        string cl_admin_name="ЛогинАдминаКластераСерверов";
        string cl_admin_pass="ПарольАдминаКластераСерверов";
        string base_name="ИмяНашейБазы";

    5. Запускаем выполнив в консоли из той же папки команду

    node server.js

*** Если при установке зависимостей edge не устанавливается – то сначала ставим еще «Microsoft .NET Framework 4.5» (https://www.microsoft.com/ru-RU/download/details.aspx?id=30653) и после установки выполняем пункт  3

*** Еще небольшой нюанс здесь код из расчета на то что в кластере  1 сервер и сеансы в консоли не задваиваются. Если в кластере к примеру 2 сервера и в консоли вы видите задвоенные сеансы – то в строке 30 файла com_api.js  нужно в условии  прописать

flag_first == 2

 Просто натолкнулся уже на это и корректно отрабатывает если при такой ситуации убивать именно второй сеанс.

Вступайте в нашу телеграмм-группу Инфостарт

node.js веб-сервис закрытие сеансов

См. также

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

Инструменты для разработчиков 1С 8.3: Infostart Toolkit. Автоматизация и ускорение разработки на управляемых формах. Легкость работы с 1С.

16500 руб.

02.09.2020    273406    1523    422    

1185

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

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

24900 руб.

20.08.2024    77093    389    171    

331

Пакетная печать Печатные формы Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

Расширение для создания и редактирования печатных форм в системе 1С:Предприятие 8.3. Благодаря конструктору можно значительно снизить затраты времени на разработку печатных форм, повысить качество и прозрачность разработки, а также навести порядок в многообразии корпоративных печатных форм. Обновление версии от 21.04.26

22570 руб.

06.10.2023    41288    121    54    

129

Инструментарий разработчика Нейросети Платные (руб)

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

15250 руб.

25.08.2025    67088    134    38    

142

Инструментарий разработчика Разработка Администрирование веб-серверов Системный администратор Программист Бизнес-аналитик Руководитель проекта 1С 8.3 Платные (руб)

Analyzer 1C сводит выгрузку 1С — основную конфигурацию и все расширения — в единый граф знаний. Любой запрос по связям за доли секунды, с пометками «Доб.» / «Заимств.» / «Переопределено». Новое в 2.0 — обновление поставки: сравнение и объединение версий деревом «как в Конфигураторе» с выгрузкой плана решений; поиск конфликтов из-за перехватов расширений и висячих ссылок; загрузка из бинарных .cf/.cfe; циклические зависимости. Плюс анализ влияния, запросы BSL, роли и RLS, граф вызовов. Минута на развёртывание через Docker без необходимости подключения к Интернет. Любая 1С:Предприятие 8.3+.

14000 руб.

17.04.2026    10191    43    61    

57

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

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

17000 руб.

10.11.2023    27116    99    46    

105

Инструментарий разработчика Программист 1С:Предприятие 8 Платные (руб)

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

9500 руб.

17.05.2024    55467    189    63    

221
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. andy23 488 01.09.16 14:44 Сейчас в теме
Задумка хорошая. Для данной задачи в качестве веб-сервера можно использовать вместо express, что-нибудь попроще, например node-static.
Чтобы не утруждать пользователя установками можно использовать портативную версию node.js Таким образом у меня реализован монитор журнала регистрации.
Чтобы сбросить сессию - нужно ввести ее номер, может сделать табличку, где будут выводится номера всех сессий и от туда можно было выбрать и сбросить.
edge.js для внедрения C# - эх как я искал такую штуку раньше, видимо недавно появилась...
Для отправки сообщения требуется регистрация/авторизация