1с Бухгалтерия 3.0 Нужно заполнить табличную часть документа ОтчетПроизводстваЗаСмену из ТЧ ПоступлениеТоваровУслуг. Нюанс в том, что номенклатура должна вставать как субконто.
Делаю через расширение.
---
но почему-то заполняет из всех документовпотому что в тексте запроса не указаны параметры "Где ПоступлениеТоваровТовары.Ссылка = &Ссылка И ПоступлениеТоваровТовары.Номенклатура = &Номенклатура"
```1c
    Запрос=Новый Запрос;
    Запрос.УстановитьПараметр("Ссылка",ДокументПоступление);

    Спр=Справочники.Номенклатура.НайтиПоНаименованию("УСЛУГИ ТРАНСПОРТНОГО УЧАСТКА");
    Запрос.УстановитьПараметр("Номенклатура",Спр);

    Запрос.Текст="ВЫБРАТЬ
    | ПоступлениеТоваровТовары.номенклатура КАК Номенклатура,
    | ПоступлениеТоваровТовары.СчетУчета КАК Счет,
    | ПоступлениеТоваровТовары.Номенклатура КАК Субконто1,
    | ПоступлениеТоваровТовары.Количество КАК Количество,
    | ПоступлениеТоваровТовары.Цена КАК ПлановаяСтоимость,
    | ПоступлениеТоваровТовары.Сумма КАК СуммаПлановая
    |ИЗ
    | Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровТовары";
    Массив=ОбщегоНазначения.ТаблицаЗначенийВМассив(Запрос.Выполнить().Выгрузить());
    Возврат Массив;
```
---
и в чем проблемы назвать колонку "номенклатура" колонкой "Субконто" в запросе или сделать

```1c
    СтрокаТЧ.Субконто = СтрокаПоступления.Номенклатура
```

?
---
Будьте добры, можно подробнее сам модуль. Я дохожу до выбора документа поступления и при выборе все закрывается.
---
свой код показывайте
---
можно без расширения, внешняя обработка заполнения с формой, в реквизиты формы добавить реквизит с типом ссылка ДокументСсылка.ПоступлениеТоваров. Если вызывать в форме документа, то заполнение ТЧ Услуги делать через обращение через ВладелецФормы, примерно
Модуль объекта внешней обработки пример

```1c
    Функция СведенияОВнешнейОбработке() Экспорт

    РегистрационныеДанные = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("1.0.0.0");
    РегистрационныеДанные.Назначение.Добавить("Документ.ОтчетПроизводстваЗаСмену");
    РегистрационныеДанные.Версия = "1.0";
    РегистрационныеДанные.Вид = "ЗаполнениеОбъекта";

    НовКоманда = РегистрационныеДанные.Команды.Добавить();
    НовКоманда.Использование = "ОткрытиеФормы";
    НовКоманда.Идентификатор = "Заполнить из поступления";
    НовКоманда.Представление = НовКоманда.Идентификатор;

    Возврат РегистрационныеДанные;

    КонецФункции
```

Модуль формы внешней обработки пример, нужные поля и их названия определить

```1c
    &НаКлиенте
    Процедура ЗаполнитьДанные(Команда)

    Если ВладелецФормы=Неопределено Тогда
    Возврат;
    КонецЕсли;

    Если НЕ ЗначениеЗаполнено(ДокументПоступление) Тогда
    Возврат;
    КонецЕсли;
    Массив=ПолучитьМассивСтрокТЧ(ДокументПоступление);
    ВладелецФормы.Объект.Услуги.Очистить();
    Для каждого Эл из Массив Цикл
    НовСтр=ВладелецФормы.Объект.Услуги.Добавить();
    ЗаполнитьЗначенияСвойств(НовСтр,Эл);
    КонецЦикла;
    КонецПроцедуры

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

    Спр=Справочники.Номенклатура.НайтиПоНаименованию("УСЛУГИ ТРАНСПОРТНОГО УЧАСТКА");
    Запрос.УстановитьПараметр("Номенклатура",Спр);

    Запрос.Текст="ВЫБРАТЬ
    | ПоступлениеТоваровТовары.номенклатура КАК Номенклатура,
    | ПоступлениеТоваровТовары.СчетУчета КАК Счет,
    | ПоступлениеТоваровТовары.Номенклатура КАК Субконто1,
    | ПоступлениеТоваровТовары.Количество КАК Количество,
    | ПоступлениеТоваровТовары.Цена КАК ПлановаяСтоимость,
    | ПоступлениеТоваровТовары.Сумма КАК СуммаПлановая
    |ИЗ
    | Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровТовары";
    Массив=ОбщегоНазначения.ТаблицаЗначенийВМассив(Запрос.Выполнить().Выгрузить());
    Возврат Массив;
```
---
забыл в условие в текст запроса вставить
---
не взлетает, ну что не так?

```1c
    &НаКлиенте
    Процедура ЗаполнитьДанные(Команда)
    Если ВладелецФормы=Неопределено Тогда
    Возврат;
    КонецЕсли;

    Если НЕ ЗначениеЗаполнено(ДокументПоступление) Тогда
    Возврат;
    КонецЕсли;

    Массив=ПолучитьМассивСтрокТЧ(ДокументПоступление);
    ВладелецФормы.Объект.Услуги.Очистить();
    Для каждого Эл из Массив Цикл
    НовСтр=ВладелецФормы.Объект.Услуги.Добавить();
    ЗаполнитьЗначенияСвойств(НовСтр,Эл);
    КонецЦикла;
    КонецПроцедуры

    &НаСервереБезКонтекста
    Функция ПолучитьМассивСтрокТЧ(ДокументПоступление)
    Запрос=Новый Запрос;
    Запрос.УстановитьПараметр("Ссылка",ДокументПоступление);
    Спр=Справочники.Номенклатура.НайтиПоНаименованию("УСЛУГИ ТРАНСПОРТНОГО УЧАСТКА");
    Запрос.УстановитьПараметр("Номенклатура",Спр);

    Запрос.Текст="ВЫБРАТЬ
    | ПоступлениеТоваровТовары.номенклатура КАК Номенклатура,
    | ПоступлениеТоваровТовары.СчетУчета КАК Счет,
    | ПоступлениеТоваровТовары.Номенклатура КАК Субконто1,
    | ПоступлениеТоваровТовары.Количество КАК Количество,
    | ПоступлениеТоваровТовары.Цена КАК ПлановаяСтоимость,
    | ПоступлениеТоваровТовары.Сумма КАК СуммаПлановая
    |ИЗ
    | Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровТовары
    |ГДЕ
    |ПоступлениеТоваровТовары.Ссылка = &Ссылка
    |И ПоступлениеТоваровТовары.Номенклатура = &Номенклатура";

    Массив=ОбщегоНазначения.ТаблицаЗначенийВМассив(Запрос.Выполнить().Выгрузить());
    Возврат Массив;
    КонецФункции
```
---
Спасибо, уважаемый Дмитрий, за Ваш обучающий пример!

Благодаря ему я смог увидеть как заполнять табличную часть документа и затем решить актуальную рабочую задачу.

С уважением, Сергей Масленников
---
я со психу все стер :( использовал из подобной процедуре заполнения счета из прихода.
---
подождем, пока восстановите
---
Для гуру 1С это несколько строчек модуля. Я к сожалению к ним не отношусь, поэтому и прошу помочь.
---
Я к сожалению к ним не отношусь,Но ты же что-то такое уже написал. То самое, что потом стер. Из подобной процедуре заполнения счета из прихода.

Или же всё было не так?
---
Сообщение было скрыто модератором.
---
Лайфхак: попросите бухгалтера сделать все вручную и запишите, откуда и что он(а) берет. Потом все то же самое сделайте программно.
---
Бухгалтер попросил скрестить овцу с быком, чтобы был овцебык. )) Иначе говоря связать два дока, ПоступлениеТоваровУслуг и ОтчетПроизводстваЗаСмену. Мало того, это все надо сделать не нарушая стандартную конфу, т.е сделать расширение. Все мои знания в 8-ке позволили дойти до этого места

&НаСервере
Процедура Расш1_ЗаполнитьПриходПослеНаСервере()
 // Вставить содержимое обработчика.
 Открытьформу("Документ.ПоступлениеТоваровУслуг.ФормаВыбора");
КонецПроцедуры

&НаКлиенте
Процедура Расш1_ЗаполнитьПриходПосле(Команда)
 Расш1_ЗаполнитьПриходПослеНаСервере();
КонецПроцедуры

.......и я уже здесь завис :-( А надо чтобы, из поступления ТЧ подгрузилось. Ну ребята, помогите уже третий день голову ломаю. Не кидайте в меня тапками, я понимаю, что пока не догоняю, но срок бух поставил.
---
наймите программиста
---
ошибка:
 {Расширение1 Документ.ОтчетПроизводстваЗаСмену.Форма.ФормаДокументаОтчетПроизводстваЗаСмену.Форма(5,2)}: Процедура или функция с указанным именем не определена (Открытьформу)