Имя: Пароль:
1C
1С v8
Расширения в Розница 2.2
0 Andreaas Bora
 
10.12.18
12:45
Добрый день! Столкнулся с проблемой применения расширения в УТ 11.
В расширение перенес форму у справочника, создал свою процедуру, которая должна заполнять табличную часть на форме. При открытии формы, падает в ошибку:

{РабочееРасширениеРозница_221019 Справочник.ИнформационныеКарты.Форма.ФормаЭлемента.Форма(157,10)}: Переменная не определена (СвязанныеКарты)
Стр = <<?>>СвязанныеКарты.Добавить();

Сама процедура в расширении:

&НаСервере
Процедура ЗаполнитьСвязанныеКарты()
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    |    ИнформационныеКарты.Ссылка КАК Карта,
    |    ИнформационныеКарты.ВладелецКарты КАК ВладелецКарты
    |ИЗ
    |    Справочник.ИнформационныеКарты КАК ИнформационныеКарты
    |ГДЕ
    |    ИнформационныеКарты.IDНакопительногоСчета = &IDНакопительногоСчета";
    Запрос.УстановитьПараметр("IDНакопительногоСчета",Объект.IDНакопительногоСчета);
    РезультатЗапроса = Запрос.Выполнить();
    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
        Стр = СвязанныеКарты.Добавить();
        ЗаполнитьЗначенияСвойств(Стр,ВыборкаДетальныеЗаписи);        
    КонецЦикла;
КонецПроцедуры

Пробовал и как ЭтаФорма, и Элеементы, и ЭтотОбъект, все равно не видит этот элемент формы!

Может есть идеи как быть?
1 AlvlSpb
 
10.12.18
13:04
(0) А что такое СвязанныеКарты? Это реквизит справочника? Это список значений, ТЧ?
2 AlvlSpb
 
10.12.18
13:06
Ну и шикарно.... Заголовок Розница, текст УТ. О какой конфе речь?
3 Ёпрст
 
гуру
10.12.18
13:06
Стр = Объект.СвязанныеКарты.Добавить();
4 Aleksey
 
10.12.18
13:08
(0) А ты элемент формы добавил в расширение чтобы он его увидел?
5 AlvlSpb
 
10.12.18
13:12
(0) Посмотрел Розницу 2.2 и УТ 11.4 ни реквизита ни ТЧ с именем СвязанныеКарты нет в типовых. Может добавленая ТЧ?
6 Andreaas Bora
 
10.12.18
13:15
(1) Это добавленный вручную новый элемент на форму.
7 Andreaas Bora
 
10.12.18
13:15
(2) Ошибся, Розница, хлотя я и под УТ сейчас делаю тоже, так что запутался маленько
8 Andreaas Bora
 
10.12.18
13:16
(3) тоже самое, невидит этот элемент
9 Andreaas Bora
 
10.12.18
13:16
(4) Элемент добавлял в расширении
10 hhhh
 
10.12.18
13:23
(9) так это реквизит форсы или эмемент?
11 Andreaas Bora
 
10.12.18
13:29
(10) Реквизит формы с типом "ТаблицаЗначений"
12 Andreaas Bora
 
10.12.18
13:34
Если реквизит формы имеет простой тип - Строка, Число, Дата... то получить (установить) значение реквизита можно просто по имени:



Текст=НаименованиеТовара; // Наименование товара - это реквизит формы



Однако, таким образом невозможно получить реквизиты "сложного" типа - ТаблицаЗначений, ДеревоЗначений. При попытке получить реквизит с таким типом по наименованию, будет возвращен объект типа ДанныеФормыКоллекция.



Чтобы получить значение реквизита со "сложным" типом, нужно воспользоваться функцией РеквизитФормыВЗначение():



ТекущаяТаблица=РеквизитФормыВЗначение("ВыбранныеОбъектыСтроительства");



Для установки значения "сложного" реквизита, можно воспользоваться функцией ЗначениеВРеквизитФормы(<Значение>, <ИмяРеквизита>), оба параметра обязательны.



Функции РеквизитФормыВЗначение() и ЗначениеВРеквизитФормы() доступны только на Сервере.

Нашел такое решение, но оно тоже не работает...
13 Мимохожий Однако
 
10.12.18
13:58
Отладчиком умеешь пользоваться?
14 AlvlSpb
 
10.12.18
16:29
Проверяй имя реквизита Есть подозрение, что имя на форме и имя в модуле не совпадают