Тип: Строка. Содержит признак специального варианта поставки платформы "1С:Предприятие". Обычная поставка в данном свойстве содержит пустую строку.
Полное описание, параметры и ограничения
СистемнаяИнформация.ВариантПриложения (SystemInfo.AppVariant)
СистемнаяИнформация (SystemInfo)
ВариантПриложения (AppVariant)
Доступен, начиная с версии 8.3.22.
Использование:
Только чтение.
Описание:
Тип: Строка.
Содержит признак специального варианта поставки платформы "1С:Предприятие". Обычная поставка в данном свойстве содержит пустую строку.
Доступность:
Тонкий клиент, веб-клиент, мобильный клиент, сервер, толстый клиент, внешнее соединение, мобильное приложение (клиент), мобильное приложение (сервер), мобильный автономный сервер.
Использование в версии:
Доступен, начиная с версии 8.3.22.
Методическая информация
Практические примеры
Сравнить версии и окружение клиента и сервера без сетевого запроса
Отчёт различает место исполнения и недоступные аппаратные данные. Версия платформы, версия ОС и признак специальной поставки не являются одним показателем.
Где и как запускать
Учебная управляемая форма: тонкий/толстый клиент Windows или веб-клиент; указанное место вызова принципиально. Код только читает сведения и выводит локальные сообщения.
Подготовка
В учебной базе создайте новую внешнюю обработку с пустой управляемой формой. Добавьте команду УчебныйПример, назначьте её Действие одноимённой клиентской процедуре и создайте кнопку этой команды.
Код — полный модуль собственной формы. Реквизиты, права администратора кластера, сетевые сервисы, печать и сохранение файлов для этих уроков не нужны.
Проверяйте на своём реально запущенном клиенте. СистемнаяИнформация сообщает окружение места вызова, а не обязательно тот же компьютер, что исполняет серверный код.
&НаКлиенте
Процедура УчебныйПример(Команда)
Клиент = СводкаОкружения();
Сервер = СводкаСерверногоОкружения();
Сообщить("КЛИЕНТ: платформа " + Клиент.Версия1С + "; ОС " + Клиент.ВерсияОС);
Сообщить("СЕРВЕРНЫЙ КОНТЕКСТ: платформа " + Сервер.Версия1С + "; ОС " + Сервер.ВерсияОС);
Сообщить("Тип платформы клиента: " + Клиент.ТипПлатформы);
Сообщить("Тип платформы серверного контекста: " + Сервер.ТипПлатформы);
Если Клиент.Вариант = "" Тогда
Сообщить("Клиент: обычный вариант поставки по свойству ВариантПриложения");
Иначе
Сообщить("Клиент: специальный вариант поставки: " + Клиент.Вариант);
КонецЕсли;
Сообщить("Версии клиента и сервера совпали: " + Строка(Клиент.Версия1С = Сервер.Версия1С));
Сообщить("Сведения о процессоре доступны клиенту: " + Строка(Клиент.Процессор <> ""));
Сообщить("Есть строка User-Agent клиента: " + Строка(Клиент.UserAgent <> ""));
Если Клиент.ПамятьAPI = 0 Тогда
Сообщить("Клиент: размер памяти этим вызовом не определён; в веб-клиенте API всегда возвращает 0");
Иначе
Сообщить("Клиент: исходное значение ОперативнаяПамять = " + Строка(Клиент.ПамятьAPI));
Сообщить("Единица в локальном описании свойства не указана: не подписываем результат как МБ или ГБ без проверки");
КонецЕсли;
Сообщить(ТипЗнч(Клиент.Версия1С) = Тип("Строка"));
Сообщить(ТипЗнч(Клиент.ПамятьAPI) = Тип("Число"));
КонецПроцедуры
&НаСервереБезКонтекста
Функция СводкаСерверногоОкружения()
Возврат СводкаОкружения();
КонецФункции
&НаКлиентеНаСервереБезКонтекста
Функция СводкаОкружения()
Информация = Новый СистемнаяИнформация;
Сводка = Новый Структура;
Сводка.Вставить("Версия1С", Информация.ВерсияПриложения);
Сводка.Вставить("ВерсияОС", Информация.ВерсияОС);
Сводка.Вставить("Вариант", Информация.ВариантПриложения);
Сводка.Вставить("Процессор", Информация.Процессор);
Сводка.Вставить("ПамятьAPI", Информация.ОперативнаяПамять);
Сводка.Вставить("UserAgent", Информация.ИнформацияПрограммыПросмотра);
Если Информация.ТипПлатформы = Неопределено Тогда
Сводка.Вставить("ТипПлатформы", "API не определил тип платформы");
Иначе
Сводка.Вставить("ТипПлатформы", Строка(Информация.ТипПлатформы));
КонецЕсли;
Возврат Сводка;
КонецФункцииРазбор по шагам
СводкаОкружения вызывается локально на клиенте и отдельно через серверную функцию. Общая функция компилируется для обоих мест исполнения.
Возвращаем обычную структуру чисел и строк, а не объект СистемнаяИнформация из другого контекста.
ВерсияПриложения — версия 1С, ВерсияОС — операционной системы, ВариантПриложения — специальной поставки. Пустой вариант означает обычную поставку, не ошибку версии.
В клиент-серверной базе сведения могут относиться к разным машинам. В файловой базе совпадение ОС ожидаемо, но не доказывает наличие отдельного сервера кластера.
Пустые сведения и Неопределено не подменяем вымышленными аппаратными характеристиками. В веб-клиенте ОперативнаяПамять всегда 0 по справке 8.5.1.
User-Agent и процессор не печатаем полностью: показываем только наличие. Исходное значение памяти не переводим в неподтверждённую единицу.
Как проверить результат
Последние две проверки типов Истина. В отчёте отдельно подписаны клиент и серверный контекст.
Совпадение версий может быть Истина или Ложь: это результат диагностики, не заранее гарантированный контрольный ответ.
В веб-клиенте ноль памяти сопровождается пояснением недоступности, а не фразой «на компьютере нет оперативной памяти».
Ожидаемый результат
Получена локальная диагностическая сводка с корректной трактовкой контекста, версии и отсутствующих сведений.
На что обратить внимание
СистемнаяИнформация не измеряет текущую загрузку CPU, свободную память процесса или производительность бизнес-операции.
ТипПлатформы веб-клиента характеризует поддерживаемый вариант браузера и может быть Неопределено; не считайте его безусловным доказательством разрядности ОС.
Диагностические данные окружения могут раскрывать инфраструктуру. Не отправляйте их наружу автоматически.
Пример не запускался в вашей базе. Перед применением проверьте его в указанном учебном контексте.