gifts2017

Как создать индикатор в 1С:Предприятии 7.7

Опубликовал Сергей Беликов (HAMMER_59) в раздел Программирование - Работа с интерфейсом

В статье дано описание создания индикатора на форме в среде разработки 1С:Предприятие 7.7 исключительно типовыми средствами.

Многим программистам прихходится сталкиваться с проблемой индикациии прогресса выполнения длительных процессов в 1С:Предприятии 7.7.

Каждый решает этот вопрос по-своему, ниже будет описание моего решения проблемы.

Индикатор на форме отображается с помощью элементов: рамка группы, текст. В элемент текст выводятся символы "|".

Скриншот

Как выводить символы, индицирующие процесс? 

Рассмотрим пример. Пускай символов, индицирующих процесс, будет 3, а всего значение 7. 

1. 7 - 3 = 4

2. 4 - 3 = 1

3. 1 - 3 = -2 (<= 0) выводим Х, -2 + 7 = 5

4. 5 - 3 = 2

5. 2 - 3 = -1 (<= 0) добавляем Х, получается ХХ, -1 + 7 = 6

6. 6 - 3 = 3

7. 3 - 3 = 0  (<= 0) ХХХ

Рассмотрим второй случай, символов, индицирующих процесс, 7, а всего значений 3.

1. 3 - 7 =  -4 (<=0) выводим Х, -4 + 3 = -1 (<=0), выводим ХХ, -1 + 3 = 2

2. 2 - 7 =  -5 (<=0) выводим ХХХ, -5 + 3 = -2 (<=0), выводим ХХХХ, -2 + 3 = 1

3.  1 - 7 =  -6 (<=0) выводим ХХХХХ, -6 + 3 = -3 (<=0), выводим ХХХХХХ, -3 + 3 = 0 (<=0), выводим ХХХХХХХ

Перем Индикатор_КоличествоЗначений;
Перем Индикатор_ТекЗначение;
Перем Индикатор_КоличествоДелений;
//*******************************************
Процедура Индикатор_Инициализация(вхКоличествоЗначений)
	Форма.Индикатор.Заголовок("");
	Индикатор_КоличествоЗначений = вхКоличествоЗначений;
	Индикатор_ТекЗначение = вхКоличествоЗначений;
	Индикатор_КоличествоДелений = 255;
КонецПроцедуры
//*******************************************
Процедура Индикатор_Шаг()
	Индикатор_ТекЗначение = Индикатор_ТекЗначение - Индикатор_КоличествоДелений;
	Пока Индикатор_ТекЗначение <= 0 Цикл  
		Форма.Индикатор.Заголовок(Форма.Индикатор.Заголовок() + "|");
		Индикатор_ТекЗначение = Индикатор_ТекЗначение + Индикатор_КоличествоЗначений;
	КонецЦикла;	
КонецПроцедуры
//*******************************************

Скачать файлы

Наименование Файл Версия Размер
Индикатор 1
.ert 7,50Kb
27.09.16
1
.ert 1.1.1 7,50Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Ruslan Ch (Mopsik) 27.09.16 15:12
Упрощенно напоминает данную публикацию http://infostart.ru/public/14061/
2. Алексей Сафонов (newold2) 27.09.16 16:23
Более универсальны, быстрее работают и ранее сделаны: http://infostart.ru/public/139129/
3. Сергей Беликов (HAMMER_59) 27.09.16 17:57
(2) newold2, как определили что быстрее работают? Замеры делали? Сильно сомневаюсь.
На универсальность и не претендовал. Наоборот максимально простой вариант, без операций умножения и деления.
4. Убийца Джедаев (vakham) 28.09.16 10:25
Помницца, написал свою единственную статью про com-соединение. Раскритиковали за несовместимость с типовой версией. Мне стало стыдно, статью отключил.
Вот за эту работу выше я бы умер от стыда.
5. Ярослав Володимирович (myr4ik07) 30.09.16 13:41
(4) vakham, какой то ты очень ссссиснительный человек, очень зависим от чего то слова, а автор норм, молодец, свою работу выложил, я забрал с радостью в еваерноут, а вдруг меня автора писанина натолкнет на свою мысль, а ты сссссисняйся дальше.
HAMMER_59; +1 Ответить
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа