Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Печать Меню в разрез дат , Обработка вывода Меню в питании          
burza Подменю пользователя
сообщение 26.07.16, 15:53
Сообщение #1

Оратор
*****
Группа: Пользователи
Сообщений: 312
Спасибо сказали: 1 раз
Рейтинг: 1

Здравствуйте! У меня есть отчет который считает стоимость блюд за период. Но он не разделяет меню по датам. А пишет все по очереди от и до и все тип одним числом.

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

    Возврат ЗапросМенюНаДень.Выполнить().Выбрать(ОбходРезультатаЗапроса.Прямой);


и

форма вывода
ВывестиМенюНаДень(ДопПоля)
    ВыводФорма = новый ТабличныйДокумент;
    
    ОбластьШапка1           = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьШапка1");
    ОбластьШапка2           = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьШапка2");
    ОбластьШапкаЗаголовок   = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьШапкаЗаголовок");
    ОбластьШапкаСписокГП    = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьШапкаСписокГП");
    ОбластьЗаголовокЭнц     = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьЗаголовокЭнц");
    ОбластьЗаголовокПП1     = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьЗаголовокПП1");
    ОбластьБлюдо            = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьБлюдо");
    ОбластьБлюдоСЦеной      = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьБлюдоСЦеной");
    ОбластьБлюдоСКалор      = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьБлюдоСКалор");
    ОбластьБлюдоЭнц         = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьБлюдоЭнц");
    ПодвалМенюСЦеной        = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ПодвалМенюСЦеной");
    ПодвалМенюСКалор        = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ПодвалМенюСКалор");
    ОбластьПодвалБЖУК       = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьПодвалБЖУК");
    
    Подвал                  = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("Подвал");
    
    ОбластьСсылкаНаСборник  = Отчеты.МенюНаДень.ПолучитьМакет("Макет").ПолучитьОбласть("ОбластьСсылкаНаСборник");

    
    
    
    // Установка параметров области "ОбластьШапка1"
    ОбластьШапка1.Параметры.Подразделение = Отчет.Подразделение.Наименование;
    
    // Установка параметров области "ОбластьШапка2"
    ОбластьШапка2.Параметры.Подразделение = Отчет.Подразделение.Наименование;
    Отбор = новый Структура;
    Отбор.Вставить("Подразделение", Отчет.Подразделение);
    ИмяДиректора = РегистрыСведений.ОтветственныеЛица.ПолучитьПоследнее(ТекущаяДата(),Отбор).ОтвЛицоДиректор;
    ОбластьШапка2.Параметры.ИмяДиректора = ИмяДиректора;
    
    // Установка параметров области "ОбластьШапкаЗаголовок"
    ОбластьШапкаЗаголовок.Параметры.НаименованиеДокумента = "Меню на";
    ОбластьШапкаЗаголовок.Параметры.ДатаДокумента = Формат(Отчет.ДатаМеню, "ДЛФ=ДД");
    
    // Установка параметров области "ОбластьШапкаСписокГП"
    ОбластьШапкаСписокГП.Параметры.СписокГруппПитания = Отчет.ГруппаПитания;
    
    
    
    
    // Выводим все "шапки" в результирующий документ
    ВыводФорма.Вывести(ОбластьШапка1);
    ВыводФорма.Вывести(ОбластьШапка2);
    ВыводФорма.Вывести(ОбластьШапкаЗаголовок);
    ВыводФорма.Вывести(ОбластьШапкаСписокГП);

    Если ДопПоля = 3 тогда
        ВыводФорма.Вывести(ОбластьЗаголовокЭнц);
    КонецЕсли;
    
    
    // Собственно выборка меню на день
    ВыборкаМенюНаДень = ПолучитьМенюНаДень();
    
    ОбщаяЦена = 0;
    ОбщаяКалорийность = 0;
    ВсегоБелки = 0;
    ВсегоЖиры = 0;
    ВсегоУглеводы = 0;
    
    
    
    Пока ВыборкаМенюНаДень.Следующий() Цикл
        ОбластьЗаголовокПП1.Параметры.НаименованиеПриёмаПищи = ВыборкаМенюНаДень.ПриёмПищи;
        ВыводФорма.Вывести(ОбластьЗаголовокПП1);
        
        // Выборка всех блюд по данному меню
        ВыборкаСписокБлюдВМеню = ПолучитьСписокБлюдВМеню(ВыборкаМенюНаДень.Ссылка);
        
        
        Пока ВыборкаСписокБлюдВМеню.Следующий() Цикл
            // ДопПоля = 0 - простое меню, без цен и калорий
            Если ДопПоля = 0 Тогда
                Если Отчет.ПечататьНР тогда
                    ОбластьБлюдо.Параметры.НаименованиеБлюда = ВыборкаСписокБлюдВМеню.Наименование + " (" + ВыборкаСписокБлюдВМеню.КодРецептуры + ")";
                Иначе
                    ОбластьБлюдо.Параметры.НаименованиеБлюда = ВыборкаСписокБлюдВМеню.Наименование;
                КонецЕсли;
                ОбластьБлюдо.Параметры.Выход = СформироватьВыходБлюда(ВыборкаСписокБлюдВМеню.Выход1, ВыборкаСписокБлюдВМеню.Выход2, ВыборкаСписокБлюдВМеню.Выход3);
                ОбластьБлюдо.Параметры.ЕД = ВыборкаСписокБлюдВМеню.ЕдИзм;
                ВыводФорма.Вывести(ОбластьБлюдо);
            КонецЕсли;
            
            // ДопПоля = 1 - меню с ценой
            Если ДопПоля = 1 Тогда
                ОбластьБлюдоСЦеной.Параметры.НаименованиеБлюда = ВыборкаСписокБлюдВМеню.Наименование;
                ОбластьБлюдоСЦеной.Параметры.Выход = СформироватьВыходБлюда(ВыборкаСписокБлюдВМеню.Выход1, ВыборкаСписокБлюдВМеню.Выход2, ВыборкаСписокБлюдВМеню.Выход3);
                ОбластьБлюдоСЦеной.Параметры.ЕД = ВыборкаСписокБлюдВМеню.ЕдИзм;
                Цена = УправлениеМеню.ПолучитьЦенуБлюда(ВыборкаМенюНаДень.Ссылка, ВыборкаСписокБлюдВМеню.ИдентификаторБлюда, Отчет.БазаРасчётаЦен);
                ОбластьБлюдоСЦеной.Параметры.Цена = Формат(Цена, "ЧДЦ=2");
                ОбластьБлюдоСЦеной.Параметры.Вал = Константы.БазоваяВалютаСистемы.Получить();
                ВыводФорма.Вывести(ОбластьБлюдоСЦеной);
                Если Цена = NULL тогда
                    Сообщить("Цена блюда " + ВыборкаСписокБлюдВМеню.Наименование + " не определена");
                Иначе
                    ОбщаяЦена = ОбщаяЦена + Цена;
                КонецЕсли;

                
            КонецЕсли;

            // ДопПоля = 2 - меню с калориями
            Если ДопПоля = 2 Тогда
                ОбластьБлюдоСКалор.Параметры.НаименованиеБлюда = ВыборкаСписокБлюдВМеню.Наименование;
                ОбластьБлюдоСКалор.Параметры.Выход = СформироватьВыходБлюда(ВыборкаСписокБлюдВМеню.Выход1, ВыборкаСписокБлюдВМеню.Выход2, ВыборкаСписокБлюдВМеню.Выход3);
                ОбластьБлюдоСКалор.Параметры.ЕД = ВыборкаСписокБлюдВМеню.ЕдИзм;
                ОбластьБлюдоСКалор.Параметры.Калор = Формат(ВыборкаСписокБлюдВМеню.КалорийностьБлюда, "ЧДЦ=2");
                
                ВыводФорма.Вывести(ОбластьБлюдоСКалор);
                Если ВыборкаСписокБлюдВМеню.КалорийностьБлюда = NULL тогда
                    Сообщить("Калорийность блюда " + ВыборкаСписокБлюдВМеню.Наименование + " не определена");
                Иначе
                    ОбщаяКалорийность = ОбщаяКалорийность + Число(ВыборкаСписокБлюдВМеню.КалорийностьБлюда);
                КонецЕсли;
            КонецЕсли;
            
            
            
            
            // ДопПоля = 3 - вывод параметров БЖУК
            Если ДопПоля = 3 Тогда
                ОбластьБлюдоЭнц.Параметры.НаименованиеБлюда = ВыборкаСписокБлюдВМеню.Наименование;
                ОбластьБлюдоЭнц.Параметры.Выход = СформироватьВыходБлюда(ВыборкаСписокБлюдВМеню.Выход1, ВыборкаСписокБлюдВМеню.Выход2, ВыборкаСписокБлюдВМеню.Выход3);
                ОбластьБлюдоЭнц.Параметры.ЕД = ВыборкаСписокБлюдВМеню.ЕдИзм;
                ОбластьБлюдоЭнц.Параметры.Белки = Формат(ВыборкаСписокБлюдВМеню.Белки, "ЧДЦ=2");
                ОбластьБлюдоЭнц.Параметры.Жиры = Формат(ВыборкаСписокБлюдВМеню.Жиры, "ЧДЦ=2");
                ОбластьБлюдоЭнц.Параметры.Углеводы = Формат(ВыборкаСписокБлюдВМеню.Углеводы, "ЧДЦ=2");
                ОбластьБлюдоЭнц.Параметры.Калорийность = Формат(ВыборкаСписокБлюдВМеню.КалорийностьБлюда, "ЧДЦ=2");
                
                
                
                ВыводФорма.Вывести(ОбластьБлюдоЭнц);
                
                
                Если НЕ ВыборкаСписокБлюдВМеню.КалорийностьБлюда = NULL тогда
                    ОбщаяКалорийность = ОбщаяКалорийность + Число(ВыборкаСписокБлюдВМеню.КалорийностьБлюда);
                КонецЕсли;
                
                
                Если НЕ ВыборкаСписокБлюдВМеню.КалорийностьБлюда = NULL тогда
                    ВсегоБелки = ВсегоБелки + Число(ВыборкаСписокБлюдВМеню.Белки);
                КонецЕсли;
                
                
                Если НЕ ВыборкаСписокБлюдВМеню.КалорийностьБлюда = NULL тогда
                    ВсегоЖиры = ВсегоЖиры + Число(ВыборкаСписокБлюдВМеню.Жиры);
                КонецЕсли;
                
                
                Если НЕ ВыборкаСписокБлюдВМеню.КалорийностьБлюда = NULL тогда
                    ВсегоУглеводы = ВсегоУглеводы + Число(ВыборкаСписокБлюдВМеню.Углеводы);
                КонецЕсли;
                
                
                
                
            КонецЕсли;
            
            
            
            
            
            
        КонецЦикла;
    КонецЦикла;
    
    // Если меню с ценой - выводим общую цену по меню
    Если ДопПоля = 1 Тогда    
        ПодвалМенюСЦеной.Параметры.ЦенаВсего = Формат(ОбщаяЦена, "ЧДЦ=2");
        ПодвалМенюСЦеной.Параметры.Вал = Константы.БазоваяВалютаСистемы.Получить();
        ВыводФорма.Вывести(ПодвалМенюСЦеной);
    КонецЕсли;
    
    // Если меню с калориями - выводим общую калорийность
    Если ДопПоля = 2 Тогда    
        ПодвалМенюСКалор.Параметры.КалорВсего = Формат(ОбщаяКалорийность, "ЧДЦ=2");
        ВыводФорма.Вывести(ПодвалМенюСКалор);
    КонецЕсли;
    
    
    // БЖУК
    Если ДопПоля = 3 Тогда    
        ОбластьПодвалБЖУК.Параметры.Белки = Формат(ВсегоБелки, "ЧДЦ=2");
        ОбластьПодвалБЖУК.Параметры.Жиры = Формат(ВсегоЖиры, "ЧДЦ=2");
        ОбластьПодвалБЖУК.Параметры.Углеводы = Формат(ВсегоУглеводы, "ЧДЦ=2");
        ОбластьПодвалБЖУК.Параметры.Калорийность = Формат(ОбщаяКалорийность, "ЧДЦ=2");
        
        ВыводФорма.Вывести(ОбластьПодвалБЖУК);
    КонецЕсли;
    
    
    
    
    Если Отчет.ПечататьНР тогда
        ВыводФорма.Вывести(ОбластьСсылкаНаСборник);
    КонецЕсли;
    
    Подвал.Параметры.ОтветственноеЛицо1 = "Зав. производством";
    Подвал.Параметры.ОтветственноеЛицо2 = "Бухгалтер";
    Подвал.Параметры.ОтветственноеЛицо3 = "Врач";
    ВыводФорма.Вывести(Подвал);

    
    
    ВыводФорма.ТолькоПросмотр = Истина;
    
    
    Возврат ВыводФорма;


Что где я не правильно записал?

Сам Макет

 ! 

Правила: 8
 


Вот сам Макет


Сообщение отредактировал Vofka - 31.07.16, 19:03

korol1091 Подменю пользователя
сообщение 27.07.16, 9:07
Сообщение #2

Общительный
**
Группа: Пользователи
Сообщений: 49
Спасибо сказали: 9 раз
Рейтинг: 0

Запрос правильный, но вы выбираете данные не по группировкам, а детальные.

Возврат ЗапросМенюНаДень.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Vladal Подменю пользователя
сообщение 27.07.16, 9:14
Сообщение #3

Оратор
Иконка группы
Группа: Местный
Сообщений: 365
Из: Slovensko
Спасибо сказали: 78 раз
Рейтинг: 0

    ЗапросМенюНаДень.Текст = "ВЫБРАТЬ
                              |    Меню.Ссылка,
                             |    Меню.ПриёмПищи КАК ПриёмПищи,
                             |    Меню.КоличествоПитающихся
                             |ИЗ
                             |    Документ.Меню КАК Меню
                             |ГДЕ
                             |    Меню.ДатаМеню МЕЖДУ &НачалоПериода и &КонецПериода
                             |    И Меню.Подразделение = &ПараметрПодразделение
                             |    И Меню.ГруппаПитания = &ПараметрГруппаПитания
                             |    И Меню.ПометкаУдаления = ЛОЖЬ
                             |Итоги  по Меню.Дата";


