Здравствуйте! У меня есть обработка, которая выводит товары, которые проданны за определенный период, дальше я хотел бы при нажатии кнопки Создать заказ поставщику и чтобы туда попали все эти товары, которые в Объект.ТЧ. Какой код нужно написать для этого? Обработку прикрепляю, буду очень благодарен!
Управление торговлей для Украины, редакция 3.1 (3.1.6.1)
1С 8.3
---
Вам смогут помочь только те, у кого такая конфигурация есть.

Если не привязываться к конфигурации, то Вам нужно зайти в модуль объекта "заказ поставщику" и найти "ОбработкаЗаполнения"

Если там будет написано что-то вроде этого,

```1c
    Если ТипДанныхЗаполнения = Тип("Структура") И ТипДанныхЗаполнения .Свойство("Товары") Тогда
    ЗаполнитьДокументПоОтбору(ДанныеЗаполнения);
```

то достаточно будет вызывать обработку заполнения, передавая в форму параметр "Основание" с данными для заполнения

```1c
    ПараметрыФормы = Новый Структура;
    Основание = Новый Структура("Товары", АдресВременногоХранилищаСТоварами);
    ПараметрыФормы.Вставить("Основание", Основание );
    ОткрытьФорму("Документы.ЗаказПоставщику.Форма.ФормаДокумента", параметрыФормы, ЭтаФорма);
```
---
Вам смогут помочь только те, у кого такая конфигурация есть.

Если не привязываться к конфигурации, то Вам нужно зайти в модуль объекта "заказ поставщику" и найти "ОбработкаЗаполнения"

Если там будет написано что-то вроде этого,

```1c
    Если ТипДанныхЗаполнения = Тип("Структура") И ТипДанныхЗаполнения .Свойство("Товары") Тогда
    ЗаполнитьДокументПоОтбору(ДанныеЗаполнения);
```

то достаточно будет вызывать обработку заполнения, передавая в форму параметр "Основание" с данными для заполнения

```1c
    ПараметрыФормы = Новый Структура;
    Основание = Новый Структура("Товары", АдресВременногоХранилищаСТоварами);
    ПараметрыФормы.Вставить("Основание", Основание );
    ОткрытьФорму("Документы.ЗаказПоставщику.Форма.ФормаДокумента", параметрыФормы, ЭтаФорма);
```
---
Там такая ОбработкаЗаполнения

```1c
    Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)

    ТипДанныхЗаполнения = ТипЗнч(ДанныеЗаполнения);

    НеобходимаИнициализация = Истина;

    Если ТипДанныхЗаполнения = Тип("Структура") Тогда

    ЗаполнитьДокументПоОтбору(ДанныеЗаполнения);

    ИначеЕсли ТипДанныхЗаполнения = Тип("СправочникСсылка.Партнеры") Тогда

    ЗаполнитьДокументНаОснованииПартнера(ДанныеЗаполнения);

    ИначеЕсли ТипДанныхЗаполнения = Тип("СправочникСсылка.СоглашенияСПоставщиками") Тогда

    ЗаполнитьДокументНаОснованииСоглашенияСПоставщиком(ДанныеЗаполнения);

    ИначеЕсли ТипДанныхЗаполнения = Тип("СправочникСсылка.СделкиСКлиентами") Тогда

    ЗаполнитьДокументНаОснованииСделки(ДанныеЗаполнения);

    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ЗаказКлиента") Тогда

    ЗаполнитьДокументНаОснованииЗаказа(ДанныеЗаполнения);

    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ЗаявкаНаВозвратТоваровОтКлиента") Тогда

    ЗаполнитьДокументНаОснованииЗаявкиНаВозврат(ДанныеЗаполнения);

    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ЗаказНаПеремещение") Тогда

    ЗаполнитьДокументНаОснованииЗаказаНаПеремещение(ДанныеЗаполнения);

    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ЗаказНаВнутреннееПотребление") Тогда

    ЗаполнитьДокументНаОснованииЗаказаНаВнутреннееПотребление(ДанныеЗаполнения);

    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ЗаказНаСборку") Тогда

    ЗаполнитьДокументНаОснованииЗаказаНаСборку(ДанныеЗаполнения);

    ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("ДокументСсылка.ИзменениеАссортимента") Тогда

    ИнициализироватьДокумент(ДанныеЗаполнения);
    НеобходимаИнициализация = Ложь;
    ЗаполнитьДокументНаОснованииИзмененияАссортимента(ДанныеЗаполнения);

    КонецЕсли;

    Если НеобходимаИнициализация Тогда

    ИнициализироватьДокумент(ДанныеЗаполнения);

    КонецЕсли;
    ДополнительныеСвойства.Вставить("НеобходимостьЗаполненияКассыПриФОИспользоватьНесколькоКассЛ­ожь", Ложь);
    ДополнительныеСвойства.Вставить("НеобходимостьЗаполненияСчетаПриФОИспользоватьНесколькоСчето­вЛожь", Ложь);

    ЗаполнениеСвойствПоСтатистикеСервер.ЗаполнитьСвойстваОбъекта(ЭтотОбъект, ДанныеЗаполнения);

    Если НЕ ТипДанныхЗаполнения = Тип("Структура") Тогда
    СкладГруппа = Справочники.Склады.ЭтоГруппаИСкладыИспользуютсяВТЧДокументовПродажи(Склад);
    СкладыСервер.ЗаполнитьСкладыВТабличнойЧасти(Склад, СкладГруппа, Товары, Ложь);
    КонецЕсли;

    КонецПроцедуры
```
---
Как сильно похоже на наше ерп

