7.7 Как подсчитать Сумму Колонки в отчете?

Тема в разделе "Отчеты и обработки для "1С:Предприятие 7.7"", создана пользователем witus, 8 июн 2008.

  1. TopicStarter Overlay
    witus
    Offline

    witus

    Регистрация:
    8 июн 2008
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    вот текст модуля:
    тут все работает но переменная "Д10" хочу сделать Сумму колонки "Д3=Таб.Работа"
    вопрос в том как ???
    парюсь уже весь день
    подскажите как
    Код:
    //*******************************************
    Перем Д1,Д2,Д3,Д10,Д5,Д6,Д7,Д8,Д9;
    
    Процедура ПриОткрытии()
    //НачДата=РабочаяДата();
    КонДата=РабочаяДата();
    Таб.Очистить();
    
    Таб.ВставитьКолонку("Дата",,,,,"Дата",8);
    Таб.ВставитьКолонку("Заказ",,,,,"Заказ",8);
    Таб.ВставитьКолонку("Работа",,,,,"Работа",26);
    Таб.ВставитьКолонку("Запчасти",,,,,"Запчасти",15);
    Таб.ВставитьКолонку("Производитель",,,,,"Производитель",10);
    Таб.ВставитьКолонку("Модель",,,,,"Модель",10);
    Таб.ВставитьКолонку("Статус",,,,,"Статус",10);
    КонецПроцедуры
    
    Процедура ВыбратьЗаказы()
    Таб.Очистить();
    
    Таб.ВставитьКолонку("Дата",,,,,"Дата",8);
    Таб.ВставитьКолонку("Заказ",,,,,"Заказ",8);
    Таб.ВставитьКолонку("Работа",,,,,"Работа",26);
    Таб.ВставитьКолонку("Запчасти",,,,,"Запчасти",15);
    Таб.ВставитьКолонку("Производитель",,,,,"Производитель",10);
    Таб.ВставитьКолонку("Модель",,,,,"Модель",10);
    Таб.ВставитьКолонку("Статус",,,,,"Статус",10);
    
    Док_Заказ=СоздатьОбъект("Документ.Заказ");
    Док_Заказ.ВыбратьДокументы(НачДата,КонДата);
    Пока Док_Заказ.ПолучитьДокумент()=1 Цикл
    Если Док_Заказ.ПометкаУдаления()>0 Тогда
    Продолжить;
    КонецЕсли;
    Если ПерПроизводитель=1 Тогда
    Если Док_Заказ.Производитель=Производитель Тогда
    Иначе Продолжить;
    КонецЕсли;
    КонецЕсли;
    Если ПерНаименование=1 Тогда
    Если Док_Заказ.Наименование=Наименование Тогда
    Иначе Продолжить;
    КонецЕсли;
    КонецЕсли;
    Если ПерСерийныйНомер=1 Тогда
    Если Док_Заказ.СерНомер=СерийныйНомер Тогда
    Иначе Продолжить;
    КонецЕсли;
    КонецЕсли;
    
    
    Таб.НоваяСтрока();
    Таб.Дата=Док_Заказ.ДатаДок;
    Таб.Заказ=Док_Заказ.НомерДок;
    Таб.Работа=Док_Заказ.Работа;
    Таб.Запчасти=Док_Заказ.Запчасти;
    Таб.Производитель=Док_Заказ.Производитель;
    Таб.Модель=Док_Заказ.Наименование;
    Таб.Статус=Док_Заказ.Статус;
    
    КонецЦикла; 
    КонецПроцедуры
    
    Процедура ДостПроизводитель()
    Если ПерПроизводитель=1 Тогда
    Форма.Производитель.Доступность(1);
    Иначе   Форма.Производитель.Доступность(0);
    КонецЕсли;
    КонецПроцедуры 
    Процедура ДостНаименование()
    Если ПерНаименование=1 Тогда
    Форма.Наименование.Доступность(1);
    Иначе   Форма.Наименование.Доступность(0);
    КонецЕсли;
    КонецПроцедуры    
    Процедура ДостСерийныйНомер()
    Если ПерСерийныйНомер=1 Тогда
    Форма.СерийныйНомер.Доступность(1);
    Иначе   Форма.СерийныйНомер.Доступность(0);
    КонецЕсли;
    КонецПроцедуры      
    
    Процедура ПоказатьЗаказ()
    н=Таб.ТекущаяСтрока();
    НомДок=Таб.ПолучитьЗначение(н,"Заказ"); 
    Док_Заказ=СоздатьОбъект("Документ.Заказ");
    Док_Заказ.НайтиПоНомеру(НомДок);
    Если редактирование>0 тогда
    ОткрытьФормуМодально(Док_Заказ.ТекущийДокумент());
    <span style='cursor: pointer; color:red' Onclick="window.open('http://www.1c-pro.ru/wiki/index.php/иначе')">	Иначе	</span>
    ОткрытьФормуМодально(Док_Заказ.ТекущийДокумент(),,1);
    КонецЕсли;
    
    ВыбратьЗаказы();
    КонецПроцедуры  
    
    Процедура Печать()
    Д9=0;
    Д10=Таб.Работа(Сумма);
    Таб1 = СоздатьОбъект("Таблица");
    Таб1.ИсходнаяТаблица("Таблица");
    Таб1.ВывестиСекцию("Шапка");
    
    Таб.ВыбратьСтроки();
    Пока Таб.ПолучитьСтроку()>0 Цикл
    Д1=Таб.Дата;
    Д2=Таб.Заказ;
    Д3=Таб.Работа;
    Д5=Таб.Запчасти;
    Д6=Таб.Производитель;
    Д7=Таб.Модель;
    Д8=Таб.Статус;
    Д9=Д9+1;
    Таб1.ВывестиСекцию("Строка");
    КонецЦикла;
    Таб1.ВывестиСекцию("Подвал");
    Таб1.Опции(0,0,0,0);
    Таб1.ТолькоПросмотр(1);
    Таб1.Показать("Отчет о заказах","");
    КонецПроцедуры;
    
  2. Natalya
    Offline

    Natalya Опытный в 1С

    Регистрация:
    7 фев 2008
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    Таб.ВыбратьСтроки();
    Пока Таб.ПолучитьСтроку()=1 цикл
    Таб.Свернуть();
    КонецЦикла;

    Также лучше указать тип и длину колонки.
  3. eviloid
    Offline

    eviloid Опытный в 1С

    Регистрация:
    15 май 2008
    Сообщения:
    103
    Симпатии:
    0
    Баллы:
    26
    Код:
       Д10 = Таб.Итог("Работа");
    
  4. TopicStarter Overlay
    witus
    Offline

    witus

    Регистрация:
    8 июн 2008
    Сообщения:
    2
    Симпатии:
    0
    Баллы:
    1
    Огромное Спасибо
    а я под "Сумма" загнался и всё тут.. а оказывается Таб.Итог("Работа");
    ещё раз спасибо



    Администратор !!! - закрывайте тему.

Поделиться этой страницей