Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Як отримати значення свойства номенклатури
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.3
berest.andriy
доброго вечора. Хто підкаже як отримати значення свойства номенклатури
наприклад є номенклатура ТОВАР, в неї є свойство розмірА та розмірБ, (розмірА=30, розмірБ=70)
як програмно отримати скажімо РозмірА?
знайшов ось такий код
ЗначениеСвойства = РегистрыСведений.ЗначенияСвойствОбъектов.Получить(
   Новый Структура("Объект, Свойство", ОбъектСсылка, ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию(ИмяСвойства))
).Значение;

але не можу зрозуміти що має бути в ОбъектСсылка
пробував підставити значення типу Справочники.найтипонаименованию("ТОВАР") - пусто

УТП 10,30
Slon747
berest.andriy @ Вчера, 22:21 необходимо зарегистрироваться для просмотра ссылки ,
ОбъектСсылка - посиланная на номенклатуру.
Ваш код пацює
berest.andriy
Slon747 @ Сегодня, 7:23 необходимо зарегистрироваться для просмотра ссылки
ні, якраз і не працює
нічого не видає. думаю там десь треба приліпити Обьект

ось так працює через запрос
Товар=справочники.номенклатура.НайтиПоКоду("УТП003575");
    Запрос = Новый Запрос(
    "ВЫБРАТЬ
    |    ЗначенияСвойствОбъектов.Значение как знач
    |ИЗ
    |    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    |ГДЕ
    |    ЗначенияСвойствОбъектов.Свойство.Наименование = &Код
    |    И ЗначенияСвойствОбъектов.Объект = &Объект");
    
     свойство="РозмірА";
     Запрос.УстановитьПараметр("Код", свойство);
      Запрос.УстановитьПараметр("Объект", Товар);
      Результат = Запрос.Выполнить();
      
          Выборка = Результат.Выбрать();
          
          Пока Выборка.Следующий() Цикл
              сообщить(Выборка.знач);
          конеццикла;
Slon747
berest.andriy @ Сегодня, 9:58 необходимо зарегистрироваться для просмотра ссылки ,
Я майже завжди використовую запит. Але тут перевіряв через Получить() і отримав значення свойства.
Але у вас НайтиПоНаименованию(). Тому треба звернути увагу на другий параметр ф-ціі
berest.andriy
Slon747 @ Сегодня, 10:05 необходимо зарегистрироваться для просмотра ссылки ,
можете детальніше пояснити де застосовуєте получить?
denis84
ОбъектСсылка = Справочники.Номенклатура.НайтиПоКоду(КодТовара).Ссылка;
ЗначениеСвойства = РегистрыСведений.ЗначенияСвойствОбъектов.Получить(Новый Структура("Объект, Свойство", ОбъектСсылка, ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию(ИмяСвойства))).Значение;

Slon747
Цитата(berest.andriy @ 26.08.24, 13:15) необходимо зарегистрироваться для просмотра ссылки
можете детальніше пояснити де застосовуєте получить?


Це у вас РегистрыСведений.ЗначенияСвойствОбъектов.Получить()
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.