Автоматизировать проект MS
Есть ли способ, которым мы можем автоматизировать ввод в MS Project 2010. Ниже приведены сценарии:
- У нас есть приложение vb.net, которое использует для ввода имени задачи, часов, оценки и времени завершения.
- Есть ли способ, которым мы можем загрузить эти даты в MS Project 2010.
2 ответа
Есть выход. Если вы используете настольную версию MS Project (Pro или Standard), тогда единственный вариант - использовать OLE-автоматизацию.
С помощью OLE Automation вы получите ссылку на экземпляр класса Application, который является ключевым классом в каждом приложении MS Office. Из приложения вы можете получить список открытых в данный момент проектов, используя Application.Projects
коллекция или даже получить текущий проект, используя Application.ActiveProject
,
Как только у вас есть ссылка на проект, вы можете получить доступ ко всем задачам в проекте, используя Project.Tasks
коллекция. (Индекс всех коллекций начинается с 1)
Большинство полей Задачи, таких как Имя или Дата начала, доступны через свойства Задачи: Task.Name = "something"
или же Task.StartDate = "1/1/2001"
В любом случае вот ссылка: msdn.microsoft.com
Другая история, если у вас есть Project Server, и вы хотите сделать все быстрее. В этом случае вам следует использовать PSI (Project Server Interface) - набор веб-сервисов, которые предоставляют вам доступ к большинству функций Project Server.
В MSDN есть отличные статьи с примерами работы с проектами, использующими PSI, и вот ссылка: MSDN о PSI. Вы можете искать по ссылке, чтобы найти больше статей о других услугах, доступных через PSI.
Если вы можете поместить свои данные в Excel, как упомянуто в комментарии, было бы довольно просто написать программу VBA, которая считывает данные Excel и обновляет задачи Проекта данными из рабочей книги.