У меня есть код, который заполняет табличный документ номенклатурой и ее штрихкодами, и не как не удается правильно сопоставить номенклатуру и ее штрихкод. Если вставлю вывод строки как на фото №1 то выводится только последняя номенклатура, но штрихкоды все в правильном порядке, а если укажу как на фото №2 то вообще нет штрихов, можно ли это как то нормально сопоставить?

```1c
    ВыборкаТабличнойЧасти = СсылкаНаОбъект.Товары;
    Для каждого СтрокаТабличнойЧасти Из ВыборкаТабличнойЧасти Цикл

    СтруктураСтроки = дкПолучитьПредставлениеДанныхТоварнойСтроки(СтрокаТабличнойЧасти,Права);
    ОбластьСтрока.Параметры.Заполнить(СтруктураСтроки);
    ОбластьСтрока.Параметры.ДатаПоставки = СтрокаТабличнойЧасти.ДатаПоставки;
    ОбластьСтрока.Параметры.Коэффициент = СтрокаТабличнойЧасти.Коэффициент;
    КонецЦикла;
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ШтрихКоды.ШтрихКод КАК ШтрихКод,
    | ЗаказВнутреннийТовары.Номенклатура КАК Номенклатура,
    | ШтрихКоды.ОсновнойШтрихкод КАК ОсновнойШтрихкод
    |ИЗ
    | Документ.ЗаказВнутренний.Товары КАК ЗаказВнутреннийТовары
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ШтрихКоды КАК ШтрихКоды
    | ПО (ШтрихКоды.Объект = ЗаказВнутреннийТовары.Номенклатура)
    |ГДЕ
    | ШтрихКоды.Запрет <> &Запрет
    | И ЗаказВнутреннийТовары.Ссылка = &ТоварДок
    |ИТОГИ
    | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОсновнойШтрихкод)
    |ПО
    | Номенклатура,
    | ШтрихКод";

    Запрос.УстановитьПараметр("Запрет", Истина);
    Запрос.УстановитьПараметр("ТоварДок", СсылкаНаОбъект);
    РезультатЗапроса = Запрос.Выполнить();
    ТаблицаЗнач = Запрос.Выполнить().Выгрузить();
    ВыборкаНоменклатура = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Номенклатура");
    Пока ВыборкаНоменклатура.Следующий() Цикл
    ОбластьСтрока.Параметры.Штрихкод = ";
    ВыборкаШтрихКоды = ВыборкаНоменклатура.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"ШтрихКод");
    Пока ВыборкаШтрихКоды.Следующий() Цикл
    ОбластьСтрока.Параметры.Штрихкод = ВыборкаШтрихКоды.Штрихкод + ", " + ОбластьСтрока.Параметры.Штрихкод;
    КонецЦикла;
    КонецЦикла;
```
---
штрихкодвы все выводятся, только не знаю как сопоставить штрихкоды и номенклатура
Тогда сначала запрос, а потом перебираете строки ТЧ

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ШтрихКоды.ШтрихКод КАК ШтрихКод,
    | ЗаказВнутреннийТовары.Номенклатура КАК Номенклатура,
    | ШтрихКоды.ОсновнойШтрихкод КАК ОсновнойШтрихкод
    |ИЗ
    | Документ.ЗаказВнутренний.Товары КАК ЗаказВнутреннийТовары
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ШтрихКоды КАК ШтрихКоды
    | ПО (ШтрихКоды.Объект = ЗаказВнутреннийТовары.Номенклатура)
    |ГДЕ
    | ШтрихКоды.Запрет <> &Запрет
    | И ЗаказВнутреннийТовары.Ссылка = &ТоварДок
    |ИТОГИ
    | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОсновнойШтрихкод)
    |ПО
    | Номенклатура,
    | ШтрихКод";

    Запрос.УстановитьПараметр("Запрет", Истина);
    Запрос.УстановитьПараметр("ТоварДок", СсылкаНаОбъект);
    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаНоменклатура = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Номенклатура");

    ВыборкаТабличнойЧасти = СсылкаНаОбъект.Товары;
    Для каждого СтрокаТабличнойЧасти Из ВыборкаТабличнойЧасти Цикл

    СтруктураСтроки = дкПолучитьПредставлениеДанныхТоварнойСтроки(СтрокаТабличнойЧасти,Права);
    ОбластьСтрока.Параметры.Заполнить(СтруктураСтроки);
    ОбластьСтрока.Параметры.ДатаПоставки = СтрокаТабличнойЧасти.ДатаПоставки;
    ОбластьСтрока.Параметры.Коэффициент = СтрокаТабличнойЧасти.Коэффициент;

    Номенклатура = СтрокаТабличнойЧасти.Номенклатура;

    Отбор = Новый Структура;
    Отбор.Вставить("Номенклатура", Номенклатура);

    ОбластьСтрока.Параметры.Штрихкод = ";

    Если ВыборкаНоменклатура.НайтиСледующий(Отбор) Тогда
    ВыборкаШтрихКоды = ВыборкаНоменклатура.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам ,"ШтрихКод");

    Пока ВыборкаШтрихКоды.Следующий() Цикл

    ОбластьСтрока.Параметры.Штрихкод = ВыборкаДетальныеЗаписи.Штрихкод + ", " + ОбластьСтрока.Параметры.Штрихкод;

    КонецЦикла;

    КонецЕсли;

    КонецЦикла;
```
---
Наверное по группировке "Штрихкоды" не выводятся сами штрихкоды, а выводится количество различные.
Попробуйте с этим запросом

```1c
    Запрос.Текст =
    "ВЫБРАТЬ
    | ШтрихКоды.ШтрихКод КАК ШтрихКод,
    | ЗаказВнутреннийТовары.Номенклатура КАК Номенклатура,
    | ШтрихКоды.ОсновнойШтрихкод КАК ОсновнойШтрихкод,
    | 0 КАК Ноль
    |ИЗ
    | Документ.ЗаказВнутренний.Товары КАК ЗаказВнутреннийТовары
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ШтрихКоды КАК ШтрихКоды
    | ПО (ШтрихКоды.Объект = ЗаказВнутреннийТовары.Номенклатура)
    |ГДЕ
    | ШтрихКоды.Запрет <> &Запрет
    | И ЗаказВнутреннийТовары.Ссылка = &ТоварДок
    |ИТОГИ
    | СУММА(Ноль)
    |ПО
    | Номенклатура,
    | ШтрихКод";
```
---
штрихкодвы все выводятся, только не знаю как сопоставить штрихкоды и номенклатура
---
штрихкодвы все выводятся, только не знаю как сопоставить штрихкоды и номенклатура
Тогда сначала запрос, а потом перебираете строки ТЧ

```1c
    Запрос = Новый Запрос;
    Запрос.Текст =
    "ВЫБРАТЬ
    | ШтрихКоды.ШтрихКод КАК ШтрихКод,
    | ЗаказВнутреннийТовары.Номенклатура КАК Номенклатура,
    | ШтрихКоды.ОсновнойШтрихкод КАК ОсновнойШтрихкод
    |ИЗ
    | Документ.ЗаказВнутренний.Товары КАК ЗаказВнутреннийТовары
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ШтрихКоды КАК ШтрихКоды
    | ПО (ШтрихКоды.Объект = ЗаказВнутреннийТовары.Номенклатура)
    |ГДЕ
    | ШтрихКоды.Запрет <> &Запрет
    | И ЗаказВнутреннийТовары.Ссылка = &ТоварДок
    |ИТОГИ
    | КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ОсновнойШтрихкод)
    |ПО
    | Номенклатура,
    | ШтрихКод";

    Запрос.УстановитьПараметр("Запрет", Истина);
    Запрос.УстановитьПараметр("ТоварДок", СсылкаНаОбъект);
    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаНоменклатура = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Номенклатура");

    ВыборкаТабличнойЧасти = СсылкаНаОбъект.Товары;
    Для каждого СтрокаТабличнойЧасти Из ВыборкаТабличнойЧасти Цикл

    СтруктураСтроки = дкПолучитьПредставлениеДанныхТоварнойСтроки(СтрокаТабличнойЧасти,Права);
    ОбластьСтрока.Параметры.Заполнить(СтруктураСтроки);
    ОбластьСтрока.Параметры.ДатаПоставки = СтрокаТабличнойЧасти.ДатаПоставки;
    ОбластьСтрока.Параметры.Коэффициент = СтрокаТабличнойЧасти.Коэффициент;

    Номенклатура = СтрокаТабличнойЧасти.Номенклатура;

    Отбор = Новый Структура;
    Отбор.Вставить("Номенклатура", Номенклатура);

    ОбластьСтрока.Параметры.Штрихкод = ";

    Если ВыборкаНоменклатура.НайтиСледующий(Отбор) Тогда
    ВыборкаШтрихКоды = ВыборкаНоменклатура.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам ,"ШтрихКод");

    Пока ВыборкаШтрихКоды.Следующий() Цикл

    ОбластьСтрока.Параметры.Штрихкод = ВыборкаДетальныеЗаписи.Штрихкод + ", " + ОбластьСтрока.Параметры.Штрихкод;

    КонецЦикла;

    КонецЕсли;

    КонецЦикла;
```
---
А можно было бы все данные для отчета, включая колонки "Дата поставки", "Коэффициент" получать запросом.
---
Так они не просто записываются в табличный документ, а с начало в эту функцию залетают и а там целое полотно логики какой то
СтруктураСтроки = дкПолучитьПредставлениеДанныхТоварнойСтроки(СтрокаТабличнойЧасти,Права);