Как сделать прогресс-бар
-

Как сделать прогресс-бар

1
25492
06.06.2022 Айдар Фархутдинов

Содержание:

1.       Индикатор процесса

2.       Реализация прогресс-бара в 1С  

 

1.    Индикатор процесса


В данной статье будет описано, что такое прогресс-бар, как и где он используется, а также дана полная инструкция того, как сделать прогресс-бар в формах системы 1С.


Прогресс-бар, который также называют индикатором процесса либо индикатором выполнения – это специальный элемент, который отвечает за графический интерфейс у пользователя, а именно выглядит как некоторая прямоугольная зона с частично заполненной областью иной фактуры или цветовой гаммы, которая отвечает за процент прогресса, например, отображает то, насколько файл загружен. Согласно настройкам по умолчанию, прогресс-бар имеет заполнение с левой части в правую.


Примерно следующим образом выглядит данный элемент:



Пример индикатора выполнения

 

Стоит отметить, что прогресс-бар может быть использован лишь тогда, когда известно сколько будет длится процесс, а также приблизительное время до его окончания.  


2.    Реализация прогресс-бара в 1С


Рассмотрим выполнение задачи, когда в формах системы 1С, которые являются управляемыми, нужно создать прогресс-бар.


Суть задачи состоит в том, что есть проблема: когда происходит вызов серверной процедуры, то интерфейс у пользователя будет заблокирован до конца исполнения данной серверной процедуры. Так что менять форму, а также выводить строку со статусом не получается.


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


Для этого необходимо запрашивать состояние задания, которое выполняется в фоновом режиме, ответом будет «активно», «завершено» и другое, это действие выполняется при помощи процедуры.


Рассмотрим пошаговую практическую инструкцию:

1.     Для начала необходимо поместить долгую процедуру в модуле сервера, а не глобальном;

2.     Далее в данной процедуре для любого этапа отправляем сообщения для пользователя с текстом «Статус» или «Процент выполнения», ниже демонстрируется текст программы для данного действия:



Сообщение для пользователя в прогресс-баре в 1С

 

3.     Следующий шаг – это запуск фонового задания и сохранение идентификатора задания, как показано далее:



Запуск фонового задания

 

4.     Дальше программисту предстоит произвести подключение процедуры-обработчика с конкретным интервалом по ожиданию, как показано на скриншоте с примером ниже:



Подключение процедуры-обработчика для прогресс-бара в 1С

 

5.     Внутри данной процедуры-обработчика нужно произвести опрос по состоянию нашей фоновой задачи:



Опрос по состоянию фоновой задачи для создания прогресс-бара в 1С

 

6.     Ответом будут сообщения, которые отправлялись из долгой процедуры, нужно произвести их обработку, как демонстрируется далее:



Ответ из долгой процедуры

 

Получается, что состояние того, насколько выполнена процедура, будет отправлено при помощи сообщений пользователю, в которых находятся по сериям данные xml, их мы и видим в виде прогресс-бара.


Также стоит отметить, что все результирующие должны передаваться при помощи временного хранилища, адрес которого можно получить из идентификатора формы.


Прогресс-бар в 1С будет выглядеть следующим образом:



Внешний вид прогресс-бара в 1С

 

В данной статье было описано, что такое прогресс-бар и для чего он используется, а также как реализовать прогресс-бар в 1С.

 

Специалист компании «Кодерлайн»

Айдар Фархутдинов

Задать вопрос автору статьи
Тема вопроса*
Ваше имя*
E-mail или телефон*
Ваш вопрос*
 

0
Guest
копипаст отсюда https :/ /infostart.ru/public/573761/
Имя Цитировать 0
Добавить комментарий
Текст сообщения*
Защита от автоматических сообщений
 
Услуги программиста 1С
Получите специалиста
для решения всех задач
в области 1С
Программы 1С
Цены и подробное описание программ 1С:Предприятие 8.