Имя: Пароль:
1C
1С v8
Как вывести общее кол-во номенклатуры
0 Razum
 
19.04.12
15:12
Что имеем: есть табличная часть Товары, в ней несколько одинаковых строк номенклатуры с разным количеством

Вопрос: как вывести внизу надпись при выделении строки ТЧ : Номенклатуры ХХХ всего :_____ шт. ?
1 Razum
 
19.04.12
15:13
поправка: Номенклатуры ХХХ всего :(общее количествой такой номенклатуры в ТЧ) шт.
2 Razum
 
19.04.12
15:13
ЭлементыФормы.ТекстОбщегоКоличества.Заголовок = "Номенклатуры: " + ТекущаяСтрока.Номенклатура + "  " + ТекущаяСтрока.ХарактеристикаНоменклатуры + "   общее кол-во: " + ???? ;
3 butterbean
 
19.04.12
15:14
как вариант построителем запроса с источником таб частью
4 vde69
 
19.04.12
15:14
ВыбратьСтроки()
а потом сложить
5 dva1c
 
19.04.12
15:14
(0) Писать функцию, которая запросом будет возвращать общее кол-во. Не?
6 golden-pack
 
19.04.12
15:15
(5)объект не записан не ?
7 Razum
 
19.04.12
15:17
(3)(5) в (6) все правильно пишет, объект еще не записан, в этом вся прелесть
8 golden-pack
 
19.04.12
15:18
тч выгрузить в тз и свернуть. потом количество()
9 НЕА123
 
19.04.12
15:18
колвовсего = 0;
масса = ТЧ.НайтиСтроки(Новый структура("Номенклатура",ТекущаяСтрока.Номенклатура));
Для каждого эл из масса Цикл
   колвовсего = колвовсего + Эл.колво;
КонецЦикла
10 vde69
 
19.04.12
15:19
(7) кстати если обьект не записан можно временную таблицу использовать, но-бы через отбор строк делал
11 dva1c
 
19.04.12
15:20
(9) Неужели в 8-ке простым перебором? О_о
12 dva1c
 
19.04.12
15:22
+(11) Может неверно понял задачу. Строки не группируются в подборе, а вываливаются кучей. Тогда в (9) все верно.
13 НЕА123
 
19.04.12
15:23
(11)
что в этом странного?
14 dva1c
 
19.04.12
15:23
(13) См. (12) )
15 Razum
 
19.04.12
15:27
(9) спасибо
16 sergeante
 
19.04.12
15:27
так прокатит?


   Номенклатура = Элемент.ТекущаяСтрока.Номенклатура;
   ТЗ = Товары.Выгрузить(Новый Структура("Номенклатура", Номенклатура));
   ТЗ.Свернуть("Номенклатура", "Количество");
   Сообщить(ТЗ[0].Количество);
17 sergeante
 
19.04.12
15:28
Процедура ТоварыПриАктивизацииСтроки(Элемент)
   Номенклатура = Элемент.ТекущаяСтрока.Номенклатура;
   ТЗ = Товары.Выгрузить(Новый Структура("Номенклатура", Номенклатура));
   ТЗ.Свернуть("Номенклатура", "Количество");
   Сообщить(ТЗ[0].Количество);
КонецПроцедуры
18 sergeante
 
19.04.12
15:29
Процедура ТоварыПриАктивизацииСтроки(Элемент)
   ТЗ = Товары.Выгрузить(Новый Структура("Номенклатура", Элемент.ТекущаяСтрока.Номенклатура));
   Сообщить(ТЗ.Свернуть("Номенклатура", "Количество")[0].Количество);
КонецПроцедуры
19 НЕА123
 
19.04.12
15:31
(17)
должно прокатить.

Процедура ТоварыПриАктивизацииСтроки(Элемент)
   Номенклатура = Элемент.ТекущаяСтрока.Номенклатура;
   ТЗ = Товары.Выгрузить(Новый Структура("Номенклатура", Номенклатура),"КОЛВО");
   Сообщить(ТЗ.Итог(Колво));
КонецПроцедуры
20 sergeante
 
19.04.12
15:31
тахули

Колво = Товары.Выгрузить(Новый Структура("Номенклатура", Элемент.ТекущаяСтрока.Номенклатура)).Свернуть("Номенклатура", "Количество")[0].Количество;
21 НЕА123
 
19.04.12
15:33
Процедура ТоварыПриАктивизацииСтроки(Элемент)
   Сообщить(Товары.Выгрузить(Новый Структура("Номенклатура", Элемент.ТекущаяСтрока.Номенклатура),"КОЛВО").Итог("КОЛВО"));
КонецПроцедуры
22 sergeante
 
19.04.12
15:33
вместо .Свернуть(...) - .Итог("Количество")[0].Количество;
23 sergeante
 
19.04.12
15:34
ну гдето так %)
24 sergeante
 
19.04.12
15:35
(21) колво в выгрузить вторым параметром обязательно?
25 НЕА123
 
19.04.12
15:36
(24)
неа. но зачем нужны другие?