Тип: Произвольный. Набор таких свойств определяется набором общих реквизитов, в которых участвует данная константа и для которых РазделениеДанных = Разделять и ИспользованиеРазделяемыхДанных = НезависимоИСовместно.
Полное описание, параметры и ограничения
КонстантаМенеджерЗначения.<Имя константы>.<Имя общего реквизита> (ConstantValueManager.<Constant name>.<Common attribute name>)
КонстантаМенеджерЗначения.<Имя константы> (ConstantValueManager.<Constant name>)
<Имя общего реквизита> (<Common attribute name>)
Доступен, начиная с версии 8.2.
Использование:
Чтение и запись.
Описание:
Тип: Произвольный.
Набор таких свойств определяется набором общих реквизитов, в которых участвует данная константа и для которых РазделениеДанных = Разделять и ИспользованиеРазделяемыхДанных = НезависимоИСовместно.
Доступность:
Сервер, толстый клиент, внешнее соединение.
Использование в версии:
Доступен, начиная с версии 8.2.
Методическая информация
Практические примеры
Прочитать лимит своей области и собрать настоящий ключ константы
Динамическое имя общего реквизита появляется из конкретного разделителя метаданных, а менеджер читает значение только собственной учебной области.
Где и как запускать
Тело собственной серверной процедуры в отдельной учебной базе с указанным разделителем.
Подготовка
Только своя отдельная учебная клиент-серверная база с разделением данных. Константа УчебныйЛимитКниг типа Число 10.0 и независимый непериодический регистр сведений УчебныеОстаткиКниг: измерение КодКниги Строка 40, ресурс Количество Число 10.0.
Создайте параметры сеанса УчебнаяОбластьКниг Число 10.0 и УчебнаяОбластьКнигИспользуется Булево. Общий реквизит УчебнаяОбластьКниг: РазделениеДанных=Разделять, ИспользованиеРазделяемыхДанных=НезависимоИСовместно; значение и использование разделения свяжите с указанными параметрами сеанса.
Автоиспользование общего реквизита выключите, в его состав явно включите только собственную константу и собственный регистр. Разделение пользователей / аутентификации не включайте. Не подставляйте объекты рабочей конфигурации.
Код без заголовка — тело отдельной серверной процедуры своей обработки. Он устанавливает область только собственного сеанса, читает / создаёт ключи в памяти. Записать и Установить для значения константы не вызываются.
BSL, параметры сеанса и данные 1С при сборке HTML не изменялись. Наличие ключа в памяти не доказывает существование записи в базе.
ПараметрыСеанса.УчебнаяОбластьКниг = 1;
ПараметрыСеанса.УчебнаяОбластьКнигИспользуется = Истина;
Менеджер = Константы.УчебныйЛимитКниг.СоздатьМенеджерЗначения();
Менеджер.УчебнаяОбластьКниг = 1;
Менеджер.Прочитать();
ПоляКлюча = Новый Структура("УчебнаяОбластьКниг", Менеджер.УчебнаяОбластьКниг);
Ключ = Константы.УчебныйЛимитКниг.СоздатьКлючЗначения(ПоляКлюча);
Сообщить("Область менеджера: " + Строка(Менеджер.УчебнаяОбластьКниг));
Сообщить("Область ключа: " + Строка(Ключ.УчебнаяОбластьКниг));
Сообщить("Прочитанный лимит: " + Строка(Менеджер.Значение));Разбор по шагам
Создайте собственные метаданные и разделитель с правильным использованием разделяемых данных.
В своём серверном сеансе задайте область 1, получите менеджер и прочитайте лимит.
Создайте ключ штатным методом и сравните два настоящих динамических поля области.
Как проверить результат
У менеджера и у ключа область равна 1. Число лимита выводится фактическое; новое значение 750 в базу не записывается.
Обычный общий реквизит без разделения не создаёт такого поля ключа константы. Требуется именно НезависимоИСовместно и включение константы в состав.
Ожидаемый результат
Оба динамических доступа имеют собственный источник и документированный конструктор ключа.
На что обратить внимание
Ключ идентифицирует значение константы; он не является самим числовым лимитом и не меняет настройки разделения.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.