提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
翻译|使用教程|编辑:秦林|2022-10-09 11:32:59.797|阅读 134 次
概述:这篇文章给大家讲解如何利用dhtmlxGantt在服务器端集成数据。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
相关链接:
这篇文章给大家讲解如何利用dhtmlxGantt在服务器端集成数据。
客户端
1)调用load方法,其中作为参数指定以JSON格式返回甘特图数据的URL。
2)使用以下两种方式之一创建DataProcessor实例:
gantt.init("gantt_here"); gantt.load("apiUrl"); // keep the order of the lines below var dp = new gantt.dataProcessor("apiUrl"); dp.init(gantt); dp.setTransactionMode("REST");
调用createDataProcessor方法并传递一个带有配置选项的对象作为其参数:
var dp = gantt.createDataProcessor({ url: "apiUrl", mode: "REST" });
创建数据处理器
1.使用预定义的请求模式之一,如:
var dp = gantt.createDataProcessor({ url: "/api", mode: "REST" });
位置:
2.提供自定义路由器对象:
var dp = gantt.createDataProcessor(router);
// entity - "task"|"link" // action - "create"|"update"|"delete" // data - an object with task or link data // id – the id of a processed object (task or link) var dp = gantt.createDataProcessor(function(entity, action, data, id) { switch(action) { case "create": return gantt.ajax.post( server + "/" + entity, data ); break; case "update": return gantt.ajax.put( server + "/" + entity + "/" + id, data ); break; case "delete": return gantt.ajax.del( server + "/" + entity + "/" + id ); break; } });
或是以下结构的对象:
var dp = gantt.createDataProcessor({ task: { create: function(data) {}, update: function(data, id) {}, delete: function(id) {} }, link: { create: function(data) {}, update: function(data, id) {}, delete: function(id) {} } });
对象的所有函数都路由器应该返回一个Promise或一个数据响应对象。 这是 dataProcessor应用数据库id并挂钩onAfterUpdate事件所必需的。
outer = function(entity, action, data, id) { return new gantt.Promise(function(resolve, reject) { // … some logic return resolve({tid: databaseId}); }); }
因此,您可以使用DataProcessor将数据保存在localStorage或任何其他未链接到某个URL的存储中,或者如果有两个不同的服务器(URL)负责创建和删除对象。
请求和响应详细信息
URL由以下规则构成:
其中“api”是您在dataProcessor配置中指定的URL。
可能的请求和响应的列表是:
ACTION | HTTP | URL | RESPONSE |
加载数据 | GET | /apiUrl | JSON格式 |
添加新任务 | POST | /apiUrl/任务 | {"action":"inserted","tid":"taskId"} |
更新任务 | PUT | /apiUrl/task/taskId | {“行动”:“更新”} |
删除任务 | DELETE | /apiUrl/task/taskId | {“行动”:“删除”} |
添加新链接 | POST | /apiUrl/链接 | {"action":"inserted","tid":"linkId"} |
更新链接 | PUT | /apiUrl/link/linkId | {“行动”:“更新”} |
删除链接 | DELETE | /apiUrl/link/linkId | {“行动”:“删除”} |
请求参数
创建/更新/删除请求将包含客户端任务或链接对象的所有公共属性:
任务:
关联:
笔记:
REST-JSON 模式
除了“POST”、“GET”、“REST”和“JSON”事务模式,甘特数据处理器也可以用于“REST-JSON”模式。
gantt.load("apiUrl"); var dp = gantt.createDataProcessor({ url: "/apiUrl", mode: "REST-JSON" });
在REST模式中,数据以以下形式发送到服务器:
Content-Type: application/x-www-form-urlencoded
而在REST-JSON模式下,数据以JSON格式发送:
Content-type: application/json
因此参数作为JSON对象发送,请求有效载荷
{ "start_date": "20-09-2018 00:00", "text": "New task", "duration":1, "end_date": "21-09-2018 00:00", "parent": 0, "usage":[{ {"id":"1", "value":"30"}, {"id":"2", "value":"20"} }] }
{ "source": 1, "target": 2, "type": "0" }
这种格式使得在任何服务器端平台上处理复杂记录变得更加方便。
dhtmlxGantt是用于跨浏览器和跨平台应用程序的功能齐全的Gantt图表,可满足项目管理控件应用程序的所有需求,是最完善的甘特图图表库。了解更多DhtmlxGantt相关内容和资讯,欢迎在线咨询或者私信我获取正版试用版及报价。
甘特图控件交流群:764148812 欢迎进群交流讨论
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn
本文探讨 SQL Server 中 NULL 和空值之间的区别,并讨论如何有效地处理它们。
Unity 是一款功能极其丰富的游戏引擎,允许开发人员将各种媒体集成到他们的项目中。但是,它缺少最令人兴奋的功能之一 - 将 Web 内容(例如 HTML、CSS 和 JavaScript)直接渲染到 3D 场景中的纹理上的能力。在本文中,我们将介绍如何使用 DotNetBrowser 在 Unity3D 中将 Web 内容渲染为纹理。
DevExpress v24.2帮助文档正式发布上线了,请按版本按需下载~
本教程将向您展示如何用MyEclipse构建一个Web项目,欢迎下载最新版IDE体验!
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@cahobeh.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