Прогресс с помощью СКД на обычных формах

Smaylukk 49 1 2

Методы для вывода прогресс-бара средствами платформы в поле состояния с помощью СКД

//УПРАВЛЕНИЕ ИНДИКАТОРОМ//
Функция ИнициализироватьИндикатор(ПраваяГраница) Экспорт
  НастройкаИндикатора = Новый Структура;
  //установка параметров для вывода прецентов
  ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
  ПроцессорВывода.ОтображатьПроцентВывода = Истина;
  ЭлементПроцессора = Новый ЭлементРезультатаКомпоновкиДанных;
  Шаг = ?(ПраваяГраница = 0, 0, 100 / ПраваяГраница);
  ТекПроцент = 0;
  ПроцессорВывода.НачатьВывод();
  
  НастройкаИндикатора.Вставить("ПроцессорВывода", ПроцессорВывода);
  НастройкаИндикатора.Вставить("ЭлементПроцессора", ЭлементПроцессора);
  НастройкаИндикатора.Вставить("Шаг", Шаг);
  НастройкаИндикатора.Вставить("ТекПроцент", ТекПроцент);
  
  Возврат НастройкаИндикатора; 
КонецФункции

Процедура СдвинутьИндикатор(НастройкаИндикатора) Экспорт 
  Если ТипЗнч(НастройкаИндикатора) <> Тип("Структура") Тогда
    Возврат;
  КонецЕсли;
  
  //получаем переменные
  ТекПроцент = НастройкаИндикатора.ТекПроцент;
  Шаг = НастройкаИндикатора.Шаг;
  ЭлементПроцессора = НастройкаИндикатора.ЭлементПроцессора;
  ПроцессорВывода = НастройкаИндикатора.ПроцессорВывода;
  
  
  //вывод процента
  ТекПроцент = ТекПроцент + Шаг;
  ЭлементПроцессора.ПроцентВывода = ТекПроцент;
  ПроцессорВывода.ВывестиЭлемент(ЭлементПроцессора);
  
  НастройкаИндикатора.Вставить("ПроцессорВывода", ПроцессорВывода);
  НастройкаИндикатора.Вставить("ЭлементПроцессора", ЭлементПроцессора);
  НастройкаИндикатора.Вставить("Шаг", Шаг);
  НастройкаИндикатора.Вставить("ТекПроцент", ТекПроцент);
КонецПроцедуры

Процедура ДеАктивироватьИндикатор(НастройкаИндикатора) Экспорт 
  ПроцессорВывода = НастройкаИндикатора.ПроцессорВывода;
  
  ПроцессорВывода.ЗакончитьВывод();
  ПроцессорВывода = Неопределено;

  НастройкаИндикатора = Неопределено;
КонецПроцедуры
0

См. также

Индикатор отчета для Обычных форм

Добавить элемент в обычную форму

Программная обработка расшифровки отчета на СКД на обычных формах

пересчет реквизита табличной части обычной формы

Условное оформление на обычных формах (ОФ)

СформироватьПечатныеФормыДляБыстройПечатиОбычноеПриложение (БСП)

Раскраска строки табличной части документа (обычные формы) по условию

СообщениеПрогресса (БСП)

Программное добавление элементов управления на форму (ОФ)

Модератору