СоединениеИнформационнойБазы.НомерСоединения

Свойства · ConnectionNumber

Тип: Число. Номер соединения с информационной базой.

Полное описание, параметры и ограничения

СоединениеИнформационнойБазы.НомерСоединения (InfoBaseConnection.ConnectionNumber)

СоединениеИнформационнойБазы (InfoBaseConnection)

НомерСоединения (ConnectionNumber)

Доступен, начиная с версии 8.0.

Использование:
Только чтение.
Описание:
Тип: Число.
Номер соединения с информационной базой.
Доступность:

Сервер, толстый клиент, внешнее соединение.

Использование в версии:

Доступен, начиная с версии 8.0.

Методическая информация

Практические примеры

Сопоставить свой сеанс с описанием соединения

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

Где и как запускать

Полный серверный общий модуль учебной копии базы. Чтение встроенного API, не администрирование RAS/COM.

Подготовка

  1. Только отдельная учебная копия базы. Создайте серверный общий модуль УчебныеЗадачи; вставьте полный модуль выбранного урока и вызовите ВыполнитьПример() из серверной учебной команды.

  2. Это встроенный API 1С, не COM/RAS. Соединение с агентом кластера, логин администратора и регистрация COM не нужны. Тонкий клиент вызывает серверную команду, не выполняет эти функции напрямую.

  3. Для списков сеансов/соединений по локальной справке нужно право АктивныеПользователи. Если его нет, пример останавливается с пояснением; права и привилегированный режим код не меняет.

  4. Проверки только читают данные. Они не завершают сеансы, не отключают соединения, не меняют часовые пояса и не выводят IP, имя компьютера или имя пользователя в журнал.

Процедура ВыполнитьПример() Экспорт
    Текущий = ПолучитьТекущийСеансИнформационнойБазы();
    Если ТипЗнч(Текущий) <> Тип("СеансИнформационнойБазы") Тогда
        ВызватьИсключение "Ожидался встроенный СеансИнформационнойБазы, не COM Сеанс";
    КонецЕсли;
    Попытка
        Соединения = ПолучитьСоединенияИнформационнойБазы();
    Исключение
        Сообщить("Список соединений недоступен; проверьте право АктивныеПользователи и причину ошибки: " + ОписаниеОшибки());
        Возврат;
    КонецПопытки;
    СвязейСвоегоСеанса = 0;
    Для Каждого Соединение Из Соединения Цикл
        Если Соединение.НомерСеанса <> Текущий.НомерСеанса Тогда
            Продолжить;
        КонецЕсли;
        СвязейСвоегоСеанса = СвязейСвоегоСеанса + 1;
        Сообщить("Номер собственного соединения: " + Строка(Соединение.НомерСоединения));
        Сообщить(ТипЗнч(Соединение.НачалоСоединения) = Тип("Дата"));
        Сообщить(ТипЗнч(Соединение.НачалоСеанса) = Тип("Дата"));
        Сообщить("Приложение соединения: " + Соединение.ИмяПриложения);
        Сообщить("Компьютер указан: " + Строка(НЕ ПустаяСтрока(Соединение.ИмяКомпьютера)));
        Сообщить("Пользователь определён: " + Строка(Соединение.Пользователь <> Неопределено));
    КонецЦикла;
    Сообщить("Связей собственного сеанса в снимке: " + Строка(СвязейСвоегоСеанса));
    Если СвязейСвоегоСеанса = 0 Тогда
        Сообщить("Снимок не нашёл назначенного соединения; это не команда завершения сеанса");
    КонецЕсли;
КонецПроцедуры

Разбор по шагам

  1. Список соединений тоже требует право АктивныеПользователи. Ошибка не заменяется молча пустым массивом.

  2. Обрабатываются только записи с номером текущего сеанса. Другие сведения пользователей не выводятся.

  3. НачалоСоединения и НачалоСеанса — разные даты. Проверяются типы, но не навязывается порядок двух дат или их равенство.

  4. Вызовы дают отдельные снимки: связь может измениться между чтением текущего сеанса и получением массива. Нулевое количество обработано явно.

Как проверить результат

  1. Для каждой найденной своей связи два Истина о типах дат и безопасная диагностика.

  2. При отсутствии связи — количество 0 и пояснение; ошибки отсоединения и завершение сеанса не вызываются.

Ожидаемый результат

Сеанс сопоставлен с текущими описаниями соединений без смешивания времён начала.

На что обратить внимание

  1. Не утверждайте, что каждый сеанс обязан иметь ровно одно соединение в любом снимке.

  2. Список соединений не является обещанием состояния на момент следующей команды.

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

Не хотите разбираться сами?

Адаптируем это решение под вашу базу. Оценка бесплатно.

Оставить задачу

1С, 1С:Предприятие — товарные знаки ООО «1С». Сайт не является официальным представительством фирмы «1С» и не аффилирован с ней.