Имя: Пароль:
1C
1С v8
Получить элемент табличной части из модуля формы
0 Смертник
 
22.06.13
22:30
Запрос.УстановитьПараметр("Номенклатура", Товара.Номенклатура);
   Запрос.Текст =
   "ВЫБРАТЬ
   |    ирСкидкаКомитентаОстатки.Номенклатура,
   |    ирСкидкаКомитентаОстатки.ХарактеристикаНоменклатуры,
   |    ирСкидкаКомитентаОстатки.СкидкаКомитента,
   |    ирСкидкаКомитентаОстатки.СкидкаКомитентаПроцентОстаток,
   |    ирСкидкаКомитентаОстатки.СкидкаКомитентаСуммаОстаток
   |ИЗ
   |    РегистрНакопления.ирСкидкаКомитента.Остатки(, Номенклатура = &Номенклатура) КАК ирСкидкаКомитентаОстатки";
   Скидки = Запрос.Выполнить().Выгрузить();

Не могу получить Номенклатура из табличной части. Чтобы передать как параметр в запрос. Помогите - не получается
1 NcSteel
 
22.06.13
22:37
Тебе нужна номенклатура из какой строки, строк то много..
2 Смертник
 
22.06.13
22:42
мне надо взять всю номенклатуру и проверить по какой номенклатуре есть скидка, эту номенклатуру взять и проставить в доке скидку
3 kosts
 
22.06.13
22:52
Может так?

СписокНоменклатур = Новый Список;
Для каждого т из Товара Цикл
   СписокНоменклатур.Добавить(т);
КонецЦикла;
Запрос.Текст =
   "ВЫБРАТЬ
   |    ирСкидкаКомитентаОстатки.Номенклатура,
   |    ирСкидкаКомитентаОстатки.ХарактеристикаНоменклатуры,
   |    ирСкидкаКомитентаОстатки.СкидкаКомитента,
   |    ирСкидкаКомитентаОстатки.СкидкаКомитентаПроцентОстаток,
   |    ирСкидкаКомитентаОстатки.СкидкаКомитентаСуммаОстаток
   |ИЗ
   |    РегистрНакопления.ирСкидкаКомитента.Остатки(, Номенклатура В (&СписокНоменклатур)) КАК ирСкидкаКомитентаОстатки";
4 Смертник
 
22.06.13
23:01
СписокНоменклатур = Новый Список;
Список не определено
5 kosts
 
22.06.13
23:05
(4) Список значений вестимо
7 GROOVY
 
22.06.13
23:11
Не... тут все сложнее...
8 kosts
 
22.06.13
23:11
Тут еще промахнулся, нужно так

СписокНоменклатур.Добавить(т.Номенклатура);
9 Смертник
 
22.06.13
23:19
документ проведен
10 mistеr
 
22.06.13
23:28
Почему бы не соединить регистр с ТЧ?
11 Смертник
 
22.06.13
23:49
Скидки = Запрос.Выполнить().Выгрузить();
   // Заполним реквизит склад в табличной части "Товары"
   СкладИзШапки    =  Не мУказаниеСкладовВТЧ;
   Для каждого СтрокаТЧ из Товары Цикл
       СтрокаТЧ.ирСкидкаКомитента = Скидки.СкидкаКомитента;
пишет нет СкидкиКомитентов, почему не могу понять
12 Смертник
 
22.06.13
23:50
(10) и как это сделать?
13 Смертник
 
22.06.13
23:52
Поле объекта не обнаружено (СкидкаКомитента)
14 Смертник
 
22.06.13
23:57
в запросе вроде все верно
15 NcSteel
 
23.06.13
00:40
И как поле называется в запросе?
16 hhhh
 
23.06.13
09:15
(14) Скидки - это таблица значений. У таблицы значений нет такого поля.
17 Смертник
 
23.06.13
09:47
я ее через Псевдоним так и назвал
18 Смертник
 
23.06.13
10:32
Скидки = Запрос.Выполнить().Выгрузить();
   // Заполним реквизит склад в табличной части "Товары"
   СкладИзШапки    =  Не мУказаниеСкладовВТЧ;
   Для каждого СтрокаТЧ из Товары Цикл
       Для каждого Строка из Скидки Цикл
           СтрокаТЧ.ирСкидкаКомитента = Строка.СкидкаКомитента;
       КонецЦикла;
сделал так - но записить в ТЧ товары не проиходит
19 craxx
 
23.06.13
10:37
Выгрузить в тз, тз загрузить во временную таблицу и левым соединением соединить с твоим регистром.
20 Смертник
 
23.06.13
10:55
как я сделал можно? или неверно?
И если правильно почему тогда не заполняет.
Не пойму
Независимо от того, куда вы едете — это в гору и против ветра!