Вкладка "Сойства" справочников
15.09.2009
19:45
#1
"Здраствуйте!
Помогите разобратся как с помощью встроенного языко можно присвоить созданному в режиме 1С Предприятие на вкладке Свойсва новому полю(реквизиту) какое либо значение программно.
Например в случае со предопределенным реквизитом Наименование это просто:
СпрФиз=Справочники.ФизическиеЛица.СоздатьЭлемент();
СпрФиз.Наименование="Иванов";
СпрФиз.Записать();
А как будет в случае с реквизитом определенным на вкладке "Свойства" справочника Физические лица?
Зарание большое спосибо."
Помогите разобратся как с помощью встроенного языко можно присвоить созданному в режиме 1С Предприятие на вкладке Свойсва новому полю(реквизиту) какое либо значение программно.
Например в случае со предопределенным реквизитом Наименование это просто:
СпрФиз=Справочники.ФизическиеЛица.СоздатьЭлемент();
СпрФиз.Наименование="Иванов";
СпрФиз.Записать();
А как будет в случае с реквизитом определенным на вкладке "Свойства" справочника Физические лица?
Зарание большое спосибо."
15.09.2009
21:21
#3
Ну да, конечно 
Я думаю, что в 8-шных конфигурациях это одинаково: ОбработкаОбъектЗначенияСвойств.СвойстваИЗначения
Иначе говоря есть 2 способа:
1. Через Обработку ЗначенияСвойств
2. Ручками написать, взяв за шаблон обработку п.1. и выкинув лишний код.
Я думаю, что в 8-шных конфигурациях это одинаково: ОбработкаОбъектЗначенияСвойств.СвойстваИЗначения
Иначе говоря есть 2 способа:
1. Через Обработку ЗначенияСвойств
2. Ручками написать, взяв за шаблон обработку п.1. и выкинув лишний код.
16.09.2009
12:26
#4
"ИмяМоегоСвойства = "...";
СвойствоМое = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию(ИмяМоегоСвойства, Истина);
Если СвойствоМое.Пустая() Тогда
Сообщить("Ошибка определения свойства по наименованию «" + ИмяМоегоСвойства + "»", СтатусСообщения.Важное);
Возврат;
КонецЕсли;
НаборЗаписей = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Объект.Установить(СпрФиз.Ссылка);
НаборЗаписей.Отбор.Свойство.Установить(СвойствоМое);
НаборЗаписей.Прочитать();
Если НаборЗаписей.Количество() = 0 Тогда // еще ни разу для этого физ.лица не было задано значение этого свойства
НовЗапись = НаборЗаписей.Добавить();
Иначе
НовЗапись = НаборЗаписей[0];
КонецЕсли;
НовЗапись.Объект = СпрФиз.Ссылка;
НовЗапись.Свойство = СвойствоМое;
НовЗапись.Значение = <указываем нужное значени>;
НаборЗаписей.Записать();"
СвойствоМое = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию(ИмяМоегоСвойства, Истина);
Если СвойствоМое.Пустая() Тогда
Сообщить("Ошибка определения свойства по наименованию «" + ИмяМоегоСвойства + "»", СтатусСообщения.Важное);
Возврат;
КонецЕсли;
НаборЗаписей = РегистрыСведений.ЗначенияСвойствОбъектов.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Объект.Установить(СпрФиз.Ссылка);
НаборЗаписей.Отбор.Свойство.Установить(СвойствоМое);
НаборЗаписей.Прочитать();
Если НаборЗаписей.Количество() = 0 Тогда // еще ни разу для этого физ.лица не было задано значение этого свойства
НовЗапись = НаборЗаписей.Добавить();
Иначе
НовЗапись = НаборЗаписей[0];
КонецЕсли;
НовЗапись.Объект = СпрФиз.Ссылка;
НовЗапись.Свойство = СвойствоМое;
НовЗапись.Значение = <указываем нужное значени>;
НаборЗаписей.Записать();"
Читают тему
(гостей: 1)