УФ. Динамический список. Изменение текста запроса. #712357


#0 by Lama12
Есть УФ. На ней расположен динамический список. В зависимости от действий пользователя меняю текст запроса к динамическому списку. почему-то данные в списке не меняются. Это нормально?
#1 by butterbean
обновить данные надо-бы
#2 by Lama12
Элементы формы Обновить? Не помогает.
#3 by acsent
Список.Обновить или ОбновитьСтроки
#4 by Lama12
Не помогает.
#5 by ВызватьИсключение
ОповеститьОбИзменении;
#6 by kosts
А что мешает сделать один запрос, но рулить параметрами.
#7 by Lama12
Запрос тяжелый получается. Много фильтров которые нельзя наложить отборами на конечный результат. В общем как раз пытаюсь от этого избавиться.
#8 by toypaul
может ОбновитьОтображениеДанных
#9 by kosts
Как вариант. Сделай несколько закладок с разными списками
#10 by Lama12
Это крайний вариант. Но идею принял. Спасибо.
#11 by toypaul
была информация, что даже если дин. список не показывается, запрос всеравно отправляется на сервер. при открытии формы, например. или при обновлении формы.
#12 by Lama12
И так... Внешняя обработка с примером воспроизведения ситуации. В обработке на управляемую форму выведен динамический список с именем ДС. Также две кнопки "Номенклатура" и "Контрагенты". Отладчиком проверял. Текст запроса меняется. Вопрос - что за фигня и где моя ошибка? Как сделать что б менялись источники данных для динамического списка?
#13 by Lama12
ап?
#14 by jsmith82
динамический список ващет сам обновляется. на то он и динамический
#15 by jsmith82
если на сервере меняешь, на клиенте форма прыгает было такое
#16 by Lama12
Так выходит что не меняется. Неа. Вот как ее заставить прыгать?
#17 by jsmith82
такого быть не может в принципе
#18 by jsmith82
ещё раз. динамический список так и назван, потому что он с интервалом в секунду читает данные из базы если у тебя не обновляется, значит ты не присваиваешь списку текст запроса
#19 by Lama12
В отладчике видно что запрос изменен. На клиенте видно.
#20 by acsent
попробуй менять на сервере С КОНТЕКСТОМ
#21 by Lama12
Похоже нашел почему не работает. Надо всю форму передавать на сервер. :( Если передавать форму на сервер, все работает. Но это же криво!? Нет разве? И в справке не написано что так делать нельзя.
#22 by Lama12
Ага... с контекстом работает. Только не пойму почему без контекста не работает.
#23 by jsmith82
потому что блеять данные из базы читаются на сервере. при этом форма перерисовывается
#24 by acsent
не по этому )))
#25 by jsmith82
потому что разрабы платформы так присудили, что без контекста формы хрен вытянешь данные из базы
#26 by Lama12
Могу предположить что форма перестраивается на сервере. Но блин хоть бы написали в справке :)
#27 by jsmith82
и при этом форма перерисовывается на клиенте
#28 by jsmith82
на сервере, потом на клиенте
#29 by Segate
&НаКлиентеНоЕслиЧтоТоИНаСервере(с)
#30 by vde69
по тому, что по новому запросу изменяются отборы, а это может менятся только на сервере, так-как требуется запрос к метаданным.
#31 by vde69
кстати часть условий можно наложить через RLS, была у меня такая идея, единственный "нюанс" это то что будет действовать на все а не на конкретную форму...
#32 by Lama12
Да, про RLS тоже думал. Но как-то совсем сыкотно было их использовать :)
#33 by vde69
я реально использую
#34 by vmv
идея менять запрос ДСписка не верна в корне. я делал так - упрощал запрос ДСписка максимально для отображения полного набора данных - оптимизоировал запрос посредством ограниченного числа параметров. Классические "ДатаНачала, ДатаОкончания" - отключал стандартную установку отборов в форме - вешал на панель команд три кнопки "Отбор", "Стандарт", "Выбрать вариант..." - по кнопке "Отбор" вызывал форму: где есть поле отбора компоновки данных и группа модификации параметров "ДатаНачала, ДатаОкончания,...". Пользователь получает возможность в одинт клик открыть формы модификации и параметров и отборов и закрывая форму запрос "работает" всего раз по прорисовке. ну там небольшие тонкости с: передачей отбора СКД между формами, сохранении вариантов, "прошитие" предопределенных отборов "Стандарт"...,но они решаються без проблем Время освоения пользователями этого интерфейса - полчасика и контрольная фраза "да - это оно" Время затраченное на этот вариант реализации исчезающе мало по сравнению выбранным мной ранее - адский наворот в запросе. Вывод: работать с динамикой отображения ДСписка без Формы настроек СКД - от лукавого
#35 by Lama12
Это конечно здорово когда можно так сделать. Но вот что делать если в зависимости от поведения пользователя, данные для ДС должны браться из разных источников (один раз документы, другой раз справочники, третий раз РН, четвертый РС и т.д.)? Можно конечно написать суперсложный запрос с логическими тригеррами и кучей таблиц, но оно медленнее работает. Как раз ушел от большого запроса к куче маленьких. Работает минимум раза в 2 быстрее, а в некоторых случаях ускорение и в 6 раз выше.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям