1С 8.3 БСП ЗначенияРеквизитовОбъекта - Программист 1С Минск. Автоматизация бизнеса.

Перейти к контенту

1С 8.3 БСП ЗначенияРеквизитовОбъекта

Данные > 1С 8.3 БСП > Данные в базе
Перейти в раздел примеры кода 1С 8.3:
1С 8.3 БСП ЗначенияРеквизитовОбъекта. Возвращает структуру, содержащую значения реквизитов, прочитанные из информационной базы по ссылке на объект.
Примера кода от rayastar
&НаКлиенте
Процедура ЗначениеРеквизитаОбъекта(Команда)

   // Использование на клиенте.
   СтранаПроисхождения = ОбщегоНазначенияРТВызовСервера.ЗначениеРеквизитаОбъекта(Номенклатура,"СтранаПроисхождения");

   // Использование на сервере
   СтранаПроисхождения = СтранаПроисхождения();

КонецПроцедуры

&НаСервере
Функция СтранаПроисхождения()

   Возврат ОбщегоНазначения.ЗначениеРеквизитаОбъекта(Номенклатура, "СтранаПроисхождения");

КонецФункции
// Автор библиотеки: ООО "1С-Софт". Все права защищены © 2021
// Типовая конфигурация Библиотека стандартных подсистем (далее - БСП)
// Код БСП распространяется по лицензии Attribution 4.0 International (CC BY 4.0):
// ссылка на лицензию: https://creativecommons.org/licenses/by/4.0/legalcode
из Системы стандартов и методик разработки конфигураций в 1С 8.3
// При чтении отдельных реквизитов объекта из базы данных следует иметь в виду,
// что вызов метода ПолучитьОбъект или обращение к реквизитам объекта через точку
// от ссылки приводит к загрузке объекта из базы целиком, вместе с его табличными частями.

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

// Неправильно:
Процедура ЗаполнитьКодИНаименованиеСтраны()

   // получаем ссылку на элемент справочника:
   СтранаСсылка = Справочники.Страны.НайтиПоНаименованию("Испания");
   КодСтраны = СтранаСсылка.Код; // первое обращение загружает объект целиком
   НаименованиеСтраны = СтранаСсылка.Наименование;

КонецПроцедуры

// Правильно:
Процедура ЗаполнитьКодИНаименованиеСтраны()

   Запрос = Новый Запрос(
   "ВЫБРАТЬ
    | СтраныМира.Код,
    | СтраныМира.Наименование
    |ИЗ
    | Справочник.СтраныМира КАК СтраныМира
    |ГДЕ
    | СтраныМира.Ссылка = &Ссылка");
   Запрос.УстановитьПараметр("Ссылка", Ссылка);

   Выборка = Запрос.Выполнить().Выбрать();
   Выборка.Следующий();

   КодСтраны = Выборка.Код;
   НаименованиеСтраны = Выборка.Наименование;

КонецПроцедуры

// Для упрощения синтаксиса рекомендуется также использовать специальные функции
// ЗначенияРеквизитовОбъектаили ЗначениеРеквизитаОбъекта.

// В этом случае исходный пример будет выглядеть так:
Процедура ЗаполнитьКодИНаименованиеСтраны()

   ЗначенияРеквизитов = ОбщегоНазначения.ЗначенияРеквизитовОбъекта(СтранаСсылка, "Код, Наименование");
   КодСтраны = ЗначенияРеквизитов.Код;
   НаименованиеСтраны = ЗначенияРеквизитов.Наименование;

КонецПроцедуры
0
комментарии
____________________
Copyright©, «Программист 1С в г.Минске», 07.06.2021
Перепечатка текста и фотографий разрешена при наличии прямой ссылки на источник
Яндекс.Метрика
Защищенное соединение ssl
visa
mastercard
Maestro
Яндекс деньги
Назад к содержимому