Есть справочник Статьирасходов.
Есть форма отчета ОстатокДенежных средств по смете
В форме элемента, которая заполняет справочник есть Поле ввода куда пользователь вносит сумму.
Нужно чтобы в отчете выводилась данная сумма. Имеется код с помощью которого формируется отчет, в отчете сидят все данные кроме суммы. Сумма в форму была добавлена позже. Помогите пожалуйста добавить в отчет эту сумму.
Процедура ПриОткрытии()
Год = Год(ТекущаяДата());
Организация = глЗначениеПеременной("ОсновнаяОрганизация");
НачПериода = НачалоГода(ТекущаяДата());
КонПериода = ТекущаяДата();
КонецПроцедуры
Процедура ДействияФормыПечать(Кнопка)
ТабДок = ЭлементыФормы.ТабличногоДокумента;
ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
ТабДок.Напечатать(Ложь);
КонецПроцедуры
Процедура ДействияФормыОтчетСформировать(Кнопка)
ТабДок = ЭлементыФормы.ПолеТабличногоДокумента;
Отчет(ТабДок, Перечисления.ИспользованиеЭКР.Да, Год(НачПериода), КонецДня(КонПериода), НачалоДня(НачПериода), ПодразделениеОрганизации, Смета);
ТабДок.ОриентацияСтраницы = ОриентацияСтраницы.Ландшафт;
ТабДок.ПовторятьПриПечатиСтроки = ТабДок.Область(1,,8,);
ТабДок.НижнийКолонтитул.Выводить = Истина;
ТабДок.НижнийКолонтитул.ТекстСправа = "[&НомерСтраницы]";
КонецПроцедуры
Процедура Отчет(ТабДок, Да, Год, КонПериода, НачПериода, Организация, Смета) Экспорт
Макет = ЭтотОбъект.ПолучитьМакет("Отчет");
Если ИндивидуальнаяНастройка Тогда
РС = РегистрыСведений.ИндивидуальнаяНастройкаПодразделений.СоздатьНаборЗаписей();
РС.Отбор.Пользователь.Установить(ПараметрыСеанса.ТекущийПользователь);
РС.Прочитать();
ПодразделениеОрганизацииОтбор = Новый СписокЗначений;
Для Каждого ТекСтрока Из РС Цикл
ПодразделениеОрганизацииОтбор.Добавить(ТекСтрока.ПодразделениеОрганизации);
КонецЦикла;
Иначе
ПодразделениеОрганизацииОтбор = ПодразделениеОрганизации;
КонецЕсли;
Условие = ?(ЗначениеЗаполнено(ПодразделениеОрганизацииОтбор),"ПодразделениеОрганизации В Иерархии(&ПодразделениеОрганизации) ",?(ЗначениеЗаполнено(Смета),"Смета В Иерархии(&Смета) ","Истина"));
УсловиеОстатки = ?(ЗначениеЗаполнено(ПодразделениеОрганизацииОтбор),"ПодразделениеОрганизации В Иерархии(&ПодразделениеОрганизации) ",?(ЗначениеЗаполнено(Смета),"Смета В Иерархии(&Смета) ","Истина"));
УсловиеДвиженияПоСмете = ?(ЗначениеЗаполнено(ПодразделениеОрганизацииОтбор),"ДвиженияПоСметам.ПодразделениеОрганизации В Иерархии(&ПодразделениеОрганизации) ",?(ЗначениеЗаполнено(Смета),"ДвиженияПоСметам.Смета В Иерархии(&Смета) ","Истина"));
УсловиеПоСмете = ?(ЗначениеЗаполнено(Смета),"Смета В Иерархии(&Смета)","Истина");
УсловиеСуммыПоСтатьям = ?(ЗначениеЗаполнено(ПодразделениеОрганизацииОтбор),"СуммыПоСтатьям.ПодразделениеОрганизации В Иерархии(&ПодразделениеОрганизации) ",?(ЗначениеЗаполнено(Смета),"СуммыПоСтатьям.Смета В Иерархии(&Смета) ","Истина"));
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| вложенныйзапрос.суммамакс КАК Суммамакс,
| вложенныйзапрос.Статья КАК XərclərinAdı,
| СУММА(вложенныйзапрос.ГодоваяСмета) КАК İllikSmetaXərci,
| СУММА(вложенныйзапрос.СуммаОстаток) КАК DövrƏvvəlinəQalıq,
| СУММА(вложенныйзапрос.СуммаПрихода) КАК AçılanKredit,
| СУММА(вложенныйзапрос.СуммаРасхода) КАК FaktikiXərc,
| СУММА(вложенныйзапрос.СуммаПрихода + вложенныйзапрос.СуммаОстаток - вложенныйзапрос.СуммаРасхода) КАК FaktikiBankQalığı,
| СУММА(вложенныйзапрос.ГодоваяСмета - вложенныйзапрос.СуммаПрихода - вложенныйзапрос.СуммаОстаток) КАК AçılmamışKredit
|ИЗ
| (ВЫБРАТЬ
| Суммамакс.Суммамакс КАК Суммамакс,
| Статьи.Статья КАК Статья,
| СУММА(0) КАК СуммаПрихода,
| СУММА(0) КАК СуммаРасхода,
| СУММА(ЕСТЬNULL(СуммыПоСтатьям.ГодоваяСмета, 0)) КАК ГодоваяСмета,
| СУММА(0) КАК СуммаОстаток
| ИЗ
| (ВЫБРАТЬ
| СтатьиРасходов.Ссылка КАК Статья
| ИЗ
| Справочник.СтатьиРасходов КАК СтатьиРасходов
| ГДЕ
| СтатьиРасходов.ПометкаУдаления = ЛОЖЬ) КАК Статьи
|
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.СуммыПоСтатьям КАК СуммыПоСтатьям
| ПО Статьи.Статья = СуммыПоСтатьям.СтатьяРасхода
| ГДЕ
| СуммыПоСтатьям.Год = &Год
| И &УсловиеСуммыПоСтатьям
|
| СГРУППИРОВАТЬ ПО
| Статьи.Статья
|
| ОБЪЕДИНИТЬ ВСЕ
|
| ВЫБРАТЬ
| ДвиженияПоСметам.СтатьяРасхода,
| ДвиженияПоСметам.Сумма,
| 0,
| 0,
| 0
| ИЗ
| РегистрНакопления.ДвиженияПоСметам КАК ДвиженияПоСметам
| ГДЕ
| &УсловиеДвиженияПоСмете
| И ДвиженияПоСметам.Период МЕЖДУ &НачПериода И &КонПериода
| И ДвиженияПоСметам.Регистратор ССЫЛКА Документ.Сифариш
|
| ОБЪЕДИНИТЬ ВСЕ
|
| ВЫБРАТЬ
| ХозрасчетныйОбороты.Субконто2,
| 0,
| -ЕСТЬNULL(ХозрасчетныйОбороты.СуммаОборот, 0),
| 0,
| 0
| ИЗ
| РегистрБухгалтерии.Хозрасчетный.Обороты(
| &НачПериода,
| &КонПериода,
| ,
| Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетныеСчета))
| ИЛИ Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасходыПоКапиталоВложениям)),
| ,
| ПодразделениеОрганизации В ИЕРАРХИИ (&ПодразделениеОрганизации),
| (НЕ КорСчет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.Казначейство_)))
| И (НЕ КорСчет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.КазначействоВнебюджетный))),
| ) КАК ХозрасчетныйОбороты
|
| ОБЪЕДИНИТЬ ВСЕ
|
| ВЫБРАТЬ
| ХозрасчетныйОстатки.Субконто2,
| 0,
| 0,
| 0,
| ХозрасчетныйОстатки.СуммаОстаток
| ИЗ
| РегистрБухгалтерии.Хозрасчетный.Остатки(
| &НачПериода,
| Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетныеСчета))
| ИЛИ Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасходыПоКапиталоВложениям)),
| ,
| ПодразделениеОрганизации В ИЕРАРХИИ (&ПодразделениеОрганизации)) КАК ХозрасчетныйОстатки) КАК вложенныйзапрос
|ГДЕ
| (НЕ вложенныйзапрос.СуммаПрихода + вложенныйзапрос.СуммаРасхода + вложенныйзапрос.ГодоваяСмета + вложенныйзапрос.СуммаОстаток = 0)
|
|СГРУППИРОВАТЬ ПО
| вложенныйзапрос.Статья
|
|УПОРЯДОЧИТЬ ПО
| вложенныйзапрос.Статья.Код
|ИТОГИ ПО
| ОБЩИЕ";
Запрос.Текст = СтрЗаменить(Запрос.Текст,"&УсловиеПоСмете",УсловиеПоСмете);
Запрос.Текст = СтрЗаменить(Запрос.Текст,"&УсловиеДвиженияПоСмете",УсловиеДвиженияПоСмете);
Запрос.Текст = СтрЗаменить(Запрос.Текст,"&УсловиеОстатки",УсловиеОстатки);
Запрос.Текст = СтрЗаменить(Запрос.Текст,"&УсловиеСуммыПоСтатьям",УсловиеСуммыПоСтатьям);
Запрос.Текст = СтрЗаменить(Запрос.Текст,"&Условие",Условие);
Запрос.УстановитьПараметр("Год", Год);
Запрос.УстановитьПараметр("Да", Да);
Запрос.УстановитьПараметр("КонПериода", КонецДня(КонПериода));
Запрос.УстановитьПараметр("НачПериода", НачалоДня(НачПериода));
Запрос.УстановитьПараметр("НачГода", НачПериода);//НачалоГода(НачПериода));
Запрос.УстановитьПараметр("ПодразделениеОрганизации", ПодразделениеОрганизацииОтбор);
Запрос.УстановитьПараметр("Смета", Смета);
Результат = Запрос.Выполнить();
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьСтрока = Макет.ПолучитьОбласть("ОблСтрока");
ОбластьИтог = Макет.ПолучитьОбласть("ОблИтог");
ТабДок.Очистить();
ОбластьШапка.Параметры.ПодразделениеОрганизации = ?(ИндивидуальнаяНастройка Или Не (ЗначениеЗаполнено(ПодразделениеОрганизации) И ЗначениеЗаполнено(Смета)),"Təşkilatlar ",Смета.Наименование);
ОбластьШапка.Параметры.Период = Строка(Формат(НачПериода,"ДФ=dd.MM.yyyy")) + " - " + Строка(Формат(КонПериода,"ДФ=dd.MM.yyyy"));
ОбластьШапка.Параметры.Смета = Смета;
ТабДок.Вывести(ОбластьШапка);
ТабДок.НачатьАвтогруппировкуСтрок();
ВыборкаДетали = Результат.Выбрать();
ПерваяСтрока = Истина;
Пока ВыборкаДетали.Следующий() Цикл
Если ПерваяСтрока = Истина Тогда
ОбластьИтог.Параметры.Заполнить(ВыборкаДетали);
ПерваяСтрока = Ложь;
Продолжить;
КонецЕсли;
ОбластьСтрока.Параметры.Заполнить(ВыборкаДетали);
ОбластьСтрока.Параметры.НаименованиеПолное = Справочники.СтатьиРасходов.НайтиПоКоду(ВыборкаДетали.XərclərinAdı).НаименованиеПолное;
ТабДок.Вывести(ОбластьСтрока, ВыборкаДетали.Уровень());
КонецЦикла;
ТабДок.Вывести(ОбластьИтог);
ТабДок.ЗакончитьАвтогруппировкуСтрок();
КонецПроцедуры
Процедура ПодразделениеОрганизацииПриИзменении(Элемент)
Смета = ПодразделениеОрганизации.Смета;
КонецПроцедуры
Процедура ВыбратьПериодНажатие(Элемент)
НастройкаПериода = Новый НастройкаПериода;
НастройкаПериода.УстановитьПериод(НачПериода,КонПериода,);
НастройкаПериода.ВариантНастройки = ВариантНастройкиПериода.Период;
Если НастройкаПериода.Редактировать() Тогда
НачПериода = НастройкаПериода.ПолучитьДатуНачала();
КонПериода = НастройкаПериода.ПолучитьДатуОкончания();
КонецЕсли;
КонецПроцедуры
guru
сб, 01/09/2012 - 22:51
Можете выложить полный список реквизитов справочника СтатьиРасходов?
Infa
пн, 03/09/2012 - 09:33
НаименованиеПолное ,НомерСтрокиВОтчете, (Суммамакс я создала новый реквизит, который я хочу передать в отчет как Сумма)
guru
пн, 03/09/2012 - 11:47
Попробуйте заменить в запросе кусок:
на
Infa
пн, 03/09/2012 - 15:55
Спасибо ВАМ огромное. Работает. Скажите а можно ли в данном отчете некоторые названия статей выводить Жирным шрифтом? Большое спасибо!
guru
вт, 04/09/2012 - 17:32
Infa
ср, 05/09/2012 - 15:31
СПС, но не получается.СтатьиРасходов пишет что не опознанная переменная.
guru
ср, 05/09/2012 - 20:43
Infa
чт, 06/09/2012 - 14:35
guru
пт, 14/09/2012 - 12:12
ОЛЕГ
пн, 12/11/2012 - 00:12
guru
вт, 13/11/2012 - 17:24