Записки программиста 1с

Состояние в 1с.

Состояние в 1с 8.2

В процессе разработки конфигурации возникают ситуации, когда необходимо информировать пользователя системы о состоянии выполнения длительных процессов (например, считывание или запись массива данных). Для этого разработчик 1с использует панель состояния.

Панель состояния отображается вызовом метода Состояние() в 1с  и недоступна для вызова на стороне сервера. В том случае, если необходимо отобразить на клиенте состояние длительного процесса, протекающего на сервере, нужно реализовать этот процесс таким образом, чтобы он мог выполняться на сервере «порциями», которые будут инициироваться со стороны клиента. 

Состояние в 1с
Окно состояния в 1с

Синтаксис:

Состояние(<ТекстСообщения>, <Прогресс>, <Пояснение>, <Картинка>)

Параметры:
<ТекстСообщения> (необязательный)
Тип: Строка. Строка, предназначенная для вывода в панель состояния. Если параметр не указан, возобновляется вывод системного текста в панель состояния.
<Прогресс> (необязательный)
Тип: Число. Значение индикатора прогресса (от 1 до 100).
Если не задан, индикатор прогресса не отображается.
<Пояснение> (необязательный)
Тип: Строка. Текст пояснения.
<Картинка> (необязательный)
Тип: Картинка. Картинка.

Пример:

Состояние("Подождите ... ", 5, "идет формирование Документа");

Описание:
Выводит текст в панель состояния.

Доступность:
Тонкий клиент, веб-клиент, толстый клиент.

Окно отображения состояния

Если требуется отображать ход выполнения процесса с помощью индикатора (например, мы знаем общее количество рассчитываемых сотрудников и хотим показать, сколько сотрудников уже рассчитано), то при вызове метода Состояние() необходимо указывать второй параметр метода, который определяет абсолютное значение индикатора прогресса. Минимальное значение индикатора прогресса всегда равно 0, а максимальное значение ‑ 100.

Состояние без прогресса

Панель состояния автоматически исчезает с экрана по истечении небольшого времени после окончания работы фрагмента программы, вызвавшего появление панели состояния. Однако если навести на это окно курсор мыши, то окно будет существовать до тех пор, пока его принудительно не закроют или не уберут курсор мыши с площади панели состояния.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *