Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
19 мар 2024, 14:37

Итоги

Автор tft, 16 авг 2011, 15:21

0 Пользователей и 1 гость просматривают эту тему.

tft

Добрый день,
подскажите как посчитать итоги в этой таблице?

Андрей Федотов

Если данная таблица находится в документе - можно активировать свойство "Подвал" таблицы и заполнить его значение для каждой колонки.
Если данная таблица находится в макете отчета - необходимо в запросе, которым она формируется на закладке ИТОГИ в конструкторе отметить по каким столбцам вы хотите формировать итоги и с каким агрегирующим условием (функцией). Далее уже обработать данную строку  и вывести в нужном месте.
Есть и иные варианты
С уважением,
Андрей Федотов
Future IT Solutions

tft

Таблица находится в макете отчета, но дальше чтото не совсем понял

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

Итог = Макет.ПолучитьОбласть("Итого");
         Итог.Параметры.ИтКатПервый = ИтКатПервый;
         
         ТабДок.Вывести(Итог);

has

А где в запросе суммы компенсации?

tft

так он посчитает сумму всех строк, а мне как видите нужна сумма определенных строк

tft

Всем спасибо, разобрался

has

Цитата: tft от 17 авг 2011, 09:08
Всем спасибо, разобрался
Нужна была сумма строк в которых число, а не "-"?

tft

да..
все оказалось проще простого, видимо не проснулся еще)
Если Первый тогда
ИтКатПервый = ИтКатПервый + 1;
Иначе
ИтКатПервый = 0;

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск