|
Прогресс бар УФ | ☑ | ||
---|---|---|---|---|
0
Faust1976
19.10.14
✎
21:43
|
Добрый день
Подскажите как сделать прогресс бар . Платформа 8.3 . Точнее сказать как из процедуры на сервере изменять вид прогресс бара. Где это вообще описано. В моем случае обработка данных идет примерно 5 минут. Пользователи не выдерживают и снимают процесс. Сильно не пинайте ... просто не могу найти где прочитать |
|||
1
Dmitry1c
19.10.14
✎
21:48
|
общий модуль ДлительныеОперации, БСП
вроде где-то там |
|||
2
Faust1976
19.10.14
✎
21:51
|
Что такое БСП ?
|
|||
3
Fragster
гуру
19.10.14
✎
21:52
|
||||
4
Faust1976
19.10.14
✎
21:52
|
Я делаю внешнюю обработку.
|
|||
5
bazvan
19.10.14
✎
21:55
|
(4) и что?
|
|||
6
oslokot
19.10.14
✎
22:08
|
(0)[В моем случае обработка данных идет примерно 5 минут. Пользователи не выдерживают и снимают процесс.]
Сообщить("Обработка данных идет примерно 5 минут. Наберитесь терпения, не снимайте процесс.") |
|||
7
EugeniaK
19.10.14
✎
22:18
|
(0) С сервера изменить програсс бар никак.
Упрощенно говоря, алгоритм следующий: 1. Программа с клиента идет на сервер, запускает процесс. 2. Возвращается на клиент, сообщает пользователю "Пользователь, Я запустила процесс!" 3. Прыгает на сервер, смотрит, завершен ли процесс. 4. Возвращается на клиент и говорит "Пользователь, я проверила, выполнено Х% от всего процесса!" 5. Если процесс не завершен возвращается на шаг 3. 6. Сообщает "Пользователь, процесс завершен!" В Вашем случае достаточно просто написать "Процесс длительный, не останавливайте!" |
|||
8
Asmody
19.10.14
✎
22:32
|
Вот представь себе: запустил ты на сервере какой-то важный тяжелый длительный процесс. Сервер трудится, считает всеми кристаллами процессора, и тут вдруг БАЦ(!): "Йомана! Мне ж на том клиенте у Васи надо палку на один пиксель пририсовать! Еперна, ну-ка запросы-проводки подвиньтесь, потом досчитаемся." А в это время SQL-сервер, которого тоже запросами нагрузили, 100500 данных подготовил, собрал в пакетики, байтик к байтику, кричит серверу (1С): "Чувак, слышь, ты надысь данных просил, принимай пакет". А тому-то некогда, он полоску у клиента рисует. SQL-сервер скажет: "Ну раз такая херня, раз пакет тебе не нужен, я его выброшу. Потом запросишь еще раз", и привет.
Короче, тухлая история. |
|||
9
Asmody
19.10.14
✎
22:34
|
Есть, правда, правильный вариант: запустить длительный процесс в фоновом задании, а клиентом периодически проведывать: "ну что, готово?", и двигать палочку.
|
|||
10
Faust1976
19.10.14
✎
22:41
|
Спасибо за ответ. Логику почти понял.
А как запускается процесс на сервере отдельно от клиента (асинхронно). Где можно подсмотреть пример .. |
|||
11
Reaper_1c
19.10.14
✎
22:50
|
(10) в подсистеме "длительные операции" из состава БСП.
|
|||
12
SiAl-chel
20.10.14
✎
03:52
|
(8) Как программист ты прав, но во многих книгах по юзабилити интерфейсов пишут, что нельзя пользователя оставлять в непонятках более чем на 5 сек, он начинает нервничать. Недаром появились всякие там статус-строки и прогресс-бары.
|
|||
13
Sasha_1CK
20.10.14
✎
04:11
|
Прогресс бар выводиться командой Состояние(текст, процент выполнения)
Процент выполнения - от 1 до 100 Увы но печаль в том что Состояние доступно только на клиенте - и если обработка выполняется на сервере - то увы и ах. Но в некторых случаях - вполне можно юзать. А механизм Длительные операций нужен для того, что бы перехватывать отмену пользователем операции и давать ему возможность выполнять в процессе длительной операции другие операции. |
|||
14
Escander
20.10.14
✎
04:17
|
(8) ну некоторые процессы вполне себе квантуются, но конечно не все...
(0) чем гифка с песочными часиками или типа того юзеров не устраивает? |
|||
15
Sasha_1CK
20.10.14
✎
04:54
|
(14) тем что непонятно сколько ждать - 5 минут или 5 часов
|
|||
16
Escander
20.10.14
✎
05:38
|
(15) ну вообще-то если это нереально долгий процесс и выполняется он первый раз - программист наверное должен предупредить... если юзер в курсе но тяма нет - заблокировать ему запуск диспетчере задач.
|
|||
17
Asmody
20.10.14
✎
08:09
|
Сервер 1С - это вам не nodejs какой-нибудь. Он отправил тяжелый запрос СУБД, и ждет, пока тот ответ вернет. Кто и как в этот момент палочки рисовать будет? А тредов в 1С нету и не предвидится.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |