Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Как получать значение параметра из ДополнительныеСвойства

Как получать значение параметра из ДополнительныеСвойства
Я
   a_x_o_n
 
06.09.21 - 13:49
Я внес значение в ДополнительныеСвойства в модуле формы:

Процедура ПриЗаписиНаСервере(Отказ, ТекущийОбъект, ПараметрыЗаписи)
    ТабЗнач = Объект.СписокУчеников.Выгрузить();
    ТекущийОбъект.ДополнительныеСвойства.Вставить("ДополнительныеДанные", ТабЗнач);    
КонецПроцедуры

Как теперь получить это значение в Модуле Объекта?
Я пытаюсь так,  но выдает что поле ДополнительныеСвойства не найдено

МассивКолонок = Документы.ОценкиПоКлассам.ДополнительныеСвойства.ДополнительныеДанные;

Подскажите пожалуйста, как получить параметр переданный в ДополнительныеСвойства?
   1Сергей
 
1 - 06.09.21 - 13:50
Документы.ОценкиПоКлассам - это менеджер метаданных документа. А Вам нужен или объект или ссылка
   acht
 
2 - 06.09.21 - 13:54
(0) В модуле объекта:

МассивКолонок = ДополнительныеСвойства.ДополнительныеДанные;

Ну или ЭтотОбъект.ДополнительныеСвойства.ДополнительныеДанные;
   Dmitrii
 
3 - 06.09.21 - 13:55
(0) >> Модуле Объекта?
Если ЭтотОбъект.ДополнительныеСвойства.Свойство("ДополнительныеДанные") Тогда
 МассивКолонок = ЭтотОбъект.ДополнительныеСвойства.ДополнительныеДанные;
Иначе
 МассивКолонок = Новый Массив;
КонецЕсли;

   a_x_o_n
 
4 - 06.09.21 - 13:56
(2) Поле объекта ДополнительныеДанные не обнаружено
   a_x_o_n
 
5 - 06.09.21 - 14:01
(3) Аналогично, поле объекта ДополнительныеДанные не обнаружено. А в условии "Если" результат Ложь
   a_x_o_n
 
6 - 06.09.21 - 14:13
Возможно ли такое что модуль объекта процедура "ПриЗаписи" У меня выполнится первее чем процедура "ПриЗаписи" у модуля формы? Тк поулчается что значение я заношу в модуле формы и если первым выполняется модуль объекта то конечно значения там еще нет
   a_x_o_n
 
7 - 06.09.21 - 14:18
Да, процедура ПриЗаписи в модуле формы выполняется первее чем процедура при записи у модуля формы. отсюда и отсутствие значения в дополнительныеДанные
   a_x_o_n
 
8 - 06.09.21 - 14:20
Поменял процедуру в модуле формы на ПередЗаписьюНаСервере и все заработало
благодарю всем за помощь
   Вафель
 
9 - 06.09.21 - 14:22
(3)  Если БСП, то проще писать
МассивКолонок  = ОбщегоНазначенияКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "ДополнительныеДанные", Новый Массив);

   Dmitrii
 
10 - 06.09.21 - 14:53
(9) Согласен, что проще.
Но я с некоторых пор боюсь лишний раз использовать БСП без особой необходимости, чтобы потом не переписывать кучу кода из-за того, что в очередной новой версии БСП решили вдруг перенести или переписать какие-то методы или функции, параллельно отказавшись от обратной совместимости.

Список тем форума
 
Компьютер — устройство разработанное для ускорения и автоматизации человеческих ошибок.
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.