Вопрос про курсор

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4615
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Вопрос про курсор

Сообщение finsoftrz »

Бывают ещё ситуации, когда обработка выполняется достаточно долго и заранее неизвестно, какая её часть уже выполнена. Обычно это какая-то работа через интернет. Я в этом случае вывешиваю бесконечный термометр, когда доходит до конца, то начинает сначала. Под термометром выводится счётчик времени работы. Через некоторое плановое время, предполагаемую продолжительность обработки, рядом с термометром появляется кнопка Прервать.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2329
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 18 раз

Вопрос про курсор

Сообщение Губин Игорь »

finsoftrz писал(а): 25 Апрель 2023, 10:54 Бывают ещё ситуации, когда обработка выполняется достаточно долго и заранее неизвестно, какая её часть уже выполнена. Обычно это какая-то работа через интернет. Я в этом случае вывешиваю бесконечный термометр, когда доходит до конца, то начинает сначала
Ну кто бы ещё мог до такого додуматься?! :facepalm:

Стандартная "фишка" встроенная в шаблоны. :nr: Лишь, "Прервать" не вывожу, т.к. пользователь сам виноват, что жмёт не подумавши. :lol:
Это я только кажусь дураком! На самом деле я полный идиот!
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4615
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Вопрос про курсор

Сообщение finsoftrz »

Когда через интернет, то не факт, что обработка когда-нибудь будет завершена сама по себе корректно. Поэтому и делается люфт во времени, чтобы пользователь раньше времени не мог нажать прерывание. А когда крутится дольше запланированного, то тогда пользователь решает сам, прерывать или нет. Мы заранее не можем предугадать все ситуации. В стандартном шаблоне есть возможность отложенной активации кнопки прерывания?
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
Губин Игорь
✯ Ветеран ✯
Сообщения: 2329
Зарегистрирован: 16 Сентябрь 2005, 16:35
Откуда: Москва
Поблагодарили: 18 раз

Вопрос про курсор

Сообщение Губин Игорь »

finsoftrz писал(а): 25 Апрель 2023, 14:02 В стандартном шаблоне есть возможность отложенной активации кнопки прерывания?
в МОИ шаблоны :nr:
Это я только кажусь дураком! На самом деле я полный идиот!
kreator
✯ Ветеран ✯
Сообщения: 4983
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Вопрос про курсор

Сообщение kreator »

Губин Игорь писал(а): 24 Апрель 2023, 19:25
kreator писал(а): 24 Апрель 2023, 19:16 Есть такой момент.
Тут как раз никакой разницы, прогресс бар должен идти все 6 секунд. Но, в целом, мысль правильная.
Прогресс-бар не идёт, а стоит на нулевой отметке 5 секунд, а потом за секунду пролетает 100 процентов. Некрасиво.
We are hard at work… for you. :)
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3133
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Вопрос про курсор

Сообщение Дед Пахом »

И так сойдёт :-)
С уважением, ДП
kreator
✯ Ветеран ✯
Сообщения: 4983
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Вопрос про курсор

Сообщение kreator »

finsoftrz писал(а): 25 Апрель 2023, 10:54 Бывают ещё ситуации, когда обработка выполняется достаточно долго и заранее неизвестно, какая её часть уже выполнена.
Я как правило сначала получаю количество результирующих записей. На SQL это недорого. И тогда прогресс-бар работает правильно (а также закраска на кнопке приложения в панели задач). Но это ABC. И если действительно нужен прогресс-бар.
We are hard at work… for you. :)
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4615
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Вопрос про курсор

Сообщение finsoftrz »

kreator писал(а): 26 Апрель 2023, 19:38
finsoftrz писал(а): 25 Апрель 2023, 10:54 Бывают ещё ситуации, когда обработка выполняется достаточно долго и заранее неизвестно, какая её часть уже выполнена.
Я как правило сначала получаю количество результирующих записей. На SQL это недорого. И тогда прогресс-бар работает правильно (а также закраска на кнопке приложения в панели задач). Но это ABC. И если действительно нужен прогресс-бар.
Я написал, что при работе через интернет. Например, послали запрос в Меркурий, он вернул его идентификатор, а потом требуется ждать ответа, периодически дергая Меркурий на предмет результата по этому идентификатору. А ответ может иногда вообще не прийти, бесконечный статус запрос в обработке.
C6/C11, ШВС, tps/btrieve.
kreator
✯ Ветеран ✯
Сообщения: 4983
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Вопрос про курсор

Сообщение kreator »

