Упорядочить итоги по дням.

1. Glikeria 18.08.10 10:00 Сейчас в теме
Здравствуйте!Подскажите,пожалуйста,как в следующем запросе упорядочить итоги по дням.Просто при выводе результатов в таблицу,они идут вразнобой.Спасибо.
// подготовка и выполнение запроса
	Запрос = Новый Запрос("ВЫБРАТЬ РАЗРЕШЕННЫЕ
	                      |	ХозрасчетныйОстаткиИОбороты.Субконто1 КАК БанковскийСчет,
	                      |	ХозрасчетныйОстаткиИОбороты.Регистратор КАК Регистратор,
	                      |	ХозрасчетныйОстаткиИОбороты.СуммаОборотДт,
	                      |	ХозрасчетныйОстаткиИОбороты.СуммаОборотКт,
	                      |	ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт,
	                      |	ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт,
	                      |	ХозрасчетныйОстаткиИОбороты.Регистратор.Номер КАК НомерПЛ,
	                      |	ХозрасчетныйОстаткиИОбороты.ВалютнаяСуммаНачальныйОстатокДт,
	                      |	ХозрасчетныйОстаткиИОбороты.ВалютнаяСуммаКонечныйОстатокДт,
	                      |	ХозрасчетныйОстаткиИОбороты.ВалютнаяСуммаОборотДт,
	                      |	ХозрасчетныйОстаткиИОбороты.ВалютнаяСуммаОборотКт,
	                      |	НАЧАЛОПЕРИОДА(ХозрасчетныйОстаткиИОбороты.Период, ДЕНЬ) КАК День,
	                      |	ХозрасчетныйОстаткиИОбороты.Субконто1.ВалютаДенежныхСредств КАК Валюта
	                      |ИЗ
	                      |	РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(
	                      |			&ДатаНачала,
	                      |			&ДатаОкончания,
	                      |			Запись,
	                      |			,
	                      |			Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетныеСчета))
	                      |				ИЛИ Счет В ИЕРАРХИИ (ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.ВалютныеСчета)),
	                      |			,
	                      |			Субконто1 = &БанковскийСчет
	                      |				ИЛИ (НЕ &ОтборПоБанковскимСчетам)) КАК ХозрасчетныйОстаткиИОбороты
	                      |
	                      |УПОРЯДОЧИТЬ ПО
	                      |	Регистратор
						  | День
			
	                      |ИТОГИ ПО
	                      |	День,
	                      |	БанковскийСчет");
	Запрос.УстановитьПараметр("ДатаНачала", ДатаНачала);
	Запрос.УстановитьПараметр("ДатаОкончания", КонецДня(ДатаОкончания));
	Запрос.УстановитьПараметр("БанковскийСчет", БанковскийСчет);
	Запрос.УстановитьПараметр("ОтборПоБанковскимСчетам", ЗначениеЗаполнено(БанковскийСчет));
	
	Результат = Запрос.Выполнить();
	
	// подготовка табличного документа
	ЭлементыФормы.ПолеТабличногоДокумента1.Очистить();
	
	Макет = ПолучитьМакет("Макет");
	
	ВыборкаПоДням = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "День");
	Пока ВыборкаПоДням.Следующий() Цикл
		ВыборкаПоБС = ВыборкапоДням.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам, "БанковскийСчет");
		Пока ВыборкаПоБС.Следующий() Цикл
			Область = Макет.ПолучитьОбласть("Шапка");
			Область.Параметры.Заполнить(ВыборкаПоБС);
			Если ВыборкаПоБС.Валюта <> Рубли Тогда
				Область.Параметры.ОстатокНач = ВыборкаПоБС.ВалютнаяСуммаНачальныйОстатокДт;
			Иначе
				Область.Параметры.ОстатокНач = ВыборкаПоБС.СуммаНачальныйОстатокДт;
			КонецЕсли;
			ЭлементыФормы.ПолеТабличногоДокумента1.Вывести(Область);
			Выборка = ВыборкаПоБС.Выбрать();
			Пока Выборка.Следующий() Цикл
				Область = Макет.ПолучитьОбласть("Строка");
				Для Каждого Параметр Из Область.Параметры Цикл
					Параметр = "";
				КонецЦикла;
				Область.Параметры.Заполнить(Выборка);
				Если ВыборкаПоБС.Валюта <> Рубли Тогда
					Если Выборка.ВалютнаяСуммаОборотДт > 0 Тогда
						Область.Параметры.СуммаОборотДт = Выборка.ВалютнаяСуммаОборотДт;
					КонецЕсли;
					Если Выборка.ВалютнаяСуммаОборотКт > 0 Тогда
						Область.Параметры.СуммаОборотКт = Выборка.ВалютнаяСуммаОборотКт;
					КонецЕсли;
				КонецЕсли;
				
				Если ТипЗнч(Выборка.Регистратор) = Тип("ДокументСсылка.ПриходныйКассовыйОрдер") Тогда
					Область.Параметры.КонтрагентКт = Выборка.Регистратор.ПринятоОт;
					Область.Параметры.НазначениеПлатежаКт = Выборка.Регистратор.Основание;
				ИначеЕсли ТипЗнч(Выборка.Регистратор) = Тип("ДокументСсылка.РасходныйКассовыйОрдер") Тогда
					Область.Параметры.КонтрагентДт = Выборка.Регистратор.Выдать;
					Область.Параметры.НазначениеПлатежаДт = Выборка.Регистратор.Основание;
				ИначеЕсли ТипЗнч(Выборка.Регистратор) = Тип("ДокументСсылка.ПлатежноеПоручениеВходящее")
					ИЛИ ТипЗнч(Выборка.Регистратор) = Тип("ДокументСсылка.ПлатежноеТребованиеВыставленное")
					ИЛИ ТипЗнч(Выборка.Регистратор) = Тип("ДокументСсылка.ПлатежныйОрдерПоступлениеДенежныхСредств") Тогда
					Область.Параметры.КонтрагентДт = Выборка.Регистратор.Контрагент;
					Область.Параметры.НазначениеПлатежаДт = Выборка.Регистратор.НазначениеПлатежа;
				ИначеЕсли ТипЗнч(Выборка.Регистратор) = Тип("ДокументСсылка.ПлатежноеПоручениеИсходящее")
					ИЛИ ТипЗнч(Выборка.Регистратор) = Тип("ДокументСсылка.ПлатежныйОрдерСписаниеДенежныхСредств") Тогда
					Область.Параметры.КонтрагентКт = Выборка.Регистратор.Контрагент;
					Область.Параметры.НазначениеПлатежаКт = Выборка.Регистратор.НазначениеПлатежа;
				Иначе // что-либо другое
					
				КонецЕсли;
				
				ЭлементыФормы.ПолеТабличногоДокумента1.Вывести(Область);
			КонецЦикла;
			Область = Макет.ПолучитьОбласть("Подвал");
			Область.Параметры.Заполнить(ВыборкаПоБС);
			Если ВыборкаПоБС.Валюта <> Рубли Тогда
				Область.Параметры.СуммаОборотДт = ВыборкаПоБС.ВалютнаяСуммаоборотДт;
				Область.Параметры.СуммаОборотКт = ВыборкаПоБС.ВалютнаяСуммаоборотКт;
				Область.Параметры.ОстатокКон = ВыборкаПоБС.ВалютнаяСуммаНачальныйОстатокДт;
			Иначе
				Область.Параметры.ОстатокКон = ВыборкаПоБС.СуммаНачальныйОстатокДт;
			КонецЕсли;
			ЭлементыФормы.ПолеТабличногоДокумента1.Вывести(Область);
		КонецЦикла;
	КонецЦикла;
