Здравствуйте уважаемые программисты 1С. Я в этом деле новичок, поэтому возможно мой вопрос покажется Вам очень банальным. Но прошу помочь мне вывести во внешнюю печатную форму штрихкоды номенклатуры указанных в документах из РегистраСведений.ШтрихкодыНоменклатуры

А вот и код для наглядности

```1c
    Функция СведенияОВнешнейОбработке () экспорт
    ПараметрыРегистрации = Новый Структура;
    МассивНазначений = Новый Массив;
    МассивНазначений.Добавить("Документ.ЗаказКлиента");
    ПараметрыРегистрации.Вставить("Вид", "ПечатнаяФорма");
    ПараметрыРегистрации.Вставить("Назначение", МассивНазначений);
    ПараметрыРегистрации.Вставить("Наименование", "Распечатка Чека"); ПараметрыРегистрации.Вставить("БезопасныйРежим", ИСТИНА);
    ПараметрыРегистрации.Вставить("Версия", "1.0");
    ТаблицаКоманд = ПолучитьТаблицуКоманд();
    ДобавитьКоманду(ТаблицаКоманд, "Распечатка Чека (1.0)", "ПечатьЗаказ", "ВызовСерверногоМетода", Истина, "ПечатьMXL");
    ПараметрыРегистрации.Вставить("Команды", ТаблицаКоманд);
    Возврат ПараметрыРегистрации;
    КонецФункции

    Функция ПолучитьТаблицуКоманд()
    Команды = Новый ТаблицаЗначений;
    Команды.Колонки.Добавить("Представление", Новый ОписаниеТипов("Строка"));
    Команды.Колонки.Добавить("Идентификатор", Новый ОписаниеТипов("Строка")); //имя макета печ.формы
    Команды.Колонки.Добавить("Использование", Новый ОписаниеТипов("Строка")); //ВызовСерверногоМетода
    Команды.Колонки.Добавить("ПоказыватьОповещение", Новый ОписаниеТипов("Булево"));
    Команды.Колонки.Добавить("Модификатор", Новый ОписаниеТипов("Строка"));
    Возврат Команды;
    КонецФункции

    Процедура ДобавитьКоманду(ТаблицаКоманд, Представление, Идентификатор, Использование, ПоказыватьОповещение = Ложь, Модификатор = ")
    НоваяКоманда = ТаблицаКоманд.Добавить();
    НоваяКоманда.Представление = Представление;
    НоваяКоманда.Идентификатор = Идентификатор;
    НоваяКоманда.Использование = Использование;
    НоваяКоманда.ПоказыватьОповещение = ПоказыватьОповещение;
    НоваяКоманда.Модификатор = Модификатор;
    КонецПроцедуры

    Процедура Печать(МассивОбъектов, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода) Экспорт

    УправлениеПечатью.ВывестиТабличныйДокументВКоллекцию(КоллекцияПечатныхФорм, "ПечатьЗаказ", "Печать Заказа", СформироватьПечатнуюФорму(МассивОбъектов[0], ОбъектыПечати));

    КонецПроцедуры // Печать()

    //Данные выводимой информации
    Функция СформироватьПечатнуюФорму(СсылкаНаДокумент, ОбъектыПечати)
    ТабличныйДокумент = Новый ТабличныйДокумент;
    ТабличныйДокумент.ИмяПараметровПечати = "ПечатьЗаказ";
    МакетОбработки = ПолучитьМакет("МакетПечатиЗаказа");

    //шапка
    ОбластьШапка = МакетОбработки.ПолучитьОбласть("Шапка");
    ОбластьШапка.Параметры.НомерЗаказа = СсылкаНаДокумент.Номер;
    ОбластьШапка.Параметры.ДатаЗаказа = Формат (СсылкаНаДокумент.Дата,"Л=az_AZ; ДФ=dd.MM.yyyy; ДЛФ=D");
    //ОбластьШапка.Параметры.Контрагент = СсылкаНаДокумент.Контрагент;
    //ОбластьШапка.Параметры.АдресДоставки = СсылкаНаДокумент.АдресДоставки;
    ТабличныйДокумент.Вывести(ОбластьШапка);

    //оглавление
    ОбластьОглавление = МакетОбработки.ПолучитьОбласть("Оглавление");
    ТабличныйДокумент.Вывести(ОбластьОглавление);

    //строка ТЧ
    ОбластьСтроки = МакетОбработки.ПолучитьОбласть("СтрокаТЧ");
    для каждого ТекущаяСтрока из СсылкаНаДокумент.Товары цикл
    ОбластьСтроки.Параметры.Товар = ТекущаяСтрока.Номенклатура;
    ОбластьСтроки.Параметры.Номер = ТекущаяСтрока.НомерСтроки;
    ОбластьСтроки.Параметры.ЦенаБезСкидки = Формат(ТекущаяСтрока.Цена,"Л=az_AZ; ЧФ='Ч azn'");
    ОбластьСтроки.Параметры.Количество = ТекущаяСтрока.Количество;
    //ОбластьСтроки.Параметры.СуммаНДС = ТекущаяСтрока.СтавкаНДС;
    //ОбластьСтроки.Параметры.СуммаНДС = Формат(Окр(ТекущаяСтрока.Цена - (ТекущаяСтрока.Цена * 18 / 100),2),"Л=az_AZ; ЧФ='Ч azn'");
    //ОбластьСтроки.Параметры.Сумма = ТекущаяСтрока.Сумма;

    //Если ТекущаяСтрока.ПроцентРучнойСкидки > 0 тогда
    //ОбластьСтроки.Параметры.СуммаБезСкидки = ОбластьСтроки.Параметры.Сумма + ОбластьСтроки.Параметры.Скидка;
    //ИначеЕсли ТекущаяСтрока.ПроцентАвтоматическойСкидки > 0 тогда
    //ОбластьСтроки.Параметры.СуммаБезСкидки = ОбластьСтроки.Параметры.Сумма - ОбластьСтроки.Параметры.Скидка;
    //Иначе ОбластьСтроки.Параметры.СуммаБезСкидки = ОбластьСтроки.Параметры.Сумма;
    //КонецЕсли;

    //ОбластьСтроки.Параметры.Артикул = ТекущаяСтрока.Номенклатура.Артикул;

    //Если ТекущаяСтрока.ПроцентРучнойСкидки тогда ОбластьСтроки.Параметры.Скидка = Формат (ТекущаяСтрока.ПроцентРучнойСкидки, "ЧФ='Ч %'");
    //ИначеЕсли ТекущаяСтрока.ПроцентАвтоматическойСкидки тогда ОбластьСтроки.Параметры.Скидка = ТекущаяСтрока.ПроцентАвтоматическойСкидки;
    //Иначе ОбластьСтроки.Параметры.Скидка = "0%" КонецЕсли;

    ////ОбластьСтроки.Параметры.СуммаНДС = Формат(Окр(ТекущаяСтрока.Цена * 18 / 100,2),"Л=az_AZ; ЧФ='Ч azn'");
    //Если ТекущаяСтрока.ПроцентРучнойСкидки > 0 тогда
    //ОбластьСтроки.Параметры.СуммаБезСкидки = ТекущаяСтрока.Сумма + (Окр(ТекущаяСтрока.Цена * ТекущаяСтрока.ПроцентРучнойСкидки / 100,2) * ТекущаяСтрока.Количество);
    //ИначеЕсли ТекущаяСтрока.ПроцентАвтоматическойСкидки > 0 тогда
    //ОбластьСтроки.Параметры.СуммаБезСкидки = ТекущаяСтрока.Сумма + (Окр(ТекущаяСтрока.Цена * ТекущаяСтрока.ПроцентАвтоматическойСкидки / 100,2) * ТекущаяСтрока.Количество);
    //Иначе ОбластьСтроки.Параметры.СуммаБезСкидки = "0 AZN";
    //КонецЕсли;

    //Если ТекущаяСтрока.ПроцентРучнойСкидки > 0 тогда
    //ОбластьСтроки.Параметры.ЦенаСкидки = (Окр(ТекущаяСтрока.Цена * ТекущаяСтрока.ПроцентРучнойСкидки / 100,2) * ТекущаяСтрока.Количество);
    //ИначеЕсли ТекущаяСтрока.ПроцентАвтоматическойСкидки > 0 тогда
    //ОбластьСтроки.Параметры.ЦенаСкидки = ОбластьСтроки.Параметры.ЦенаСкидки = (Окр(ТекущаяСтрока.Цена * ТекущаяСтрока.ПроцентАвтоматическойСкидки / 100,2) * ТекущаяСтрока.Количество);
    //Иначе ОбластьСтроки.Параметры.ЦенаСкидки = "0 AZN";
    //КонецЕсли;

    ТабличныйДокумент.Вывести(ОбластьСтроки);
    КонецЦикла;

    //подвал
    ОбластьПодвал = МакетОбработки.ПолучитьОбласть("Подвал");
    //ОбластьПодвал.Параметры.КоличествоИтог = СсылкаНаДокумент.Товары.Итог("Количество");
    ОбластьПодвал.Параметры.СуммаИтог = СсылкаНаДокумент.Товары.Итог("Сумма");
    ОбластьПодвал.Параметры.СуммаНДС = СсылкаНаДокумент.Товары.Итог("СуммаНДС");
    //Если СсылкаНаДокумент.Товары.Итог("СуммаРучнойСкидки") тогда
    //ОбластьПодвал.Параметры.СкидкаИтог = СсылкаНаДокумент.Товары.Итог("СуммаРучнойСкидки");
    //ИначеЕсли СсылкаНаДокумент.Товары.Итог("ПроцентАвтоматическойСкидки")тогда
    //ОбластьПодвал.Параметры.СкидкаИтог = СсылкаНаДокумент.Товары.Итог("ПроцентАвтоматическойСкидки");
    //Иначе ОбластьПодвал.Параметры.СкидкаИтог = "0%" КонецЕсли;

    ОбластьПодвал.Параметры.СуммаПрописью = ЧислоПрописью(СсылкаНаДокумент.Товары.Итог("Сумма"),"Л=az_AZ; ДП=истина","manat, qəpik, qəpik, м, qəpik, qəpik, qəpik, ж" );

    ТабличныйДокумент.Вывести(ОбластьПодвал);

    //параметры страницы
    ТабличныйДокумент.АвтоМасштаб = истина;
    ТабличныйДокумент.ОриентацияСтраницы=ОриентацияСтраницы.Портрет;
    ТабличныйДокумент.ПолеСлева=0;
    ТабличныйДокумент.ПолеСправа=0;
    ТабличныйДокумент.ПолеСверху=0;
    ТабличныйДокумент.ПолеСнизу=0;
    ТабличныйДокумент.ВерхнийКолонтитул.Выводить=ложь;
    ТабличныйДокумент.НижнийКолонтитул.Выводить=ложь;
    Возврат ТабличныйДокумент;
    КонецФункции
```
---
Попробуйте так:

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

    Запрос.УстановитьПараметр("Ссылка", СсылкаНаДокумент);

    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    ОбластьСтроки.Параметры.Товар = ВыборкаДетальныеЗаписи.Номенклатура;
    ОбластьСтроки.Параметры.Номер = ВыборкаДетальныеЗаписи.НомерСтроки;
    ОбластьСтроки.Параметры.Штрихкод = ВыборкаДетальныеЗаписи.Штрихкод;
    ТабличныйДокумент.Вывести(ОбластьСтроки);
    КонецЦикла;
