1с не работает блокировка соединений

Обновлено: 04.07.2024

Версии обработки 8.1(3+) / 8.2(3+) от 14.03.2014:
+ Сервис управления выполнением регламентных заданий для клиент-серверной ИБ
( приостановка выполнения "в ручную" и при установке блокировки соединений) (Рис.8) ;
+ Запуск альтернативного разрыве соединений в клиент-серверной ИБ
из меню "Сервис" без установки самой блокировки соединений (Рис.7) ;
+ Флаг использования альтернативного разрыве соединений в клиент-серверной ИБ
(для отмены альтернативного разрыве без изменения "Режима разрыва" );

Версия обработки 8.2++ от 22.03.2014:
Учтено замечание (64) den17:
обеспечен разрыв соединений с Web-клиентами
при альтернативном разрыве соединений в клиент-серверной ИБ.

Версии обработки 8.2++ / 8.1++ от 14.12.2013:
Выполнено пожелание (29) mymyka:
Добавлен сервис "Альтернативного разрыва соединений" (Рис.4 и Рис.5) и связанный с ним
диалог "Авторизация на сервере 1С" (Рис.6). Подробности кратко описаны ниже в публикации.
Более подробно смотрите в справочном описании обработки.

Для этого в типовую обработку блокировки базы были внесены следующие
интерфейсные дополнения:

    Меню выбора начала периода блокировки. Выводится при нажатии кнопки очистки поля ввода.
    Позволяет выбрать из списка желаемое время начала блокировки (через MM минут с текущего времени).

Примечания:

Дополнительные запоминаемые опции обработки:

  1. Флаг "Открывать модально" - если установлен, обработка всегда открывается модально
    (на Web-клиенте опция игнорируется).
  2. Флаг "Открывать в УФ" - действует только для встоеной обработке в толстом клиенте (обычное приложение).
    Позволяет выбрать в какой форме (обычной или управляемой) открыть обработку.
  3. Поскольку при снятии флага блокировки соединений значение кода разрешения невозможно восстановить из
    параметров блокировки обработка запоминает при закрытии последнее непустое его значение
    и при необходимости восстанавливает его при открытии.
  4. Режим разрыва соединений - одно из значений показанных на (Рис.4), определяет каким способом будут
    принудительно разрываться соединения с информационной базой (в клиент-серверном варианте):

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


Обработка универсализирована:

Может работать в полностью не типовой или даже «пустой» конфигурации.
Версия обработки для платформы 8.2 имеет как управляемую, так и обычную формы.

Обычная форма взята в своей основе из УПП-1.2, а управляемая из УПП-1.3.
По замечанию dedicated (17) для соместимости со справочником "Внешние обработки" в обычном режиме
в качестве основной формы обработки выбрана обычная форма, а в качестве дополнительной - управляемая.

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

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

Обработку можно встроить в конфигурацию заменив ею типовую обработку блокировки соединений.
Она также может быть использована в качестве дополнительной внешней обработки,
сохранённой в справочнике «Дополнительные отчеты и обработки» или «Внешние обработки» .

Актуальные версии обработки:

Актуальные версии обработки находятся в следующих файлах поставки:

Остальные файлы оставлены для сохранения статистики загрузок и
не рекомендуются для скачивания.

1С:Предприятие 8.1 (8.1.14.72)+SQL
Люди добрые помогите )
с помощью метода "УстановитьБлокировкуУстановкиСоединений()" устанавливаю блокировку, при чтении методом "ПолучитьБлокировкуУстановкиСоединений()" говорит что блокировка установлена, но при этом без проблем дает зайти в базу!
всегда работало, а тут нет. где подвох, может какие настройки в консоли серверов или еще где .

(0)Я думаю будет логично, если система пустит пользователя с правами "Обновление конфигурации базы данных".

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

файлик создается? забыл расширение, который должен создаваться при блокировке

Время блокировки проверь. Мало ли, а вдруг установлено.

