Microsoft API将MYSQL数据导出到Microsoft项目

时间:2009-10-17 23:10:35

标签: php ms-project

我需要生成带有一些数据MYSQL数据库的Microsoft项目文件。由于我正在编写的应用程序是一个PHP应用程序,有没有办法创建一个Microsoft项目文件,就像我们使用一些库将数据导出到excel文件。任何帮助都将受到高度赞赏。

3 个答案:

答案 0 :(得分:1)

您可以使用MPXJ创建可由Microsoft Project读取的eiter MPX或MSPDI文件。您可以使用PHP/Java Bridge直接从PHP执行此操作。

乔恩

P.S。免责声明:我维持MPXJ。

答案 1 :(得分:0)

是的,这是example from MSDN,显示了如何从Excel导入。

答案 2 :(得分:0)

我可以告诉你如何通过C#和Microsoft.Office.Interop.MSProject.dll来做到这一点。

示例代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using Microsoft.Office.Interop.MSProject;
using System.Data;

namespace ConsoleApplication2
{
    public static class ProjectHelper
    {
        public static void CreateProject(string projectName, DataSet mySqlData)
        {
            ApplicationClass msProjectApp = new ApplicationClass();
            msProjectApp.AppMaximize();
            msProjectApp.FileNew(Missing.Value, Missing.Value, Missing.Value, Missing.Value);
            Project project = msProjectApp.ActiveProject;

            // Process the dataset and add tasks ... etc
            // Assume you are reading from the dataset

            Task task = project.Tasks.Add("test1", 1);
            Task task2 = project.Tasks.Add("test2", 2);

            task.Start = "22/10/2009";
            task.Finish = "25/10/2009";

            task.Text1 = "some test";
            msProjectApp.GanttBarFormat(task.ID, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Microsoft.Office.Interop.MSProject.PjColor.pjGreen, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);

            task2.Start = "23/10/2009";
            task2.Finish = "24/03/2009";

            task2.Text1 = "some test 2";
            task2.Predecessors = task.ID.ToString();
        }
    }
}