Шаблон прогресс бара для 1С
Просто перетащите "ФормуПроцесса" из этой обработки в свою и добавьте отображение показателей по аналогии с приведенным ниже примером:
// Пример использования: Запрос=Новый Запрос("ВЫБРАТЬ Ссылка ИЗ Справочник.Номенклатура"); Выборка=Запрос.Выполнить().Выбрать(); Всего=Выборка.Количество(); // Инициализация // ФормаПроцесса=ПолучитьФорму("ФормаПроцесса"); ФормаПроцесса.Заголовок="Обработка данных..."; ФормаПроцесса.ЭлементыФормы.ИндикаторПроцесса.МаксимальноеЗначение=Всего; ФормаПроцесса.Открыть(); н=0; /////////////////// Пока Выборка.Следующий() Цикл // Установка текущих значений // н=н+1; ОбработкаПрерыванияПользователя(); ФормаПроцесса.ЭлементыФормы.ТекущийЭлемент.Заголовок=Выборка.Ссылка; ФормаПроцесса.ЭлементыФормы.ИндикаторПроцесса.Значение=н; //////////////////////////////// // Далее непосредственно обработка данных... КонецЦикла; ФормаПроцесса.Закрыть(); // Закрываем форму процесса // (!) Совет: Если записей в выборке достаточно много и обработка одной записи // не занимает продолжительного времени, то не стоит обновлять форму процесса // на каждой итерации, так как это дает очень ощутимое замедление обработки в целом. // Пример обновления состояния для каждой 100-й записи: Пока Выборка.Следующий() Цикл н=н+1; ОбработкаПрерыванияПользователя(); Если н=1 ИЛИ н/100=Цел(н/100) ИЛИ н=Всего Тогда ФормаПроцесса.ЭлементыФормы.ТекущийЭлемент.Заголовок=Выборка.Ссылка; ФормаПроцесса.ЭлементыФормы.ИндикаторПроцесса.Значение=н; КонецЕсли; // ... КонецЦикла;https://infostart.ru/public/16021/
16021_Shablon_progress_bara.zip