Будет методически правильно добавить явно поле Меню.Дата, по которому есть итоги. Чтобы получилось вот так:

    ЗапросМенюНаДень.Текст = "ВЫБРАТЬ
    |    Меню.Ссылка как Ссылка,
    |    Меню.Дата как Дата,                                // <----- поле с датой задано явно
    |    Меню.ПриёмПищи КАК ПриёмПищи,
...


Если пока нет понимания, что сделать, создайте новый внешний отчет или обработку и с помощью "конструктора выходной формы" по этому запросу создать выходную форму.

Дополню еще:

Эти документы Меню делают ли какие движения? Например, в регистр оборотов или регистр сведений, записывая все меню в базу данных?
Если так, то лучше переделать запрос по этому регистру - будет работать значительно быстрее (хотя... смотря, какие объёмы).
Если нет - то надо добавить такой регистр и движения документов, для того же анализа и планирования.

Я правильно понимаю, что это самописная конфигурация с одним-двумя-тремя документами и несколькими отчетами?

burza Подменю пользователя
сообщение 27.07.16, 9:38
Сообщение #4

Оратор
*****
Группа: Пользователи
Сообщений: 312
Спасибо сказали: 1 раз
Рейтинг: 1

Vladal @ Сегодня, 10:14 *,
Сделал так
ЗапросМенюНаДень.Текст = "ВЫБРАТЬ
                              |    Меню.Ссылка,
                             |    Меню.ПриёмПищи КАК ПриёмПищи,
                             |    Меню.Дата как Дата,
                             |    Меню.КоличествоПитающихся
                             |ИЗ
                             |    Документ.Меню КАК Меню
                             |ГДЕ
                             |    Меню.ДатаМеню МЕЖДУ &НачалоПериода и &КонецПериода
                             |    И Меню.Подразделение = &ПараметрПодразделение
                             |    И Меню.ГруппаПитания = &ПараметрГруппаПитания
                             |    И Меню.ПометкаУдаления = ЛОЖЬ
                             |Итоги  по Меню.Дата";


