helpf.pro
Регистрация

v8: Обращение к полю ТЧ из формы списка

bless18
25.09.2012 11:27Прочитано: 3580
Добрый день!
На форму списка документа добавлено табличное поле, в которое нужно загружать данные из запроса. Реализую это так:
Код 1C v 8.2 УП
 
Процедура ДокументСписокПриАктивизацииСтроки(Элемент)
// Выводим список ПП по заявке
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("Ссылка", ЭлементыФормы.ДокументСписок.ТекущаяСтрока);
Запрос.УстановитьПараметр("Расход", ВидДвиженияНакопления.Расход);
Запрос.Текст = "ВЫБРАТЬ
| ЗаявкиНаРасходованиеСредств.Регистратор.Номер КАК НомерПП,
| ЗаявкиНаРасходованиеСредств.Регистратор.Дата КАК ДатаПП,
| ЗаявкиНаРасходованиеСредств.Период,
| ЗаявкиНаРасходованиеСредств.Сумма,
| ЗаявкиНаРасходованиеСредств.Регистратор КАК Документ
|ИЗ
| РегистрНакопления.ЗаявкиНаРасходованиеСредств КАК ЗаявкиНаРасходованиеСредств
|ГДЕ
| ЗаявкиНаРасходованиеСредств.ЗаявкаНаРасходование = &Ссылка
| И ЗаявкиНаРасходованиеСредств.ВидДвижения = &Расход";
Результат = Запрос.Выполнить();
СведенияОПлатежах=Результат.Выгрузить();
ЭлементыФормы.СведенияОПлатежах.СоздатьКолонки();

КонецПроцедуры


Данные выводятся, но имена колонок такие же, как псевдонимы в запросе.
Тогда создала колонки на форме с именами, какими нужно (например, вместо Период Дата платежа). Но не могу обратиться к полям ввода ТЧ. Значение ЭлементыФормы.ИмяТЧ.ТекущиеДанные в значении НЕОПРЕДЕЛЕНО.
Подскажите, пожалуйста, как обратиться к полям ТЧ на форме списка.
Yandex
Возможно, вас также заинтересует
Реклама на портале
Mokey
25.09.2012 11:35Ответ № 1
Проще будет по колонкам пройтись, например:
Код 1C v 8.х
 
Результат = Запрос.Выполнить();
СведенияОПлатежах=Результат.Выгрузить();
ЭлементыФормы.СведенияОПлатежах.СоздатьКолонки();
Для Каждого Колонка Из ЭлементыФормы.СведенияОПлатежах.Колонки Цикл
Если Колонка.Имя = "Период" Тогда
Колонка.ТекстШапки = "Дата платежа";
КонецЕсли;
// и т.д.
КонецЦикла;

Изменено 25.09.12 11:36:06
Mokey
25.09.2012 11:39Ответ № 2
Если хотите заполнять свои колонки, то при обходе результата запроса добавляете новую строку в табличное поле, например:
Код 1C v 8.х
 НоваяСтрока = ЭлементыФормы.СведенияОПлатежах.Значение.Добавить();   

а далее обращаетесь к колонкам, или:
Код 1C v 8.х
 ЗаполнитьЗначенияСвойств(НоваяСтрока, ВыборкаИзЗапроса)   

Во втором случае имена колонок должны совпадать с псевдонимами полей в запросе.
Удачи.
bless18
25.09.2012 12:00Ответ № 3
Большое спасибо за помощь! )
bless18
25.09.2012 12:02Ответ № 4
Вопрос закрыт!
Подсказка: Для редактирования своего ответа щелкните по значку (справа)
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.