// Пример использования: Запрос=Новый Запрос("ВЫБРАТЬ Ссылка ИЗ Справочник.Номенклатура"); Выборка=Запрос.Выполнить().Выбрать(); Всего=Выборка.Количество(); // Инициализация // ФормаПроцесса=ПолучитьФорму("ФормаПроцесса"); ФормаПроцесса.Заголовок="Обработка данных..."; ФормаПроцесса.ЭлементыФормы.ИндикаторПроцесса.МаксимальноеЗначение=Всего; ФормаПроцесса.Открыть(); н=0; /////////////////// Пока Выборка.Следующий() Цикл // Установка текущих значений // н=н+1; ОбработкаПрерыванияПользователя(); ФормаПроцесса.ЭлементыФормы.ТекущийЭлемент.Заголовок=Выборка.Ссылка; ФормаПроцесса.ЭлементыФормы.ИндикаторПроцесса.Значение=н; //////////////////////////////// // Далее непосредственно обработка данных... КонецЦикла; ФормаПроцесса.Закрыть(); // Закрываем форму процесса // (!) Совет: Если записей в выборке достаточно много и обработка одной записи // не занимает продолжительного времени, то не стоит обновлять форму процесса // на каждой итерации, так как это дает очень ощутимое замедление обработки в целом. // Пример обновления состояния для каждой 100-й записи: Пока Выборка.Следующий() Цикл н=н+1; ОбработкаПрерыванияПользователя(); Если н=1 ИЛИ н/100=Цел(н/100) ИЛИ н=Всего Тогда ФормаПроцесса.ЭлементыФормы.ТекущийЭлемент.Заголовок=Выборка.Ссылка; ФормаПроцесса.ЭлементыФормы.ИндикаторПроцесса.Значение=н; КонецЕсли; // ... КонецЦикла;
Шаблон "прогресс бара"
Разработка - Работа с интерфейсом
См. также
[Расширения] Динамическое управление видимостью и доступностью элементов форм (УФ) (8.3.6+)
5000 руб.
14.01.2016 54574 16 21
Настройки управляемых форм (списков, объектов), заполнение реквизитов по условиям, контроль заполнения, доступ [Расширение]
1500 руб.
20.02.2018 19672 22 20