ОбъектМетаданных: ПланСчетов.РежимУправленияБлокировкойДанных

Свойства · DataLockControlMode

Тип: РежимУправленияБлокировкойДанныхПоУмолчанию. Определяет режим управления блокировкой данных объекта конфигурации (например, Автоматический, Управляемый, АвтоматическийИУправляемый).

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

ОбъектМетаданных: ПланСчетов.РежимУправленияБлокировкойДанных (MetadataObject: ChartOfAccounts.DataLockControlMode)

ОбъектМетаданных: ПланСчетов (MetadataObject: ChartOfAccounts)

РежимУправленияБлокировкойДанных (DataLockControlMode)

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

Использование:
Только чтение.
Описание:
Тип: РежимУправленияБлокировкойДанныхПоУмолчанию.
Определяет режим управления блокировкой данных объекта конфигурации (например, Автоматический, Управляемый, АвтоматическийИУправляемый).
Доступность:

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

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

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

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

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

Отделить стандартные поля счёта от признаков учёта и пользовательских реквизитов

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

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

Учебная база: создайте серверный общий модуль УчебныеЗадачи (флаг Сервер). Код без директив вставьте в тело процедуры ВыполнитьПример() Экспорт. Вызовите её из серверного обработчика команды учебной обработки. Не запускайте в рабочей базе.

Подготовка

  1. Создайте НОВУЮ пустую файловую базу, корневое имя УчебныйУчет85. В рабочей БП/КА2/УТ/УНФ эти задачи не запускайте. Это технический пример API, не готовый бухгалтерский учёт.

  2. Планы видов характеристик → Добавить: УчебныеАналитики85. Тип значения только Строка 30. Элементы, дополнительные реквизиты, табличные части и предопределённые значения не создавайте.

  3. Планы счетов → Добавить: УчебныеСчета85. ДлинаКода 10, МаскаКода @@@.@@@.@@, ДлинаНаименования 100, ДлинаПорядка 20. АвтоПорядокПоКоду выключен, КонтрольУникальности включён. ВидыСубконто=УчебныеАналитики85, МаксКоличествоСубконто=2.

  4. У плана счетов не создавайте пользовательские реквизиты, табличные части, признаки учёта/субконто, предопределённые счета, формы, команды, макеты и дополнительные индексы. Модули оставьте пустыми. Историю данных и два флага обработки её версий выключите. Расширений нет.

  5. Обновите конфигурацию БД. Создайте серверный обработчик ВыполнитьПример() Экспорт в собственной обработке. Фрагмент вставляйте в тело; запускайте уроки по отдельности.

  6. Объекты создаются только в памяти: Записать/Удалить/Заблокировать не вызываются. Регистров бухгалтерии, проводок и фактических остатков в этом примере нет.

Описание = Метаданные.ПланыСчетов.Найти("УчебныеСчета85");
Если Описание = Неопределено Тогда
    ВызватьИсключение "Сначала создайте собственный план УчебныеСчета85";
КонецЕсли;
Если Описание.ДлинаКода <> 10 Или Описание.ДлинаНаименования <> 100
    Или Описание.ДлинаПорядка <> 20 Или Описание.МаскаКода <> "@@@.@@@.@@"
    Или Описание.АвтоПорядокПоКоду Или Описание.МаксКоличествоСубконто <> 2 Тогда
    ВызватьИсключение "Настройки учебного плана не соответствуют подготовке";
КонецЕсли;
Если Описание.ВидыСубконто = Неопределено Тогда
    ВызватьИсключение "Назначьте собственный план аналитик";
КонецЕсли;
Если Описание.ВидыСубконто.Имя <> "УчебныеАналитики85" Тогда
    ВызватьИсключение "Нужны только собственные учебные аналитики";
КонецЕсли;
Менеджер = ПланыСчетов.УчебныеСчета85;
Для Каждого Поле Из Описание.СтандартныеРеквизиты Цикл
    Сообщить("Стандартное поле: " + Поле.Имя);
КонецЦикла;
Для Каждого Часть Из Описание.СтандартныеТабличныеЧасти Цикл
    Сообщить("Стандартная часть: " + Часть.Имя);
КонецЦикла;
Сообщить(Описание.Реквизиты.Количество() = 0);
Сообщить(Описание.ТабличныеЧасти.Количество() = 0);
Сообщить(Описание.ПризнакиУчета.Количество() = 0);
Сообщить(Описание.ПризнакиУчетаСубконто.Количество() = 0);
Сообщить(Описание.ДополнительныеИндексы.Количество() = 0);
Сообщить(Описание.Команды.Количество() = 0);
Сообщить(Описание.Макеты.Количество() = 0);
Сообщить(Описание.МодульОбъекта = Неопределено);
Сообщить(Описание.МодульМенеджера = Неопределено);
Сообщить(Описание.Справка = Неопределено);
Сообщить(Описание.Предопределенные = Неопределено);
Сообщить(Описание.ПолучитьИменаПредопределенных().Количество() = 0);
Сообщить(Описание.КонтрольУникальности);
Сообщить("Описаний характеристик: " + Строка(Описание.Характеристики.Количество()));
Для Каждого ПолеБлокировки Из Описание.ПоляБлокировкиДанных Цикл
    Сообщить("Поле блокировки: " + ПолеБлокировки.Имя);
КонецЦикла;
Сообщить("Режим блокировки: " + Строка(Описание.РежимУправленияБлокировкойДанных));

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

  1. Стандартные поля и табличные части перебираем через Имя. Не используем отсутствующий Найти у коллекции стандартных реквизитов.

  2. ПризнакиУчета и ПризнакиУчетаСубконто — определения схемы, не сами виды субконто и не движения.

  3. МодульОбъекта/МодульМенеджера/Справка/Предопределенные имеют текущий контракт Неопределено. Для списка имён предопределённых используем специальный метод.

  4. КонтрольУникальности читаем по подготовке; не записываем два одинаковых кода для проверки.

  5. ПоляБлокировкиДанных и режим только читаются. Установка блокировки не выполняется.

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

  1. Тринадцать логических проверок дают Истина.

  2. В выводе стандартной части видны ВидыСубконто, хотя коллекция пользовательских ТабличныеЧасти пуста.

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

Показан состав схемы счёта и отделены стандартные, пользовательские и недоступные через API данные.

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

  1. Неопределено у свойства модуля не доказывает отсутствие BSL.

  2. Пустая пользовательская коллекция не означает отсутствие стандартных полей/частей.

  3. Историю, регистр бухгалтерии и пользовательские права этот урок не анализирует.

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

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

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

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

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