Вход | Регистрация


Можно ли такой код сделать конструктором

Можно ли такой код сделать конструктором
Я
   falselight
 
20.07.18 - 17:18
Может ли конструктор с обработкой результата сделать вот такой код.
Набирал его вручную. Можно ли это сделать конструктором с обработкой
результата? Если да то какие там особенности? Я набирал это вручную.
Возможно все можно сделать конструктором.
Заранее благодарен объяснениям, если кого не затруднит и кто знает.


    Запрос       = Новый Запрос;
    Запрос.Текст = "
        |ВЫБРАТЬ
        |    ПродажиОбороты.Период КАК Месяц,
        |    ПродажиОбороты.Контрагент КАК Контрагент,
        |    ПРЕДСТАВЛЕНИЕ(ПродажиОбороты.Контрагент),
        |    ПродажиОбороты.СуммаОборот КАК Сумма
        |ИЗ
        |    РегистрНакопления.Продажи.Обороты(, , Месяц, ) КАК ПродажиОбороты
        |
        |УПОРЯДОЧИТЬ ПО
        |    Месяц
        |ИТОГИ
        |    СУММА(Сумма)
        |ПО
        |    ОБЩИЕ,
        |    Контрагент,
        |    Месяц ПЕРИОДАМИ(МЕСЯЦ, , )";
    РезультатЗапроса = Запрос.Выполнить();
    
    ОбластьШапкаКонтрагент  = Макет.ПолучитьОбласть("Шапка|Контрагент");
    ОбластьШапкаМесяц       = Макет.ПолучитьОбласть("Шапка|Месяц");
    ОбластьШапкаИтог        = Макет.ПолучитьОбласть("Шапка|Итог");
    ОбластьСтрокаКонтрагент = Макет.ПолучитьОбласть("Строка|Контрагент");
    ОбластьСтрокаМесяц      = Макет.ПолучитьОбласть("Строка|Месяц");
    ОбластьСтрокаИтог       = Макет.ПолучитьОбласть("Строка|Итог");
    ОбластьПодвалКонтрагент = Макет.ПолучитьОбласть("Подвал|Контрагент");
    ОбластьПодвалМесяц      = Макет.ПолучитьОбласть("Подвал|Месяц");
    ОбластьПодвалИтог       = Макет.ПолучитьОбласть("Подвал|Итог");
    
    ТабДок.Вывести(ОбластьШапкаКонтрагент);  
    ВыборкаШапкаМесяц = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Месяц", "ВСЕ");
    Пока ВыборкаШапкаМесяц.Следующий() Цикл
        ОбластьШапкаМесяц.Параметры.Заполнить(ВыборкаШапкаМесяц);
        ТабДок.Присоединить(ОбластьШапкаМесяц);
    КонецЦикла;
    ТабДок.Присоединить(ОбластьШапкаИтог);
    
    ВыборкаКонтрагент = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Контрагент");
    Пока ВыборкаКонтрагент.Следующий() Цикл
        ОбластьСтрокаКонтрагент.Параметры.Заполнить(ВыборкаКонтрагент);
        ТабДок.Вывести(ОбластьСтрокаКонтрагент);
        ВыборкаМесяц = ВыборкаКонтрагент.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "Месяц", "ВСЕ");
        Пока ВыборкаМесяц.Следующий() Цикл
            ОбластьСтрокаМесяц.Параметры.Заполнить(ВыборкаМесяц);
            ТабДок.Присоединить(ОбластьСтрокаМесяц);
        КонецЦикла;
        ОбластьСтрокаИтог.Параметры.Заполнить(ВыборкаКонтрагент);
        ТабДок.Присоединить(ОбластьСтрокаИтог);
    КонецЦИкла;
    
    ТабДок.Вывести(ОбластьПодвалКонтрагент); 
    ВыборкаШапкаМесяц.Сбросить();
    Пока ВыборкаШапкаМесяц.Следующий() Цикл
        ОбластьПодвалМесяц.Параметры.Заполнить(ВыборкаШапкаМесяц);
        ТабДок.Присоединить(ОбластьПодвалМесяц);
    КонецЦикла;
    ВыборкаОбщийИтог = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
    Если ВыборкаОбщийИтог.Следующий() Тогда
        ОбластьПодвалИтог.Параметры.Заполнить(ВыборкаОбщийИтог);
        ТабДок.Присоединить(ОбластьПодвалИтог);
    КонецЕсли;
КонецПроцедуры
 
 
   МихаилМ
 
1 - 20.07.18 - 17:24
бля. вы больной.
   Остап Сулейманович
 
2 - 20.07.18 - 17:25
(1) Зачем "больной"? Это - ливингстар.
   zippygrill
 
3 - 20.07.18 - 17:26
каким еще конструктором? Конструктор синих банан?
   Fragster
 
4 - 20.07.18 - 17:27
если такой же результат можно накликать мышкой в СКД, то зачем вообще "код"?
   Franchiser
 
5 - 20.07.18 - 17:28
такой же г****код?
   Tonik992
 
6 - 20.07.18 - 17:35
Закидали какашками беспричинно.
   АНДР
 
7 - 20.07.18 - 17:44
(0) завязывай с 7.7

Список тем форума
Рекламное место пустует  Рекламное место пустует
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух.
Фредерик Брукс-младший
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует