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