Элемент в ТЧ управляемой формы #711509


#0 by Gill
Всем привет! УПП 8.2. Есть док на управляемой форме.Необходимо при выборе реквизита (тип ссылка на документ) табличной части автоматически заполнять другие реквизиты этой же ТЧ. Пишу следующее,не заполняет: &НаСервере               КонецФункции
#1 by Gill
up
#2 by Жан Пердежон
а почему не Ссылка.Ссылка.Ссылка = &Ссылка ?) >> ЗаполнитьЗначенияСвойств(Объект.ТМЦ, СтруктураВозврата); вот тут ошибка
#3 by Gill
ошибка в чем?
#4 by hhhh
никогда не пиши Ссылка.Ссылка - это замедляет программу в десятки раз.
#5 by hhhh
Объект.ТМЦ - это такое поле, ссылка на ТМЦ. Туда нельзя запихнуть целую структуру, она там не поместится.
#6 by Gill
Объект.ТМЦ - это название ТЧ. А Элементы.Товары название "таблицы" на форме.
#7 by hhhh
тогда вы должны в строки ТМЦ писать, а не в ТМЦ. Цикл для каждой строки ТЧ.
#8 by Timon1405
ЗаполнитьЗначенияСвойств(Элементы.Товары.ТекущиеДанные, СтруктураВозврата);
#9 by Gill
Что-то не догоняю я. не работает, как?!
#10 by Gill
up
#11 by hhhh
что не работает в ? Если Водитель, то правильно не работает, в запросе нет этого поля
#12 by Gill
ничего не заполняет
#13 by Timon1405
Имена колонок ТЧ в студию
#14 by Gill
Я видимо тупень,но не работает.Вот весь код &НаСервере
#15 by singlych
ТипЗнч(НарядПЛ) = Тип("ДокументСсылка.ИнтекоПутевойЛистАвтотранспорта") всегда ложь. Зачем в НарядПЛ пихать Элемент?
#16 by Gill
имена колонок ТЧ вроде бы исправил
#17 by Gill
up
#18 by Gill
Вопрос остается актуальным.Что скажите?!
#19 by Timon1405
Скажем, что пора уже стряхнуть пыль с отладчика, и посмотреть 1) заходит ли вообще программа в ваше Если 2) типы присваиваемых объектов 3) выкинуть ЗаполнитьЗначенияСвойств и присвоить вручную
#20 by Рэйв
так как у тебя НарядПЛ = Элемент
#21 by Рэйв
так что условие у тебя супер конечно:-) Неудивительно что в него не заходит
#22 by Gill
выяснил,что в Если не заходит.А вместо ЗаполнитьЗначенияСвойств что нужно указать в качестве источника для заполнения?
#23 by Gill
ну я пытаюсь указать в качестве условия из запроса текущий элемент для получения данных
#24 by Рэйв
заполни вручную, чего паришься? Дался тебе этот ЗаполнитьЗначенияСвойств
#25 by Рэйв
ТД=Элементы.ИмяТабЧасти.ТекущиеДанные. Можешь попробовать передать его первым параметров как приемник
#26 by Рэйв
может заработает если правда поля структур имеют одинаковые имена:-)
#27 by Gill
вручную, что писать в качестве источника(выборки) после Для каждого (?) Из (?) Цикл
#28 by Рэйв
Сначала сам возвращаешь структуру с ответом, а потом не знаешь что с ней делать:-) //------------ Но если действительно имена совпадают то можно ии так ЗаполнитьЗначенияСвойств(ТД,СтруктураВозврата);
#29 by Рэйв
+ и кстати зачем тебе именно фиксирвоанная структура? Обычная вполне нормально передается с сервера на клиент.
#30 by Gill
Ошибка Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа. по причине: Ошибка преобразования данных XDTO: Запись значения свойства 'param':     форма: Элемент     имя: { по причине: Ошибка отображения типов: Отсутствует отображение для типа 'ДанныеФормыЭлементКоллекции'
#31 by hhhh
но действительно есть колонка "ТоварыВодитель"? в табличной части? Что-то гоните похоже. Колонка назывется "Водитель"?
#32 by Рэйв
Ну да. Ты строку таб части хочешь на сервер отправить.Не ест он такое:-) создай свою струтуру- ответ на клиенте, заполни данными строки  и отправляй ее . В нее же напишишь данные которые надо получить, вернешь на клиент и заполнишь строку.
#33 by singlych
ппц вы долгие. ТС, ты передаешь на сервер какой-то хлам, и при этом никак его там не используешь. Сделай уже на клиенте НарядПЛ = Элементы.Товары.ТекущиеДанные.ТоварыНаряд, а на сервере Запрос.УстановитьПараметр("Ссылка", Ссылка); Ну и лишние строки убери.
#34 by Gill
Возврат Новый ФиксированнаяСтруктура(СтруктураВозврата);     {Документ.ИнтекоПутевойЛистТракториста.Форма.ФормаДокументаУправляемая.Форма(3600)}: Поле объекта не обнаружено (ТоварыНаряд)     НарядПЛ = Элементы.Товары.ТекущиеДанные.ТоварыНаряд;
#35 by Gill
Поле объекта не обнаружено (ТоварыНаряд)
#36 by Gill
что за лишние строки?
#37 by Gill
не совсем понял про свою структуру,можно поконкретнее
#38 by Рэйв
Делаешь структуру с полями одноименными колонкам строки. Заполняешь данными строки, отправляешь на сервер, получаешь то что тебе нужно, вставляешь в структуру, отправляешь обратно на клиет. На клиенте на основании структуры заполняешь ТД.
#39 by Рэйв
к
#40 by Gill
1. "Делаешь структуру с полями одноименными колонкам строки"  СтруктураДанных = Новый Структура("ТоварыНаименованиеГруза,ТоварыЕдИзм,ТоварыСотрудник,ТоварыГрузоотправитель,ТоварыПриемщик,ТоварыПереданоГрузаПриемщику") ТАК? 2.отправляешь на сервер - не понимаю 3. получаешь то что тебе нужно - и это соответственно тоже
#41 by Рэйв
Как тебя в адинесники угораздило то?:-) проще уж показать, чем объяснить. //-------------- надеюсь с запросом и заполнением структуры сам разберешься
#42 by Рэйв
*последняя строка вместо ЗаполнитьЗначениеСвойств(ТД,струкДанные); пиши А то еще пару часов гадать будешь:-)
#43 by Gill
а что же все-таки в качестве параметра запроса указывать?
#44 by Gill
как в условии запроса сослаться на конкретный(выбранный)элемент ТЧ Товары?
#45 by Gill
^
#46 by Gill
При выполнении запроса на сервере ТекущиеДанные - не доступно, при указании в качестве параметра "Ссылка" - Нельзя сравнивать поля неограниченной длины и поля несовместимых типов.Что в итоге указывать-то?
#47 by Gill
Всё-таки кто-нибудь может ответить: "Как обратится к реквизиту табличной части управляемой формы и передать это значение в качестве значения в параметр запроса?"
#48 by Gill
^
#49 by Gill
Я всё еще верю, что вы мне сможете помочь...Меня интересует вопрос в ?
#50 by Fish
У формы нет табличной части.
#51 by РенеДекарт
>>Как обратится к реквизиту табличной части управляемой формы ответ: никак. В УФ (да и, по большому счету, в ОФ 1С тоже) нельзя обратится к данным Формы, не находясь в данный момент в контексте это формы. Чтобы получить данные - нужно обращаться к ТЧ объекта (или в регистр, если объект делает движения по какому-либо регистру). И делается это НаСервере. Получив данные - через Параметр запроса передают их в запрос (он тоже НаСервере).
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

Похожие вопросы 1С

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