Индикатор на управляемой форме

30.12.22

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

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

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Проведение документов прогресс-бар
.epf 9,93Kb
46
46 Скачать (6 SM) Купить за 3 350 руб.
Загрузка из Excel и обработка с прогресс-бар:
.epf 9,70Kb
32
32 Скачать (6 SM) Купить за 3 350 руб.
Пример загружаемого Excel файлв
.xlsx 13,35Kb
6
6 Скачать (1 SM) Купить за 1 850 руб.

В данной задаче я рассмотрю 2 примера - это "проведение документов" и "загрузка на сервер с обработкой внешнего Excel файла".

Итак, первый пример:

Мы получаем список документов стандартным методом кнопкой "Обновить период" с отбором по организации, затем нажимаем кнопку "Начать проведение"  - запускаем данный процесс - индикатор начинает работать.

По достижению 100% - документы проведены. Так же, я разместил "статус бар", который показывает какой документ обрабатывается в текущий момент.

 

Вторая задача. Здесь, мы должны загрузить Excel (xlsx) файл на сервер и отследить статус его обработки:

 

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

Для решения данных примеров я использовал Платформу 8.3.13.1865 и Конфигурацию УТ 11.3 (в принципе может быть любой другой, но на УФ).

Дополнительных условий не требуется.

"Основная" клиентская функция данных обработок вот такая:

ТекВремя = ТекущаяДата();
	
ТекущийДокумент =0;
ВсегоДокументов =Объект.СписокДокументов.Количество();
	
Для Каждого Стр11 ИЗ Объект.СписокДокументов Цикл
		
	СостояниеОбработки = "Обрабатываем документ: "+ Стр11.Реализация;
		
	НачатьПроведениеСервер(Стр11.Реализация);    // обращение на сервер
			
	ТекущийДокумент = ТекущийДокумент + 1;
		
	Индикатор = ТекущийДокумент/ВсегоДокументов*100;
		
	ОбработкаПрерыванияПользователя();
        ОбновитьОтображениеДанных();
		
КонецЦикла;
	
СостояниеОбработки = "Документы проведены за "+ СокрЛП(ТекущаяДата() - ТекВремя) + " сек.";

 

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

Спасибо всем за прочтение. Надеюсь, материал полезен!

индикатор управляемые формы загрузка excel отслеживание статуса выполнения

См. также

Работа с интерфейсом Системный администратор Программист Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Платные (руб)

Механизм «Динамическое управление доступом к элементам форм объектов 1С8» предназначен для обеспечения возможности оперативного управления видимостью и доступностью элементов форм документов и справочников продуктов фирмы «1С» «1С:Предприятие 8». Решение универсальное, встраивается в любую конфигурацию с минимальными доработками, что позволяет без проблем обновлять типовые решения.

5000 руб.

14.01.2016    55640    17    23    

43

Работа с интерфейсом Рабочее место Платформа 1С v8.3 Управляемые формы 1C:Бухгалтерия Платные (руб)

Универсальный редактор картинок 1С предназначен для обработки изображений в режиме «Предприятие», с возможностью рисовать на них. Поддерживается работа как в обычных формах (толстый клиент) так и на управляемых формах (тонкий клиент). Обработка позволяет редактировать как картинки, хранимые в базе, так и графические файлы с диска на файловой системе. Помимо базовых функций (изменение размеров, преобразование формата, обрезание картинки, повороты и т.п.) – редактор имеет богатый набор инструментов для рисования. Доступна функция вставки изображения из буфера обмена. Объект может быть использован: на стороне клиента, на стороне сервера, из внешнего соединения. Обработка будет особенно полезна тем, кто вносит картинки в базу (изображения номенклатуры, фотографии физических лиц и т.п.). Функционал реализуется с использованием JavaScript и бесплатного ПО ImageMagick (без использования внешних компонент).

6000 руб.

16.01.2015    63952    45    60    

83

Работа с интерфейсом Программист Платформа 1С v8.3 1C:Бухгалтерия 1С:ERP Управление предприятием 2 Платные (руб)

Обработка предназначена для создания и управления дашбордами.

2400 руб.

29.06.2020    19949    28    6    

44

Работа с интерфейсом Программист Стажер Платформа 1С v8.3 Бесплатно (free)

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

20.08.2024    23552    mrXoxot    44    

130

Работа с интерфейсом Программист Платформа 1С v8.3 Бесплатно (free)

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

27.05.2024    12068    smielka    37    

105

Работа с интерфейсом Платформа 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Бесплатно (free)

Добавьте новогоднего настроения! Расширение создает декорацию в виде гирлянды на некоторых формах объектов.

27.12.2023    18372    1228    elcoan    53    

125

Инструментарий разработчика Работа с интерфейсом Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

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