и ничего. после ужина за 26 не идет графа 27 число.

движений никаких нет. да все самописное.

korol1091 @ Сегодня, 10:07 *,

По вашему варианту вообще ничего нет. пустота.

Vladal Подменю пользователя
сообщение 27.07.16, 10:32
Сообщение #5

Оратор
Иконка группы
Группа: Местный
Сообщений: 365
Из: Slovensko
Спасибо сказали: 78 раз
Рейтинг: 0

Цитата(burza @ 27.07.16, 10:38) *
и ничего. после ужина за 26 не идет графа 27 число.

Наверно, 27 число представлено как дата с временем '2016-07-27 00:00:00', а запрос смотрит, что нет документом меньше времени (указано в МЕЖДУ).

Хотя... нет, в конце дня:
Цитата
ЗапросМенюНаДень.УстановитьПараметр("КонецПериода", КонецДня(Отчет.КонецПериода));


А в документах за 27 число нет пометки на удаление? или они не проведены?
Судя по условиям отбора в запросе - Меню.ПометкаУдаления = ЛОЖЬ, есть такие документы, удовлетворяющие указанным подразделению, группе питания?

burza Подменю пользователя
сообщение 27.07.16, 10:36
Сообщение #6

Оратор
*****
Группа: Пользователи
Сообщений: 312
Спасибо сказали: 1 раз
Рейтинг: 1

