Обновление строки состояния

15.06.09

Разработка - Механизмы платформы 1С

Изменяем  "В отчет выведено ... строк ". Добавляем в состояние кроме счетчика его скорость и общее время выполнения. Получается "Выполняется обработка  -  67 387 с/мин  -  00:31  -  34 012 строк". Плюс варианты с анимацией. Работает быстро, замер производительности "на лету".

Скачать исходный код

Наименование Файл Версия Размер
RefreshProgressBar.zip
.1172759541 47,22Kb
761
.1172759541 47,22Kb 761 Скачать
RefreshProgressBar_Speed.txt
.1173084709 0,85Kb
583
.1173084709 0,85Kb 583 Скачать
Изменения от 16.10.2007
.1192535511 14,00Kb
273
.1192535511 14,00Kb 273 Скачать
Обновление строки состояния

Улучшенный вариант обновления строки состояния из циклов.

В состояние выполнения кроме счетчика добавлена его скорость и
общее время выполнения с начала инициализации счетчика.

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

Кроме этого добавлено несколько вариантов "анимации" и "прогресс-бар" с открываемой обработкой.
Конечное состояние процесса не отслеживается. Обработка закрывается сама.
Практически не влияет на общую скорость, - задержка эквивалентна десяти строкам А=А+1;

В составе пакета:
ProgressBar.ert - внешняя обработка "прогресс-бар".
Для демо-просмотра скопировать в ExtForms каталога ИБ
Можно встроить в конфигурацию, в обработки с тем же именем ProgressBar.

RefreshProgressBar.ert - внешняя обработка, пример реализации, она же содержит блок кода для вставки в
глобальный модуль.
Readme.txt - этот файл

Изменение 05.03.2007

RefreshProgressBar_Speed.txt - текст "облегченной" процедуры обновления строки состояния, без "анимации", выполняется быстрее на 16 - 18%

Расширение функционала 16.10.2007
"тайминг" выполняемых действий в окне сообщений и дублирование строки состояния в тексте на форме
изменения коснулись RefreshProgressBar.ert, файл выложен здесь. См. также дополнительные картинки,
и ссылку //infostart.ru/projects/1330/

Автор Семенов М.Б. Кострома, ICQ 337-896-541

См. также

"Виртуальный" работник на платформе 1C v7.7

Механизмы платформы 1С Платформа 1С v7.7 Конфигурации 1cv7 Бесплатно (free)

В статье расписаны примеры из жизни использования "Виртуального" работника. Разобраны вопросы, возникающие при работе с ним.

28.11.2021    1568    user707242_Gold_karas    18    

5

Асинхронное программирование в 1с77 без внешних компонент. Обратные вызовы.

Механизмы платформы 1С Платформа 1С v7.7 Абонемент ($m)

Пример построения программного кода для достижения функционала обратных вызовов (call back) во внешних обработках исключительно штатными средствами. Тестировалось на платформе 1с77 релиз 027. Конфигурация значения не имеет.

1 стартмани

06.10.2018    7478    Vortigaunt    5    

11

Особенности разделения объектной модели документа и базы данных в 1С 7.7. Забавный глюк

Механизмы платформы 1С Оперативный учет 7.7 Абонемент ($m)

Когда занимаешься разработкой в среде 1С, редко задумываешься о том, что программным кодом ты работаешь с объектной моделью базы данных, а не с самой базой данных. И что это вообще разные вещи. Ты создаешь объекты: документы и справочники, записываешь их - и в базе данных появляются соответствующие записи. Это настолько привычно, что когда сталкиваешься с нетипичным поведением платформы, первым делом думаешь: надо протестировать базу, она битая. В этой статье я хочу разобрать одну интересную ситуацию, которая как раз демонстрирует такое поведение. Описанная ниже ситуация воспроизводится как в файловом, так и в клиент-серверном (SQL) варианте. Тестировалось на версии платформы 1с77 релиз 027.

1 стартмани

16.05.2018    10152    Vortigaunt    26    

5

Использование классов .Net в 1С для новичков

Механизмы платформы 1С Платформа 1С v7.7 Платформа 1С v8.3 Бесплатно (free)

Руководство для новичков. Написав статью http://infostart.ru/public/238584/, я понял, что многие не понимают того, что написано. Поэтому в этой статье постараюсь более подробно остановиться на азах и без кода на вражеском языке (C#)

27.01.2016    94116    Serginio    116    

188

Все про картинки в 1С 7.7, ну или почти все...

Механизмы платформы 1С Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