3 стартмани

10.04.2023    12899    167    acces969    31    

126

Работа с интерфейсом Программист Платформа 1С v8.3 1C:Бухгалтерия Абонемент ($m)

"MVC плохо применима в 1С" - познакомьтесь с моделью состояния и, возможно, ваше мнение поменяется! Представленное решение является эволюционным развитием идеи реализации MVC для 1С. В новой версии добавлены DSL для описания модели состояния, а также параметризация свойств параметров и элементов формы.

1 стартмани

05.07.2022    8014    kalyaka    6    

33
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. RocKeR_13 1381 19.08.19 09:00 Сейчас в теме
При большом количестве обращений на сервер лучше уж запускать в фоне с отображением прогресс-бара (или так)
unichkin; user1619761; Anton-i-oni; wowik; PLAstic; 7OH; rpgshnik; +7 Ответить
2. aximo 2151 19.08.19 09:27 Сейчас в теме
(1) вторая ссылка у меня указана в публикации. Совершенно верно!
3. RocKeR_13 1381 19.08.19 09:28 Сейчас в теме
4. PLAstic 296 19.08.19 16:18 Сейчас в теме
Чисто побрюзжать.

Я бы рекомендовал бить себя по рукам каждый раз за конкатенацию строк вместо СтрШаблон() и за имена переменных вроде Стр11.
user1619761; Eillecho; KAV_1Sintez; u_n_k_n_o_w_n; Serj1C; rpgshnik; DmitrySinichnikov; +7 Ответить
5. antonkms88 19.08.19 18:27 Сейчас в теме
(4) поясните пожалуйста для простых смертных, чем вам конкатенация не угодила?
12. PLAstic 296 20.08.19 10:09 Сейчас в теме
(5)
1) Быстродействие.
2) Представь ШаблонСообщения = НСтр("ru = 'Объём работ ""%1"" на поле %2 (%3 га) превышает площадь поля (%4 га) в цикле обработки %5'") в виде конкатенации и не сломай мозг.
20. Lapitskiy 1062 21.08.19 07:42 Сейчас в теме
(5) быстродействие - лично проверял, простое сложение строк - это очень медленно
22. VmvLer 21.08.19 09:31 Сейчас в теме
(20) Согласен и это не раз уже было доказано в том числе и тут

поэтому придумали системный костыль СтрСоединить()
6. ArchLord42 83 19.08.19 18:38 Сейчас в теме
(4) кстати говоря, СтрШаблон очевидно медленее, чем простая конкатинация, при этом разница примерно 20%, так что смотря в каких условиях, а так да, читабельность как минимум лучше.
7OH; Summer_13; d_neon; +3 Ответить
10. PLAstic 296 20.08.19 09:13 Сейчас в теме
(6) Бегло поискал, не нашёл. Была разгромная статья про быстродействие различных способов соединения строк и там раза в полтора оказался быстрее обычной конкатенации СтрШаблон(). Собственно, это не единственный способ, который быстрее обычной конкатенации, их ещё два как минимум. :)
Aleskey_K; +1 Ответить
15. ArchLord42 83 20.08.19 14:29 Сейчас в теме
(10)

вот вам не статья, а реальный замер :)
Прикрепленные файлы:
SlavaKron; insurgut; +2 Ответить
16. PLAstic 296 20.08.19 14:53 Сейчас в теме
(15) Шта??? У тебя сферический процессор в вакууме занимается выполнением одной задачи? Включай замер производительности и вторую картинку в ответ.
Светлый ум; +1 Ответить
18. ArchLord42 83 20.08.19 17:26 Сейчас в теме
(16)

шта???

тебя


А вы точно, ИС с ми стой не перепутали? Не помню чтобы я с вами гдето братовался :(

У тебя сферический процессор в вакууме занимается выполнением одной задачи


Смелое заявление, только вот если бы он занимался чем то другим, то ему ничего не мешало бы повлиять и на замер производительности или замер как то отдельно от процессора расчитывается ?)
Lapitskiy; +1 Ответить
25. PLAstic 296 21.08.19 11:58 Сейчас в теме
(18) Именно. Замер по миллисекундам идёт в отрыве от процесса. Процессор занимается обслуживанием всех процессов, поэтому давай нагрузим его каким-нибудь копированием по сети и проведём замер, а потом при вычищенных процессах. Ты не знаешь, сколько времени процессор реально уделил твоим расчётам.
17. PLAstic 296 20.08.19 15:29 Сейчас в теме
(15) Вот замеры на реальной ситуации. Сообщение с 5 параметрами вполне реальное. Разрыв по времени ничтожен и с ростом кол-ва параметров уменьшается.
У меня не HLBD, конечно, но потуги отстаивать рудименты пятилетней давности (СтрШаблон появился 5 лет назад) выглядят как минимум нелепо.
Вдобавок, просто знайте, что это нарушение стандартов и методик разработки 1С. Специально зашёл и ещё раз проверил наличие там этого стандарта.
Прикрепленные файлы:
19. ArchLord42 83 20.08.19 17:32 Сейчас в теме
(17)
но потуги отстаивать рудименты пятилетней давности (СтрШаблон появился 5 лет назад) выглядят как минимум нелепо.


эээмм...я все понимаю, но надо же читать иногда комменты до конца, а не начинать брызгать слюной после первых 3 слов :)

так что смотря в каких условиях


Что можно перести так, "слепо юзать СтрШаблон так же не стоит", я не призываю его не юзать ибо это реально удобней, но в определенных условиях он начинает проигрывать самому простому способу.
24. SlavaKron 21.08.19 11:53 Сейчас в теме
(17) У вас некорректный замер в отличие от (15). Для выяснения реальной производительности, отладка должна быть выключена. По факту у вас основное время потратилось на переходы в цикле и фиксация их отладкой, поэтому числа у вас "грязные" — доля самой конкатенации в них мала.
26. PLAstic 296 21.08.19 12:00 Сейчас в теме
(24) Переходы в цикле и фиксация их отладкой были зафиксированы в отдельных строках таблицы, я их замазал. Имхо, отладка равномерно влияет на все команды, поэтому процентное отношение считаю верным.
И, Вячеслав, удиви меня, плз, технологией замера производительности без отладки?
Прикрепленные файлы:
27. SlavaKron 21.08.19 12:03 Сейчас в теме
(26)
процентное отношение считаю верным

2 / 3 <> 42 / 43
28. PLAstic 296 21.08.19 12:10 Сейчас в теме
9. Serj1C 483 20.08.19 08:38 Сейчас в теме
(4) Для коротких строк в контатенации нет ничего критичного. А переменные Стр11, ТекВремя - это да, плохо)
11. YanTsys 12 20.08.19 10:03 Сейчас в теме
(4) Был момент когда приходилось удалять эти новомодные функции из загружаемых обработок для тех пользователей у которых стояла более старая платформа, в то время гнилые помидоры летели в тех программистов которые использовали эти функции :)
7. DmitrySinichnikov 295 19.08.19 19:54 Сейчас в теме
То есть в цикле долбиться на сервер, даааа... решение. Вы бы хотя бы порционность сделали для приличия. Не ну понятно что и так работает, но вот потом подобные выкрутасы встречаешь и переписываешь... С матом...
vis_tmp; shiaju; PLAstic; u_n_k_n_o_w_n; Serj1C; +5 1 Ответить
8. ids79 8600 19.08.19 20:38 Сейчас в теме
Пожалуйста. Рад, что моя публикация сподвигла Вас на написание своей.
13. YanTsys 12 20.08.19 10:11 Сейчас в теме
Если перед вашей процедурой
НачатьПроведениеСервер(Стр11.Реализация);    // обращение на сервер

стоит директива &НаСервере
то эта статья просто эпик фейл
PLAstic; Yashazz; +2 Ответить
14. ambrozii 20.08.19 10:35 Сейчас в теме
(13) да, блин, тут 99.(9)% публикаций такие.
21. VmvLer 21.08.19 09:29 Сейчас в теме
(0) да чепуха это все и будет через пень-колоду работать когда у вас есть коллекция: список отобранных строк, тз, тч и т.д.

В реале в "тормознутых" процессах редко можно вычислить коллекции именно поэтому адетпы типовых отправляют такие процессы в фон и на вид вылезает котик. Я к котику еще прикрутил счетчик "прошло времени...1 час 2 минуты 5 сек..."

Считаю, что разработчики типовых реализовали механизм логически верно, а все попытки "насиловать" сервер передачами
управления с клиента ради бегунка - понты для приезжих.
23. Yashazz 4810 21.08.19 11:38 Сейчас в теме
(21) Соглашусь. Не публикация, а позорище. Причём не содержанием своим даже, а тем, что "это" оказалось в центре внимания и уже столько плюсов нагребло. Совсем уже докатились. Примитивный клиентский код с адским примером вызова сервера в цикле, за который убивать надо, а подаётся как откровение свыше.
olezhe; klaus38; shiaju; +3 Ответить
29. serega_sun 29.04.21 10:48 Сейчас в теме
У меня почему-то такой пример не работает. Платформа 8.3.18.1363
Индикатор показывает только последнее состояние.
Это в платформе изменения или я что-то не так сделал?
30. Sasha255n 29.12.22 18:59 Сейчас в теме
(29) И у меня так почему то?
Оставьте свое сообщение