Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
23 ноя 2024, 13:04

Нельзя изменять поле, содержащее объект данных формы

Автор trialex3, 25 ноя 2019, 17:20

0 Пользователей и 1 гость просматривают эту тему.

trialex3

Добрый вечер. Прошу помощи.
Есть внешний отчет с формой. У формы есть несколько реквизитов типа ТаблицаЗначений. На каждый реквизит есть функция  в модуле формы которая выгружает запрос в ТЗ и присваевает этот ТЗ реквизиту. И вот на стадии присвоения выдает ошибку:

Цитировать{Отчет.ААААААААААААААААА.Форма.ФормаОтчета.Форма(327)}: Ошибка при установке значения атрибута контекста (СписокЗаказов)
СписокЗаказов = ТЗ;
по причине:
Нельзя изменять поле, содержащее объект данных формы

Тип переменной СписокЗаказов = ТаблицаЗначений;
В чем проблема может быть?

MuI_I_Ika

судя по коду вы пытаетесь в реквизит формы с типом значения Таблица формы присвоить переменную с типом значения Таблица значения. Это как бы разные типы значений.

С таблицей формы можно производить только манипуляции типа очистки, добавления, удаления эелементов.

MuI_I_Ika

В лучшем случаем можно просто Загрузить то что вы хотите

trialex3

Цитата: MuI_I_Ika от 25 ноя 2019, 18:29
В лучшем случаем можно просто Загрузить то что вы хотите
Да вы правы к одной переменной тип ДанныеФормыКоллекция а у второй переменной ТаблицаЗначений. Как можно присвоить переменной формы нужное значение?

MuI_I_Ika

Есть несколько способов. Если колонки совпадают один в один, то можно использовать метод ЗначениеВРеквизитФормы()

Если не совпадают, то можно использовать цикл.

trialex3

Добавил в ТЗ строки из запроса, но ругается теперь по другому:
Цитировать{Отчет.ААААААААААААААААА.Форма.ФормаОтчета.Форма(325)}: Ошибка при вызове метода контекста (ЗначениеВРеквизитФормы)
ЗначениеВРеквизитФормы(ТЗ,СписокЗаказов);
по причине:
Несоответствие типов (параметр номер '2')

MuI_I_Ika


trialex3

Цитата: MuI_I_Ika от 26 ноя 2019, 10:17
параметр 2 должен быть строкой
Вроде получилось через ЗначениеВДанныеФормы() сделать.

Теги:  

Похожие темы (5)

Рейтинг@Mail.ru

Поиск