```
---
Нужно в запросе получить табличную часть документа и присоединить к ней поле штрихкода из регистра. Потом выводить в табличный документ результат запроса.
Типа того:

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

    Запрос.УстановитьПараметр("Ссылка", Ссылка);

    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    ОбластьСтроки.Параметры.Товар = ВыборкаДетальныеЗаписи.Номенклатура;
    ОбластьСтроки.Параметры.Номер = ВыборкаДетальныеЗаписи.НомерСтроки;
    ОбластьСтроки.Параметры.Штрихкод = ВыборкаДетальныеЗаписи.Штрихкод;
    ТабличныйДокумент.Вывести(ОбластьСтроки);
    КонецЦикла;
```
---
Спасибо большое за совет, но пишет: {ВнешняяОбработка.ПечатьЗаказ.МодульОбъекта(115,41)}: Переменная не определена (Ссылка)
    Запрос.УстановитьПараметр("Ссылка", <<?>>Ссылка); (Проверка: Сервер)
---
Ну адаптируйте под ваши переменные. Я ж только как концепт.
У вас там видимо это "СсылкаНаДокумент".

И строка "|ПОМЕСТИТЬ Товары " тут не нужна.
---
```1c
    | ЗаказКлиента.Товары = СсылкаНаДокумент";

    Запрос.УстановитьПараметр("ЗаказКлиента.Товары", СсылкаНаДокумент);
```

вроде так, да?

Но в таком случае уже в самой печати выдаёт ошибку:
{ВнешняяОбработка.ПечатьЗаказ.МодульОбъекта(135)}: Ошибка при вызове метода контекста (Выполнить)
РезультатЗапроса = Запрос.Выполнить();
по причине:
{(11, 2)}: Поле не найдено "ЗаказКлиента.Товары"
<<?>>ЗаказКлиента.Товары = &СсылкаНаДокумент
---
Впервые пробую выводить штрихкод ) Поэтому и столько вопросов
---
Попробуйте так:

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

    Запрос.УстановитьПараметр("Ссылка", СсылкаНаДокумент);

    РезультатЗапроса = Запрос.Выполнить();

    ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();

    Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
    ОбластьСтроки.Параметры.Товар = ВыборкаДетальныеЗаписи.Номенклатура;
    ОбластьСтроки.Параметры.Номер = ВыборкаДетальныеЗаписи.НомерСтроки;
    ОбластьСтроки.Параметры.Штрихкод = ВыборкаДетальныеЗаписи.Штрихкод;
    ТабличныйДокумент.Вывести(ОбластьСтроки);
    КонецЦикла;
```
---
Огромнейшее Вам Спасибо Михаил.