2008-09-30 2 views
18

Каковы мои возможности для программного доступа к файлу Microsoft Project? Каковы плюсы и минусы каждого подхода?Программный доступ к файлу Microsoft Project (MPP) с C#

В основном мне нужно будет импортировать все данные из файла в другую структуру данных. Использование команд Office Interop на шкале предпочтений невелика.

ответ

5

Вот варианты:

  1. Interop (грязный и ужасно медленно для крупных проектов)
  2. Сохранить проект в формате XML и работать с ним (грязный)
  3. Сохранить проект в базе данных (это не публикуется и доступно только для проекта 2003 - см. ODBC вариант при сохранении). Я видел, что это используется много в интеграции сценарии
  4. Projette (коммерческий, $ 10 за лицензии)
  5. ILog Project Viewer (также коммерческий)
+0

Сайт Projetty не открывается :( – 2015-02-19 10:38:22

3

API Microsoft Office обеспечивает программный доступ к MS Project. Я использовал его только для Word и Excel, поэтому я не знаю, насколько богат интерфейс - вам нужно будет кое-что сделать на MSDN, чтобы узнать, что вы можете и чего не можете сделать.

Один из проектов Java в моей компании использует коммерческий продукт Aspose, который позволяет приложениям манипулировать документами Office, включая Project. Он хорошо работает для своих целей, но опять же, они использовали его только для Word и Excel, поэтому не могут предлагать много советов по проекту.

+1

Я приобрел Aspose.Tasks, и он работал очень хорошо. – 2009-03-02 15:23:37

13

MPXJ (mpxj.sf.net) библиотека поставляется в как Java, так и. Net, и позволит вам читать и писать несколько форматов файлов Microsoft Project с использованием единого согласованного API. Я знаю коммерческие продукты, которые используют как Java, так и .Net-версии MPXJ без каких-либо проблем.

Отказ от ответственности: Я сторонник MPXJ.

+0

Привет, Jon, Спасибо за ваш ответ. Просто интересно, можем ли мы планировать запуск старта/завершения заданий с использованием MPXJ. как будто я добавил 3 задачи. Задача 1, задача 2.задача 3 и задача 2 имеют зависимость от финиша для запуска, а задача 3 имеет зависимость от финиша до конца ... как бы их даты начала/окончания были пересчитаны на основе зависимостей, которые я добавил? – 2010-07-09 11:34:16

4

Вы можете использовать Aspose.Tasks for .NET. Этот компонент позволяет вам work with Microsoft Project files. Он не требует установки MS Office на сервер, в отличие от Office Interop. API очень прост и прост в использовании. И он предоставляет богатый набор функций для чтения, редактирования, записи и преобразования файлов MPP.

Этот компонент является обычной сборкой .NET, которая может использоваться с вашими приложениями .NET. Он работает на любой ОС Windows и в 32/64-разрядных средах.

Раскрытие информации: Я работаю евангелистом-разработчиком в Aspose.

Смежные вопросы