В 1С 8 наличие картинок товаров предусмотрено изначально, а в 7.7 такого нет. Проблема существует и ее исправляют, но это, как правило, частные случаи, касающиеся, например, печати прайса http://infostart.ru/public/289876/ , показу картинок в справочнике номенклатура http://infostart.ru/public/17125/, файловый менеджер картинок товара http://infostart.ru/public/15239/ или просто конфигурации работы с картинками http://infostart.ru/public/21142/ (не стремился дать полный обзор, поэтому не попавшие не обижайтесь :). Что не устроило – информация разбросана по статьям, необходимость дополнительно напрягаться, чтобы это заработало. Здесь я попытался собрать все «до кучи», а так же дать необходимые ссылки для желающих «копнуть вглубь».

1 стартмани

18.11.2014    44055    95    kitminsk    18    

20

ЗаполнитьЗначенияСвойств - заставляем работать в 7.7

Механизмы платформы 1С Платформа 1С v7.7 Конфигурации 1cv7 Бесплатно (free)

Если вы используете в работе 1С:Предприятие 8.х, то наверняка знакомы и с замечательной системной процедурой, как ЗаполнитьЗначенияСвойств(). Ее использование помогает значительно упростить написание программного кода в ряде случае, делает его (код) более наглядным и простым. Но что же делать тем, кто до сих пор использует (постоянно или иногда) 1С:Предприятие 7.7?

24.07.2014    23775    tomvlad    5    

14

Динамическая фильтрация в справочнике при вводе наименования

Механизмы платформы 1С Платформа 1С v7.7 Конфигурации 1cv7 Россия Бесплатно (free)

Позволяет в открытой форме списка, выбора или подбора справочника производить динамическую фильтрацию по набранному наименованию.

02.07.2012    18397    maxpiter    62    

15
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. CheBurator 3119 01.03.07 16:50 Сейчас в теме
ОткрытьФорму("Обработка.ProgressBar",_ОжКонтекст);
{C:\REFRESHPROGRESSBAR\REFRESHPROGRESSBAR\REFRESHPROGRESSBAR.ERT(31)}: Неверно указан вид. ProgressBar
работает только "вид бегунка = строка состояния"
тьфу, криво сделано... почему нельзя было вызвать как внешнюю обработку (для демо-целей)?
+
2. CheBurator 3119 01.03.07 16:51 Сейчас в теме
хотя, может, я и не прав..
+
3. CheBurator 3119 01.03.07 16:53 Сейчас в теме
кого ломает, внедрять в конфигу и пр.
смотрим здесь что хотел сказать автор (примерно)! http://infostart.ru/file.php?0,file=199
для красивого результата - как описано в инструкции к ориг.разработке.
+
4. Shaman100M 1150 01.03.07 17:37 Сейчас в теме
Читай внимательно "Дополнительно". В первоначальном варианте нужно было скопировать ProgressBar под тем же именем в обработки конфы.

Сделал просмотр без изменения конфигурации. Сначала ищет в обработках, если там нет, то внешний отчет в Extforms
+
5. CheBurator 3119 01.03.07 19:55 Сейчас в теме
ну тогда по-хорошему - сначала надо искать по пути запуска главной обработки.
+
6. Shaman100M 1150 02.03.07 09:41 Сейчас в теме
Так то оно так, можно ловить РасположениеФайла(,) , но это не в коде, который будет копироваться в глобальный модуль. Можно в ПриОткрытии() главной обработки проверять наличие ProgressBar, и копировать при необходимости в ExtForms
+
7. Lustin_is 03.03.07 13:59 Сейчас в теме
Мое скромное мнение - подобную обработку необходимо прогнать бы еще через замер производительности

у меня получилось 70% общего время выполнения цикла тратится на исполнение Процедура Ож() = обновление строки состояния - это вообще нормально ???
+
8. Shaman100M 1150 04.03.07 13:02 Сейчас в теме
Это нормально.

Если состояние все же необходимо обновлять, то и обычная команда Состояние() в куске кода
Код
 Для М1=1 По 100000 Цикл 
Показать полностью

Код
       Состояние("здесь ничего не вычисляем"); 
Показать полностью

Код
 КонецЦикла; 
Показать полностью

дает 60% общего времени.

Через замер естественно прогонял (поэтому и промеж. переменных много), но сравнивал не с "голым циклом", а с этим эталоном Состояние("здесь ничего не вычисляем").

Замер через отладчик показал +200%
Замер через _getperformancecounter() +40%
+
9. maljaev 789 02.03.08 18:08 Сейчас в теме
Хитро с полосой... не сразу допер.
+
10. alyuev 202 01.12.09 17:32 Сейчас в теме
Прогресс можно построить с помощью шрифта Terminal выводя символ "Ы". Так можно заменить 2 белых чередующихся бара-подложки на один.
+
Оставьте свое сообщение