с параметрами блокировки изгалялся как можно, результат один (

(5) Ты код из СП:
----------------------------------------------------------------
---------------------------------------------------------------------
типа вставил и хочешь сказать ничего? Не верю.

(5) Через COM блокировку проверяешь? После запуска заблокированной базы что возвращает ПолучитьБлокировкуУстановкиСоединений?
ЗЫ (6)+1

(7) методом ПолучитьБлокировкуУстановкиСоединений() возвращает то что было установлено методом УстановитьБлокировкуУстановкиСоединений()

(11) А конкретнее. В предприятии интерактивно запустил обработку, которая установила блокировку. Затем закрыл предприятие, повторно открыл без ключа в командной строке и через код проверил в отладчике (или обработкой), что блокировка установлена и её параметры?

(12) да, обработка внешняя (стандартная из УПП), установл параметры, закрываю обработку, потом снова открываю (она считывает при открытии параметры блокировки) - вывод что все установленно как надо и в отлатчике тоже проверил - параметры установлены. Но заходить при этом все-равно дает.

(13) Куда дает заходить - в обработку? Базу закрываешь или только обработку закрываешь?
ЗЫ Пока что по твоим описаниям ничего не понятно .

(15) еще раз:
1) установил блокировку обработкой (выставил период и др. параметры)
3) открываю базу, и она открывается. под любым пользователем
4) открываю снова обработку что-бы проверить параметры блокировки - они установлены

(16) Набери в табло после захода в заблокированную базу
ПолучитьБлокировкуУстановкиСоединений().Установлена
ПолучитьБлокировкуУстановкиСоединений().КодРазрешения

ошибка не в коде 99% ) ведь работает-же в файловом варианте
может в SQL загвоздка, там может как-то можно запретить такие блокировки .

1С:Предприятие 8.1 (8.1.14.72)+SQL
Люди добрые помогите )
с помощью метода "УстановитьБлокировкуУстановкиСоединений()" устанавливаю блокировку, при чтении методом "ПолучитьБлокировкуУстановкиСоединений()" говорит что блокировка установлена, но при этом без проблем дает зайти в базу!
всегда работало, а тут нет. где подвох, может какие настройки в консоли серверов или еще где .

(0)Я думаю будет логично, если система пустит пользователя с правами "Обновление конфигурации базы данных".

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

файлик создается? забыл расширение, который должен создаваться при блокировке

Время блокировки проверь. Мало ли, а вдруг установлено.

с параметрами блокировки изгалялся как можно, результат один (

(5) Ты код из СП:
----------------------------------------------------------------
---------------------------------------------------------------------
типа вставил и хочешь сказать ничего? Не верю.

(5) Через COM блокировку проверяешь? После запуска заблокированной базы что возвращает ПолучитьБлокировкуУстановкиСоединений?
ЗЫ (6)+1

(7) методом ПолучитьБлокировкуУстановкиСоединений() возвращает то что было установлено методом УстановитьБлокировкуУстановкиСоединений()

(11) А конкретнее. В предприятии интерактивно запустил обработку, которая установила блокировку. Затем закрыл предприятие, повторно открыл без ключа в командной строке и через код проверил в отладчике (или обработкой), что блокировка установлена и её параметры?

(12) да, обработка внешняя (стандартная из УПП), установл параметры, закрываю обработку, потом снова открываю (она считывает при открытии параметры блокировки) - вывод что все установленно как надо и в отлатчике тоже проверил - параметры установлены. Но заходить при этом все-равно дает.

(13) Куда дает заходить - в обработку? Базу закрываешь или только обработку закрываешь?
ЗЫ Пока что по твоим описаниям ничего не понятно .

(15) еще раз:
1) установил блокировку обработкой (выставил период и др. параметры)
3) открываю базу, и она открывается. под любым пользователем
4) открываю снова обработку что-бы проверить параметры блокировки - они установлены

(16) Набери в табло после захода в заблокированную базу
ПолучитьБлокировкуУстановкиСоединений().Установлена
ПолучитьБлокировкуУстановкиСоединений().КодРазрешения

ошибка не в коде 99% ) ведь работает-же в файловом варианте
может в SQL загвоздка, там может как-то можно запретить такие блокировки .

На практике часто возникает необходимость выгнать всех пользователей из 1С или завершить сеансы принудительно с последующей настройкой блокировки начала новых сеансов. Для чего это нужно? Для того чтобы разработчик мог спокойно применить все изменеия в конфигурации базы данных и пользователи не помешали ему в этом.

Включаем блокировку соединений с информационной базой 1C

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

Открываем свойства информационной базы 1С

Устанавливаем блокировку начала сеансов

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

Завершаем зависшие сеансы из консоли кластера серверов 1С

Удаляем все активные сеансы 1С через консоль кластера

Удаляем все активные сеансы 1С через консоль кластера

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

Получаем монополный доступ к информационной базе с кодом разрешения

Всё, блокировку настроили, сеансы подчистили. Как теперь попасть в информационную базу 1С? Запускаем 1С предприятие, выбираем нашу базу, нажимаем Изменить/Далее и в поле Дополнительные параметры запуска вводим нашь код разрешения через пробел от ключа /uc вначале параметра. Готово, Можно стартовать!

Читайте также: