Табличное поле типа Отбор: доступные поля #445575


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