Select ....... SUM(CASE WHEN ДанныеПроходныхКОДОС.Событие = "Вход" ИЛИ ДанныеПроходныхКОДОС.Событие = "Въезд") THEN -Период ELSE Период END) as OtrabVremya
В типовых есть критерий отбора ДокументыПоКонтрагенту, так что не надо "придумывать велосипед". В самописке я бы использовал РС - проще искать и писать.
КвоЗаписей = Неопределено; Пока РезультатФункции.State=0 Цикл РезультатФункции = РезультатФункции.NextRecordset(Записей); // а здесь уже перебираем записи рекордсета
Пока ВыборкаМенюНаДень.Следующий() Цикл ОбластьЗаголовокПП1.Параметры.НаименованиеПриёмаПищи = ВыборкаМенюНаДень.ПриёмПищи; ВыводФорма.Вывести(ОбластьЗаголовокПП1);
Пишем
Пока ВыборкаМенюНаДень.Следующий() Цикл ОбластьЗаголовокПП1.Параметры.ДатаПриёмаПищи = ВыборкаМенюНаДень.Дата; ВыводФорма.Вывести(ОбластьЗаголовокПП0); ВыборкаМенюНаДень2 = ВыборкаМенюНаДень.Выбрать() Пока ВыборкаМенюНаДень2.Следующий() Цикл ОбластьЗаголовокПП1.Параметры.НаименованиеПриёмаПищи = ВыборкаМенюНаДень.ПриёмПищи; ВыводФорма.Вывести(ОбластьЗаголовокПП1);
В конце добавляем еще один КонецЦикла На макете добавляем еще одну строку с параметром ДатаПриёмаПищи (аналогично Как "НаименованиеПриёмаПищи")
рФорма=СоздатьОбъект("РасширениеФормы"); Для н=0 По рФорма.КоличествоАтрибутов()-1 Цикл Атрибут=рФорма.ПолучитьАтрибут(н); Тип=Атрибут.Тип; Если Тип=3 Тогда Сообщить("Поймали кнопку "); Сообщить(Атрибут.Идентификатор); КонецЕсли; КонецЦикла;
Кстати, если все упирается только в раскладку, есть V8Formatter - замена основных комбинаций + несколько шаблонов. работает везде (наверно через СендКей).
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!