Неважно интернет, не интернет. Если невозможно обеспечить корректную работу прогресс-бара, то он не нужен. "Бесконечный" только пугает и путает пользователя.
We are hard at work… for you. :)
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4615
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Вопрос про курсор

Сообщение finsoftrz »

kreator писал(а): 27 Апрель 2023, 13:53 Неважно интернет, не интернет. Если невозможно обеспечить корректную работу прогресс-бара, то он не нужен. "Бесконечный" только пугает и путает пользователя.
Для этого и активируется кнопка прервать. Прогресс-бар доходит до конца, затем начинает с начала, под ним время с начала обработки. Все корректно. Какие варианты в приведенном примере? Я не вижу. Вручную нажимать какую-нибудь кнопку получить результат не проходит по определенным причинам (лень углубляться).
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
ingasoftplus
Ветеран
Сообщения: 425
Зарегистрирован: 26 Декабрь 2006, 17:07
Откуда: Оттуда :)
Благодарил (а): 90 раз
Поблагодарили: 5 раз

Вопрос про курсор

Сообщение ingasoftplus »

Товарищи программисты - вы уходите в дебри. Все очень просто. Прогресс-бар контрол имеет четкие параметры, один из них
RANGE
Specifies the range of values the progress bar displays (PROP:RANGE). If omitted, the default range is zero (0) to one hundred (100).

Т.е. предполагается, что мы должны знать значания Границ (с и до) до момента использования. Вот и все - тогда не будет никаких бесконечных прогрессов. Если границы заранее не известны - НЕ применяйте Прогресс-бар :nr:
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7373
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Вопрос про курсор

Сообщение Игорь Столяров »

ingasoftplus писал(а): 27 Апрель 2023, 15:05 Если границы заранее не известны - НЕ применяйте Прогресс-бар
Спасибо, что поделились мудростью !
Вопрос из регионов: а как тогда показать, что идёт выполнение и вот это вот всё не зависло нафиг вообще ? ;)
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
finsoftrz
✯ Ветеран ✯
Сообщения: 4615
Зарегистрирован: 06 Ноябрь 2014, 12:48
Благодарил (а): 6 раз
Поблагодарили: 37 раз

Вопрос про курсор

Сообщение finsoftrz »

ingasoftplus писал(а): 27 Апрель 2023, 15:05 Товарищи программисты - вы уходите в дебри. Все очень просто. Прогресс-бар контрол имеет четкие параметры, один из них
RANGE
Specifies the range of values the progress bar displays (PROP:RANGE). If omitted, the default range is zero (0) to one hundred (100).

Т.е. предполагается, что мы должны знать значания Границ (с и до) до момента использования. Вот и все - тогда не будет никаких бесконечных прогрессов. Если границы заранее не известны - НЕ применяйте Прогресс-бар :nr:
Речь не про бесконечный прогресс-бар, а про повторяющийся. Так понятнее? Вопрос про альтернативу в приведенном примере остается. Как информировать пользователя о выполнении обработки за пределами приложения, если время и содержание ее заранее не известно. Я думаю, что вопрос риторический.
C6/C11, ШВС, tps/btrieve.
Аватара пользователя
ingasoftplus
Ветеран
Сообщения: 425
Зарегистрирован: 26 Декабрь 2006, 17:07
Откуда: Оттуда :)
Благодарил (а): 90 раз
Поблагодарили: 5 раз

Вопрос про курсор

Сообщение ingasoftplus »

Игорь Столяров писал(а): 27 Апрель 2023, 15:36 а как тогда показать, что идёт выполнение и вот это вот всё не зависло нафиг вообще ?
рядом с прогресс баром я вывожу строку, типа: Выполнено 125 из 1000

1000 при этом наша верхняя граница, которая известна. Порой масштаб прогресс бара не позволяет точно увидеть его изменение, если значений (верхняя граница) много.

или показывать %% выполнения с 5 знаками после запятой! Очень информативно и завараживает смотреть, как он изменяется! Сразу видно - что происходит чудо и оно работает!!!
kreator
✯ Ветеран ✯
Сообщения: 4983
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Вопрос про курсор

Сообщение kreator »

finsoftrz писал(а): 27 Апрель 2023, 15:37 Речь не про бесконечный прогресс-бар, а про повторяющийся. Так понятнее?
Всё понятно! Процесс доходит до конца и начинается сначала. Программа явно глючит.
Игорь Столяров писал(а): 27 Апрель 2023, 15:36 Вопрос из регионов: а как тогда показать, что идёт выполнение и вот это вот всё не зависло нафиг вообще ?
Как вариант - показывать "Журнал действий" (что-то типа работы с ftp в Total Commander'е).
We are hard at work… for you. :)
Ответить