ПрогрессБар в строке состояния

Публикация № 78033

Разработка - Работа с интерфейсом

ПрогрессБар в строке состояния. Маленький, шустренький (без ВК)

 

В Глобальный модуль вставить процедуру:

 

//******************************************************************************

Процедура глПрогрессор(Сообщение,Всего,Текущ) Экспорт

Если Всего>0 Тогда

Процент=Цел(Текущ/Всего*100);

Если Процент > Цел((Текущ-1)/Всего*100) Тогда

Состояние(Сообщение + ": "+Формат(Процент,"Ч(0)2")+"% "+СтрЗаменить(Формат("","С"+Мин(99,Процент))," ","l")+СтрЗаменить(Формат("","С"+Мин(99,99-Процент))," ","'")+"l");

КонецЕсли;

КонецЕсли;

КонецПроцедуры

 

 

И пользовать.. Вот пример:

 

Для ин=1 По 100000 Цикл

глПрогрессор("Тест",100000,ин);

КонецЦикла;

 

 

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Serj1C 479 13.11.10 16:01 Сейчас в теме
в принципе и на 8.х заработает
2. sytkosa 14.11.10 00:16 Сейчас в теме
(1) На 8-ке есть штатный через компановку
3. anig99 2733 14.11.10 12:20 Сейчас в теме
Шепот Теней уже давно такой пример статус бара приводил
4. Boog 50 17.11.10 13:47 Сейчас в теме
Тормозить будет.....................................................
5. via 89 17.11.10 14:08 Сейчас в теме
дополнительно конечно оказывает небольшую нагрузку (на каждые 100 000 операций + 5 секунд)...
я сейчас вставляю этот "прогрессор" везде.
... без него ощущаю себя ослом перед зеркалом.
... помогает оценить объем работ.

Если обработка робит долго (например, больше часа, то юзаю уже http://infostart.ru/public/78034/ )
romanuil; +1 Ответить
6. gucci76 346 17.11.10 14:36 Сейчас в теме
Процедура глПрогрессор(Сообщение,Всего,Текущ,ТекущийПроцент) Экспорт

Если Всего>0 Тогда

Процент=Цел(Текущ/Всего*100);
Если Процент = ТекущийПроцент Тогда
Возврат; // не надо лишний раз перерисовывать
КонецЕсли;

Если Процент > Цел((Текущ-1)/Всего*100) Тогда

Состояние(Сообщение + ": "+Формат(Процент,"Ч(0)2")+"% "+СтрЗаменить(Формат("","С"+Мин(99,Процент))," ","l")+СтрЗаменить(Формат("","С"+Мин(99,99-Процент))," ","'")+"l");

КонецЕсли;

КонецЕсли;

КонецПроцедуры
7. via 89 17.11.10 14:50 Сейчас в теме
не уверен что скорость увеличится пропорционально навороченным наворотам ;-)
11. gucci76 346 24.11.10 12:35 Сейчас в теме
(7) Возможно что и не увеличится, т.к. используется Состояние();
Я просто использую подобное в форме через Форма..Заголовок(), и в нем перерисовка заметно увеличивает время.
Поэтому и написал.
Признаю свою невнимательность!!!
12. via 89 24.11.10 12:53 Сейчас в теме
(11) Проверка на изменение процента уже есть:
Если Процент > Цел((Текущ-1)/Всего*100) Тогда
другое дело, что предыдущий процент каждый раз пересчитывается... Но я проверял - нагрузка при этом не большая.. Обычно нагрузку на процессор на 99,999 % оказывают другие "операторы".
8. krupp 17.11.10 22:29 Сейчас в теме
Всегда считал, что красивое должно быть минималистским.
Супер!
9. artbear 1193 18.11.10 09:00 Сейчас в теме
(0) Тормозить будет, нужно с какими-то перерывами :(
10. via 89 18.11.10 09:21 Сейчас в теме
13. gucci76 346 24.11.10 12:55 Сейчас в теме
(13) Дейстительно! Можно и так проверить изменение процента! А я не догадался! :D
14. SashaA 26.10.11 13:36 Сейчас в теме
Подскажите пожалуйста как встроить:

Для ин=1 По 100000 Цикл
глПрогрессор("Тест",100000,ин);
КонецЦикла;



в например:

Процедура XXXXX()
СПР=СоздатьОбъект("Справочник.Контрагенты");
СПР.ВыбратьЭлементы ();
Пока СПР.ПолучитьЭлемент () = 1 Цикл
ТРАЛИ ВАЛИ
КонецЦикла;
КонецПроцедуры


Заранее спасибо.
16. via 89 13.02.12 07:38 Сейчас в теме
(14) SashaA,
Прогрессбары встраиваются туда, где известно общее кол-во "итераций"
Я иногда сначала пробегаю по справочнику (документам), узнаю общее кол-во элементов, а затем уже (вторым циклом) использую прогрессбар (глПрогрессор("Обработка",ЭлементовВсего,ин))
15. romanuil 11.02.12 15:47 Сейчас в теме
Работает, и очень просто в программировании.
17. Rockman 14.03.12 16:00 Сейчас в теме
18. kostya_whiskas 79 06.10.17 14:02 Сейчас в теме
Объясните плиз, что за конструкция Формат("","С"+Мин(99,Процент)
Пытаюсь реализовать на 8.х. С 7.х не работал
19. eshtrey 09.10.17 10:09 Сейчас в теме
(18) Формат("","С"+Мин(99,Процент)) - функция форматирования строки. Второй параметр задает длину строки. Если параметр равен, например С99, то на выходе получим строку длиной 99 символов.
Т.к. первый параметр пустая строка, то на выходе будет строка состоящая из 99 пробелов.
Оставьте свое сообщение

См. также

Быстрый поиск в справочниках по наименованию, с использованием svcsvc.dll

Поиск данных Универсальные обработки Работа с интерфейсом v7.7 1cv7.md Бесплатно (free)

По аналогии с http://infostart.ru/public/14286/, недавно узнал что в svcsvc.dll несколько обновился функционал, в частности был добавлен метод AddString(). В прилагаемом коде показан запрос, реализованный методами ВК 1SQlite, т.е. только для DBF. Это только пример. Т.е. если например у справочника отсутствует поле "Наименование", то скорее всего будет ошибка. Тем не менее критика приветствуется))) Необходимые ВК: 1SQlite, FORMEX, svcsvc.dll (отсюда: http://www.1cpp.ru/forum/YaBB.pl?num=1373266553). p.s. Спасибо огромное уважаемому ADirks за все эти прекрасные плюшки, и помощь в их освоении)))

12.07.2013    143011    unichkin    10    

Настройка содержимого обработки "Дополнительные возможности" индивидуально для каждого пользователя

Работа с интерфейсом v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free)

При большом количестве внешних отчетов в обработке "Дополнительные возможности" пользователям трудно стало искать нужные отчеты, более того некоторые отчеты нужны были только определенным пользователям, а некоторым пользователям не нужно было в принципе видеть все, что содержалось в списке. В Итоге появилось желание настроить список отчетов для каждого пользователя индивидуально.

07.09.2011    7145    vlgogolev    5    

Как раскрасить контрагентов в отчетах за 15 минут

Работа с интерфейсом v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free)

Попросили меня как-то ввести «цветовую дифференциацию штанов» у контрагентов в базе 1С 7.7, да так, чтобы они и в печатных формах отчетов выводились соответствующим цветом. Например, чтобы можно было каких-нибудь «злостных» должников выделять красным, а особо важных – синим, а уже не актуальных – сереньким и т.п. И если раскрасить формы списков справочника и организовать выбор цвета с формы элемента справочника не особо напряжно (с FormEx’ом), то с отчетами хотелось бы сделать так, чтобы не прилагать «титанических» усилий по переписыванию и дописыванию разнообразных отчетов, где фигурируют контрагенты. И поэтому, немного подумав, поступил так…

06.12.2010    25974    venger    27    

Имитация бурной деятельности (шутка)

Работа с интерфейсом v77::ОУ v77::БУ v77::Расчет 1cv7.md Бесплатно (free)

Как изобразить бурную деятельность программы для нежелательного контролера

01.12.2010    12858    vladismi    12    

Web клиент к 7.7

Работа с интерфейсом v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free)

В качестве примера возможности использования API J1C предлагается демонстрация реализации web-клиента к 7.7

13.09.2010    21155    gildebrand    36    

1c v 7.7. Установка владельца для справочника, имеющего записи.

Практика программирования Работа с интерфейсом v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free)

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

28.04.2010    9349    Майкопчанин    12    

Простое решение проблемы с казахстанской кодировкой

Практика программирования Работа с интерфейсом v7.7 1cv7.md Казахстан Бесплатно (free)

Известно, что для того, чтобы работать в 1С с казахскими шрифтами, нужно изменить кодировку в ОС. Иногда это может быть не очень удобно.

22.01.2010    16706    Gvozdod    3    

Работа с периодическими реквизитами 1С версии 7.7 при помощи прямых запросов.

Практика программирования Работа с интерфейсом openconf v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free)

Описание структуры хранения периодических реквизитов, рассмотрены подробно несколько простых примеров использования прямых запросов при работе с периодическими реквизитами. Приведены несколько текстов прямых запросов для решения на мой взгляд распространенных задач.

23.12.2009    39306    glassman    11    

"Быстрый" выбор периода в журнале

Практика программирования Работа с интерфейсом v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free)

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

09.12.2009    11705    mdbm    11    

Граф(ин) 7.7.

Работа с интерфейсом v7.7 1cv7.md Россия Бесплатно (free)

Что порождает чудовищ? 1С+Дракон или сны разума?

01.07.2009    14302    Арчибальд    10    

[ОБУЧАЛОВКА] Позиционирование на последнем элементе списка справочника

Практика программирования Работа с интерфейсом v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free)

Для журналов можно задать режим отображения при открытии журнала (в режиме 1С:Предприятие): Меню - Сервис - Параметры-Журналы - "При открытии жирнала переходить в конец = вКл". Вопрос: почему нельзя задать такой вариант для справочников?

30.06.2009    22311    CheBurator    11    

Удлинение строковых реквизитов справочников,документов за пределы 100 символов

Работа с интерфейсом v77::ОУ v77::БУ 1cv7.md Россия Бесплатно (free)

Как сделать реквизит типа "Строка" длиной 250 символов? (без применения строк неограниченной длины)

29.05.2009    4703    mike65    9    

Как найти новые документы автора, в т.ч. созданные программно

Практика программирования Работа с интерфейсом Чистка базы v7.7 1cv7.md Россия Бесплатно (free)

Как найти новые документы автора, в т.ч. созданные программно и не прописанные в журнале регистрации (v77). Передо мной встала такая задача: пользователь создал много новых документов обработкой в разных периодах, а потом захотел сделать откат назад. Делюсь, может кому-нибудь пригодится.

11.03.2009    15196    Shaman100M    16    

[1С:Предприятие 7.7] Занимательная передача параметров

Практика программирования Работа с интерфейсом v77::ОУ v77::БУ v77::Расчет 1cv7.md Россия Бесплатно (free)

"Казнить нельзя, помиловать. Казнить, нельзя помиловать." (c) Детская сказка

07.10.2008    17345    venger    110    

Изменение типовых отчетов ТиС

Оптовая торговля Практика программирования Работа с интерфейсом Оптовая торговля v77::ОУ 1С7:Комплекс 1С7:ТиС 1С7:ПУБ Россия УУ Бесплатно (free)

Большинство отчетов типовой конфигурации ТиС (Комплексная) имеют ограничение в 5 группировок. Настоящая статья позволит начинающему программисту снять указанные ограничения.

18.09.2008    16756    poppy    15    

Ограничение формирования стандартных отчётов некоторым набором счетов

Практика программирования Работа с интерфейсом v7.7 1cv7.md Россия Бесплатно (free)

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

24.03.2008    10662    Timesoft    14    

[ОБУЧАЛОВКА] Каким макаром к номенклатуре привязать картинку...?

Практика программирования Работа с интерфейсом v7.7 1cv7.md Россия Бесплатно (free)

Последнее время, буквально в течение недели, выплывает постоянно один и тот же вопрос: как показать картинку в справочнике (товаров, сотрудников и т.д.)..? Странный вопрос... На дисках ИТС описано это наверное с начала 2000-х годов, плюс в ЗиК карточка сотрудника показывается... или я отстал от жизни...? Как всегда - парить себе мозги не будем, надо картинку - сделаем! Делаем - как всегда - без лишней головной боли (глубокое имхо)...

10.02.2008    38793    CheBurator    66    

TestIB8x (Общая концепция)

Работа с интерфейсом v7.7 1cv7.md Россия Бесплатно (free)

Данная статья - компиляция из трех статей сайта ( http://brix8x.stavr.ru ), описывающая общую концепцию программы TestIB8x. Цель статьи - оценить актуальность задачи контроля качества создаваемых конфигураций для сообщества infostart и получить отклики в виде пожеланий какие тесты было бы необходимо реализовать в первую очередь.

12.12.2007    9600    brix8x    5    

Мастер класс «O-Planet»: Произвольный отчет с группировками.

Практика программирования Работа с интерфейсом v7.7 1cv7.md Россия Бесплатно (free)

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

27.11.2007    23842    O-Planet    21    

Много общих журналов + гибкие закладки

Математика и алгоритмы Обработка документов Работа с интерфейсом v7.7 1cv7.md Бесплатно (free)

Общий журнал в ТиС имеет удобный механизм отбора, однако, жальба, что из меню можно открыть только один его экземпляр. Исправляем... А также добавляем "гибкие" закладки.

21.10.2007    16173    Shaman100M    20    

[ОБУЧАЛОВКА] Как перестать парить себе мозги и не фанить тюльку... - 2

Практика программирования Работа с интерфейсом v7.7 1cv7.md Россия Бесплатно (free)

Статья продолжает описание полезностей, которые реализуем штатными средствами - вместо головной боли по написанию корявых доморощенных алгоритмов. ;-) В статье рассматривается расширение функционала по подбору объектов в штатной обработке Отчет.ПодборОбъектов (или внешней Uchoice.ert)

18.10.2007    21744    CheBurator    14    

[MultiLevel] Многоуровневое меню штатными средствами

Практика программирования Работа с интерфейсом v77::ОУ v77::БУ v77::Расчет Россия Бесплатно (free)

Пример демонстрирует использование построения и использования многоуровневого меню штатными средствами на основе списка значений. При использовании рассмотренного подхода все что требуется - сформировать ТЗ с данными для меню.

27.05.2007    18527    CheBurator    8    

Управление списком пользователей из режима 1С:Предприятие.

Работа с интерфейсом v7.7 1cv7.md Россия Бесплатно (free)

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

09.11.2006    12676    Robert    27