Vladal @ Сегодня, 11:32 *,
Смотрите у меня стоит период. с 26 по 27. меню он считает за 27. видно на скрине как идет завтрак после ужина. это уже 27. Мне нужно имено чтобы после ужина было написано Меню на 27 Июля 2016г. как вначале с 26 июля.

sava1 Подменю пользователя
сообщение 27.07.16, 10:37
Сообщение #7

Живет на форуме
Иконка группы
Группа: Местный
Сообщений: 2688
Из: Проскуров
Спасибо сказали: 681 раз
Рейтинг: 659.7

Цитата(burza @ 27.07.16, 10:38) *
|Итоги по Меню.Дата";

вооще ничего не сгруппирует - НачалоПериода(Меню.Дата,День)

Vladal Подменю пользователя
сообщение 27.07.16, 10:40
Сообщение #8

Оратор
Иконка группы
Группа: Местный
Сообщений: 365
Из: Slovensko
Спасибо сказали: 78 раз
Рейтинг: 0

Советую обзавестись инструментами для более удобной разработки - например, консолью запросов или вытащить из типовой "Универсальный отчет" и/или "консоль отчетов".

Что еще я усмотрел: в отборах "Меню.ДатаМеню МЕЖДУ ..." что означает? Это реквизит шапки документа, притом дата меню может отличаться от даты документа и тут появляется несоответствие:
- в запросе выборка по Меню.ДатаМеню, а итоги по Меню.Дата.
- надо и итоги тоже привести к одному виду: ИТОГИ ПО Меню.ДатаМеню.

Примерно так:

ВЫБРАТЬ
    Меню.Ссылка,
    Меню.ПриёмПищи КАК ПриёмПищи,
    Меню.Дата как Дата,           // это дата документа
    Меню.ДатаМеню как ДатаМеню,   // это "дата меню", по которой отбор и сортировка
    Меню.КоличествоПитающихся КАК КоличествоПитающихся
ИЗ
    Документ.Меню КАК Меню
ГДЕ
    Меню.ДатаМеню МЕЖДУ &НачалоПериода и &КонецПериода
    И Меню.Подразделение = &ПараметрПодразделение
    И Меню.ГруппаПитания = &ПараметрГруппаПитания
    И НЕ Меню.ПометкаУдаления
ИТОГИ ПО
    Меню.ДатаМеню

burza Подменю пользователя
сообщение 27.07.16, 10:48
Сообщение #9

Оратор
*****
Группа: Пользователи
Сообщений: 312
Спасибо сказали: 1 раз
Рейтинг: 1

