Отбор по типу документа в запросе #240635


#0 by Viktor Zull
Уважаемые участники форума, подскажите как можно сделать в запросе (в построителе) отбор по типу документа, но так, чтобы пользователь мог сам выбирать тип. Например есть запрос:    Хозрасчетный.Регистратор ИЗ В качестве регистратора могут выступать документы нескольких типов. Мне извесна конструкция, которая позволяет отобрать данные по типу документа:  Хозрасчетный.Регистратор ИЗ ГДЕ  Хозрасчетный.Регистратор ССЫЛКА Документ.ПоступлениеТоваровУслуг Но это не динамический отбор. Я пробовал сделать поле с типом значения ОписаниеТипов и передавать выбранное значение как параметр, но так запрос не понимается: ВЫБРАТЬ  Хозрасчетный.Регистратор ИЗ Сделать поле типа документа тоже не получается: ВЫБРАТЬ ... Можно конечно при в ВЫБРАТЬ подставлять конструкцию: ВЫБОР  КОГДА Хозрасчетный.Регистратор ССЫЛКА Документ.<...>  ИНАЧЕЕСЛИ ... ... ... КОНЕЦ КАК ТипДокумента Но это тоже не универсально, если при дальнейшей разработке расширить список документов для регистратора, придется дописывать новые условия, и отбирать по строковому значению неудобно. Что Вы можете посоветовать?
#1 by ТелепатБот
#2 by Neco
+ ;
#3 by PR
ВЫБОР или спецреквизит в каждом документе
#4 by Genius
Спец реквизит это ты конечно загнул натравить СтрЗаменить на ТекстЗапроса
#5 by PR
Если просто отбор по типу, тогда вообще ТаблицаИсточник.Ссылка ССЫЛКА Документ.ЧегоТоТам. А вот если нужны группировки, множественные отборы, сортировки и пр., то
#6 by Кредит
ВЫБОР КОГДА Ренистратор ССЫЛКА Документ.РТУ ТОГДА РТУ ИНАЧЕ ПТУ КОНЕЦ КАК ТипДока По полю ТипДока можно группировать, мотреть итоги ...
#7 by PR
Да ты че, правда что ли? А ты читал? :)))
#8 by Viktor Zull
Выбором не совсем то что нужно, я же говорил в сообщении . При добавлении новых типов документов в составной тип регистратора, в запросе каждый раз придется дописывать новые условия в выборе. К тому же на выходе получается текстовое значение, которое пользователю вводить будет неудобно. Нужно, чтобы пользователь выбирал ТИП документа и поэтому типу документа шла выборка, ВЫБИРАЛ, а не вводил. В уловии ГДЕ Регистратор.Ссылка ССЫЛКА Документ.ЧеготоТам, также придется добавлять условия при изменении составного типа регистратора. Мысль о добавлении в документ специального реквизита ТипДокумента была, но это уже изменение конфигурации. Интересно, можноли во внешнем отчете, в запросе это продумать. Вопрос тогда такой, можно ли получить поле тип которого ОписаниеТиов в запросе в разделе ВЫБРАТЬ. Нет никакого хитрого способа написать что-то вроде: Тогда ТипДока имел бы тип ОписаниеТипов и при отборе пользователю открывалось окно выбора типов (такое же какое открывается на этапе программирования в конфигураторе при назначении типа реквизитам). Как можно это сделать? Если никак, то просто скажите мне об этом.
#9 by Scooter
можно, информации достаточно п1 +1
#10 by PR
Тогда только допреквизит, думаю
#11 by Scooter
п1 - 1."Состав" поля Регистратор можно определить по метаданным 2.Если нужно выбирать один тип дока тогда на формы ложишь поле выбора, далее (4.2), если несколько то ... непроблема
#12 by Viktor Zull
Нужно предусмотреть возможность возможность выбора нескольких документов. Scooter, как сделать? Подскажите как  поля Регистратор определить по метаданным. Не совсем ясно.
#13 by Viktor Zull
Я предполагаю, что нужно положить на форму полеввода поле; установить Тип значения как СписокВыбора, а тип значений списка установить ОписаниеТипа. Тогда как выбранные типы передать в запрос?
#14 by Рэйв
на форме список ИМЕНАМИ документов(через метаданные ), который заполняется при открытии. ВЫБРАТЬ  Хозрасчетный.Регистратор ИЗ ГДЕ Хозрасчетный.Регистратор ССЫЛКА Документ."+ВыбранноеЗначениеВСписке.
#15 by Viktor Zull
А если положить на форму поле ввода; установить тип значения как СписокВыбора, а тип значений списка установить ОписаниеТипа, то конструкция из сработает. Или мне потом в цикле выбранные значения перебирать и добавлять к тексту запроса используя ИЛИ: Что-то подобное должно быть?
#16 by Viktor Zull
Задача решена. Всем спасибо.
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

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