Определяет факт отличия основной конфигурации от конфигурации базы данных.
Синтаксис
КонфигурацияИзменена()Полное описание, параметры и ограничения
Глобальный контекст.КонфигурацияИзменена (Global context.ConfigurationChanged)
Глобальный контекст (Global context)
КонфигурацияИзменена (ConfigurationChanged)
Доступен, начиная с версии 8.0.
Синтаксис:
КонфигурацияИзменена()
Возвращаемое значение:
Тип: Булево.
Истина - основная конфигурация отличается от конфигурации базы данных, Ложь - в противном случае.
Описание:
Определяет факт отличия основной конфигурации от конфигурации базы данных.
Доступность:
Сервер, толстый клиент, внешнее соединение.
Использование в версии:
Доступен, начиная с версии 8.0.
Методическая информация
Практические примеры
Различить отличие основной конфигурации и динамическое изменение базы
Два булевых признака отвечают на разные вопросы. Чтение идентификатора конфигурации требует административных прав и не обновляет конфигурацию.
Где и как запускать
Полный серверный общий модуль своей отдельной конфигурации. Только чтение сведений текущего сеанса, без изменения прав и базы.
Подготовка
Работайте только в отдельной собственной конфигурации УчебнаяКонфигурацияСинтаксиса. Диагностику рабочих серверов и копирование реальных идентификаторов в общий учебник эти уроки не предусматривают.
Для первого урока вставьте полный модуль в свою управляемую форму и создайте команду ПроверитьСреду с одноимённым обработчиком. Для остальных создайте серверный общий модуль УчебнаяДиагностика, вставьте полный модуль урока и вызовите ВыполнитьПример из серверного обработчика команды.
Серверный модуль не должен быть привилегированным. Код не включает привилегии, не меняет безопасный режим, права, конфигурацию, настройки пользователей или соединения.
Вывод содержит только сведения текущего собственного учебного сеанса. Не публикуйте имена рабочих компьютеров, пользователей и идентификаторы конфигураций.
Фактические значения зависят от файловой или клиент-серверной базы, текущего режима и прав. Код проверяет типы и явно подписывает наблюдения, не обещает фиксированные номера или имена.
Проверки BSL-модулей в реальном запущенном клиенте 1С не проводились автоматически. Статическая сверка со справкой не подтверждает состояние вашей базы.
Процедура ВыполнитьПример() Экспорт
ЕстьОтличие = КонфигурацияИзменена();
БылоДинамическоеИзменение = КонфигурацияБазыДанныхИзмененаДинамически();
Сообщить(ТипЗнч(ЕстьОтличие) = Тип("Булево"));
Сообщить(ТипЗнч(БылоДинамическоеИзменение) = Тип("Булево"));
Сообщить("Основная конфигурация отличается от конфигурации базы: " + Строка(ЕстьОтличие));
Сообщить("Конфигурация базы изменялась динамически после старта: " + Строка(БылоДинамическоеИзменение));
Попытка
Идентификатор = ПолучитьИдентификаторКонфигурации();
Исключение
ВызватьИсключение "СТОП: штатное чтение идентификатора собственной конфигурации не завершено: " + ОписаниеОшибки();
КонецПопытки;
Сообщить(ТипЗнч(Идентификатор) = Тип("Строка"));
Сообщить("Длина идентификатора собственной конфигурации: " + Строка(СтрДлина(Идентификатор)));
КонецПроцедурыРазбор по шагам
Прочитать оба признака до каких-либо изменений; код сам ничего не обновляет.
КонфигурацияИзменена означает отличие основной конфигурации от конфигурации базы данных.
КонфигурацияБазыДанныхИзмененаДинамически относится к динамическому изменению базы после старта, не к несохранённому изменению формы.
Штатный ПолучитьИдентификаторКонфигурации доступен только пользователям с административными правами. При ошибке чтения сохранить фактическое ОписаниеОшибки и остановиться; не подменять причину догадкой о правах и не включать привилегии.
При разрешённом чтении получить идентификатор по метаданным и вывести только тип и длину, не полный рабочий идентификатор.
Как проверить результат
Две проверки типов Истина; реальные флаги отдельно подписаны.
При успешном штатном чтении третья проверка Истина и длина идентификатора. При отказе или другой ошибке выводится исходная диагностика и СТОП; успешное чтение не обещается.
Ожидаемый результат
Есть полноценная учебная диагностика двух часто смешиваемых состояний конфигурации и ограниченного административного чтения.
На что обратить внимание
Истина первого признака не является подробным протоколом ошибок обновления.
Идентификатор формируется по метаданным; не выдавайте его за номер релиза конфигурации или GUID пользователя.
Чтобы проверить развёртывание, одного булевого признака недостаточно: нужны версии, протокол обновления и реальные проверки.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.