[Java教程]一个好用的web甘特图
0 2014-09-08 12:00:08 前些天一直在弄web甘特图,发现网上很多web甘特图框架,但大部分是收费的。偶尔发现了向日葵甘特图 感觉不错,特此写下来一方面当做记录,另一方面也为寻找web甘特图的同学们少走一些弯路,双赢嘛~ 向日葵甘特图是纯js编写,相比于其他庞大的甘特图应用,好处不用多说:轻便易于和网页应用嵌套(其他的同学们可以自己体会)。 网上提供了一个远程js库和相应API,我们可以方便的进行二次开发。同学们网上一搜即可找到。
本甘特图以
0 UID> //唯一任务编号
0 ID>
住宅建设 //任务名称
0 OutlineNumber> //大纲号码
2004-01-01T08:00:00 //开始时间
2004-07-30T17:00:00 //结束时间
1 Summary> //是否摘要
0 PercentComplete> //完成百分比
3 //前置任务uid
1 //前置任务关系1:完成-完成2:完成-开始3:开始-完成4:开始-开始
每个task代表一个任务,前台甘特图页面数据就是
下面介绍甘特图中几个重要的对象。
一。SFData:此对象为甘特数据核心对象,负责创建任务数据、资源数据、链接数据、资源分配数据等。
二。数据适配器:主要包括SFDataProject和SFDataSFDataProject:支持直接将微软project的
SFData采用向日葵甘特图指定的三。sfdatatask sfdatalink sfdataresource sfdataAssignment等对象,分别对应任务数据、链接数据、资源数据、资源分配数据,这些对象主要对具体的任务、链接、资源、资源分配等进行相关操作。 三者具体关系见下图:
四。SFConfig对象:甘特图(SFGantt JavaScript API)之中用来对甘特图进行配置的类,配置的方式可以使用Json,也可以通过类的方法进行配置。如下格式:gtConfig.setConfig( "SFGantt/taskIdFieldNames","ID" ); 可设置第一列值为ID号,具体用法参见API
五。SFGantt对象:甘特图对象,本对象是甘特图的主体对象,代表页面上的甘特图实例,你也可以在页面上运行多个甘特图实例 可以完成添加功能控件、设置升/降级、设置页面显示等功能。
下面用两个示例分别演示具体用法:实例一:
此甘特图采用ajax获取数据:SF