Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Сумма в отчете
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.1 (8.0)
Alisa
Люди, помогите! mellow.gif
В 8-ке я новичок, поэтому обращаюсь за помощью к ЗНАТОКАМ!
Проблема такая - есть отчет -как туда добавить колонку разобралась, а теперь по этой колонке необходимо вывести итоговую сумму

Сумму нужно по колонке "ФактЧас"
Скрин самой таблицы показать немогу - незнаю как.

модуль этой обработки:

Процедура Сформировать()  экспорт  
    ТД = ЭлементыФормы.ПолеТабличногоДокумента1;
    ТД.Очистить();
    
    // получить дату начала
    ДатаС = ?(ЗначениеЗаполнено(ДатаС),ДатаС,ПолучитьДатуС());
    
    Запрос = Новый Запрос;
    Запрос.УстановитьПараметр("ДатаС", ДатаС);
    Запрос.УстановитьПараметр("ДатаПо", ДатаПо);
    Запрос.УстановитьПараметр("Операция", Операция);
    Запрос.УстановитьПараметр("Деталь", Деталь);
    Запрос.УстановитьПараметр("Подетальная", Подетальная);
    Запрос.УстановитьПараметр("НомерДетали", НомерДетали);
    Запрос.УстановитьПараметр("НомерИзделия", НомерИзделия);
    Запрос.УстановитьПараметр("узел", Узел);
    Запрос.УстановитьПараметр("ДатаПо", ДатаПо);
    //Запрос.УстановитьПараметр("", );
    //Запрос.УстановитьПараметр("", );
    
    Запрос.Текст = "ВЫБРАТЬ
                   |    СменноеЗаданиеОписаниеРабот.Ссылка КАК Сменное,
                   |    СменноеЗаданиеОписаниеРабот.НомерСтроки,
                   |    СменноеЗаданиеОписаниеРабот.Заказ КАК Подетальная,
                   |    СменноеЗаданиеОписаниеРабот.Наименование КАК Наименование,
                   |    СменноеЗаданиеОписаниеРабот.Операция КАК Операция,
                   |    СменноеЗаданиеОписаниеРабот.НомерОперации КАК НомерОперации,
                   |    СменноеЗаданиеОписаниеРабот.КвоПлан * ВЫБОР
                   |        КОГДА СменноеЗаданиеОписаниеРабот.ПроцентВыполненияНорм = 0
                   |            ТОГДА 1
                   |        ИНАЧЕ СменноеЗаданиеОписаниеРабот.ПроцентВыполненияНорм
                   |    КОНЕЦ КАК КвоПлан,
                   |    СменноеЗаданиеОписаниеРабот.КвоФакт КАК КвоФакт,
                   |    СменноеЗаданиеОписаниеРабот.ВремяЧас,
                   |    СменноеЗаданиеОписаниеРабот.Узел КАК Узел,
                   |    СменноеЗаданиеОписаниеРабот.НормаНаЕд КАК НормаНаЕд,
                   |    СменноеЗаданиеОписаниеРабот.ВремяЧасПлан КАК ВремяЧасПлан,
                   |    СменноеЗаданиеОписаниеРабот.ПроцентВыполненияНорм КАК ПроцентВыполнения,
                   |    СменноеЗаданиеОписаниеРабот.УровеньДетали КАК УровеньДетали,
                   |    СменноеЗаданиеОписаниеРабот.НомерДетали КАК НомерДетали
                   |ИЗ
                   |    Документ.СменноеЗадание.ОписаниеРабот КАК СменноеЗаданиеОписаниеРабот
                   |ГДЕ
                   |    &Условие0
                   |ИТОГИ
                   |    СУММА(КвоПлан),
                   |    СУММА(КвоФакт),
                   |    СУММА(НормаНаЕд),
                   |    СУММА(ВремяЧасПлан),
               |    СУММА(ВремяЧас)
               |ПО
                   |    НомерОперации,
                   |    Операция,
                   |    Наименование,
                   |    Подетальная,
                   |    Узел,
                   |    УровеньДетали,
                   |    НомерДетали";
    
    текст1 = "";
    Если ЗначениеЗаполнено(ДатаС) Тогда
        текст1 = текст1 + " И СменноеЗаданиеОписаниеРабот.Ссылка.дата >= &ДатаС ";
    КонецЕсли;    
    Если ЗначениеЗаполнено(ДатаПо) Тогда
        текст1 = текст1 + " И СменноеЗаданиеОписаниеРабот.Ссылка.дата <= &ДатаПо ";
    КонецЕсли;    
    
    Если ЗначениеЗаполнено(Подетальная) Тогда
        текст1 = текст1 + " И СменноеЗаданиеОписаниеРабот.Заказ = &Подетальная ";
    КонецЕсли;
    Если ЗначениеЗаполнено(Операция) Тогда
        текст1 = текст1 + " И СменноеЗаданиеОписаниеРабот.Операция = &Операция ";
    КонецЕсли;
    Если ЗначениеЗаполнено(НомерДетали) Тогда
        текст1 = текст1 + " И СменноеЗаданиеОписаниеРабот.НомерДетали = &НомерДетали ";
    КонецЕсли;
    Если ЗначениеЗаполнено(НомерИзделия) Тогда
        текст1 = текст1 + " И СменноеЗаданиеОписаниеРабот.НомерОперации = &НомерИзделия ";
    КонецЕсли;
    Если ЗначениеЗаполнено(Деталь) Тогда
        текст1 = текст1 + " И СменноеЗаданиеОписаниеРабот.наименование = &Деталь ";
    КонецЕсли;
    Если ЗначениеЗаполнено(Узел) Тогда
        текст1 = текст1 + " И СменноеЗаданиеОписаниеРабот.Узел = &Узел ";
    КонецЕсли;
    
    запрос.Текст = СтрЗаменить(запрос.Текст,"&Условие0",Сред(текст1,3));

    Выборка = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    
