二开案例.表单插件.图表控件
【应用场景】
使用图表控件展示数据。
【案例演示】
采购订单上新增图表控件,展示客户运营数据。
【实现步骤】
<1>编写表单插件,代码如下。
using Kingdee.BOS.Core.DynamicForm.PlugIn; using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel; using Kingdee.BOS.DataEntity; using Kingdee.BOS.Util; using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; namespace Jac.XkDemo.BOS.Business.PlugIn { /// <summary> /// 【表单插件】图表控件 /// </summary> [Description("【表单插件】图表控件"), HotUpdate] public class ChartFormPlugIn : AbstractDynamicFormPlugIn { public override void AfterBindData(EventArgs e) { base.AfterBindData(e); BindChart(); } public override void BarItemClick(BarItemClickEventArgs e) { base.BarItemClick(e); if (e.BarItemKey.EqualsIgnoreCase("test")) { BindChart(); } } private void BindChart() { var chart = this.View.GetControl<ChartControl>("F_Jac_Chart"); // 设置样式 chart.SetChartType("5"); // 1-折线图;2-饼状图;3-柱状图;4-透析图;5-柱状图,数据来源参考:Kingdee.BOS.XPF.Component.CtrlProxy.KDChartControlProxy.Style chart.SetLegendMaxWidth(400); // 设置系列显示名称的文本最大宽度 this.View.GetControl("F_Jac_Chart").InvokeControlMethod("setLegendPosition", "top"); // 设置系列显示名称的文本在图标的顶部显示 chart.SetLegendToolTip("客户运营统计表"); // 设置系列 var chartSeries = new Collection<KDChartSeries>(); #region 系列1 var ser1 = new KDChartSeries(); ser1.Name = "NewCustomerQty"; ser1.DisplayName = "新增客户数量"; chartSeries.Add(ser1); var points1 = new Collection<KDChartSeriesPoint>(); ser1.Points = points1; var datas1 = new Dictionary<string, int>(); datas1["1月"] = GetRandom(100, 999); datas1["2月"] = GetRandom(100, 999); datas1["3月"] = GetRandom(100, 999); datas1["4月"] = GetRandom(100, 999); datas1["5月"] = GetRandom(100, 999); datas1["6月"] = GetRandom(100, 999); foreach (var data in datas1) { var point = new KDChartSeriesPoint(); point.XValue = 1; point.YValue = data.Value; point.XText = data.Key; points1.Add(point); } #endregion #region 系列2 var ser2 = new KDChartSeries(); ser2.Name = "CustomerQty"; ser2.DisplayName = "总客户数量"; chartSeries.Add(ser2); var points2 = new Collection<KDChartSeriesPoint>(); ser2.Points = points2; var datas2 = new Dictionary<string, int>(); datas2["1月"] = GetRandom(1000, 9999); datas2["2月"] = GetRandom(1000, 9999); datas2["3月"] = GetRandom(1000, 9999); datas2["4月"] = GetRandom(1000, 9999); datas2["5月"] = GetRandom(1000, 9999); datas2["6月"] = GetRandom(1000, 9999); foreach (var data in datas2) { var point = new KDChartSeriesPoint(); point.XValue = 1; point.YValue = data.Value; point.XText = data.Key; points2.Add(point); } #endregion chart.SetSeriersPoints(chartSeries); } private int GetRandom(int minValue, int maxValue) { return new Random(Guid.NewGuid().GetHashCode()).Next(minValue, maxValue); } } }
<2>拷贝插件组件到应用站点的WebSite\Bin目录下,重启IIS。
<3>BOSIDE扩展采购订单,新增页签,新页签上新增一个图表控件,菜单节后新增一个菜单项,注册表单插件,保存元数据,开发完毕。
【功能验证】
<1>登录业务站点,打开采购订单新增界面,即可显示图表数据啦。
---------------------------------------------------------------------------------------------------------
【金蝶云星空BOS二次开发案例演示】https://vip.kingdee.com/article/94751030918525696
二开案例.表单插件.图表控件
【应用场景】使用图表控件展示数据。【案例演示】采购订单上新增图表控件,展示客户运营数据。【实现步骤】<1>编写表单插件,代码如下。usi...
点击下载文档
上一篇:二开案例.表单插件.设置控件焦点下一篇:如何使用升级预警功能
本文2024-09-23 04:01:32发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-162627.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章