|
1С ничего не прокручивает Ø (Волшебник 26.04.2017 09:28) | ☑ | ||
---|---|---|---|---|
0
Анна Ивановна
25.04.17
✎
19:27
|
Почему 1С ничего не прокручивает в некоторых окнах? полоска прокрутки вся бегает как ненормальная
|
|||
1
Джинн
25.04.17
✎
19:30
|
Зато в некоторых прокручивает нормально. А в определенных вообще прокрутки нет.
PS. Вот и поговорили. |
|||
2
Анна Ивановна
25.04.17
✎
19:34
|
как нет прокрутки? а как прокручивать?
|
|||
3
Джинн
25.04.17
✎
19:36
|
Анна Ивановна, у 1С масса различных конфигураций, в которых тысячи различных экранных форм. Без указания конкретной конфигурации и конкретной формы разговор будет совершенно беспредметным.
|
|||
4
Анна Ивановна
25.04.17
✎
19:39
|
ох, извиняюсь, постоянно забываю про эти формальности
|
|||
5
Волшебник
модератор
25.04.17
✎
19:39
|
(4) Да уж...
|
|||
6
Анна Ивановна
25.04.17
✎
19:40
|
8.3.9-2170
БП 3.0.49.22 окно список операций (как то так) |
|||
7
Волшебник
модератор
25.04.17
✎
19:42
|
(6) Сколько у Вас операций? Мышка с колёсиком?
|
|||
8
Джинн
25.04.17
✎
19:44
|
(6) Проверил - крутится. В Такси только проверял.
|
|||
9
Анна Ивановна
25.04.17
✎
19:47
|
крутится то оно крутится вопрос в том почему оно ничего непрокручиват
|
|||
10
Анна Ивановна
25.04.17
✎
19:49
|
если точнее сказать то передвижение полосы прокрутки приводит зачастую к непредсказуемым результатам, колёсиком мышки можно крутить но это же долго
|
|||
11
probably
25.04.17
✎
19:52
|
(10) переходите на 7.7, там это реализовано
|
|||
12
Джинн
25.04.17
✎
19:53
|
(10) Потому что не может рассчитать позицию курсора относительно количества данных в наборе. Так устроены СУБД.
Листайте с клавиатуры. |
|||
13
Анна Ивановна
25.04.17
✎
19:56
|
сейчас специально ещё раз все проверила, я не заходила в 1С с момента последнего обновления, окно "Журнал операций", теперь полоса прокрутки отсутствует совершенно! Вместо неё совершенно неудобные кнопки, зачем так издевательски сделано?
|
|||
14
Мимохожий Однако
25.04.17
✎
20:00
|
На кнопку скролла жмякни
|
|||
15
Анна Ивановна
25.04.17
✎
20:03
|
да так повеселей конечно, но все равно не так удобно как было бы с нормальной полосой прокрутки, они (полосы прокрутки) ведь не просто так придуманы были
|
|||
16
mehfk
25.04.17
✎
20:07
|
(15) "Это вам не надо (С)"
|
|||
17
Лефмихалыч
25.04.17
✎
20:42
|
(0) в клиент-серверной базе это работает вот так. Живите с этим.
|
|||
18
Анна Ивановна
25.04.17
✎
20:55
|
неприятность эту мы конечно переживём, но неприятный осадок остаётся
|
|||
19
h-sp
25.04.17
✎
21:11
|
(18) это новая суперфишка. Прокрутки везде будут полностью уничтожены.
|
|||
20
ale-sarin
25.04.17
✎
21:28
|
http://v8.1c.ru/o7/201602taxi/index.htm
Вертикальную полосу прокрутки мы убрали потому, что её текущий вид вводил пользователей в заблуждение. Они воспринимали её как обычную (такую же, как все другие) полосу прокрутки, и пытались перемещать бегунок. Это не давало им ожидаемого результата, т.к. динамический список так не работает. Задача динамического списка - быстро показать небольшую часть из, возможно, огромного массива данных, хранящегося в базе данных. При этом динамический список не анализирует весь имеющийся массив данных. С одной стороны это позволяет ему работать быстро, с другой стороны, по этой же причине, он не имеет информации о том, в какой части массива данных находится часть, которую он отображает. Поэтому, убрав вертикальную полосу прокрутки с бегунком, мы, по сути, просто привели внешний вид таблицы динамического списка в соответствие с его фактическими возможностями. |
|||
21
NorthWind
25.04.17
✎
21:46
|
(18) Для того чтобы правильно просчитать полосу прокрутки, нужно весь набор данных выкачать на клиент. Это может быть очень долго и дорого по ресурсам клиента. Поэтому идут на упущения и неудобства, которые вы имеете. Альтернатива - ждать по полчаса пока будет выкачан весь набор и получить ошибку о нехватке памяти.
|
|||
22
Анна Ивановна
26.04.17
✎
04:31
|
разве нельзя сделать динамическую полосу прокрутки которая бы отражала количество элементов в локальном датасете и автоматически пересчитывалась по мере обновления локального датасета? Так все нормальные люди делают. Если это правильно реализовать то поведение полосы прокрутки будет вполне предсказуемым и юзабельным. Что не так с 1С?
|
|||
23
kuzyara
26.04.17
✎
05:31
|
(19), эта "суперфишка" - решение проблемы перекачивания больших массивов данных для браузеров и "тонких" клиентов.
Для нормального _полноценного_ скролла в оперативной памяти компьютера приходится держать ВСЮ таблицу с данными. Для 7.7 это не было проблемой, так как и сама база и приложение были монолитны и работали с одного файла, который легко подгружался в память. С приходом мобильных технологий файл таблицы данных отделили от приложения в так называемый "Сервер БазыДанных", и теперь он может находится аж на другом конце света в мощном дата-центре. Тут можно привести аналогию с веб-сайтами. Например, возьмем сайт вашей любимой почты: все письма разбиты на страницы. У меня вот на mail.ru приходится по 50 писем на одну страницу, для просмотра остальных приходится перелистывать страницы. Данные выводятся _порционно_. Следующий пример - "бесконечные" ленты ВКонтакте или Одноклассников. Разработчики решили зачем мучать пользователя страницами? почему бы не сделать так, чтобы страницы переключались сами - автоматически? Сказано-сделано, и теперь когда ползунок доходит до конца страницы - в конец подгружается новая _порция_ котиков. И так этот подход понравился всем пользователям, что его стали применять на всех большииииих списках. Скоро сказка сказывается, да не скоро дело делается, тут в веб пришла 1С. И она стала задавать вполне логичные вопросы, возникли споры. Но как в этом случае перейти к самой ранней, первой записи? Бесконечно крутить колесо? Зажимать клавишу PageDown? Полоса прокрутки то постоянно подпрыгивает! Серьёзные дяди занегодовали. 1С - это ведь не сайт с котиками, а самое что ни на есть серьезное бизнес-приложение! И до того эти споры достали самого-самого главного из главнюков в 1С, что он собрал всех разработчиков у себя в большом кабинете, стукнул по столу, и громко провещал: "Скролл в конце страницы должен показывать последнюю запись. Точка!". Пригорюнились конечно программисты, но делать нечего, инженерная смекалка ещё никогда не подводила. Вот и стал с тех пор полоса скролл-бара больших списков иметь 3 положения: начало, "середину" и конец. А кто слушал молодец ;) |
|||
24
kuzyara
26.04.17
✎
05:33
|
Много ли мало ли времени прошло, про то не ведомо. Старые разработчики и архитекторы уходили на пенсию, приходили молодые свежие умы. Однаждны в их рядах появился один странный парень, имя которого мы все уже забыли, но идеи его проникли в сердца даже в сердца старичков-основателей фирмы и програмистов-фортранщиков. И поведал он всем истину: "Не пытайся согнуть ложку. Это невозможно. Вместо этого попытайся понять правду. Ложки не существует. Тогда ты увидишь, что это не ложка гнётся. Это только ты сам.". Так появилась прокрутка без скролла. Появилась в версии плаформы 8.3.8.1652. И называться стала Прокрутка в таблицах динамических списков. Там нет ни полосы прокрутки, ни ползунка. Ну вот примерно таким образом развитие интерфейсов выродила так нами любымый скролл-бар в 4 простые кнопки: Home, Back, Next, End. Эволюция сделала очередной виток.
|
|||
25
Анна Ивановна
26.04.17
✎
06:23
|
Полоса прокрутки то постоянно подпрыгивает!
Но это нормально для динамических списков, это просто свидетельствует о том что записей больше или возможно появились новые, это удобно, теперь вообще непонятно что где, если нажать например на кнопку "перейти к концу списка" то что будет если появятся новые записи? кнопка "отожмётся" или список автоматически прокрутится вниз? или ничего не произойдёт? Главарь у них там самый настоящий главнюк. |
|||
26
1dvd
26.04.17
✎
07:06
|
(11) в SQL-ных клюшках лифт тоже только для красоты нарисован
|
|||
27
MaxS
26.04.17
✎
07:51
|
(20) Это всё здорово, но почему внешняя обработка на УФ с табличной частью несколько тысяч строк тормозит перед отображением данных? Значит на уровне платформы динамическое (или в данном случае "порционное") считывание не работает? Приходится выводить то же самое в табличный документ, что на порядок быстрее.
|
|||
28
oslokot
26.04.17
✎
08:23
|
(13) "теперь полоса прокрутки отсутствует совершенно!"
(25) "Полоса прокрутки то постоянно подпрыгивает!" |
|||
29
MM
26.04.17
✎
08:35
|
(21) Зачем на клиент? Это можно сделать на сервере, большей частью СУБД, а остальное 1С, а потом передать на клиента позицию и размер ползунка. Нагрузка, конечно, вырастет, но выглядеть будет как раньше.
|
|||
30
1Снеговик
гуру
26.04.17
✎
08:52
|
(25) ничего там не фиксируется и не отжимается. Переходишь в конец списка, при появлении новых данных в конце списка форма обновляется ии это уже не конец списка, нужно нажимать кнопку и снова переходить в конец списка. Что не понятного?
|
|||
31
1Снеговик
гуру
26.04.17
✎
08:54
|
Вот в 8.3.8.1675 в обычных формах почти все ползунки прокрутки стали недоступными - вот это жесть и косяк платформы.
|
|||
32
Адинэснег
26.04.17
✎
08:56
|
(22) сказала Анна Ивановна , почесав яйцо
|
|||
33
Адинэснег
26.04.17
✎
08:59
|
(22)вот как твои нормальные люди запилят журнал проводок на миллиард записей с полосой прокрутки - "локальный датасет" этот положит сначала сеть, а потом сервер
зато бегуночек мы крутить могём |
|||
34
NorthWind
26.04.17
✎
09:04
|
(29) нельзя, потому что сервер не занимается задачами отображения данных ни в каком виде. Это задача клиента. Данные подкачиваются тогда, когда клиент подходит к концу набора данных, в этом случае скроллинг автоматически продлевается, и пользователь никогда точно не знает, когда это закончится, может там 100 записей, а может и миллион. Так было, есть и будет на клиент-серверных приложениях.
|
|||
35
Махони402
26.04.17
✎
09:16
|
Для того, чтобы сделать нормальную полосу прокрутки нужно иметь:
1. Датасет для отоброжения (точно есть) 2. Номер первой строки в датасете (есть, иначе вообще скрол работать не будет) 3. Общее количество данных в полной выборке - этого может быть и нету, но кажется не сильно дорого по сравнению с выборкой "первые ХХХ, где ключевое поле больше номера первой строки" Этого достаточно, чтобы получть точный скролл, который рядом с текущим окном будет бегать быстро, а вдаль с небольшим лагом. Собственно, так все фильмы мотаются и пользователям это будет понятно. Откуда у вас в фантазиях берется полный датасет в памяти клиента я не понимаю. |
|||
36
Лефмихалыч
26.04.17
✎
09:24
|
(22) с 1С всё в порядке. И нормальные люди так не делают. Потом, что накладные расходы на эту полосу прокрутки при большом количестве пользователей угондонят любые вычислительные ресурсы, до каких дотянутся.
|
|||
37
NorthWind
26.04.17
✎
09:24
|
(35) фантазий никаких нет. Чтобы понять о чем идет речь, почитайте про такую вещь как курсоры СУБД и как они работают.
|
|||
38
Адинэснег
26.04.17
✎
09:24
|
(35) одна курица скрол мышкой елозит, а на сервак 100 запросов в секунду отправляется
|
|||
39
Лефмихалыч
26.04.17
✎
09:25
|
(35) не достаточно этого. ты забыл постоянный апдэйт общего количества записей, т.к. пользователей много и они туда добавляют-удаляют.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |