"Всем здравствуйте. У меня возникла проблема с созданием отчета шахматка в УТ10.3. Суть отчета в том, что в строках идет номенклатура, а в столбцах склады (соответственно, в столбцах количество, стоимость и т.д., это не так важно). Проблема именно с выводом отчета, т.е. использую стандартные методы Присоединить() и Вывести() и получаю "некрасивый" отчет, где секция количества и стоимости товара на складе смещена вниз относительно строки. К тому же, мне нужно чтобы имя склада выводилось в шапке, а получается, что в строках. Просто хотелось бы, идя по выборке из запроса, добавлять при необходимости колонки склада и заносить в нужные колонки (т.е. на пересечениях колонок и строк) данные.<br>код формирования отчета такой:<br><br>Макет = ОтчетОбъект.ПолучитьМакет("Шахматка");<br> Запрос = Новый Запрос;<br> Запрос.Текст = <br> "ВЫБРАТЬ<br> | ТоварыНаСкладахОстаткиИОбороты.Склад,<br> | ТоварыНаСкладахОстаткиИОбороты.Номенклатура,<br> | ТоварыНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры,<br> | ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток,<br> | ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход,<br> | ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход<br> |ИЗ<br> | РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&ДатаНач, &ДатаОконч,) КАК ТоварыНаСкладахОстаткиИОбороты<br> |ГДЕ <br> | ТоварыНаСкладахОстаткиИОбороты.Склад = &Склад ИЛИ ТоварыНаСкладахОстаткиИОбороты.Склад = &Склад1<br> |СГРУППИРОВАТЬ ПО<br> | ТоварыНаСкладахОстаткиИОбороты.Номенклатура,<br> | ТоварыНаСкладахОстаткиИОбороты.ХарактеристикаНоменклатуры,<br> | ТоварыНаСкладахОстаткиИОбороты.Склад,<br> | ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток,<br> | ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход,<br> | ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход";<br><br> Запрос.УстановитьПараметр("ДатаНач", ДатаНач);<br> Запрос.УстановитьПараметр("ДатаОконч", ДатаОконч);<br> Запрос.УстановитьПараметр("Склад", Склад);<br> Запрос.УстановитьПараметр("Склад1", Склад1);<br><br>Результат = Запрос.Выполнить();<br> <br> ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");<br> ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");<br> ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");<br> ОбластьСклады = Макет.ПолучитьОбласть("Склады");<br><br>ТабДок.Очистить();<br> ТабДок.Вывести(ОбластьЗаголовок);<br> ТабДок.Вывести(ОбластьШапкаТаблицы);<br> ТабДок.НачатьАвтогруппировкуСтрок();<br><br>ВыборкаДетали = Результат.Выбрать();<br> ТаблицаСкладов = Новый ТаблицаЗначений;<br> ТаблицаСкладов.Колонки.Добавить("Склад"); <br> Пока ВыборкаДетали.Следующий() Цикл<br> СкладУжеЕсть = Ложь;<br> КолонкаСклада = 0;<br> Для Инт = 0 По ТаблицаСкладов.Количество()-1 Цикл<br> Если ТаблицаСкладов[Инт].Склад = ВыборкаДетали.Склад Тогда<br> СкладУжеЕсть = Истина; <br> КонецЕсли;<br> КонецЦикла; <br> Если СкладУжеЕсть = Ложь Тогда <br> ОбластьСклады.Параметры["Склад"] = ВыборкаДетали.Склад; <br> ОбластьСклады.Параметры["ХарактеристикаНоменклатуры"] = ВыборкаДетали.ХарактеристикаНоменклатуры;<br> ОбластьСклады.Параметры["Сумма"] = "12345"; <br> ОбластьДетальныхЗаписей.Присоединить(ОбластьСклады);<br> СтрокаСклада = ТаблицаСкладов.Добавить();<br> СтрокаСклада.Склад = ВыборкаДетали.Склад; <br> ОбластьДетальныхЗаписей.Параметры["Номенклатура"]= ВыборкаДетали.Номенклатура;<br> ТабДок.Вывести(ОбластьДетальныхЗаписей);<br> <br> Иначе <br> <br> ОбластьДетальныхЗаписей.Параметры["Номенклатура"]= ВыборкаДетали.Номенклатура; <br> ОбластьСклады.Параметры["ХарактеристикаНоменклатуры"] = ВыборкаДетали.ХарактеристикаНоменклатуры;<br> ОбластьСклады.Параметры["Сумма"] = "1234"; <br> ТабДок.Вывести(ОбластьДетальныхЗаписей);<br> КонецЕсли;<br>КонецЦикла;<br><br>ТабДок.Показать("Шахматка");<br><br><br>Может быть есть какой-то пример по формированию шахматки. Все-таки, отчет распространенный. Или подскажите, как лучше его формировать.<br>"