|
СвязиПараметровВыбора |
☑ |
0
noffkj
14.01.19
✎
15:12
|
Добрый день.
Есть 2 документа.
1. Документ1
Реквизит ДатаДок
И табличная часть с одним реквизитом Номер.
2. Документ2
Табличная часть
Ревизиты: Номер,СсылкаДок1,ДатаДок1
В форме 2ого документа есть процедура
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Элементы.ТабличнаяЧасть1Ссылка.СвязиПараметровВыбора = Новый ФиксированныйМассив(Новый массив);
НовыйМассив = Новый Массив();
НоваяСвязь = Новый СвязьПараметраВыбора("Отбор.ДатаДок", "Элементы.ТабличнаяЧасть1.ТекущиеДанные.ДатаДок1");
НовыйМассив.Добавить(НоваяСвязь);
НовыеСвязи = Новый ФиксированныйМассив(НовыйМассив);
Элементы.ТабличнаяЧасть1Ссылка.СвязиПараметровВыбора = НовыеСвязи;
КонецПроцедуры
Все прекрасно работает.
Собственно вопрос. Как сделать программно связьПараметравыбора к строке табличной части Документа1?
В пользовательском режиме это можно сделать и выглядит это следующим образом.
|
|
1
Buster007
14.01.19
✎
15:31
|
какой-то бредовый отбор ты пытаешься сделать
|
|
2
noffkj
14.01.19
✎
15:33
|
ок. ошибся.
вот так.
|
|
3
Numerus Mikhail
14.01.19
✎
15:35
|
Попробуй через параметры выбора, а не через связи параметров.
|
|
4
noffkj
14.01.19
✎
15:44
|
(3) Неа. не работает. даже в самом конструкторе нет отбора к табличной части.
Что в связи параметров выбора, так и в параметрах выбора
|
|
5
noffkj
14.01.19
✎
15:48
|
Такая конструкция выдает ошибку
НоваяСвязь = Новый ПараметрВыбора("Отбор.ТабличнаяЧасть1.Номер", "Элементы.ТабличнаяЧасть1.ТекущиеДанные.Номер");
Если руками прописать в конструкторе то тоже ошибка.
|
|
6
noffkj
15.01.19
✎
12:51
|
Для тех кто нарвется на эту тему.
такое можно реализовать только обходным путем.
Передаем параметры в форму.
Если Параметры.Свойство("Товар") Тогда
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ПолеТовар = Новый ПолеКомпоновкиДанных("Товар");
ПолеТовар = Список.Отбор.ДоступныеПоляОтбора.НайтиПоле(ПолеТовар);
ЭлементОтбора.ЛевоеЗначение = ПолеТовар.Поле;
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Параметры.Товар;
КонецЕсли;
|
|