Добрый день. Я начинающий программист. Подскажите пожалуйста, у меня такой вопрос:
В запросе,с помощью регистра накопления, мне нужно найти документы с определёнными условиями (дата, склад, номенклатура,стоимость). Всё получилось,сделал, но вот одно условия никак не могу выполнить, нужно еще указать колонку, в которой указывается ТОП (на сколько товар продаётся, например А,B,C,D,E). Есть справочник,в котором хранятся значение топов. Есть справочник номенклатура,в котором у каждой номенклатуры указан ТОП, но конкретного реквизита в справочнике номенклатура с указанием на этот ТОП нет. Значение топов вычисляются в общем модуле и уже присваивается определённой номенклатуре (в табличную часть её, я так понимаю). Так вот никак не могу задать критерий отбора,чтобы выводились в запросе только номенклатура с топами А и B.
Подскажите ход мыслей. Если где то что то упустил в описании проблемы, спрашивайте.
---
Вот, одна голова хорошо, а грамотного человека лучше) Послушал Вас, подумал, нашёл все нужные данные и всё получилось.

ВЫБРАТЬ
 ПартииТоваровНаСкладах.Период КАК ДатаДокумента,
 ПартииТоваровНаСкладах.Склад КАК Склад,
 ПартииТоваровНаСкладах.Номенклатура КАК Номенклатура,
 ПартииТоваровНаСкладах.Регистратор.ИнвентаризацияТоваровНаСкладе КАК ДокументИнвентаризации,
 ВЫБОР
  КОГДА ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.СписаниеТоваров
   ТОГДА ПартииТоваровНаСкладах.Стоимость
  ИНАЧЕ NULL
 КОНЕЦ КАК СтоимостьСписания,
 ВЫБОР
  КОГДА ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.ОприходованиеТоваров
   ТОГДА ПартииТоваровНаСкладах.Стоимость
  ИНАЧЕ NULL
 КОНЕЦ КАК СтоимостьОприходования
ПОМЕСТИТЬ Общее
ИЗ
 РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
ГДЕ
 ПартииТоваровНаСкладах.Период МЕЖДУ &Период1 И &Период2
 И (ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.СписаниеТоваров
   ИЛИ ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.ОприходованиеТоваров)
 И НЕ ПартииТоваровНаСкладах.Регистратор.ИнвентаризацияТоваровНаСкладе = ЗНАЧЕНИЕ(Документ.ИнвентаризацияТоваровНаСкладе.ПустаяСсылка)
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
 Общее.ДатаДокумента КАК ДатаДокумента,
 Общее.Склад КАК Склад,
 Общее.Номенклатура КАК Номенклатура,
 ЗначенияСвойствОбъектов.Значение КАК ЗначениеСвойстваНоменклатуры,
 ЗначенияСвойствОбъектов.Свойство КАК СвойствоНоменклатуры,
 Общее.ДокументИнвентаризации КАК ДокументИнвентаризации,
 Общее.СтоимостьСписания КАК СтоимостьСписания,
 Общее.СтоимостьОприходования КАК СтоимостьОприходования
ИЗ
 Общее КАК Общее
  ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
  ПО Общее.Номенклатура = ЗначенияСвойствОбъектов.Объект
ГДЕ
 ЗначенияСвойствОбъектов.Свойство.Код = "000000467"
 И (ЗначенияСвойствОбъектов.Значение.Код = "000001164"
   ИЛИ ЗначенияСвойствОбъектов.Значение.Код = "000001165")

УПОРЯДОЧИТЬ ПО
 ДатаДокумента УБЫВ
ИТОГИ
 СУММА(СтоимостьСписания),
 СУММА(СтоимостьОприходования)
ПО
 Склад,
 ЗначениеСвойстваНоменклатуры,
 Номенклатура,
 ДокументИнвентаризации
---
у каждой номенклатуры указан ТОП, но конкретного реквизита в справочнике номенклатура с указанием на этот ТОП нет
А где же он тогда указан? В реквизите ТЧ может? Давайте подробнее.
---
Конкретно ТЧ не создана. Но вот в форме элемента есть реквизит,в который записывается результат выполнения работы общего модуля, по вычислению ТОП.
На сколько я понимаю, нужно решить этот вопрос через объект...
---
Посмотреть в конфигураторе на какие данные ссылается этот реквизит? Скорее всего это регистр сведений.
---
На обработку. Она в свою очередь берёт значение реквизита нужного из Характеристики
---
Реквизит не может ссылаться на обработку, скиньте скрин свойств реквизита
---
https://ibb.co/KV9Sbzh
---
Скрин обрабатывается ...
Тип: ОбработкаОбъект.ЗначенияСвойствОбъекта
---
Посмотри РегистрСведений.ЗначенияСвойствобъекта, если я правильно понял, то ТОП это дополнительное свойство, которое храниться как раз в нем, и дальше через внутреннее с отбором "Свойство", который в свою очередь ПВХ.
---
Отдельным запросом я как раз получаю нужные мне значения:

```1c
    ВЫБРАТЬ
    ЗначенияСвойствОбъектов.Объект КАК Номенклатура,
    ЗначенияСвойствОбъектов.Значение КАК ЗначениеСвойства,
    ЗначенияСвойствОбъектов.Свойство КАК Свойство
    ИЗ
    РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    ГДЕ
    ЗначенияСвойствОбъектов.Свойство.Код = "000000467"
    И (ЗначенияСвойствОбъектов.Значение.Код = "000001164"
    ИЛИ ЗначенияСвойствОбъектов.Значение.Код = "000001165")
```

Но вот как соединить с моим ...

```1c
    ВЫБРАТЬ
    ПартииТоваровНаСкладах.Период КАК ДатаДокумента,
    ПартииТоваровНаСкладах.Склад КАК Склад,
    ПартииТоваровНаСкладах.Номенклатура КАК Номенклатура,
    ПартииТоваровНаСкладах.Регистратор.ИнвентаризацияТоваровНаСкладе КАК ДокументИнвентаризации,
    ВЫБОР
    КОГДА ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.СписаниеТоваров
    ТОГДА ПартииТоваровНаСкладах.Стоимость
    ИНАЧЕ NULL
    КОНЕЦ КАК СтоимостьСписания,
    ВЫБОР
    КОГДА ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.ОприходованиеТоваров
    ТОГДА ПартииТоваровНаСкладах.Стоимость
    ИНАЧЕ NULL
    КОНЕЦ КАК СтоимостьОприходования
    ИЗ
    РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
    ГДЕ
    ПартииТоваровНаСкладах.Период МЕЖДУ &Период1 И &Период2
    И (ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.СписаниеТоваров
    ИЛИ ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.ОприходованиеТоваров)
    И НЕ ПартииТоваровНаСкладах.Регистратор.ИнвентаризацияТоваровНаСкладе = ЗНАЧЕНИЕ(Документ.ИнвентаризацияТоваровНаСкладе.ПустаяСсылка)

    УПОРЯДОЧИТЬ ПО
    ДатаДокумента УБЫВ
```

Почему то не получается
---
что не получается то?
Покажите как вы соединяете...
---
Вот в этом и проблема... Уже и методом тыка пробовал соединить, не выходит.
---
вы хоть тыком хоть без тыка покажите- сейчас не видно предмета разговора...
---
ВЫБРАТЬ
 ПартииТоваровНаСкладах.Период КАК ДатаДокумента,
 ПартииТоваровНаСкладах.Склад КАК Склад,
 ПартииТоваровНаСкладах.Номенклатура КАК Номенклатура,
 ПартииТоваровНаСкладах.Регистратор.ИнвентаризацияТоваровНаСкладе КАК ДокументИнвентаризации,
 ВЫБОР
  КОГДА ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.СписаниеТоваров
   ТОГДА ПартииТоваровНаСкладах.Стоимость
  ИНАЧЕ NULL
 КОНЕЦ КАК СтоимостьСписания,
 ВЫБОР
  КОГДА ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.ОприходованиеТоваров
   ТОГДА ПартииТоваровНаСкладах.Стоимость
  ИНАЧЕ NULL
 КОНЕЦ КАК СтоимостьОприходования
ПОМЕСТИТЬ Общее
ИЗ
 РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
ГДЕ
 ПартииТоваровНаСкладах.Период МЕЖДУ &Период1 И &Период2
 И (ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.СписаниеТоваров
   ИЛИ ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.ОприходованиеТоваров)
 И НЕ ПартииТоваровНаСкладах.Регистратор.ИнвентаризацияТоваровНаСкладе = ЗНАЧЕНИЕ(Документ.ИнвентаризацияТоваровНаСкладе.ПустаяСсылка)
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
 ЗначенияСвойствОбъектов.Значение КАК ЗначениеСвойства,
 ЗначенияСвойствОбъектов.Свойство КАК Свойство,
 Общее.ДатаДокумента КАК ДатаДокумента,
 Общее.Склад КАК Склад,
 Общее.Номенклатура КАК Номенклатура1,
 Общее.ДокументИнвентаризации КАК ДокументИнвентаризации,
 Общее.СтоимостьСписания КАК СтоимостьСписания,
 Общее.СтоимостьОприходования КАК СтоимостьОприходования
