Хорошая ссылка на подробный документ.
Я думаю, генерирование отчетов в формате Microsoft Excel без самого Excel имеет ряд преимуществ, хотя сам еще не пробовал.
Во-первых, клиента не нужно заставлять покупать MS Office, отчеты могут быть открыты любой совместимой программой, например, часть знакомых использует Open Office.
Во-вторых, когда в Excel через автоматизацию заносишь больше 1000 строк, приходится отключать автокалькуляцию, обновление экрана, предупреждения и т.д., но скорость все равно оставляет желать лучшего. В этом же случае создать XML файл размером 100-300 Kb и открыть его готовым будет гораздо быстрее.
Чтение раздела «Microsoft Office 2003 XML Reference Schemas» показало, что совместимость трех последних версий Excel, т.е. 2003/2002/2000 имеет место быть.
Остается пара вопросов.
Во-первых, мы создаем отчеты в Excel, используя заготовленные шаблоны, т.е. открывается в Excel файл-макет, заполняется шапка, столбцы, метки, стили ячеек и т.д. Затем в run-time программы этот шаблон открывает Excel.Application и заполняются сами данные, что экономит время на дизайн отчета. Вопрос, чем и как это делать без Excel в формате XML.
И второй вопрос, связанный с первым. Можно так же создать шаблон, как и ранее, но занесение данных в отчет через автоматизацию Excel имеет компактный код, а если не иметь Excel и открывать заготовленный XML шаблон с массой стилей и XML тегов, встает вопрос о занесении данных, парсинг и анализ структуры такого документа гораздо более объемная вещь, чем автоматизация Excel, код будет запутанным и огромным.
Главное, нужна библиотека, которая позволит компактным кодом манипулировать шаблонами отчетов для Excel в формате XML.
данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение