helpf.pro
Регистрация

v8: Выборка по Д62,67,51 К51

larin_va
21.10.2012 12:28Прочитано: 2573
Всем привет!
Имеется запрос который делает выборку по Д62,67,51 К51 затем заполняет таблицу у меня не получается вделать Итоговые сумма по счетам. Подскажите что не так.
Код 1C v 8.х
  Процедура КнопкаВыполнитьНажатие(Кнопка)
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ХозрасчетныйДвиженияССубконто.Период,
| ХозрасчетныйДвиженияССубконто.СчетДт КАК СчетДт,
| ХозрасчетныйДвиженияССубконто.СчетКт КАК СчетКт,
| ХозрасчетныйДвиженияССубконто.СубконтоДт1,
| ХозрасчетныйДвиженияССубконто.СубконтоКт1,
| СУММА(ХозрасчетныйДвиженияССубконто.Сумма) КАК Сумма
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ДвиженияССубконто(
| &НачПериода,
| &КонПериода,
| СчетКт В ИЕРАРХИИ (&СчетКт)
| И СчетДт В ИЕРАРХИИ (&СчетДт)
| ИЛИ СчетДт В ИЕРАРХИИ (&СчетДт67),
| ,
| ) КАК ХозрасчетныйДвиженияССубконто
|
|СГРУППИРОВАТЬ ПО
| ХозрасчетныйДвиженияССубконто.Период,
| ХозрасчетныйДвиженияССубконто.СчетДт,
| ХозрасчетныйДвиженияССубконто.СчетКт,
| ХозрасчетныйДвиженияССубконто.СубконтоДт1,
| ХозрасчетныйДвиженияССубконто.СубконтоКт1
|ИТОГИ
| СУММА(Сумма)
|ПО
| СчетКт,
| СчетДт";

Запрос.УстановитьПараметр("НачПериода", НачПериода);
Запрос.УстановитьПараметр("КонПериода", КонецДня(КонПериода));
Запрос.УстановитьПараметр("СчетКт", ПланыСчетов.Хозрасчетный.РасчетныеСчета);
Запрос.УстановитьПараметр("СчетДт", ПланыСчетов.Хозрасчетный.РасчетыСПокупателямиИЗаказчиками);
Запрос.УстановитьПараметр("СчетДт67", ПланыСчетов.Хозрасчетный.РасчетыПоДолгосрочнымКредитамИЗаймам);
Запрос.УстановитьПараметр("Счет51", ПланыСчетов.Хозрасчетный.РасчетныеСчета);

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

ТабДок = ЭлементыФормы.ПолеТабличногоДокумента1;
ТабДок.Очистить();
Макет = ПолучитьМакет("Макет");
ОбластьШапка = Макет.ПолучитьОбласть("Шапка");
ОбластьШапка.Параметры.Текст1 = "Выручка на " + Формат(КонПериода, "ДФ=dd.MM.yy");
ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ОбластьИтого = Макет.ПолучитьОбласть("Итого");
ОбластьСуммаДепозит = Макет.ПолучитьОбласть("СуммаДепозит");
ОбластьСуммаИтого = Макет.ПолучитьОбласть("СуммаИтого");

ТабДок.Вывести(ОбластьШапка);

ДЛя Каждого Стр Из РезультатЗапроса Цикл
СчетКт = Стр.СчетКт;
СчетДт = Стр.СчетДт;
СубконтоДт1 = Стр.СубконтоДт1;
Итого = 0;
СчетСумма = Стр.Сумма;


Если СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("67.77")
ИЛИ СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("67.23") Тогда
ОбластьСуммаДепозит.Параметры.Возврат = СчетСумма;
ОбластьСуммаДепозит.Параметры.Счет = СубконтоДт1;
ТабДок.Вывести(ОбластьСуммаДепозит);
КонецЕсли;
КонецЦикла;

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

КонецПроцедуры


Подскажите как добиться чтобы в поле
Код 1C v 8.х
 ОбластьСуммаИтого.Параметры.СуммаИтого = Итого;   
Была СУММА ИТОГОвая
Yandex
Возможно, вас также заинтересует
Реклама на портале
E_Migachev
22.10.2012 02:43Ответ № 1
Код 1C v 8.х
  Итого =0;
ДЛя Каждого Стр Из РезультатЗапроса Цикл
СчетКт = Стр.СчетКт;
СчетДт = Стр.СчетДт;
СубконтоДт1 = Стр.СубконтоДт1;
Итого = 0;
СчетСумма = Стр.Сумма;
// Расчет итого
Итого = Итого+СчетСумма;

Если СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("67.77")
ИЛИ СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("67.23") Тогда
ОбластьСуммаДепозит.Параметры.Возврат = СчетСумма;
ОбластьСуммаДепозит.Параметры.Счет = СубконтоДт1;
ТабДок.Вывести(ОбластьСуммаДепозит);
КонецЕсли;
КонецЦикла;

ОбластьСуммаИтого.Параметры.СуммаИтого = Итого;
Подсказка: Для редактирования своего ответа щелкните по значку (справа)
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.