Недавно делали аналогичную обработку, вот посмотри: VygruzkaOSV.rar
Код выгружает в XLS:
Код 1C v 8.х Процедура ВыгрузкаВФайл(НомСчета, Склад)
ТабДок = Новый ТабличныйДокумент;
Макет = ПолучитьМакет("Макет");
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ХозрасчетныйОстаткиИОбороты.Организация КАК Организация,
| ХозрасчетныйОстаткиИОбороты.Счет КАК Счет,
| ХозрасчетныйОстаткиИОбороты.Субконто1 КАК Номенклатура,
| ХозрасчетныйОстаткиИОбороты.Субконто3 КАК Склад,
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт КАК СуммаНачальныйОстатокДт,
| ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокКт КАК СуммаНачальныйОстатокКт,
| ХозрасчетныйОстаткиИОбороты.СуммаОборотДт КАК СуммаОборотДт,
| ХозрасчетныйОстаткиИОбороты.СуммаОборотКт КАК СуммаОборотКт,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйРазвернутыйОстатокДт КАК СуммаКонечныйРазвернутыйОстатокДт,
| ХозрасчетныйОстаткиИОбороты.СуммаКонечныйРазвернутыйОстатокКт КАК СуммаКонечныйРазвернутыйОстатокКт,
| ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстатокДт КАК КоличествоНачальныйОстатокДт,
| ХозрасчетныйОстаткиИОбороты.КоличествоНачальныйОстатокКт КАК КоличествоНачальныйОстатокКт,
| ХозрасчетныйОстаткиИОбороты.КоличествоОборотДт КАК КоличествоОборотДт,
| ХозрасчетныйОстаткиИОбороты.КоличествоОборотКт КАК КоличествоОборотКт,
| ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокДт КАК КоличествоКонечныйОстатокДт,
| ХозрасчетныйОстаткиИОбороты.КоличествоКонечныйОстатокКт КАК КоличествоКонечныйОстатокКт
|ИЗ
| РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&ДН, &ДК, Период, ДвиженияИГраницыПериода, Счет = &Счет, , ) КАК ХозрасчетныйОстаткиИОбороты
|ГДЕ
| ВЫБОР
| КОГДА &Субконто3 = ЗНАЧЕНИЕ(Справочник.Склады.ПустаяСсылка)
| ТОГДА ИСТИНА
| ИНАЧЕ ХозрасчетныйОстаткиИОбороты.Субконто3 = &Субконто3
| КОНЕЦ
| И ХозрасчетныйОстаткиИОбороты.Организация = &Организация
|ИТОГИ
| СУММА(СуммаНачальныйОстатокДт),
| СУММА(СуммаНачальныйОстатокКт),
| СУММА(СуммаОборотДт),
| СУММА(СуммаОборотКт),
| СУММА(СуммаКонечныйРазвернутыйОстатокДт),
| СУММА(СуммаКонечныйРазвернутыйОстатокКт),
| СУММА(КоличествоНачальныйОстатокДт),
| СУММА(КоличествоНачальныйОстатокКт),
| СУММА(КоличествоОборотДт),
| СУММА(КоличествоОборотКт),
| СУММА(КоличествоКонечныйОстатокДт),
| СУММА(КоличествоКонечныйОстатокКт)
|ПО
| Организация,
| Счет,
| Склад";
Запрос.УстановитьПараметр("ДК", КонецДня(ДатаК));
Запрос.УстановитьПараметр("ДН", НачалоДня(ДатаН));
Запрос.УстановитьПараметр("Субконто3", Склад); Запрос.УстановитьПараметр("Организация", Организация);
Запрос.УстановитьПараметр("Счет", ПланыСчетов.Хозрасчетный.НайтиПоКоду(НомСчета));
Результат = Запрос.Выполнить(); ВыборкаОрганизация = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Если ВыборкаОрганизация.Количество()>0 Тогда
Состояние(НомСчета+"_"+Склад.Наименование+"_"+Формат(ТекущаяДата(),"ДФ=yyyy-MM-dd"));
ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");
ОбластьОрганизация = Макет.ПолучитьОбласть("Организация");
ОбластьСчет = Макет.ПолучитьОбласть("Счет");
ОбластьСклад = Макет.ПолучитьОбласть("Склад");
ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");
ТабДок.Очистить();
ТабДок.Вывести(ОбластьЗаголовок);
ТабДок.Вывести(ОбластьШапкаТаблицы);
ТабДок.НачатьАвтогруппировкуСтрок();
Пока ВыборкаОрганизация.Следующий() Цикл
ОбластьОрганизация.Параметры.Заполнить(ВыборкаОрганизация);
ТабДок.Вывести(ОбластьОрганизация, ВыборкаОрганизация.Уровень());
ВыборкаСчет = ВыборкаОрганизация.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаСчет.Следующий() Цикл
ОбластьСчет.Параметры.Заполнить(ВыборкаСчет);
ТабДок.Вывести(ОбластьСчет, ВыборкаСчет.Уровень());
ВыборкаСклад = ВыборкаСчет.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаСклад.Следующий() Цикл
ОбластьСклад.Параметры.Заполнить(ВыборкаСклад);
ТабДок.Вывести(ОбластьСклад, ВыборкаСклад.Уровень());
ВыборкаДетальныеЗаписи = ВыборкаСклад.Выбрать();
Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетальныеЗаписи.Уровень());
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
ТабДок.ЗакончитьАвтогруппировкуСтрок();
ТабДок.Вывести(ОбластьПодвалТаблицы);
ТабДок.Вывести(ОбластьПодвал);
ТабДок.Записать(ПутьККаталогу+"\"+НомСчета+"_"+Склад.Наименование+"_"+Формат(ТекущаяДата(),"ДФ=yyyy-MM-dd")+".xls", ТипФайлаТабличногоДокумента.XLS);
//ТабДок.Показать();
КонецЕсли;
КонецПроцедуры
Процедура КнопкаВыполнитьНажатие(Кнопка)
Если ЗначениеЗаполнено(Склад) Тогда
ВыгрузкаВФайл("10.01", Склад);
ВыгрузкаВФайл("10.02", Склад);
ВыгрузкаВФайл("10.03", Склад);
ВыгрузкаВФайл("10.04", Склад);
ВыгрузкаВФайл("10.05", Склад);
ВыгрузкаВФайл("10.06", Склад);
ВыгрузкаВФайл("10.08", Склад);
ВыгрузкаВФайл("10.09", Склад);
ВыгрузкаВФайл("10.10", Склад);
ВыгрузкаВФайл("10.11", Склад);
ВыгрузкаВФайл("41.01", Склад);
ВыгрузкаВФайл("41.02", Склад);
ВыгрузкаВФайл("41.03", Склад);
ВыгрузкаВФайл("41.04", Склад);
ВыгрузкаВФайл("43", Склад);
Иначе
// Источник: https://helpf.pro/faq/view/303.html
Выборка = Справочники.Склады.Выбрать();
Пока выборка.Следующий() Цикл
Если Выборка.ЭтоГруппа или Выборка.ПометкаУдаления Тогда Продолжить; КонецЕсли;
Склад = Выборка.Ссылка;
ВыгрузкаВФайл("10.01", Склад);
ВыгрузкаВФайл("10.02", Склад);
ВыгрузкаВФайл("10.03", Склад);
ВыгрузкаВФайл("10.04", Склад);
ВыгрузкаВФайл("10.05", Склад);
ВыгрузкаВФайл("10.06", Склад);
ВыгрузкаВФайл("10.08", Склад);
ВыгрузкаВФайл("10.09", Склад);
ВыгрузкаВФайл("10.10", Склад);
ВыгрузкаВФайл("10.11", Склад);
ВыгрузкаВФайл("41.01", Склад);
ВыгрузкаВФайл("41.02", Склад);
ВыгрузкаВФайл("41.03", Склад);
ВыгрузкаВФайл("41.04", Склад);
ВыгрузкаВФайл("43", Склад);
КонецЦикла;
Склад = Справочники.Склады.ПустаяСсылка();
КонецЕсли;
Предупреждение("Выполнено!");
КонецПроцедуры
Процедура ПутьККаталогуНачалоВыбора(Элемент, СтандартнаяОбработка)
ДиалогВыбора = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.ВыборКаталога);
//ДиалогВыбора.Фильтр = "MS Excel (*.xls)|*.xls";
ДиалогВыбора.Заголовок = "Выберите каталог для выгрузки данных";
ДиалогВыбора.ПредварительныйПросмотр = Ложь;
//ДиалогВыбора.Расширение = "xls";
ДиалогВыбора.ИндексФильтра = 0;
ДиалогВыбора.ПолноеИмяФайла = Элемент.Значение;
ДиалогВыбора.ПроверятьСуществованиеФайла = Ложь;
Если ДиалогВыбора.Выбрать() Тогда
Элемент.Значение = ДиалогВыбора.Каталог;
КонецЕсли;
КонецПроцедуры