//    тд = новый ТабличныйДокумент;
    макет = ПолучитьМакет("макет");
    
    тд.Вывести(макет.ПолучитьОбласть("ШапкаТаблицы"));
    
    КвоГруппировок = 7;
    тд.НачатьАвтогруппировкуСтрок();
    ВывестиУровень(ТД, Макет, Выборка, КвоГруппировок);
    тд.ЗакончитьАвтогруппировкуСтрок();
    
    тд.Вывести(макет.ПолучитьОбласть("Итог"));      
              
        
    тд.ОтображатьСетку = ложь;
    тд.АвтоМасштаб = истина;
    тд.ТолькоПросмотр = истина;
    тд.ОтображатьЗаголовки = истина;
    тд.Показать("Незавершенные операции");
        
КонецПроцедуры
Vofka
Может как-то так:
Итог("ФактЧас")

?
Batchir
Ну у Вас в запросе нет параметра ФактЧас, может это КвоФакт?
Если можете то сохраните обработку как внешнюю (если она в составе конфигурации), выложите её и укажите конфигурацию и релиз для которой разрабатывалась. Гляну.
Alisa
Цитата(Batchir @ 19.04.10, 6:41) необходимо зарегистрироваться для просмотра ссылки
Ну у Вас в запросе нет параметра ФактЧас, может это КвоФакт?
Если можете то сохраните обработку как внешнюю (если она в составе конфигурации), выложите её и укажите конфигурацию и релиз для которой разрабатывалась. Гляну.



Спасибо, за отклик. Я ошиблась - параметр "ВремяЧас". Необходимо было подбить итог по параметру "подетальная" (т.е. по дням) и всего по документу. Но пока надобность отпала - бухгалтеров устроил отчет и без итогов. Если не сложно - как прописать (так на всякий случай), а вдруг.... huh.gif

Предприятие 8.1 конфигурация "Бухучет для Украины" релиз 1.1.1.15, а база прописана для машиностроения с соответствующими изменениями, т.е. скачала и в конфигураторе установила своё (вернее то что досталось от предшественников) wink.gif
Batchir
ОбластьИтог = макет.ПолучитьОбласть("Итог");
ОбластьИтог.Параметры.<ИмяПараметраФормы> = <ЗначениеПараметра>;
тд.Вывести(ОбластьИтог);
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.