8.х Как вывести итоги в отчет?

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем maritime, 18 окт 2011.

  1. TopicStarter Overlay
    maritime
    Offline

    maritime

    Регистрация:
    22 апр 2011
    Сообщения:
    26
    Симпатии:
    0
    Баллы:
    1
    Что не так в тексте модуля? Почему итоги попадают не в ту строчку?

    |////////////////////////////////////////////////////////////////////////////////
    |ВЫБРАТЬ
    | ПоступившиеОС_СпособыАмортизации.ОсновноеСредство КАК ОсновноеСредство,
    | ПоступившиеОС_СпособыАмортизации.Сумма КАК Сумма,
    | ПоступившиеОС_СпособыАмортизации.ДатаПринятияКУчетуОС КАК ДатаПринятияКУчетуОС,
    | СУММА(1) КАК Количество,
    | ПоступившиеОС_СпособыАмортизации.ОсновноеСредство.Код КАК ИнвНомер,
    | ПоступившиеОС_СпособыАмортизации.ПредприятиеБалансодержатель
    |ИЗ
    | ПоступившиеОС_СпособыАмортизации КАК ПоступившиеОС_СпособыАмортизации
    |
    |СГРУППИРОВАТЬ ПО
    | ПоступившиеОС_СпособыАмортизации.ДатаПринятияКУчетуОС,
    | ПоступившиеОС_СпособыАмортизации.ОсновноеСредство,
    | ПоступившиеОС_СпособыАмортизации.Сумма,
    | ПоступившиеОС_СпособыАмортизации.ОсновноеСредство.Код,
    | ПоступившиеОС_СпособыАмортизации.ПредприятиеБалансодержатель
    |
    |УПОРЯДОЧИТЬ ПО
    | ИнвНомер
    |ИТОГИ
    | СУММА(Сумма),
    | СУММА(Количество)
    |ПО
    | ОБЩИЕ";

    ОрганизацияНефаз = РегистрыСведений.Софт_Константы.ПолучитьПоследнее(ПериодКонец,Новый Структура("Организация",Организация)).ПредприятиеБалансодержатель;

    РезультатЗапорса = Запрос.Выполнить();
    Выборка = Запрос.Выполнить().Выбрать();

    //// Вывод в макет

    Пока Выборка.Следующий() Цикл

    РасшифрокаПоступлений = "";
    КонтрагентПриобретения = ОпределитьКонтрагента(Выборка.ОсновноеСредство, НачалоДня(ПериодНачало), КонецДня(ПериодКонец), СписокКорСчетов, РасшифрокаПоступлений, Выборка.ПредприятиеБалансодержатель);

    Если НЕ ЗначениеЗаполнено(КонтрагентПриобретения) Тогда
    // Сообщить("По ОС """+СокрЛП(Выборка.ОсновноеСредство)+""" с кодом """+СокрЛП(Выборка.ОсновноеСредство.Код)+""" не удалось обнаружить поставщика, поставщик определится автоматически как НЕФАЗ !!!");
    КонтрагентПриобретения = Организация;
    КонецЕсли;

    ОбластьСтрока.Параметры.Контрагент = КонтрагентПриобретения;
    ОбластьСтрока.Параметры.Заполнить(Выборка);
    ТаблДокумент.Вывести(ОбластьСтрока);
    Контрагент="";
    КонецЦикла;

    ОбластьСтрокаИтог.Параметры.Заполнить(Выборка);
    ТаблДокумент.Вывести(ОбластьСтрокаИтог,Выборка.Уровень());

    ТаблДокумент.ЗакончитьАвтогруппировкуСтрок();

    КоличествоЭкземпляров = 1;
    НаПринтер = Ложь;
    УниверсальныеМеханизмы.НапечататьДокумент(ТаблДокумент, КоличествоЭкземпляров, НаПринтер,"Приобретенные основные срездства за период с"+Формат(ПериодНачало, "ДФ=дд.ММ.гггг")+" по "+Формат(ПериодКонец, "ДФ=дд.ММ.гггг"));


    Посмотреть вложение 8842 Посмотреть вложение 8843

    Вложения:

    • итог.GIF
      итог.GIF
      Размер файла:
      9,5 КБ
      Просмотров:
      144
    • Макет.GIF
      Макет.GIF
      Размер файла:
      10,1 КБ
      Просмотров:
      133
  2. Flamepayne
    Offline

    Flamepayne Опытный в 1С

    Регистрация:
    16 мар 2011
    Сообщения:
    113
    Симпатии:
    0
    Баллы:
    26
    Код:
           "ВЫБРАТЬ
    |    ПоступившиеОС_СпособыАмортизации.ОсновноеСредство КАК ОсновноеСредство,
    |    ПоступившиеОС_СпособыАмортизации.Сумма КАК Сумма,
    |    ПоступившиеОС_СпособыАмортизации.ДатаПринятияКУчетуОС КАК ДатаПринятияКУчетуОС,
    |    СУММА(1) КАК Количество,
    |    ПоступившиеОС_СпособыАмортизации.ОсновноеСредство.Код КАК ИнвНомер,
    |    ПоступившиеОС_СпособыАмортизации.ПредприятиеБалансодержатель
    |ИЗ
    |    ПоступившиеОС_СпособыАмортизации КАК ПоступившиеОС_СпособыАмортизации
    |
    |СГРУППИРОВАТЬ ПО
    |    ПоступившиеОС_СпособыАмортизации.ДатаПринятияКУчетуОС,
    |    ПоступившиеОС_СпособыАмортизации.ОсновноеСредство,
    |    ПоступившиеОС_СпособыАмортизации.Сумма,
    |    ПоступившиеОС_СпособыАмортизации.ОсновноеСредство.Код,
    |    ПоступившиеОС_СпособыАмортизации.ПредприятиеБалансодержатель
    |
    |УПОРЯДОЧИТЬ ПО
    |    ИнвНомер
    |ИТОГИ
    |    СУММА(Сумма),
    |    СУММА(Количество)
    |ПО
    |    ОБЩИЕ"; 
    
    ОрганизацияНефаз = РегистрыСведений.Софт_Константы.ПолучитьПоследнее(ПериодКонец,Новый Структура("Организация",Организация)).ПредприятиеБалансодержатель;
    
    РезультатЗапорса = Запрос.Выполнить();
    Выборка = Запрос.Выполнить().Выбрать();
    
    ////  Вывод в макет
    ИтогКоличество = 0;
    ИтогСумма =0; 
    Пока Выборка.Следующий() Цикл
    
    РасшифрокаПоступлений = "";
    КонтрагентПриобретения = ОпределитьКонтрагента(Выборка.ОсновноеСредство, НачалоДня(ПериодНачало), КонецДня(ПериодКонец), СписокКорСчетов, РасшифрокаПоступлений, Выборка.ПредприятиеБалансодержатель);
    
    Если НЕ ЗначениеЗаполнено(КонтрагентПриобретения) Тогда
    //        Сообщить("По ОС """+СокрЛП(Выборка.ОсновноеСредство)+""" с кодом """+СокрЛП(Выборка.ОсновноеСредство.Код)+""" не удалось обнаружить поставщика, поставщик определится автоматически как НЕФАЗ !!!");
    КонтрагентПриобретения = Организация;
    КонецЕсли;
    
    ОбластьСтрока.Параметры.Контрагент = КонтрагентПриобретения;
    ОбластьСтрока.Параметры.Заполнить(Выборка);
    ТаблДокумент.Вывести(ОбластьСтрока);
    Контрагент="";
    ИтогКоличество = ИтогКоличесвто + выборка.Количество;
    ИтогСумма = ИтогСумма + выборка.Сумма;
    КонецЦикла;
    
    ОбластьСтрокаИтог.Параметры.Количество = ИтогКоличество;
    ОбластьСтрокаИтог.Параметры.Сумма = ИтогСумма;
    ТаблДокумент.Вывести(ОбластьСтрокаИтог);
    
    ТаблДокумент.ЗакончитьАвтогруппировкуСтрок();
    
    КоличествоЭкземпляров = 1; 
    НаПринтер = Ложь;
    УниверсальныеМеханизмы.НапечататьДокумент(ТаблДокумент, КоличествоЭкземпляров, НаПринтер,"Приобретенные основные срездства за период с"+Формат(ПериодНачало, "ДФ=дд.ММ.гггг")+"  по  "+Формат(ПериодКонец, "ДФ=дд.ММ.гггг")); 
    
    
    
  3. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    а у вас итоги адекватные? судя по отчету - не очень (или я ошибаюсь?)

    считайте их отдельно и выводите

    З.Ы. Опоздала малость
  4. Flamepayne
    Offline

    Flamepayne Опытный в 1С

    Регистрация:
    16 мар 2011
    Сообщения:
    113
    Симпатии:
    0
    Баллы:
    26
    Согласен, итоги вообще левые. Ну автор просил, чтобы в итоговую строку они попадали, а правильность чисел на его совести :angry:

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