#0
by SerGa
Есть на форме два динамических списка. Цель: При активизации какой либо строки первого списка выводить связанные с ней строки второго списка. Делаю для первого списка: Второй динамический список "СписокСоответствиеСтатейБюджетаИСтатейДДСУУ" имеет тип произвольный запрос ВЫБРАТЬ РегистрСведенийСоответствиеСтатейБюджетаИСтатейДДСУУ.СтатьяБюджета, РегистрСведенийСоответствиеСтатейБюджетаИСтатейДДСУУ.СтатьяДДСУУ ИЗ РегистрСведений.СоответствиеСтатейБюджетаИСтатейДДСУУ КАК РегистрСведенийСоответствиеСтатейБюджетаИСтатейДДСУУ Установлена галка Динамическое считывание данных. Проблема в следующем: 1. Работает заметно медленнее чем в обычном режиме. 2. Сервер вызывается почему-то 2 раза при каждом перемещении курсора в первом списке.. что делаю не так?
#1
by Mort
Храни ссылку на текущую строку и в приАктивизации сравнивай текущее значение с сохраненным.
#4
by Mort
Когда ты ставишь отбор ПриАктивизацииСтроки вызывается снова. Кстати ХЗ как на нынешних платформах, но в 8.2.13 это вводило код из в бесконечный штопор.
#5
by Mort
Вот, например, у меня под списком несколько списков на закладках. Для оптимизации введены флаги по обновлению: ..... &НаКлиенте
#6
by Юрий Лазаренко
"Установлена галка Динамическое считывание данных" - убери, значительно снизится трафик
#7
by Юрий Лазаренко
" Сервер вызывается почему-то 2 раза" - скорее всего из-за галки "дин считывание"
#8
by Юрий Лазаренко
Поставить обоим спискам произвольный запрос, выбирать в нем только необходимые данные, отказаться от отбора и нужные данные получать через параметры запроса - в некоторых случаях очень помогает. Недавно подобную задачу решал, в итоге вместо 2-х вызовов сервера, 0,8 сек и 65000 кб входящих данных получил 1 вызов, 0,2 сек и 17000 кб.
#12
by Юрий Лазаренко
Обработчик ожидания я тоже прикрутил, помогает, ага, но и тоже дает экономию трафика, проверено.
#13
by acsent
параметры вместо отборов никак не могут помочь. или у тебя изначально запрос был просто кривой
#14
by SerGa
снятие галки динамический список не помогло... даже медленнее стало... попробую щас через параметры запроса и через обработку ожидания
#16
by SerGa
если из списка для сравнения в отборе убрать второй элемент списка ПустаяСтатьяБюджета (который у меня хранит пустое значение справочника) , т.е. оставить в списке только 1 элемент то вызовов сервера становится 1 и работает в 2 раза быстрее... загадка блин...
#17
by Юрий Лазаренко
Ну вот перепиши на произвольный запрос и сразу условие отбора в нем задавай, будет тебе счастье.
#18
by SerGa
с запоминанием строки не поял.. зачем её запоминать? если я скролю по первому списку вниз, то каждый раз при изменении строки вызывается ПриАктивизацииСтроки для этого списка, в котором устанавливается отбор для второго списка... это вроде логично и правильно... я вот только не понял почему после установки отбора опять должна вызываться ПриАктивизацииСтроки ???
#19
by Юрий Лазаренко
"почему после установки отбора опять должна вызываться ПриАктивизацииСтроки" - платформа так работает, ты отбор поставил и теперь той строки, на которой был установлен курсор, вообще в списке нет, а значит была активирована другая строка.
#20
by SerGa
У меня платформа 8.2.16 сижу в отладчике. поставил точку останова в начале процедуры ПриАктивацииСтроки.... запустил... при скроле вызывается всегда только один раз.. то что я внутри процедуры ПриАктивацииСтроки первого списка ставлю отбор во втором дин списке не инициализирует повторный вызов ПриАктивацииСтроки в первом списке
#22
by SerGa
Переделал на использование Параметров произвольного запроса ВЫБРАТЬ РегистрСведенийСоответствиеСтатейБюджетаИСтатейДДСУУ.СтатьяБюджета, РегистрСведенийСоответствиеСтатейБюджетаИСтатейДДСУУ.СтатьяДДСУУ ИЗ РегистрСведений.СоответствиеСтатейБюджетаИСтатейДДСУУ КАК РегистрСведенийСоответствиеСтатейБюджетаИСтатейДДСУУ , передаю туда массив работает также медленно как и через использование отбора и 2 вызова сервера
#29
by SerGa
Сделал через обработку + проверку строки &НаКлиенте сервер вызывается 1 раз ..... шаманство какое-то... единственое с задержкой отображаются данные второго списка... непонятно что принципиально изменилось и что дергало сервер второй раз... может что на партнерском форуме писали про это??
#30
by SerGa
А как быть (оптимизировать) если не одна а несколько связанных с основным динамических списков. Если их например 4 и для каждого в оброботке ожидания вызывать .Параметры.УстановитьЗначениеПараметра( то получается при смене строки не 1 а 4! вызова сервера и работает очень медленно. Как быть?
#31
by Юрий Лазаренко
Попробуй вместо динамических списков список значений или дерево значений. Их содержимое можно получать за один вызов сервера. Но тоже не всегда помогает.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Не работает функия вопрос() в 8-ке/в SQL не работает в файл серверной работает
- Функция СводныйОстаток не работает на сервере, а на локальной базе работает
- Как раскрыть весь иерархический список (на форме динамический список)?
- медленно работает прокрутка в отсортированном дин. списке
- Динамический список. Некорректно работает сортировка динамического списка.
- 8.2 УФ. Динамический список на форме элемента справочника. Отбор или пр.запрос?
- Медленно работает СделатьФотоснимок() на мобильной устройстве
- ШТРИХ очень медленно пробивает чек из 1С, расположенной на сервере
В этой группе 1С
- Документ расчета по счету 62.01
- ЗУП: Перечисление НДФЛ в бюджет РФ
- 1С запрлата в сбербанк XML
- Запрос выбрать значение из регистра сведений
- Как безопасно извлечь флэшку из командной строки?
- электронная сдача в ПФР отчетных форм (СЗВ) из БП 2.0 (ЗУП)
- v7: как программно запустить внешнюю обработку
- что быстрее найтистроки или менеджер запросов к таблице значений?
- ГТД по импорту Бухгалтерия 2.0
- Обработчик "АвтоПодбор" поля ввода
- 1c salesforce не могу разобрать метод
- РИБ 1С:Розница на 150 магазинов
- OLE соединение управляемое приложение - 1С 7.7
- УТ 10.3, Счет-фактура. Изменить код, чтобы немного другую информацию выводил
- Как почистить логи сервера MSSQL?
- Как ИнтернетПочтовоеСообщение.УстановитьПолеЗаголовка()
- v8: Агентские договоры на услуги в УТ 11
- Разузлование затрат в УПП
- Как закрыть окно браузера программно? Скрипт или из 1С...
- УТ 11. Розничная продажа с оптового склада.