Имя: Пароль:
1C
1С v8
1с 8.3 УФ, прогресс бар через индикатор или оповестить?
,
0 Geroy
 
02.06.15
16:39
Не получается сделать через индикатор, а через оповестить,как задать определенный шаг, например если я обрабатываю 84 документа, то как сделать чтоб процесс был от 1-100%
1 kopermain
 
02.06.15
16:45
2 Geroy
 
02.06.15
16:46
(1) точнее не оповестить а СОСТОЯНИЕ
3 ДенисЧ
 
02.06.15
16:48
С сервера ты вряд ли сможешь клиенту о чём-то рассказать, пока серверная процедура не закончится.
Для этого нужно извращаться.
4 Geroy
 
02.06.15
16:49
(3) а я всё делаю на клиенте, а на сервере только записываю данные
5 ДенисЧ
 
02.06.15
16:49
А как ты документы на клиенте обрабатываешь?
6 Geroy
 
02.06.15
16:50
(5) до этого всё в ТЗ выгружаю,меняю что нужно и потом построчно применяю и записываю,там пару реквизитов буквально
7 ДенисЧ
 
02.06.15
16:51
дык код покажи и расскажи, что у тебя не получается
8 Geroy
 
02.06.15
16:52
(7)             н=0;
        Для каждого СтрТаблицы из ОсновнаяТЗ цикл
            н=1+н;
            Если н=Цел(ОсновнаяТЗ.Количество()/2) тогда
                Состояние("Обработал",50);
            ИначеЕсли н=ОсновнаяТЗ.Количество() тогда
                Состояние("Обработал",100);
            КонецЕсли;    
            ЗаписатьНаСервере(СтрТаблицы.Ссылка,СтрТаблицы.Номер);
        КонецЦикла;


Сделал по 50% для процесса
Но я хочу сделать по 1%
Как сделать прогресс бар  для документов чьё количество <100 или >100
9 fisher
 
02.06.15
16:53
Т.е. тебе надо просто показать прогресс обработки на клиенте? Тогда непонятно, где затык.
10 ДенисЧ
 
02.06.15
16:53
а в чём проблема с баром? Не можешь 458 привести к 100?
11 Geroy
 
02.06.15
16:54
(9) чет не могу въехать как 84 документа разбить на 100%
12 Fish
 
02.06.15
16:54
(8) Ну так посчитай сколько процентов получится. В чём проблема?
13 ДенисЧ
 
02.06.15
16:54
(11) 100/84 - один документ
14 Smallrat
 
02.06.15
16:54
мда, я думал тут расскажут как без велосипедов отобразить прогресс-бар при долгом циклическом выполнении на сервере.
15 Fish
 
02.06.15
16:55
(14) Я тоже. А тут проценты посчитать не могут :(
16 Geroy
 
02.06.15
16:56
(13) показывает 0% и постоянно обновляется с таким же показателем, почему-то только целые воспринимает значения
17 Dmitrii
 
гуру
02.06.15
16:56
(14) В типовых и БСП в общем модуле ДлительныеОперации есть две процедурки: СообщитьПрогресс и ПрочитатьПрогресс.

Я их всегда юзаю.
18 DmitrO
 
02.06.15
16:57
:)
вообще-то у индикатора (элемента управления) есть свойство максимальное значение, туда надо установить общее количество документов, а в данные ему надо просто писать количество обработанных.
19 Fish
 
02.06.15
16:58
(17) Какая версия БСП? В моей нет таких.
20 Fish
 
02.06.15
16:58
(18) Он через состояние хочет.
21 DmitrO
 
02.06.15
16:59
(20)ааа, понял.
22 Бубка Гоп
 
02.06.15
16:59
(17) ЕМНИП, там надо сначала надо процедуру в фоновое запихнуть?
23 fisher
 
02.06.15
16:59
ВолшебныйПроцент = Цел(НомерСтроки * 100 /ВсегоСтрок)
24 fisher
 
02.06.15
17:00
(19) 2.2.какая-то
25 Dmitrii
 
гуру
02.06.15
17:04
(19) Хотя... В БСП может и нет таких.
В БП 3.0 они точно есть. В ней БСП 2.2.5.31. Но эти две процедурки там валяются давно - не помню точно с какой версии БСП.
В самописке на БСП 2.2.1.35 эти процедурки есть.
26 Smallrat
 
02.06.15
17:06
(17) глянем, спасиб )
27 Dmitrii
 
гуру
02.06.15
17:06
(22) Да. Но разве это проблема?
Хотя для одноразовой поделки конечно смысла заморачиваться нет.
28 Господин ПЖ
 
02.06.15
17:10
>чет не могу въехать как 84 документа разбить на 100%

пропорции не учили в школе?
29 Бубка Гоп
 
02.06.15
17:11
(27) у меня в ут 11 нет этих процедурок :(
можно просто вывести форму-индикатор длительной операции, и усё
30 Господин ПЖ
 
02.06.15
17:11
из-за состояния волочь все каки из бсп...
31 Geroy
 
02.06.15
17:12
(28) 16 смотри, как округлил до целых так и получилось
32 Geroy
 
02.06.15
17:12
а через индикатор как вывести?
33 Бубка Гоп
 
02.06.15
17:13
(31) как в (23) не взлетело?
34 Бубка Гоп
 
02.06.15
17:14
(32) смотри общий модуль ДлительныеОперацииКлиент, там все понятно и с комментариями
35 Geroy
 
02.06.15
17:16
(33) спасибо посмотрю через Цел взлетело
36 sapphire
 
02.06.15
18:24
(30) Уровень у пациентов нонче не торт :(