УФ Динамический список. Замкнутый круг. #633743


#0 by Rounder
УФ Программная настройка свойств динамического списка. Как вырваться из замкнутого круга? Суть: программно заполняются свойства динамического списка свойствами другого ДС. При установке свойства Список.ОсновнаяТаблица, автоматически устанавливается Список.ТекстЗапроса (что для меня критично - он должен быть пустым), при установке Список.ТекстЗапроса = "" автоматически устанавливается Список.ПроизвольныйЗапрос в Истина (что для меня критично - он должен быть Ложь), при установке Список.ПроизвольныйЗапрос = Ложь Список.ОсновнаяТаблица устанавливается в пустую строку (что для меня критично - основная таблица должна быть заполнена) и так далее по кругу...
#1 by 5 Элемент
Ты определись что тебе нужно или ОсновнаяТаблица или пустой ТекстЗапроса
#2 by Rounder
Именно такие свойства есть у динамического списка формы списка справочника Контрагенты при настройке свойств через палитру. Именно такими их показывает и отладчик в ПриСозданииНаСервере. Но такими же программно их создать не получается.
#3 by GLazNik
потому как то что тебе нужно по определению не совместимо! Ищи другое решение.
#4 by 5 Элемент
простым смертным нельзя делать то что может платформа, смирись :)
#5 by Aprobator
а что мешает? В СП вроде стоит чтение и запись.
#6 by Aprobator
так основная таблица и относится к запросу. Ты, случаем основную таблицу со связанными данными не путаешь?
#7 by Rounder
Тогда вопрос немного с другой стороны. Почему когда я выставляю в палитре свойств произвольный запрос вместо основной таблицы, то он формируется полным, т.е. фактически Выбрать * Из Справочник.Контрагенты, в т.ч. и табличные части. А когда в палитре выставляю основную таблицу вместо произвольного запроса - то он формируется без табличных частей. Вижу это по доступным полям в настройке списка СКД.
#8 by Rounder
Я не знаю что мешает - я описал в . Но видимо что-то мешает. Вот и хотел узнать что мешает. Что есть связанные данные в твоем понимании? Я сейчас оперирую только свойствами динамического списка
#9 by GLazNik
произвольный запрос вместо основной таблицы... эмъ... это когда такое стало? для произвольного запроса так же можно указать основную таблицу.
#10 by Aprobator
имхается мне, что тебе все то и надо у таблицы формы подменить ПутьКДанным. Главное, чтоб у формы был реквизит с этими данным. Надо только по условию сделать переключение на него.
#11 by Aprobator
менять программно состав реквизитов формы, если что, можно и довольно не сложно.
#12 by Rounder
Нет. Моя задача не решится подменой ПутьКДанным.
#13 by Rounder
Задача подменить стандартную форму настройки списка (отбор, сортировка, группировка, условное оформление) на свою.
#14 by Aprobator
не проще создать свою форму?
#15 by GLazNik
Тут надо понимать, что есть произвольный запрос, а что есть основная таблица. Произвольный запрос это возможность указать любой текст запроса, а не ВЫБРАТЬ * ИЗ Тратата Основная таблица, это главная таблица для ДС. Запись из этой таблицы в ДС может встречаться только один раз. По этой основной таблице будет определены свойства и поведение списка (например поведение на ввод новой строки). При этом указав произвольный запрос так же можно указать и основную таблицу, но это таблица должна быть в запросе.
#16 by Aprobator
да там задача по сути вообще в другом. Вон - почитай. Только вот интересно, как она подменится то?
#17 by Rounder
Так я ее и создаю и все уже прекрасно работает и реализована история отборов и много чего. Но мне не нравится, что в доступные поля попадают табличные части, а в стандартной настройке списка табличных частей нет. Т.е. при передаче своей настройки списка в настройки списка формы могут возникнуть коллизии - если пользователь использует поля ТЧ.
#18 by Rounder
Я все понимаю. Но это понимание пока не помогает мне решить мою задачу :(
#19 by GLazNik
Собственно для того, что бы поменять (отбор, сортировка, группировка, условное оформление) текст запроса то и трогать не надо. Для этого есть свои свойства у ДС.
#20 by Rounder
Можно конечно обрабатывать выбор поля - и пользователю говорить что такое поле выбрать нельзя или вообще не давать его выбирать - но лучшее решение не показывать его вообще в доступных. А как этого достичь пока не придумал.
#21 by MSII
И в чем затык? Запрещаешь вызов стандартной формы настройки, создаешь свою, в которой рулишь отборами-сортировками списка. Текст запроса вообще менять не нужно.
#22 by Rounder
У меня создана форма. В ней есть динамический список - пустой. Его свойства заполняю свойствами целевого списка программно. И вот во время заполнения и происходит описанное в .
#23 by Rounder
прочти
#24 by Aprobator
грят те создай свой реквизит формы и свяжи его с таблицей формы. На худой конец можно даже таблицу пересоздать, чтобы нужные тебе колонки нарисовались.
#25 by Rounder
Либо меня не понимают, либо я :) Прошу подробно объяснить
#26 by Rounder
Тогда изложу что сделано - может слишком наворотил и можно было проще? Есть ФормаНастройкиСписка (не важно где: или в общих формах, или в обработке). Этот функционал будет нужен во всех динамических списках конфигурации. Основной объект Список (тип ДинамическийСписок) с пустыми свойствами. На форму вынесено все то же, что и в стандартной форме настройки списка. При создании на сервере заполняю свойства Списка свойствами целевого списка, и также Список.Отбор, Список.Порядок, Список.Группировка и Список.УсловноеОформление. Далее открываю ее пользователю. Он как хочет настраивает список и жмет Ок. В форму списка целевого объекта (например справочника) передаются все настройки, а далее настраивается отбор, сортировка, группировка и УО целевого списка согласно полученным данным из ФормаНастройкиСписка.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С