НайтиСтроки в Таблице Значений

1. darakz92 31.10.16 09:21 Сейчас в теме
Пожалуйста помогите с решением.
Есть нетиповая конфигурация(платф 8.3)
Отчет выводится в таком виде:

СкладСельскогоОкруга КРС МРС
План План
Акбастау 35 35
Есенгельды 55 55
Есенгельды 35 35

А нужно:

СкладСельскогоОкруга КРС МРС
План План
Акбастау 35 35
Есенгельды 55 35

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

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

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