```1c
    &НаКлиенте
    Процедура СоздатьЗаказПоставщику(Команда)

    Форма = ПолучитьФорму("Документ.ЗаказПоставщику.ФормаОбъекта");
    ДокОбъект = Форма.Объект;

    ОткрытьФормуНезаписанногоДокументаНаСервере(ДокОбъект);
    КопироватьДанныеФормы(ДокОбъект, Форма.Объект);
    Форма.Открыть();

    КонецПроцедуры

    &НаСервере
    Процедура ОткрытьФормуНезаписанногоДокументаНаСервере(ДокОбъект)

    НовыйДокумент = Документы.ЗаказПоставщику.СоздатьДокумент();
    Таблица = объект.ТЧ.Выгрузить();
    ДанныеЗаполнения = Новый Структура;
    ДанныеЗаполнения.Вставить("Товары", Таблица);
    ДанныеЗаполнения.Вставить("Склад", Объект.Склад);
    НовыйДокумент.Заполнить(ДанныеЗаполнения);

    ЗначениеВДанныеФормы(НовыйДокумент, ДокОбъект);
    КонецПроцедуры
```

Вот в эту сторону попробуй пойти
---
Да-да! Вроде то... только вот Номенклатура и количество не попадает почему-то
---
Написал в 6 сообщении. Номенклатура не должна быть строкой. Количество не доолжно быть строкой, должно быть числом

Сделай так, чтобы типы были одинаковые
http://prntscr.com/p47ldk
---
Я сделал так, как вы сказали

```1c
    &НаКлиенте
    Процедура СоздатьЗаказПоставщику(Команда)

    ПараметрыФормы = Новый Структура;
    Основание = Новый Структура("Товары", Объект.ТЧ);
    ПараметрыФормы.Вставить("Основание", Основание );
    ОткрытьФорму("Документ.ЗаказПоставщику.Форма.ФормаДокумента", параметрыФормы, ЭтаФорма);
```
---
http://prntscr.com/p47idm
У меня номенклатура с типом строка. Если было бы с типом справочника номенклатура, то все было бы хорошо
---
СПАСИБО БОЛЬШОЕ! Так вышло
А количество уже вручную только прописать? Или его тоже удастся затянуть?
---
Ответил в 9 ))))
---
какой же я тупой.. Большое спасибо! Ещё хотел только спросить удастся ли Артикул так же перенести? А то он важный для нас
---
Артикул выводится из карточки номенклатуры.
(12) Полагаю нужно еще количество упаковок заполнить. т.е рядом с Тч.Количество добавить КоличествоУпаковок. Пусть будет равно всегда количеству.

Вы не видите количество, потому что оно от вас спрятано. На форме отображается поле КоличествоУпаковок
---
заполнил количество упаковок и вышло.

А если Артикул из карточки номенклатуры, то его как можно получить?
---
Вроде Еще - Изменить форму - В табличной части найти поле Артикул - Установить галочку.
---
простите, не понял где это
---
КОличество почему-то всё равно не попадает
---
Либо

```1c
    &НаСервере
    Процедура ОткрытьФормуНезаписанногоДокументаНаСервере(ДокОбъект)

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

    КонецПроцедуры
```
---
У меня вот такая ситуация. Артикул с обработки не затягивается в заказ
---
http://prntscr.com/p4887w

У нас как-то так
---
если сможете, то очень бы попросил подсказать почему может Артикул не заполнять, это уже моя последняя проблема)
---
Я не знаю. Если это реквизит табличной части, то смотрите на наименование табличных частей документа и наименование вашей ТЧ. Так же на типы смотрите.