Показать
По теме из базы знаний
Найденные решения
2. alexk-is 6536 18.08.10 10:20 Сейчас в теме
(1)
|УПОРЯДОЧИТЬ ПО
| День,
| Регистратор
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. alexk-is 6536 18.08.10 10:20 Сейчас в теме
(1)
|УПОРЯДОЧИТЬ ПО
| День,
| Регистратор
3. Glikeria 18.08.10 13:30 Сейчас в теме
Спасибо большое!А ещё у меня такой вопрос.Когда результаты выводятся в виде таблицы,то почему-то заполняются не все графы.В чём может быть причина?
4. alexk-is 6536 18.08.10 14:11 Сейчас в теме
(3) Какие именно графы не заполняются?
5. Glikeria 18.08.10 15:24 Сейчас в теме
Заполняются только графы СуммаОборотДт ,СуммаОборотКт и НомерПлатежа.А графы Контрагент и СодержаниеПлатежа остаются всегда пустыми.
6. alexk-is 6536 18.08.10 16:09 Сейчас в теме
(5) Нужно смотреть в отладчике.
7. Glikeria 19.08.10 10:55 Сейчас в теме
Что-то всё равно не получается.У меня почему-то до июня заполняются только графы таблицы СуммаОборотДт и СуммаОборотКт,а начиная с июня всё как надо заполняется.Почему так может быть?
8. alexk-is 6536 19.08.10 11:14 Сейчас в теме
(7) Может все дело в документах? Документы правильно заполнены?
9. h5wetrht 14.06.12 15:36 Сейчас в теме
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот