Писалась для КА 1.1.115.1, платформа 8.2, тестировалась на ней же.
С помощью технологии ADO можно легко создавать и заполнять файлы excel прямо из 1С.
Не требуется запуск самого процесса excel.exe, как это происходит в случае использования OLE-сервера excel.application, а следовательно, на него не тратятся ресурсы. Не требуется самого приложения EXCEL, достаточно, чтобы на компьютере был установлен OLEDB провайдер Microsoft.Jet.OLEDB.4.0 (он входит в состав практически всех ОС семейства Windows) Это особенно актуально, когда данный код выполняется на сервере 1С:Предприятия, например в качестве регламентного задания.
Полезно также узнать на примере моей обработки, как можно через 1с-код архивировать и отправлять файлы на FTP
В моих публикациях имеется подобная обработка выгрузки прайса в формате XML, теперь же я сделал обработку, позволяющую:
1. Сформировать запросом список номенклатуры с остатками, ценой и любыми другими реквизитами, а так же исключить из выборки номенклатуру по указанным кодам номенклатурных групп/подгрупп (указанные группы/подгруппы исключаются из выгрузки) - это сделано для того, что зачастую на сайт требуется выгружать не все номенклатурные группы, в каждой базе, в справочнике номенклатуры, есть некий "мусорный ящик", куда складывается неиспользуемая номенклатура, номенклатура собственных нужд, основные средства и т.д., по которой зачастую имеются остатки.
2. Возможность ограничения выгрузки остатков по указанным кодам складов (указанные склады исключаются из сбора данных по остаткам товаров).
3. Сформировать из полученных данных файл формата Excel (с определенным составом колонок) и записать его на жесткий диск либо на сетевой ресурс.
4. Заархивировать и отправить полученный файл на FTP-ресурс
Сейчас в Excel-файл выводится следующий состав полей:
Код, Артикул, Наименование, Остаток, ПолноеНаименование, КодЕдиницыИзмерения, Цена. Состав и положение колонок можно менять как угодно.
Все информационные сообщения (ошибки и др.) о работе обработки выводятся в ЖурналРегистрации
Тип цены жестко прописан в запросе - по умолчанию берется цена по коду 000000001 "Розничная"
Цена и остаток берется из среза последних, на момент выгрузки, это сделано специально, для обновлении информации в интернет-магазине.
При выгрузке обработка в журнал регистрации выдает список товаров, на которые по каким-либо причинам не установлена цена.