Имя: Пароль:
1C
1С v8
В доп реквизиты текущего документа из списка записать данные
0 AnisaL
 
19.07.19
14:08
Добрый день!
Есть динамический список - список документов Поступлений, в него добавила кнопку, по нажатию на которую, открывается некоторая общая форма, после закрытия которой, нужно в документ, который был текущим на списке, точнее в доп реквизиты этого документа записать некоторые данные. Вот я так и пытаюсь сделать, только программа выдает ошибку:
{Документ.ПоступлениеНаСчет.Форма.ФормаСписка.Форма(419)}: Ошибка при вызове метода контекста (Записать)
        Поступление.Записать();
по причине:
Ошибка при выполнении обработчика - 'ПриЗаписи'
по причине:
{Документ.ПоступлениеНаСчет.МодульОбъекта(3877)}: Поле объекта недоступно для записи (ДополнительныеСвойства)
    УправлениеНебольшойФирмойСервер.ПриЗаписиДокументаОснованияСчетаФактуры(Ссылка, ДополнительныеСвойства, Ложь);
Как тогда это сделать?
1 Timon1405
 
19.07.19
14:14
(0) ДополнительныеСвойства - зарезервированное понятие,
Может использоваться в тех случаях, когда необходимо хранить некоторые значения, связанные с объектом, на время выполнения некоторых операций, без изменения объекта. Например, при обработке событий в подписке на события.
ТЧ должна называться ДополнительныеРеквизиты (если у вас типовая)
2 AnisaL
 
19.07.19
14:30
(1)     ТекущаяСтрокаСсылка  = Элементы.Список.ТекущаяСтрока;
        Поступление = ТекущаяСтрокаСсылка.ПолучитьОбъект();
        
        СвойствоКэшбэк = ПолучитьПВХ("uds_Кэшбэк");
        
        НовыйРеквизит = Поступление.ДополнительныеРеквизиты.Добавить();
        НовыйРеквизит.Свойство = СвойствоКэшбэк;
        НовыйРеквизит.Значение = Поступление.СуммаДокумента*РезультатОбработки.ПроцентКэшбэка/100;
        
        
        Поступление.Записать();
3 AnisaL
 
19.07.19
14:30
(1) вот текст кода, там про ДополнительныеСвойства ни слова не написано
4 bolero
 
19.07.19
14:48
(3) странно, а у меня есть, в той же строке Документ.ПоступлениеНаСчет.МодульОбъекта(3877):
Процедура ПриЗаписи(Отказ)

        Если ОбменДанными.Загрузка Тогда

                Возврат;

        КонецЕсли;

        УправлениеНебольшойФирмойСервер.ПриЗаписиДокументаОснованияСчетаФактуры(Ссылка, ДополнительныеСвойства, Ложь);

КонецПроцедуры
5 AnisaL
 
19.07.19
14:50
(4) и как быть с этой ошибкой?
6 bolero
 
19.07.19
14:55
(5) без понятия, я не погромист

на мой взгляд налицо неинициализированный объект ДополнительныеСвойства
который где-то должен инициализироваться УправлениеНебольшойФирмойСервер.ИнициализироватьДополнительныеСвойстваДляПроведения(Ссылка, ДополнительныеСвойства)

а погромисты при вызове различных процедур предполагают, что кто-то где-то инициализировал

поэтому 1с-погромистов и гнобят хуже пхпшников
7 AnisaL
 
19.07.19
14:58
(6) то есть перед записью надо эти ДополнительныеСвойства инициализировать, а каким образом