ИЗ
 Общее КАК Общее
  ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
  ПО ЗначенияСвойствОбъектов.Значение.Ссылка = Общее.Номенклатура.Ссылка
ГДЕ
 ЗначенияСвойствОбъектов.Свойство.Код = "000000467"
 И (ЗначенияСвойствОбъектов.Значение.Код = "000001164"
   ИЛИ ЗначенияСвойствОбъектов.Значение.Код = "000001165")
---
Прокомментируйте вот как вы связь устанавливали

```1c
    ПО ЗначенияСвойствОбъектов.Значение.Ссылка = Общее.Номенклатура.Ссылка
```

Из каких соображений?
---
Если бы у меня были соображения, я бы решил задачу. А так,я в тупике и обратился за помощью к специалистам. Сам прекрасно понимаю абсурдность соединения, но скинул лишь бы был целиком код.
---
Пришлите структуру регистра РегистрСведений.ЗначенияСвойствОбъектов
картинкой желательно - так быстрее
---
В нем каким-то боком есть вообще Номенклатура то?
Вот по этому измерению и связывайте
---
Вот, одна голова хорошо, а грамотного человека лучше) Послушал Вас, подумал, нашёл все нужные данные и всё получилось.

ВЫБРАТЬ
 ПартииТоваровНаСкладах.Период КАК ДатаДокумента,
 ПартииТоваровНаСкладах.Склад КАК Склад,
 ПартииТоваровНаСкладах.Номенклатура КАК Номенклатура,
 ПартииТоваровНаСкладах.Регистратор.ИнвентаризацияТоваровНаСкладе КАК ДокументИнвентаризации,
 ВЫБОР
  КОГДА ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.СписаниеТоваров
   ТОГДА ПартииТоваровНаСкладах.Стоимость
  ИНАЧЕ NULL
 КОНЕЦ КАК СтоимостьСписания,
 ВЫБОР
  КОГДА ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.ОприходованиеТоваров
   ТОГДА ПартииТоваровНаСкладах.Стоимость
  ИНАЧЕ NULL
 КОНЕЦ КАК СтоимостьОприходования
ПОМЕСТИТЬ Общее
ИЗ
 РегистрНакопления.ПартииТоваровНаСкладах КАК ПартииТоваровНаСкладах
ГДЕ
 ПартииТоваровНаСкладах.Период МЕЖДУ &Период1 И &Период2
 И (ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.СписаниеТоваров
   ИЛИ ПартииТоваровНаСкладах.Регистратор ССЫЛКА Документ.ОприходованиеТоваров)
 И НЕ ПартииТоваровНаСкладах.Регистратор.ИнвентаризацияТоваровНаСкладе = ЗНАЧЕНИЕ(Документ.ИнвентаризацияТоваровНаСкладе.ПустаяСсылка)
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
 Общее.ДатаДокумента КАК ДатаДокумента,
 Общее.Склад КАК Склад,
 Общее.Номенклатура КАК Номенклатура,
 ЗначенияСвойствОбъектов.Значение КАК ЗначениеСвойстваНоменклатуры,
 ЗначенияСвойствОбъектов.Свойство КАК СвойствоНоменклатуры,
 Общее.ДокументИнвентаризации КАК ДокументИнвентаризации,
 Общее.СтоимостьСписания КАК СтоимостьСписания,
 Общее.СтоимостьОприходования КАК СтоимостьОприходования
ИЗ
 Общее КАК Общее
  ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
  ПО Общее.Номенклатура = ЗначенияСвойствОбъектов.Объект
ГДЕ
 ЗначенияСвойствОбъектов.Свойство.Код = "000000467"
 И (ЗначенияСвойствОбъектов.Значение.Код = "000001164"
   ИЛИ ЗначенияСвойствОбъектов.Значение.Код = "000001165")

УПОРЯДОЧИТЬ ПО
 ДатаДокумента УБЫВ
ИТОГИ
 СУММА(СтоимостьСписания),
 СУММА(СтоимостьОприходования)
ПО
 Склад,
 ЗначениеСвойстваНоменклатуры,
 Номенклатура,
 ДокументИнвентаризации