Vladal @ Сегодня, 11:40 *,
Итоги поменял ничего не изменилось. Как я понимаю мне нужно в макете еще дописать строку чтобы там выводилась дата за каждое число.
дата документа и дата меню могут быть разные, меню можно делать наперед.

Vladal Подменю пользователя
сообщение 27.07.16, 11:00
Сообщение #10

Оратор
Иконка группы
Группа: Местный
Сообщений: 365
Из: Slovensko
Спасибо сказали: 78 раз
Рейтинг: 0

упс... не смог отредактировать ответ.

Если реквизит ДатаМеню не содержит времени, то запрос отраотает и так.
Но будет лучше, если итоги будут выглядеть так:

ИТОГИ ПО
    НАЧАЛОПЕРИОДА(Меню.ДатаМеню, ДЕНЬ)


Цитата(burza @ 27.07.16, 11:48) *
Итоги поменял ничего не изменилось. Как я понимаю мне нужно в макете еще дописать строку чтобы там выводилась дата за каждое число.
дата документа и дата меню могут быть разные, меню можно делать наперед.
Да, по идее, надо в обходе выборки запроса (группировки по дате) и выводить дату.
Таким образом и получится - данные сгруппированы и отсортированы по дате, мы циклически обходим каждую дату и на эту дату получили новое меню, которое и вывели.
Еще можно самим запросом по связанным данным вытягивать калорийность и энергетическую ценность продуктов - то, что делается "вручную" в цикле обхода результата запроса.

burza Подменю пользователя
сообщение 27.07.16, 11:00
Сообщение #11

Оратор
*****
Группа: Пользователи
Сообщений: 312
Спасибо сказали: 1 раз
Рейтинг: 1

Vladal @ Сегодня, 11:48 *,
не работает.ошибки. мне кажется что надо не тут копать а тут
   Пока ВыборкаМенюНаДень.Следующий() Цикл
        ОбластьЗаголовокПП1.Параметры.НаименованиеПриёмаПищи = ВыборкаМенюНаДень.ПриёмПищи;
        ВыводФорма.Вывести(ОбластьЗаголовокПП1);


и макет.

Vladal Подменю пользователя
сообщение 27.07.16, 11:10
Сообщение #12

Оратор
Иконка группы
Группа: Местный
Сообщений: 365
Из: Slovensko
Спасибо сказали: 78 раз
Рейтинг: 0

Могу в качестве "гуманитарной помощи начинающим" вечерком глянуть эту базу и доделать эту обработку.

Цитата(burza @ 26.07.16, 16:53) *
    Пока ВыборкаМенюНаДень.Следующий() Цикл
        ОбластьЗаголовокПП1.Параметры.НаименованиеПриёмаПищи = ВыборкаМенюНаДень.ПриёмПищи;
        ВыводФорма.Вывести(ОбластьЗаголовокПП1);

Обход результата запроса какой? С группировками? Или прямолинейный?
Мы ведь сделали "ИТОГ ПО" дате меню? Сделали.

Поиграйтесь с новым внешним отчетом, там конструктором добавьте этот запрос, выберите вывод в таблицу, на форму поместите поля ввода для отборов (даты начала и конца, подразделение, группы питания) и посмотрите, что выведет конструктор. Может и картинка не такая красивая будет, но сам принцип должен быть показан.

korol1091 Подменю пользователя
сообщение 27.07.16, 12:02
Сообщение #13

Общительный
**
Группа: Пользователи
Сообщений: 49
Спасибо сказали: 9 раз
Рейтинг: 0

Я бы для надежности, еще прямо указал бы, по чему мы считаем итоги, например:

ИТОГИ Сумма(Меню.КоличествоПитающихся) ПО
    Меню.ДатаМеню


или что там автору считать нужно.

burza Подменю пользователя
сообщение 27.07.16, 12:31
Сообщение #14

Оратор
*****
Группа: Пользователи
Сообщений: 312
Спасибо сказали: 1 раз
Рейтинг: 1

Vladal @ Сегодня, 12:10 *,

Буду очень благодарен) почта burzabu@gmail.com

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 16.04.24, 15:30
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!