Имя: Пароль:
1C
1С v8
ДанныеФормыКоллекция
0 selvador
 
06.05.14
09:44
в ДанныеФормыКоллекция пытаюсь загрузить ТаблицуЗначений, все по СП:

ДанныеФормыКоллекция (FormDataCollection)
Загрузить (Load)
Синтаксис:
Загрузить(<Таблица>)
Параметры:
<Таблица> (необязательный)
Тип: ТаблицаЗначений.
Таблица значений, откуда загружается табличная часть.
Описание:
Загружает данные коллекции из таблицы значений.
Все элементы коллекции будут удалены.
В коллекцию будут добавлены строки из таблицы значений и заполнены значениями в совпадающих по идентификаторам колонках.
Доступность:
Сервер.

Выдает ошибку:
"Нельзя изменять поле, содержащее объект данных формы".
1 SSSSS_AAAAA
 
06.05.14
09:49
(0) Ну так рассказывай где, когда и куда ты грузишь свою ТЗ. Код в студию. И при чем тут приведенный кусок из СП если ругается на совершенно другое?
2 selvador
 
06.05.14
09:58
Создаю на основании документ из модуля формыСпика.Все на управляемых формах.

Сначала создаю стурктуру документа на основании которого будет создоваться новый док. в общем модуле.

Функция  СозданиеСтруктурыДляФормы(Документ) Экспорт
    
_структура_шапки = Новый Структура();
    
    Для Каждого _реквизит Из Документ.Метаданные().Реквизиты Цикл
        _структура_шапки.Вставить(_реквизит.Имя, Документ[_реквизит.Имя]);
    КонецЦикла;
    
    _структура_табличной_части_документа = Новый Структура;
    Для Каждого _табличная_часть из Документ.Метаданные().ТабличныеЧасти Цикл
        _структура_табличной_части_документа.Вставить(_табличная_часть.Имя, Документ[_табличная_часть.Имя].Выгрузить());
    КонецЦикла;    
    
    _структура_документа = Новый Структура("_структура_шапки, _структура_табличной_части_документа " , _структура_шапки, _структура_табличной_части_документа);
    
    Возврат  _структура_документа;
КонецФункции


Получившуюся структуру отправля. на клиент в модуле формесписка

Процедура СоздатьНаОснованииГотоваяПродукция(Команда)
    _структура = ДополнительныеФункцииНаСервере.СозданиеСтруктурыДляФормы(Элементы.Список.ТекущаяСтрока);
    
    _форма = ПолучитьФорму("Документ.ГотоваяПродукция.Форма.ФормаДокумента");
    
    ЗаполнитьЗначенияСвойств(_форма.Объект, _структура._структура_шапки);
    
    Для Каждого _ключ_и_значение Из _структура._структура_табличной_части_документа Цикл
             ЗагрузкаТаблицыЗначений(_форма.Объект[_ключ_и_значение.ключ], _ключ_и_значение.Значение, _форма.Объект);        
    КонецЦикла;
    _форма.Открыть();
КонецПроцедуры

а так как Доступность загрузки Тз в колекцию можно только на сервере, то приходится загружать на сервере

&НаСервере
Процедура ЗагрузкаТаблицыЗначений(ТабличнаяЧасть, ТаблицаЗначений, ФормаОбъект)
        ТабличнаяЧасть.Загрузить(ТаблицаЗначений);            
КонецПроцедуры
3 Поpyчик-4
 
06.05.14
10:03
&НаСервере
Процедура ЗагрузкаТаблицыЗначений(ТаблицаЗначений)
        ТабличнаяЧасть.Загрузить(ТаблицаЗначений);            
КонецПроцедуры
Глупец, лишенный способности посмеяться над собой вместе с другими, не сможет долго выносить программирование. Фредерик Брукс-младший