Как бы вы извлекать данные из файла MS Project .mpp? - PullRequest
4 голосов
/ 02 сентября 2008

Мне нужно извлечь данные из файла .mpp в сети и объединить их с другими данными из нескольких разных баз данных. Приложение может быть написано на Perl, VB6, VB.net или C #, но должно быть легко запланировано с сервера на базе Windows.

Что бы вы посоветовали для извлечения данных MS Project без вмешательства пользователя?

Есть ли драйверы ODBC для MS Project?

Существуют ли какие-либо модули (для Perl, VB, VB.net или C #) для открытия .mpp и чтения данных об активности?

Ответы [ 5 ]

3 голосов
/ 16 октября 2008

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

Отказ от ответственности: я поддерживаю MPXJ.

3 голосов
/ 02 сентября 2008

MPP имеет свою собственную объектную модель, которую можно использовать для доступа к данным в ней. Информация должна быть доступна здесь: http://msdn.microsoft.com/en-us/office/aa905469.aspx

2 голосов
/ 10 августа 2011

Для чтения данных MPP вы можете использовать Aspose.Tasks for .NET . Этот компонент представляет собой обычную сборку .NET и может использоваться с любым приложением .NET. Он предоставляет простой API для доступа к элементам проекта и данным .

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

2 голосов
/ 12 января 2009

Надеюсь, что поможет следующее ...

http://www.codeproject.com/KB/cs/PrjXlsRpt.aspx

Rgds

1 голос
/ 10 ноября 2008

У меня такая же потребность. Вот что я нашел до сих пор. Существует поставщик OLEDB для проектов Microsoft, до версии MP 2007. Если Google это, есть достаточно сайтов, цитирующих строку подключения, но вот одна цитата: oConn.Open "Provider = Microsoft.Project.OLEDB.9.0;" & _ "Имя проекта = c: \ somepath \ myProject.mpp"

Проблема с этим подходом заключается в том, что вам нужно установить MS Project на сервере. В любом случае это неприятность и невозможность использования среды хостинга.

Итак, вы приступили к разбору .mpp. MPXJ - отличная библиотека, как предлагает один из вышеупомянутых комментаторов, и я могу позволить себе подождать, поэтому я жду, когда они выпустят версию .NET. Если вы решили сделать это, получите код и посмотрите, что они делают. Кроме того, в их исходном коде / комментариях нет (насколько мне известно) документации этого формата.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...