Помощь - Поиск - Пользователи - Календарь
Полная версия: Свернуть(<ГруппКолонки>,<СуммКолонки>)
1C-PRO - Форум по 1С > Форумы по платформе "1С:Предприятие 7.7" > (7.7) Конфигурирование на платформе "1С:Предприятие 7.7"
Re-Up
"часто требуется группировать строки и подсчитывать итоги по группам,
//в этом случае применяется метод Свернуть

Синтаксис: Свернуть(<ГруппКолонки>,<СуммКолонки>)

//проссумировать оклады по каждой должности
ТабЗнач.Свернуть("Должность","Оклад")" - цитата из книги.

Подскажите, до конца так и не пойму, как просмотреть результат даного метода? Где увидеть итоги по группам? Как их отобразить?
Steel Rain
Допустим есть ТаблицаЗначений (ТЗ) с 2-мя колонками Должность и Оклад. Ну, к примеру, как то так:

Бухгалтер 10000
Бухгалтер 12000
Бухгалтер 9500
Водитель 8000
Водитель 5500
Водитель 7000

Если применить метод Свернуть, ТЗ.Свернуть("Должность", "Оклад"); то все строки с одинаковыми значениями в ячейке Должность превратяться в одну, при этом будут просуммированы значения ячеек Оклад. Т.е. на выходе получим следующее:

Бухгалтер 31500
Водитель 20500
Re-Up
Да теоретически я понимаю! А как это реализовать на практике? Пишу:

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

ТМЦ - тип Справочник.ТМЦ
Кво- тип Число, длина 10, точность 2.
Всего три реквизита в табл. части - номер строки, ТМЦ, Кво!
Процедура привязана к кнопке, при нажатии на которую она вызывается.
При этом ничего в табличной части документа не происходит!!! mad.gif
XXL
а у вас точно есть одинаковые значения ТМЦ?
Re-Up
Цитата(XXL @ 3.9.2007, 13:14) *

а у вас точно есть одинаковые значения ТМЦ?

Конечно! Уже понятно, в табл. части документа ничего и не должно происходить! Увидеть результат можно, если написать после Свернуть(), метод ВыбратьСтроку()!

Возникла следующая проблема! Как правильно переназначить тип реквизита табличной части на Строку, если, допустим, исходный тип "Справочник.ЕдиницыИзмерения"!?
Steel Rain
Вместо ВыбратьСтроки() попробуйте ЗагрузитьТабличнуюЧасть()
Цитата
Как правильно переназначить тип реквизита табличной части на Строку

Получите значение Наименование требуемого элемента. Это и будет строка.
Re-Up
Цитата(Steel Rain @ 3.9.2007, 14:53) *

Вместо ВыбратьСтроки() попробуйте ЗагрузитьТабличнуюЧасть()

Получите значение Наименование требуемого элемента. Это и будет строка.


Спасибо!
Я использовала Строка(<Параметр>) для преобразования типа. Вроде бы все получилось!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2010 Invision Power Services, Inc.