金蝶云星空二开python表单插件之设置单据头及单据体字体和背景颜色,以采购订单为例!!
大家好,我叫大伟,今天开始给大家继续倒腾金蝶二开插件案列分享,大部分都是非常实用而且能够提升工作效率和增强体验感的小功能。
在日常业务中,我们经常碰到大量的表单或者列表数据,关注某个字段的数据时候,往往因为数据太多导致阅读疲劳,也有的就是关注某个数据时,需要单独标注某列后者某个数据某行数据时,能够通过颜色进行标记,这样在日常工作中,大大提高了处理数据的效率,下面介绍通过python插件,如何实现表单单据头和单据体的颜色变化。
本次依旧以采购订单为修改字段和背景颜色为案例,做这个功能的背景是,经常处理某些数据或需要特意关注某个字段的数据时候,将该字段数据设置颜色,高级的一点用法也可以按照条件,当然目前标准功能可以配置处理,本次是以python的脚本为案例,可以扩展更高级的功能。本次使用的是AfterBindData事件,该事件作用是单据界面数据绑定完毕后触发,通常在这里对字段控件状态进行设置,例如,设置颜色、设置字段锁定性/可见性、设置下拉列表动态枚举选项等。接下来废话不多说,直接上干货。
Python插件案例一之表单插件
设置单据头及单据体字体和背景颜色
(以采购订单为案列)
代码如下
#添加对cloud插件开发的常用组件的引用clr.AddReference('System')clr.AddReference('System.Data')clr.AddReference('Kingdee.BOS')clr.AddReference('Kingdee.BOS.Core')clr.AddReference('Kingdee.BOS.App')clr.AddReference('Kingdee.BOS.ServiceHelper')#导入cloud基础库中的常用实体对象(分命名空间导入,不会递归导入)from Kingdee.BOS import *from Kingdee.BOS.Core import *from Kingdee.BOS.Core.Bill import *from Kingdee.BOS.Core.DynamicForm.PlugIn import *from Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel import *from System import *from System.Data import *from Kingdee.BOS.App.Data import *from System.Collections.Generic import Listfrom Kingdee.BOS.ServiceHelper import *def AfterBindData(e):this.View.GetControl("F_Remarks").SetCustomPropertyValue("ForeColor", "#f7e51a"); #字体颜色this.View.GetControl("F_Remarks").SetCustomPropertyValue("backcolor", "#FF3300");#背景颜色#设置单据体grid = this.View.GetControl[EntryGrid]("FPOOrderEntry");#单据体标识index=0;#单据体行号,从0开始,演示一行,如需设置多行,可用循环逻辑处理#设置单据体--字段背景色,只对锁定单元格生效grid.SetBackcolor("FMaterialName","#fc0909",index);#设置单据体--字段前景色,不支持非锁定状态下的数值字段grid.SetForecolor("FTAXPRICE", "#FF0000",index);#设置单据体---整行的颜色,只对锁定单元格生效grid.SetRowBackcolor("#f9a065",index);
操作步骤如下
1、打开BOS设计器,找到需要修改的单据,如果单据是只读状态,不要慌!只需在单据上右键点击【扩展】,就能以可编辑模式打开

2、注册Python脚本,进入【表单插件】配置,注册下面的Python脚本代码,填写脚本名称,保存配置

3、保存所有配置,修改单据,展示效果!如下图:

温馨提示
-
复制脚本注意缩进,严格遵守PYTHON缩进规则,否则保存会报错
如果这篇文章对你有帮助,欢迎点赞、收藏、转发!有任何问题也欢迎在评论区留言交流!
夜雨聆风
