Как то раз пришлось сделать выгрузку из Управление Торговлей 10.3 в Ексель данных для последующей загрузке в программу Qlik View. Просмотрев досточное количество информации по этому вопросу остановился на варианте создания обработки с одной кнопкой по выгрузке в Ексель. Данную процедуру можно использовать и для непосредственного процесса импорта в Ексель прямо из окна формы. Выгружать можно любые данные из регистров, справочников, документов.
Вот сам код процедуры
Процедура СоздатьКнигу(Кнопка) СтрокаПодключения = " |Provider=Microsoft.Jet.OLEDB.4.0; |Data Source="+ИмяФайлаЭксель+"; |Extended Properties=""Excel 8.0;HDR=No;"";"; Catalog = Новый COMОбъект("ADOX.Catalog"); Catalog.ActiveConnection = СтрокаПодключения; Table = Новый COMОбъект("ADOX.Table"); Table.Name = "Table"; Table.Columns.Append("Column1"); Table.Columns.Append("Column2"); Table.Columns.Append("Column3"); Table.Columns.Append("Column4"); Table.Columns.Append("Column5"); Table.Columns.Append("Column6"); Catalog.Tables.Append(Table); Table = Неопределено; Catalog = Неопределено; Connection = Новый COMОбъект("ADODB.Connection"); Connection.Open(СтрокаПодключения); Command = Новый COMОбъект("ADODB.Command"); Command.ActiveConnection = Connection; Command.CommandType = 1; Запрос = Новый Запрос(" |ВЫБРАТЬ |ЗаказыПокупателейОстатки.Номенклатура, |ЗаказыПокупателейОстатки.Цена, |ЗаказыПокупателейОстатки.ЕдиницаИзмерения, |ЗаказыПокупателейОстатки.КоличествоОстаток, |ЗаказыПокупателейОстатки.СуммаВзаиморасчетовОстаток, |ЗаказыПокупателейОстатки.СуммаУпрОстаток |ИЗ |РегистрНакопления.ЗаказыПокупателей.Остатки КАК ЗаказыПокупателейОстатки |ГДЕ |ЗаказыПокупателейОстатки.КоличествоОстаток > 0"); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); Пока Выборка.Следующий() Цикл Command.CommandText = " |INSERT INTO [Table] VALUES ('"+Выборка.Номенклатура+"','"+Выборка.Цена+"','"+Выборка.ЕдиницаИзмерения+"','"+Выборка.КоличествоОстаток+"','"+Выборка.СуммаВзаиморасчетовОстаток+"','"+Выборка.СуммаУпрОстаток+"')"; Command.Execute(); КонецЦикла; Command = Неопределено; Connection.Close(); Connection = Неопределено; КонецПроцедуры