УПП 8.2 Есть документ Заказ покупателя, и есть документ РТИУ, в документ Заказ покупателя добавили колонку количество2, в РТИУ так же внесли количество2. Теперь нужно, что если РТИУ заполняют на основании ЗП, то количество 2 должно переноситься, но не переносится, как мне обойти табличную часть ЗаказаПокупателя, и перенести количество2 в РТИУ?
---
а сначала было 2$ за задачу
---
Вожак, надо добавлять, как реквизит табличной части, а не как колонку на форме- тогда обработка заполнения- заполнит ее.
---
deniseek77, они и так добавлены как реквизит ТЧ
---
Вожак, Табличная часть Товары? Тогда смотрите в модуле объекта:

```1c
    Процедура СкопироватьТовары(Основание) Экспорт

    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("Ссылка", Основание);
    Запрос.Текст = "ВЫБРАТЬ
    | СчетНаОплатуПокупателюТовары.Номенклатура,
    | СчетНаОплатуПокупателюТовары.Цена,
    | СчетНаОплатуПокупателюТовары.Сумма,
    | СчетНаОплатуПокупателюТовары.СтавкаНДС,
    | СчетНаОплатуПокупателюТовары.СуммаНДС,
    | СчетНаОплатуПокупателюТовары.Количество
    |ИЗ
    | Документ.СчетНаОплатуПокупателю.Товары КАК СчетНаОплатуПокупателюТовары
    |ГДЕ
    | СчетНаОплатуПокупателюТовары.Ссылка = &Ссылка
    |
    |УПОРЯДОЧИТЬ ПО
    | СчетНаОплатуПокупателюТовары.НомерСтроки";
    Товары.Загрузить(Запрос.Выполнить().Выгрузить());

    ЗаполнитьСчетаУчетаВТабЧасти(Товары, "Товары", Истина);

    Для Каждого СтрокаТЧ Из Товары Цикл
    СтрокаТЧ.ЕдиницаИзмерения = СтрокаТЧ.Номенклатура.БазоваяЕдиницаИзмерения;
    СтрокаТЧ.Коэффициент = 1;
    СтрокаТЧ.НомерГТД = СтрокаТЧ.Номенклатура.НомерГТД;
    СтрокаТЧ.СтранаПроисхождения = СтрокаТЧ.Номенклатура.СтранаПроисхождения;
    Если НЕ Основание.СуммаВключаетНДС = СуммаВключаетНДС Тогда
    СтрокаТЧ.Сумма = СтрокаТЧ.Сумма + ?(СуммаВключаетНДС, СтрокаТЧ.СуммаНДС, -СтрокаТЧ.СуммаНДС);
    // Выполнить общие действия для всех документов при изменении Суммы.
    ОбработкаТабличныхЧастей.ПриИзмененииСуммыТабЧасти(СтрокаТЧ, ЭтотОбъект);
    КонецЕсли;
    КонецЦикла;

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

и добавьте в запрос:

| СчетНаОплатуПокупателюТовары.Количество2

Для остальных табличных часте в модуле объекта аналогичные процедуры
---
В УПП СкопироватьТовары() вызывается при виде основания Заказ? В УТП - если Основание = СчетНаОплату...
---
S.V.Y, Это код в реализации в БП 2.0
---
А у автора топика - УПП, поэтому отладчик в руки. Ему :)
---
S.V.Y, Ой, не увидел... тогды, да, нужно смотреть... :))
---
Ну как - править модуль документа РТУ, процедуру ОбработкаЗаполнения(). У меня не УПП, а УТП, там из проведенного заказа вызывается процедура ЗаполнитьТабличнуюЧастьПоЗаказуПокупателяУпр(Товары, Основание), если есть тара - ЗаполнитьТабличнуюЧастьПоЗаказуПокупателяУпр(ВозвратнаяТара, Основание), если услуги - ЗаполнитьУслугиПоОстаткамУпр(). думаю, в УПП должно быть что-то похожее, на крайний случай, можно всегда отловить отладчиком.
Ну и там надо дописать, что СтрокаТабличнойЧасти(РТУ).Количество2 = СтрокаТабличнойЧасти(Заказ).Количество2
---
S.V.Y, есть такое, там заполняется запросом по остаткам в РН Заказ покупателя, а у меня в РН нет ресурса с количеством 2, и не хочу гемороиться и добалвять его туда, плюс потом его еще заполнять нужно будет, поэтому и думал сразу заполнить
---
Вожак, в документ Заказ покупателя добавили колонку количество2, в РТИУ так же внесли количество2 Где твоя колонка количество2 в Заказе (должен быть реквизит ТЧ)?
---
```1c
    Запрос = Новый Запрос;

    Если ТабличнаяЧасть = Товары Тогда
    ТекстЗапросаПоТЧЗаказа = "
    |ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ Номенклатура, ХарактеристикаНоменклатуры, ЕдиницаИзмеренияМест, минимум(НомерСтроки) КАК НомерСтроки
    | ИЗ Документ.ЗаказПокупателя.Товары
    | ГДЕ Ссылка = &Сделка
    | Сгруппировать по Номенклатура, ХарактеристикаНоменклатуры, ЕдиницаИзмеренияМест) КАК ТЧЗаказа
    |ПО Остатки.Номенклатура = ТЧЗаказа.Номенклатура И Остатки.ХарактеристикаНоменклатуры = ТЧЗаказа.ХарактеристикаНоменклатуры";
    Иначе
    ТекстЗапросаПоТЧЗаказа = "
    |ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ Номенклатура, минимум(НомерСтроки) КАК НомерСтроки
    | ИЗ Документ.ЗаказПокупателя.ВозвратнаяТара
    | ГДЕ Ссылка = &Сделка
    | Сгруппировать по Номенклатура) КАК ТЧЗаказа
    |ПО Остатки.Номенклатура = ТЧЗаказа.Номенклатура";
    КонецЕсли;
    ДатаОстатков = ОбщегоНазначения.ПолучитьДатуОстатков(ЭтотОбъект);

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

    //Формирование временной таблицы
    МенеджерВременныхТаблиц = новый МенеджерВременныхТаблиц;
    Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
    ЕстьТоварыСУчетомПоСерии = ложь;

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

    ТекПользователь = глЗначениеПеременной("глТекущийПользователь");

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

    Если ЗначениеЗаполнено(ГруппаДоступностиСкладов) Тогда
    Запрос.УстановитьПараметр("ГруппаДоступностиСкладов", ГруппаДоступностиСкладов);

    УсловиеСклад =
    " И Склад В (
    | ВЫБРАТЬ
    | ГруппыДоступности.Склад
    | ИЗ
    | РегистрСведений.СоставГруппДоступностиСкладов КАК ГруппыДоступности
    | ГДЕ ГруппыДоступности.ГруппаДоступности = &ГруппаДоступностиСкладов)";
    КонецЕсли;
    Иначе
    УсловиеСклад = " И Склад = &Склад";
    КонецЕсли;

    УсловиеОстатки = "Номенклатура В (ВЫБРАТЬ Номенклатура ИЗ ВременнаяТаблицаОстаткиПоЗаказу)" + УсловиеСклад;

    ПревышатьОстаткиОрганизации = УправлениеДопПравамиПользователей.РазрешеноПревышениеОстаткаТоваровОрганизации(Организация);

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

    Запрос.Текст ="
    |ВЫБРАТЬ РАЗРЕШЕННЫЕ
    | Остатки.Номенклатура КАК Номенклатура,
    | Остатки.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    | Остатки.ЕдиницаИзмерения КАК ЕдиницаИзмерения,
    | Остатки.ЕдиницаИзмерения.Коэффициент КАК Коэффициент,
    | Остатки.Номенклатура.ЕдиницаХраненияОстатков КАК ЕдиницаХранения,
    | Остатки.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК КоэффициентЕдиницыХранения,
    | Остатки.Номенклатура.ВестиУчетПоСериям КАК ВестиУчетПоСериям,
    | Остатки.Цена КАК Цена,
    | Остатки.ПроцентСкидкиНаценки КАК ПроцентСкидкиНаценки,
    | Остатки.ПроцентАвтоматическихСкидок КАК ПроцентАвтоматическихСкидок,
    | Остатки.УсловиеАвтоматическойСкидки КАК УсловиеАвтоматическойСкидки,
    | Остатки.ЗначениеУсловияАвтоматическойСкидки КАК ЗначениеУсловияАвтоматическойСкидки,
    | NULL КАК Склад,
    | NULL КАК СортировкаПоСкладу,
    | Остатки.СтавкаНДС КАК СтавкаНДС,
    | Остатки.КоличествоОстаток КАК КоличествоОстатокПоЗаказу,
    | Остатки.СуммаВзаиморасчетовОстаток КАК СуммаОстатокПоЗаказу,
    | 0 КАК ОстатокНаСкладе,
    | 0 КАК ОстатокРезерваПоСделке,
    | 0 КАК ОстатокРезерва,
    | 0 КАК ОстатокКПередаче,
    | ВЫБОР КОГДА ТЧЗаказа.НомерСтроки ЕСТЬ NULL
    | ТОГДА 9999999
    | ИНАЧЕ ТЧЗаказа.НомерСтроки
    | КОНЕЦ КАК НомерСтрокиЗаказа"

    + ?(ТабличнаяЧасть = Товары,
    " , ТЧЗаказа.ЕдиницаИзмеренияМест КАК ЕдиницаИзмеренияМест", ")

    + ?(ТабличнаяЧасть = Товары И НЕ ПревышатьОстаткиОрганизации, "
    | , ВЫБОР КОГДА ОстаткиОрганизации.КоличествоОстаток ЕСТЬ NULL
    | ТОГДА 0
    | ИНАЧЕ ОстаткиОрганизации.КоличествоОстаток
    | КОНЕЦ КАК КоличествоОстатокОрганизации", ") + "
    |ИЗ
    | ВременнаяТаблицаОстаткиПоЗаказу КАК Остатки

    |" + ?(ТабличнаяЧасть = Товары И НЕ ПревышатьОстаткиОрганизации,
    "ЛЕВОЕ СОЕДИНЕНИЕ
    | РегистрНакопления.ТоварыОрганизаций.Остатки(&ДатаОстатков,
    | Организация = &Организация %Условие_Качество%
    | И " + УсловиеОстаткиОрганизаций + "
    | ) КАК ОстаткиОрганизации
    |ПО
    | Остатки.Номенклатура = ОстаткиОрганизации.Номенклатура
    | И Остатки.ХарактеристикаНоменклатуры = ОстаткиОрганизации.ХарактеристикаНоменклатуры", ") + "

    |
    |" + ТекстЗапросаПоТЧЗаказа + "
    |ОБЪЕДИНИТЬ ВСЕ
    |
    | ВЫБРАТЬ
    | ОстаткиНаСкладе.Номенклатура КАК Номенклатура,
    | ОстаткиНаСкладе.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    | ОстаткиНаСкладе.Номенклатура.ЕдиницаХраненияОстатков КАК ЕдиницаИзмерения,
    | ОстаткиНаСкладе.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК Коэффициент,
    | NULL КАК ЕдиницаХранения,
    | NULL КАК КоэффициентЕдиницыХранения,
    | ОстаткиНаСкладе.Номенклатура.ВестиУчетПоСериям КАК ВестиУчетПоСериям,
    | 0 КАК Цена,
    | 0 КАК ПроцентСкидкиНаценки,
    | 0 КАК ПроцентАвтоматическихСкидок,
    | NULL КАК УсловиеАвтоматическойСкидки,
    | NULL КАК ЗначениеУсловияАвтоматическойСкидки,
    | ОстаткиНаСкладе.Склад КАК Склад,
    | ВЫБОР КОГДА ОстаткиНаСкладе.Склад = &Склад ТОГДА
    | 0
    | ИНАЧЕ
    | 1
    | КОНЕЦ КАК СортировкаПоСкладу,
    | ОстаткиНаСкладе.Номенклатура.СтавкаНДС КАК СтавкаНДС,
    | 0 КАК КоличествоОстатокПоЗаказу,
    | 0 КАК СуммаОстатокПоЗаказу,
    | ОстаткиНаСкладе.КоличествоОстаток КАК ОстатокНаСкладе,
    | РезервыОстаткиПоСделке.КоличествоОстаток КАК ОстатокРезерваПоСделке,
    | РезервыОстатки.КоличествоОстаток КАК ОстатокРезерва,
    | КПередаче.КоличествоОстаток КАК ОстатокКПередаче,
    | ВЫБОР КОГДА ТЧЗаказа.НомерСтроки ЕСТЬ NULL
    | ТОГДА 9999999
    | ИНАЧЕ ТЧЗаказа.НомерСтроки
    | КОНЕЦ КАК НомерСтрокиЗаказа"

    + ?(ТабличнаяЧасть = Товары, "
    | , ТЧЗаказа.ЕдиницаИзмеренияМест КАК ЕдиницаИзмеренияМест", ")

    + ?(ТабличнаяЧасть = Товары И НЕ ПревышатьОстаткиОрганизации, "
    | , 0 КАК КоличествоОстатокОрганизации", ") + "
    |
    | ИЗ
    | // остатки на складе
    | (ВЫБРАТЬ
    | Склад КАК Склад,
    | Номенклатура КАК Номенклатура,
    | ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    | СУММА(КоличествоОстаток) КАК КоличествоОстаток
    | ИЗ
    | (ВЫБРАТЬ
    | Склад КАК Склад,
    | Номенклатура КАК Номенклатура,
    | ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    | КоличествоОстаток КАК КоличествоОстаток
    | ИЗ
    | РегистрНакопления.ТоварыНаСкладах.Остатки(&ДатаОстатков, " + УсловиеОстатки + "
    | %Условие_Качество%
    | )
    |
    | ОБЪЕДИНИТЬ ВСЕ
    |
    | ВЫБРАТЬ
    | Склад КАК Склад,
    | Номенклатура КАК Номенклатура,
    | ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    | КоличествоОстаток КАК КоличествоОстаток
    | ИЗ
    | РегистрНакопления.ТоварыВРознице.Остатки(&ДатаОстатков, " + УсловиеОстатки + "
    | %Условие_Качество%
    | )
    | ) КАК ОстаткиНаСкладе
    | СГРУППИРОВАТЬ ПО
    | Склад,
    | Номенклатура,
    | ХарактеристикаНоменклатуры
    | ) КАК ОстаткиНаСкладе
    |
    | ЛЕВОЕ СОЕДИНЕНИЕ //Резервы по сделке
    | РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&ДатаОстатков," + УсловиеОстатки + "
    | И ДокументРезерва = &Сделка
    | ) КАК РезервыОстаткиПоСделке
    | ПО
    | ОстаткиНаСкладе.Номенклатура = РезервыОстаткиПоСделке.Номенклатура"
    + ?(ТабличнаяЧасть = Товары, Символы.ПС + "И ОстаткиНаСкладе.ХарактеристикаНоменклатуры = РезервыОстаткиПоСделке.ХарактеристикаНоменклатуры ", ")
    + ?(мУказаниеСкладовВТЧ, Символы.ПС + "И ОстаткиНаСкладе.Склад = РезервыОстаткиПоСделке.Склад", ")
    + "
    |
    | ЛЕВОЕ СОЕДИНЕНИЕ
    | РегистрНакопления.ТоварыВРезервеНаСкладах.Остатки(&ДатаОстатков," + УсловиеОстатки + "
    | И ДокументРезерва <> &Сделка
    | ) КАК РезервыОстатки
    |ПО
    | ОстаткиНаСкладе.Номенклатура = РезервыОстатки.Номенклатура"
    + ?(ТабличнаяЧасть = Товары, Символы.ПС + "И ОстаткиНаСкладе.ХарактеристикаНоменклатуры = РезервыОстатки.ХарактеристикаНоменклатуры ", ")
    + ?(мУказаниеСкладовВТЧ, Символы.ПС + "И ОстаткиНаСкладе.Склад = РезервыОстатки.Склад", ")
    + "
    |ЛЕВОЕ СОЕДИНЕНИЕ // к передаче
    | РегистрНакопления.ТоварыКПередачеСоСкладов.Остатки(&ДатаОстатков," + УсловиеОстатки + "
    | %Условие_Качество%
    | И СтатусПартии " + ?(ТабличнаяЧасть = Товары, " <> &СтатусТары", " = &СтатусТары") + "
    | ) КАК КПередаче
    |ПО
    | ОстаткиНаСкладе.Номенклатура = КПередаче.Номенклатура"
    + ?(ТабличнаяЧасть = Товары, Символы.ПС + "И ОстаткиНаСкладе.ХарактеристикаНоменклатуры = КПередаче.ХарактеристикаНоменклатуры ", ")
    + ?(мУказаниеСкладовВТЧ, Символы.ПС + "И ОстаткиНаСкладе.Склад = КПередаче.Склад", ")
    + "
    |" + СтрЗаменить(ТекстЗапросаПоТЧЗаказа, "Остатки.", "ОстаткиНаСкладе.");

    Если ВидОперации <> Перечисления.ВидыОперацийРеализацияТоваров.Брак Тогда
    Запрос.Текст = стрЗаменить(Запрос.Текст,"%Условие_Качество%"," И Качество = ЗНАЧЕНИЕ(Справочник.Качество.Новый) ");
    Иначе
    Запрос.Текст = стрЗаменить(Запрос.Текст,"%Условие_Качество%"," ");
    КонецЕсли;

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

вот где заполняется, и про РН которые я писал
---
Это не заполняется, это выборка. Заполняется ниже. Прогони отладчиком до строки, в которой устанавливается кол-во, и ее сюда отпиши.
---
заполняется тут:

```1c
    Для Каждого СтрокаЗаказа Из СтрокиЗаказа Цикл

    Если ОстатокКоличестваПоЗаказу <= 0 Тогда
    Прервать;
    КонецЕсли;

    Если СтрокаЗаказа.КоличествоОстатокПоЗаказу <= 0 Тогда
    Продолжить;
    Иначе
    ОстатокКоличестваПоСтрокеЗаказа = СтрокаЗаказа.КоличествоОстатокПоЗаказу;
    КонецЕсли;

    // Делаем два прохода в первом списываем все резервы по сделке, во втором, если
    // количество еще не выбрано, то добираем из свободных остатков.
    Для Сч = 1 По 2 Цикл

    Если ОстатокКоличестваПоСтрокеЗаказа <= 0 Тогда
    Продолжить;
    КонецЕсли;

    Для каждого СтрокаОстатков Из СтрокиОстатков Цикл

    Если ОстатокКоличестваПоСтрокеЗаказа <= 0 Тогда
    Продолжить;
    КонецЕсли;

    Если СтрокаОстатков.ОстатокНаСкладе = 0 Тогда
    Продолжить;
    КонецЕсли;

    РезервПоСделке = ?(СтрокаОстатков.ОстатокРезерваПоСделке = NULL, 0, СтрокаОстатков.ОстатокРезерваПоСделке);
    РезервПоДругимСделкам = ?(СтрокаОстатков.ОстатокРезерва = NULL, 0, СтрокаОстатков.ОстатокРезерва);
    КПередаче = ?(СтрокаОстатков.ОстатокКПередаче = NULL, 0, СтрокаОстатков.ОстатокКПередаче);
    СвободныйОстатокНаСкладе = Макс(СтрокаОстатков.ОстатокНаСкладе - РезервПоДругимСделкам - КПередаче, 0);

    КоличествоКСписанию = ?(Сч = 1, Мин(Макс(СтрокаОстатков.ОстатокНаСкладе-КПередаче,0), РезервПоСделке), Макс(СвободныйОстатокНаСкладе-РезервПоСделке,0));
    КоличествоКЗаполнению = Мин(КоличествоКСписанию, Мин(ОстатокКоличестваПоЗаказу, ОстатокКоличестваПоСтрокеЗаказа));

    Если КоличествоКЗаполнению = 0 Тогда
    Продолжить;
    КонецЕсли;

    ОстатокКоличестваПоЗаказу = ОстатокКоличестваПоЗаказу - КоличествоКЗаполнению;
    ОстатокКоличестваПоСтрокеЗаказа = ОстатокКоличестваПоСтрокеЗаказа - КоличествоКЗаполнению;
    СтрокаОстатков.ОстатокНаСкладе = СтрокаОстатков.ОстатокНаСкладе - КоличествоКЗаполнению;

    СтрокаТабличнойЧасти = ТабличнаяЧасть.Добавить();

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

    Если ТабличнаяЧасть = Товары Тогда
    Если не ЕстьТоварыСУчетомПоСерии И СтрокаОстатков.ВестиУчетПоСериям Тогда
    ЕстьТоварыСУчетомПоСерии = истина;
    КонецЕсли;

    СтрокаТабличнойЧасти.Количество = ?(НЕ ЗначениеЗаполнено(СтрокаЗаказа.Коэффициент), 0,
    КоличествоКЗаполнению * СтрокаЗаказа.КоэффициентЕдиницыХранения / СтрокаЗаказа.Коэффициент);
    СтрокаТабличнойЧасти.ЕдиницаИзмерения = СтрокаЗаказа.ЕдиницаИзмерения;
    СтрокаТабличнойЧасти.Коэффициент = СтрокаЗаказа.Коэффициент;
    // ТУТ КОЛИЧЕСТВО!!!!!
    СтрокаТабличнойЧасти.ттКоличество = ???
    // }ТУТ КОЛИЧЕСТВО!!!!!
```
---
еще один цикл для этой строки что ли вводить? как я туда помещу количество из Документа основания из его ТЧ?
---
проблема актуальна(
---
СтрокаТабличнойЧасти.ттКоличество = СтрокаЗаказа.ттКоличество (если у Заказа реквизит = ттКоличество)
---
S.V.Y, В СтрокаЗаказа.ттКоличества нет ттКоличества, поле не обнаружено
---
В скриншоте есть НомерСтрокиЗаказа, значит можно из Табличной части заказа получить эту строку и дальше обратиться к полю
количество2.
---
kn, вот так этот номер получается:

```1c
    | ВЫБРАТЬ
    | ОстаткиНаСкладе.Номенклатура КАК Номенклатура,
    | ОстаткиНаСкладе.ХарактеристикаНоменклатуры КАК ХарактеристикаНоменклатуры,
    | ОстаткиНаСкладе.Номенклатура.ЕдиницаХраненияОстатков КАК ЕдиницаИзмерения,
    | ОстаткиНаСкладе.Номенклатура.ЕдиницаХраненияОстатков.Коэффициент КАК Коэффициент,
    | NULL КАК ЕдиницаХранения,
    | NULL КАК КоэффициентЕдиницыХранения,
    | ОстаткиНаСкладе.Номенклатура.ВестиУчетПоСериям КАК ВестиУчетПоСериям,
    | 0 КАК Цена,
    | 0 КАК ПроцентСкидкиНаценки,
    | 0 КАК ПроцентАвтоматическихСкидок,
    | NULL КАК УсловиеАвтоматическойСкидки,
    | NULL КАК ЗначениеУсловияАвтоматическойСкидки,
    | ОстаткиНаСкладе.Склад КАК Склад,
    | ВЫБОР КОГДА ОстаткиНаСкладе.Склад = &Склад ТОГДА
    | 0
    | ИНАЧЕ
    | 1
    | КОНЕЦ КАК СортировкаПоСкладу,
    | ОстаткиНаСкладе.Номенклатура.СтавкаНДС КАК СтавкаНДС,
    | 0 КАК КоличествоОстатокПоЗаказу,
    | 0 КАК СуммаОстатокПоЗаказу,
    | ОстаткиНаСкладе.КоличествоОстаток КАК ОстатокНаСкладе,
    | РезервыОстаткиПоСделке.КоличествоОстаток КАК ОстатокРезерваПоСделке,
    | РезервыОстатки.КоличествоОстаток КАК ОстатокРезерва,
    | КПередаче.КоличествоОстаток КАК ОстатокКПередаче,
    | ВЫБОР КОГДА ТЧЗаказа.НомерСтроки ЕСТЬ NULL
    | ТОГДА 9999999
    | ИНАЧЕ ТЧЗаказа.НомерСтроки
    | КОНЕЦ КАК НомерСтрокиЗаказа"
```
---
А потом результат запроса загружается в табличную часть Реализации или обходится?
---
kn, в (13) я полный пример привел
---
Ну правильно в (22), только надо добавить проверку на СтрокаЗаказа.НомерСтрокиЗаказа <> 9999999 судя по всему
---
Вожак, в запросе получается "НомерСтрокиЗаказа", делай так в цикле заполнения

```1c
    Если ТабличнаяЧасть = Товары Тогда
    Если не ЕстьТоварыСУчетомПоСерии И СтрокаОстатков.ВестиУчетПоСериям Тогда
    ЕстьТоварыСУчетомПоСерии = истина;
    КонецЕсли;

    СтрокаТабличнойЧасти.Количество = ?(НЕ ЗначениеЗаполнено(СтрокаЗаказа.Коэффициент), 0,
    КоличествоКЗаполнению * СтрокаЗаказа.КоэффициентЕдиницыХранения / СтрокаЗаказа.Коэффициент);
    СтрокаТабличнойЧасти.ЕдиницаИзмерения = СтрокаЗаказа.ЕдиницаИзмерения;
    СтрокаТабличнойЧасти.Коэффициент = СтрокаЗаказа.Коэффициент;
    // ТУТ КОЛИЧЕСТВО!!!!!
    СтрокаТабличнойЧасти.ттКоличество = Сделка.Товары[СтрокаЗаказа.НомерСтрокиЗаказа].ттКоличество;
    // }ТУТ КОЛИЧЕСТВО!!!!!
```
---
Потому что строка заказа формируется из РН а в РН нет строки с ттКоличество, это мне что, добавлять ее в РН и прописывать в документах, которые делают движения по этим регистрам?
---
- мне :)
---
Ошибка при выполнении обработчика - 'ОбработкаЗаполнения'
по причине:
{Документ.РеализацияТоваровУслуг.МодульОбъекта(1480)}: Индекс находится за границами массива
---
Вожак, скорее всего тебе надо поставить проверку на значение 99999
---
botokash, Если НЕ СтрокаЗаказа.НомерСтрокиЗаказа <> 9999999 Тогда
     Прервать;
     КонецЕсли;
---
Поставь Остановиться на ошибке, запустии отладчик и посмотри чему равен СтрокаЗаказа.НомерСтрокиЗаказа
---
Делал так, Если НЕ СтрокаЗаказа.НомерСтрокиЗаказа <> 9999999 Тогда
     Прервать;
     КонецЕсли;
---
Сделай так
Если СтрокаЗаказа.НомерСтрокиЗаказа = 9999999 Тогда
 Продолжить;
КонецЕсли;
---
Точнее так
Если СтрокаЗаказа.НомерСтрокиЗаказа = 9999999 Тогда
 Продолжить;
Иначе
 СтрокаТабличнойЧасти.ттКоличество = Сделка.Товары[СтрокаЗаказа.НомерСтрокиЗаказа].ттКоличество;
КонецЕсли
---
kn, Всего в ТЧ у меня 8 строк, и когда до 8 доходит, валится ошибка про индекс за пределами границ
---
Сделка.Товары[СтрокаЗаказа.НомерСтрокиЗаказа] вот тут Индекс находится за пределами границы массива
---
Вожак, Сделка.Товары[СтрокаЗаказа.НомерСтрокиЗаказа-1]
---
ipoloskov, Тогда можно сджелать вместо:

```1c
    Если СтрокаЗаказа.НомерСтрокиЗаказа = 9999999 Тогда
    Продолжить;
    Иначе
    СтрокаТабличнойЧасти.ттКоличество = Сделка.Товары[СтрокаЗаказа.НомерСтрокиЗаказа].ттКоличество;
    КонецЕсли;
```

Вот так просто:

```1c
    Вожак, Сделка.Товары[СтрокаЗаказа.НомерСтрокиЗаказа-1]
```
---
Вожак, дело в том, что нумерация строк начинается с нуля (обращение к первой строчке Товары[0]). А в поле "НомерСтрокиЗаказа" у вас, скорее всего, нумерация начинается с 1
---
Если СтрокаЗаказа.НомерСтрокиЗаказа = 9999999 Тогда
     Продолжить;
Иначе
     СтрокаТабличнойЧасти.ттКоличество = Сделка.Товары[СтрокаЗаказа.НомерСтрокиЗаказа-1].ттКоличество;
КонецЕсли;
Т.к НомерСтроки начинается с 1, а в нуменация в ТЧ с 0
---
Да, именно так, блин, а как вам на двоих поделить вознаграждение?((
---
а сначала было 2$ за задачу