Вход | Регистрация
    1  2
1С:Предприятие :: 1С:Предприятие 8 общая

Динамический список, как правильно "приготовить" количество элементов

Динамический список, как правильно "приготовить" количество элементов
Я
   exwill
 
24.11.21 - 20:43
Есть динамический список и форма списка справочника. Нужно в форме отображать количество элементов в динамическом списке. Как наиболее правильно это сделать? Какой обработчик события задействовать?
   acht
 
101 - 25.11.21 - 13:13
Мишенька, а правда же - под своим честным ником и набросы лучше получаются, да?
Смотри, уже вторая страница!
   fisher
 
102 - 25.11.21 - 13:14
(93) Ну так тебе уже рассказали, как можно реализовать метод Количество().
(94) А нету. Кому приставили пистолет к голове - те через обработчик ожидания мутят с проверкой поменялись или нет настройки списка.
   exwill
 
103 - 25.11.21 - 13:16
(102) Не могу никак выбрать между кнопкой и обработчиком ожидания.
   fisher
 
104 - 25.11.21 - 13:17
(103) На вот. Поставь плюсик собрату по несчастью.
https://infostart.ru/public/568012/
   Kassern
 
105 - 25.11.21 - 13:17
(103) а чем не устраивает параметр "Строки"? Он как раз текущими выведенными строками ДС и заполнен с учетом отборов
   exwill
 
106 - 25.11.21 - 13:22
(105) Как у тебя это получается? Всегда выпадать из контекста. Нужно количество элементов отвечающих всем условиям отбора. Оно не всегда равно количеству строк в ДС.
   exwill
 
107 - 25.11.21 - 13:22
(104) Плюсанул
   fisher
 
108 - 25.11.21 - 13:25
(107) Только пишут, что полнотекстовый поиск все равно в пролете.
   fisher
 
109 - 25.11.21 - 13:25
Так что радикальным решением остается только статический список.
   Kassern
 
110 - 25.11.21 - 13:26
(106) пример можете указать, какое условие отбора не попадает в параметр строки? Я пробовал и настройку дин списка и поиск по правой кнопке мыши, в строках у меня были как раз данные соответствующие всем отборам и выведенные на страницу. При скорлинге страницы параметр Строки так же обновляется.
   Kassern
 
111 - 25.11.21 - 13:28
(110) я так понимаю нужные вообще все строки, а не то что на экране?
   Kassern
 
112 - 25.11.21 - 13:29
(111) в этом случае лучше кнопку прикрутить, которая получить настройки, по ним уже получить общее количество элементов.
   Kassern
 
113 - 25.11.21 - 13:29
*получит
   fisher
 
114 - 25.11.21 - 13:31
(112) Новый поиск мимо настроек компоновки работает. Так что решение не универсально.
   exwill
 
115 - 25.11.21 - 13:31
(112) Я тоже к кнопке склоняюсь. Можно, правда, еще и обработчик ожидания использовать
   oslokot
 
116 - 25.11.21 - 13:32
Можно же было закончить тему на (48) посту, ан нет - все копошатся
   ДедМорроз
 
117 - 25.11.21 - 13:33
Отборы динамического списка работают также как отборы таблицв значений,то есть пользователь отобрал строки и мы видим их,а в таблице-то все строки остались на месте,чем динамический список хуже.
А вот если явно установить отбор или программно,то мы его прекрасно получаем в настройках компоновки,так как он отвечает за запрлнение таблицы динамического списка,а не за отображение этой таблицы на экране.

В таблице значений есть меиод Количество,но в ситуации пользовательского отбора он выведет не то,что нужно.

Как вариант,при каждом обновлении списка выделять временно все строки и считать их количество,тогда будет то,что пользователь видит.
   acanta
 
118 - 25.11.21 - 13:36
Существует перечень задач, которые каждый программист должен попытаться решить (возможно несколькими способами) и прийти к выводу что идеал недостижим, но вот что получилось, то получилось. Полоса прокрутки в динамическом списке вероятно одна из них.
   acanta
 
119 - 25.11.21 - 13:39
(117) правильно ли я понимаю, что динамический список с отбором и динамический список без отбора формируют в платформе один и тот же sql запрос? Или есть такое СУБД, где отбор транслируется в СУБД?
   Kassern
 
120 - 25.11.21 - 13:44
(119) судя по ПолучитьИсполняемыеНастройкиКомпоновкиДанных() скорее всего на конечный отбор дин списка накладывается пользовательский отбор. Это легко проверить на каком нибудь большом списке документов к примеру, если просто поиском воспользоваться и вбить первые буквы контрагента без отбора по периоду, то это может выполняться ооочень долго. Но если встать на строчку с нужным клиентом и найти по значению текущей колонки, то отбор практически моментально отрабатывает.
   fisher
 
121 - 25.11.21 - 14:18
(119) > динамический список с отбором и динамический список без отбора формируют в платформе один и тот же sql запрос
Не. Иначе была бы полная задница. Просто реализовано чуток через нее родимую.
   Garykom
 
122 - 25.11.21 - 14:19
(121) угу парой запросов с соединением вместо одного
   fisher
 
123 - 25.11.21 - 14:22
Просто видать когда Такси рисовали, просто херанули сверху еще одним слоем асфальта, вместо капремонта.
   mistеr
 
124 - 25.11.21 - 15:15
(119) Предположу, что если реквизит индексирован, то отбор транслируется в запрос.
   acanta
 
125 - 25.11.21 - 15:19
(123) вероятно, для ремонта плитки бетонной шаблоны утеряны, а каменную брусчатку уже нечем пилить..
   ДедМорроз
 
126 - 26.11.21 - 03:05
В табличном поле есть отбор,а есть поиск - первый должен транслироваться в запрос,а второй накладывается уже на результат запроса - причем при поиске никакогг запроса и не выполняется.
А отбор,как и сортировка - это вывод настроек СКД,и тут их не транслировать в запрос достаточно сложно.
   DrZombi
 
127 - 26.11.21 - 06:30
Мертвая хотелка, чертовки тормозит работу со списком. И в конечном счете бесполезное :)
  1  2

Список тем форума
 
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух.
Фредерик Брукс-младший
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.