Поле объекта недоступно для записи (АвтоРазмер)

При установке Свойства рисунка табличного документа возникает такая ошибка.

Если внимательно прочитать описание свойства “Авторазмер”

Применимо только для рисунков типа “Текст” и “Примечание“, а используется тип “Картинка”

Код вызывающий Ошибку

Рис = ТабДок.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
Рис.Картинка = БиблиотекаКартинок.УстановитьФлажки;

Рис.АвтоРазмер Истина;
Рис.Расположить(ОбластьС);

Рис.Высота = 16;
Рис.Ширина = 16;

Исправление ошибки

Заключается в использовании свойства “РазмерКартинки” со значением перечисления, которое применимо только для рисунков типа “Картинка”

Корректный код для расположения картинки в ячейку табличного документа

Рис = ТабДок.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
Рис.Картинка = БиблиотекаКартинок.УстановитьФлажки;
                                    
Рис.РазмерКартинки = РазмерКартинки.АвтоРазмер;
Рис.Расположить(ОбластьС);
Рис.Высота = 16;
Рис.Ширина = 16;

 

Особенность передачи объекта табличный документ на клиент

Добавление рисунка доступно только на сервере или толстом клиенте.

Если, вы напрямую меняете реквизит формы(ТабДок) или меняете ссылку на табличный документ (ТабличныйДокумент) переданный в данную процедуру (функцию), это не одно и тоже (не ссылка). 

ДобавитьРисунок(табДок);

&НаСервере
Функция ДобавитьРисунок(ТабличныйДокумент)

КонецФункции

 

Экземпляр этой переменной в момент возврата на сервер заменяет исходный табличный документ. 

Случайно, выбрав неверный объект для коде, не сразу выяснил причину.

Кодак продает фотопленку, но рекламируют они не фотопленку. Они рекламируют память.

— Теодор Левит