|
как передать в запрос список значений | ☑ | ||
---|---|---|---|---|
0
MrZLO
22.01.15
✎
08:37
|
Здрасте! Через форму документа заказ покупателю передаю через дополнительное свойство список значений в документ заказ поставщику
передача параметров: Процедура ПередОткрытием(Отказ, СтандартнаяОбработка) Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ | ЗаказПокупателяТовары.Поставщик КАК Поставщик |ИЗ | Документ.ЗаказПокупателя.Товары КАК ЗаказПокупателяТовары |ГДЕ | ЗаказПокупателяТовары.Ссылка = &ЗаказПокупателя | И ЗаказПокупателяТовары.Поставщик <> &ПустоеЗначение"; Запрос.УстановитьПараметр("ЗаказПокупателя", ЗаказПокупателя); Запрос.УстановитьПараметр("ПустоеЗначение", Справочники.Контрагенты.ПустаяСсылка()); ТЗ = Запрос.Выполнить().Выгрузить(); Список = Новый СписокЗначений; Список.ЗагрузитьЗначения(ТЗ.ВыгрузитьКолонку("Поставщик")); ЭлементыФормы.СписокПоставщиков.Значение = Список; КонецПроцедуры Процедура ОсновныеДействияФормыСоздатьЗаказПоставщику(Кнопка) ЭтаФорма.Закрыть(); ЗаказПоставщику = Документы.ЗаказПоставщику.СоздатьДокумент(); ЗаказПоставщику.ДокументОснование = ЗаказПокупателя.Ссылка; ЗаказПоставщику.ДополнительныеСвойства.Вставить("СписокПоставщиков", СписокПоставщиков); ЗаказПоставщику.Заполнить(ЗаказПокупателя.Ссылка); Форма = ЗаказПоставщику.ПолучитьФорму(); Форма.Открыть(); КонецПроцедуры в документе заказ поставщику при формировании запроса нужно этот список значений установить в параметр запроса, но запрос ничего не выводит, хотя в отладчике список значений передается и запрос верный 100% кусок из запроса: |ГДЕ | ЗаказПокупателяТовары.Ссылка = &Основание | И ЗаказПокупателяТовары.Поставщик.Ссылка В(&СписокПоставщиков)"; // вот так не работает Запрос.УстановитьПараметр("СписокПоставщиков",ЭтотОбъект.ДополнительныеСвойства.Свойство("СписокПоставщиков")); // для эксперимента вот так все нормально Запрос.УстановитьПараметр("СписокПоставщиков",Справочники.Контрагенты.НайтиПоКоду("000000081")); |
|||
1
butterbean
22.01.15
✎
08:40
|
твое Свойство("") возвращает Истина :-)
|
|||
2
чувак
22.01.15
✎
08:41
|
а так?
|ГДЕ | ЗаказПокупателяТовары.Ссылка = &Основание | И ЗаказПокупателяТовары.Поставщик В(&СписокПоставщиков)"; |
|||
3
MrZLO
22.01.15
✎
08:44
|
(1) да ща уже вижу :)
|
|||
4
MrZLO
22.01.15
✎
08:44
|
скажите как вытащить значение из доп свойсива :)
|
|||
5
butterbean
22.01.15
✎
08:45
|
(4) это же просто структура :-)
ЭтотОбъект.ДополнительныеСвойства.СписокПоставщиков |
|||
6
MrZLO
22.01.15
✎
08:46
|
(5) спасибо!!! :)))
|
|||
7
чувак
22.01.15
✎
08:50
|
(6) И на заметку. Все таки сделай как в (2). Так кошерно
|
|||
8
nordbox
22.01.15
✎
08:57
|
(0) поправь код ЧУВАКА немного
ЗаказПокупателяТовары.Поставщик.Ссылка В ИЕРАРХИИ (&СписокПоставщиков)"; |
|||
9
чувак
22.01.15
✎
08:58
|
(8) Нафига ссылка когда есть само поле "Поставщик"?
|
|||
10
nordbox
22.01.15
✎
09:08
|
Чувак, я так думаю что это Реквизит формы тип Список значений содержащий список Поставщиков.
Только непонятно зачем такие танцы? |
|||
11
чувак
22.01.15
✎
09:10
|
(10) Если у ссылочного поля в условии использовать реквизит, тогда происходит неявное соединение с таблицой справочника контрагенты, а это снижает производительность. Ну для небольших таблиц некритично конечно.
|
|||
12
nordbox
22.01.15
✎
09:14
|
(11) Ну в данном случае в чем у тебя критичность ?
Нафига оптимизировать то чего не нужно? то что у тебя будет запрос выполняться на тысячные доли секунды быстрее ? |
|||
13
чувак
22.01.15
✎
09:15
|
(12) Это просто на замтеку
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |