|
Динамический список, произвольный запрос и параметр - массив | ☑ | ||
---|---|---|---|---|
0
Московский
28.03.16
✎
16:53
|
Собственно к стандартному тексту запроса добавил:
ГДЕ ДокументРеализацияТоваровУслуг.Контрагент.ИНН В(&МассивИНН) и установил параметр: Список.Параметры.УстановитьЗначениеПараметра("МассивИНН", МассивИНН) Но одноэска ругается: Ошибка при выполнении запроса. Ошибка при выполнении запроса. по причине: Ошибка получения данных по причине: Ошибка создания набора данных "НаборДанныхДинамическогоСписка" по причине: Ошибка при исполнении запроса набора данных по причине: {(58, 50)}: Не задано значение параметра "МассивИНН" ДокументРеализацияТоваровУслуг.Контрагент.ИНН В(<<?>>&МассивИНН) В отладчике вижу, что "Список.Параметры.Элементы" значение установлено, вижу содержимое моего массива. Что делать? |
|||
1
Fragster
гуру
28.03.16
✎
16:54
|
в ПриСозданииНаСервере?
|
|||
2
Московский
28.03.16
✎
16:55
|
(1) Нет, по действию пользователя на управляемой форме.
|
|||
3
SadrArt
28.03.16
✎
16:55
|
А что содержится в массиве?
|
|||
4
Московский
28.03.16
✎
16:56
|
(3) В массиве строки - ИНН контрагентов.
|
|||
5
Fragster
гуру
28.03.16
✎
16:58
|
(2) а надо в ПриСозданииНаСервере хотя бы пустой массив запихать
|
|||
6
SadrArt
28.03.16
✎
16:58
|
А сколько на форме ДС? Может не на тот ДС устанавливаете параметр?
|
|||
7
hhhh
28.03.16
✎
16:59
|
(4) что такое МассивИНН? Переменная?
|
|||
8
Московский
28.03.16
✎
16:59
|
(6) Один стандартный ДС. БП 3.0.
(7) Да, массив строк. |
|||
9
sash-ml
28.03.16
✎
17:03
|
список значений можно, а таблицы значений нельзя параметром передавать в динамический список, массивы вроде как тоже нельзя.
|
|||
10
Fragster
гуру
28.03.16
✎
17:09
|
(9) массив работает
|
|||
11
mikecool
28.03.16
✎
17:10
|
переписать запрос на
ГДЕ &МассивИНН = Неопределено Или ДокументРеализацияТоваровУслуг.Контрагент.ИНН В(&МассивИНН) В приСозданииНаСервере Список.Параметры.УстановитьЗначениеПараметра("МассивИНН", Неопределено) При отборе пользователем Список.Параметры.УстановитьЗначениеПараметра("МассивИНН", МассивИНН) при очистке отбора Список.Параметры.УстановитьЗначениеПараметра("МассивИНН", Неопределено) может прокатит |
|||
12
Timon1405
28.03.16
✎
17:11
|
может быть попробовать через ОбщегоНазначенияКлиентСервер.УстановитьЭлементОтбораДинамическогоСписка(...
|
|||
13
Fragster
гуру
28.03.16
✎
17:11
|
(11) не надо так
|
|||
14
Московский
28.03.16
✎
17:23
|
СписокЗначений ошибки не выдаёт, но и результата - тоже. ((
|
|||
15
Fragster
гуру
28.03.16
✎
17:38
|
(14) -> (5)
|
|||
16
Карупян
28.03.16
✎
17:48
|
может лучше контрагентов искать и по массиву ссылок отбирать
|
|||
17
Московский
28.03.16
✎
17:53
|
(16) Уже вышел из положения отборами.
|
|||
18
Московский
28.03.16
✎
17:55
|
костыли, конечно, ёманарот... А ведь так хотелось красоты!
(15) Не канает, поскольку параметр может быть, а может его и не быть - текст запроса "на лету" формируется, и параметр потом приставляется. |
|||
19
Timon1405
28.03.16
✎
17:56
|
(18) {ГДЕ ДокументРеализацияТоваровУслуг.Контрагент.ИНН В(&МассивИНН)}
|
|||
20
Fragster
гуру
28.03.16
✎
17:59
|
Тогда в (19) лучшее решение. Хотя вариант с отбором тоже рабочий, просто больше кода по поиску установленного отбора + ошибка, если пользователь еще и сам добавит отбор по ИНН в пользовательские настройки
|
|||
21
Московский
28.03.16
✎
18:04
|
(20) Не буду я типовой код трогать. Нехай отборы пашут. Отборы не по ИНН, а по ссылке.
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Контрагент"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.ВСписке; ЭлементОтбора.ПравоеЗначение = СписокКонтрагентов; ЭлементОтбора.Использование = Истина; Путь будет. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |