8.х Можно ли запросом обращатся к дополнительным свойствам объекта?

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Bkmz, 24 мар 2017.

  1. TopicStarter Overlay
    Bkmz
    Offline

    Bkmz Опытный в 1С

    Регистрация:
    6 июл 2013
    Сообщения:
    416
    Симпатии:
    11
    Баллы:
    29
    Есть документ: ЗарплатаКВыплатеПресонала.
    Допустим я там создаю дополнительное свойство "НомерПлатежки" с расчетом что буду его использовать выбирая запросом данные в другом месте.

    Код:
    Запрос = Новый Запрос;
        Запрос.Текст = "ВЫБРАТЬ ПЕРВЫЕ 1
                       |    Док.Ссылка
                       |ИЗ
                      |    Документ.ЗарплатаКВыплатеОрганизаций КАК Док";
                      // |    Документ.Встречи КАК Док";
        Выборка = Запрос.Выполнить().Выбрать();
        Выборка.Следующий();
     
        Запрос = Новый Запрос;
        Запрос.Текст = "ВЫБРАТЬ
                       |    ЗначенияСвойствОбъектов.Значение
                       |ИЗ
                       |    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
                       |ГДЕ
                       |    ЗначенияСвойствОбъектов.Свойство = &СВ
                       |    И ЗначенияСвойствОбъектов.Объект = &ОБ";
        Номер = ПланыВидовХарактеристик.СвойстваОбъектов.НайтиПоНаименованию("НомерПлатежки");
        Запрос.УстановитьПараметр("СВ", Номер);
        Запрос.УстановитьПараметр("ОБ", Выборка.Ссылка);
     
        НомерПлатежки = Запрос.Выполнить().Выбрать();
        НомерПлатежки.Следующий();
        Сообщить(НомерПлатежки.Значение);
    
    Допустим я другому документу (например "Встерчи") устанавливаю дополнительное свойство с таким же именем "НомерПлатежки". Если в указанном выше коде я поменяю в первом запросе "ЗарплатаКВыплатеОрганизаций" на "Встречи" . То сообщалка мне ничего не даст так как во второй запрос ушел параметр ПланыВидовХарактеристик.СвойстваОбъектов.Выбрать("НомерПлатежки") в котором "Назначение свойств" первое попавшееся значение по Наименованию. Оно не совпало и запрос сказал "Досвидос". Я на одном форуме читал что за обращение в запросе к дополнительным свойствам руки отбивают. Так ли это в действительности? Или можно переписать на

    Код:
    ПланыВидовХарактеристик.СвойстваОбъектов.Выбрать(, Новый Структура "НазначениеЗвойства, Наименование", Назначение, "НомерПлатежки")
    и не парится?
  2. nomad_irk
    Offline

    nomad_irk Гуру в 1С

    Регистрация:
    20 окт 2008
    Сообщения:
    9.246
    Симпатии:
    963
    Баллы:
    204
    У каждого доп свойства есть назначение - по нему различают одноименные свойства.

Поделиться этой страницей