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

v8: Таблица значений

bless18
22.10.2012 12:54Прочитано: 2788
Добрый день!
На форме отчета есть Табличное поле с типом ТаблицаЗначений.
В нее нужно поместить результат запроса.
Способ загрузить результат запроса в таблицу значений не совсем подходит, т. к. в табличном поле есть вычисляемые поля, не зависящие от запроса.
Как присвоить колонке табличного поля значение колонки из запроса?

Код 1C v 8.2 УП
 
Процедура КнопкаСформироватьНажатие(Кнопка)
Запрос = Новый Запрос;
Запрос.УстановитьПараметр("ФизЛицо", ФизЛицо);
Запрос.Текст = "ВЫБРАТЬ
| РаботникиСрезПоследних.Подразделение,
| РаботникиСрезПоследних.ФизЛицо,
| РаботникиСрезПоследних.Подразделение.Руководитель,
| СборДанныхДляПланированияЗанятостиФизлицСрезПоследних.Период,
| СборДанныхДляПланированияЗанятостиФизлицСрезПоследних.ПериодЗавершения
|ИЗ
| РегистрСведений.Работники.СрезПоследних КАК РаботникиСрезПоследних
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СборДанныхДляПланированияЗанятостиФизлиц.СрезПоследних КАК СборДанныхДляПланированияЗанятостиФизлицСрезПоследних
| ПО РаботникиСрезПоследних.ФизЛицо = СборДанныхДляПланированияЗанятостиФизлицСрезПоследних.ФизЛицо
|ГДЕ
| РаботникиСрезПоследних.ФизЛицо = &ФизЛицо";
Результат = Запрос.Выполнить().Выбрать();

Если Результат.Следующий()Тогда
СписокНарушителей.Колонки.Подразделение = Результат.Подразделение;
КонецЕсли;
КонецПроцедуры


Ошибка: {Отчет.БИТ_СКУД_НарушенияСотрудника1.Форма.ФормаОтчета(20)}: Поле объекта недоступно для записи (Подразделение)
СписокНарушителей.Колонки.Подразделение = Результат.Подразделение;
Yandex
Возможно, вас также заинтересует
Реклама на портале
E_Migachev
22.10.2012 15:26Ответ № 1
попробуй ВыгрузитьКолонку / ЗагрузитьКолонку, а вообще лучше перебирая строки Табчасти устанавливать Подразделения:
Код 1C v 8.х
 Для каждого текСтр из СписокНарушителей Цикл
Результат.Следующий();
текСтр.Подразделение = Результат.Подразделение;
КонецЦикла;
bless18
22.10.2012 16:10Ответ № 2
ТекСтрока в значении "Неопределено" получается..
bless18
22.10.2012 16:10Ответ № 3
Код 1C v 8.2 УП
 
Для Каждого ТекСтрока Из СписокНарушителей Цикл
Результат.Следующий()
ТекСтрока.Подразделение = Результат.Подразделение;
КонецЦикла;

E_Migachev
22.10.2012 21:00Ответ № 4
(3) bless18, значит таблица СписокНарушителей пустая, тогда
Код 1C v 8.х
 	Пока Результат.Следующий() Цикл
ТекСтрока = СписокНарушителей.Добавить();
ТекСтрока.Подразделение = Результат.Подразделение;
КонецЦикла;
Подсказка: Вы получили ответ на свой вопрос - закройте вопрос!
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.