金蝶云星空二开python表单插件之新增单据设置默认值,获取当前用户对应员工案例!!
大家好,我叫大伟,今天开始给大家继续倒腾金蝶二开插件案列分享,大部分都是非常实用而且能够提升工作效率和增强体验感的小功能。
在日常业务中,员工提交单据时,经常需要填写大量重复信息:自己的员工信息、固定的日期、默认的业务类型等等。这些重复性工作不仅效率低下,还容易出错。今天,我们就来分享一个实用的Python插件开发技巧:让系统在单据新增时,自动填充这些默认值!
运用场景非常广泛,比如设置默认的固定日期,固定的销售员采购人员或者动态数据值,在新增单据的是时候自动赋值,如当前日期、满足条件自动带出供应商、客户、单据类型等,都可以通过OnInitialize事件初始化的时候动态获取值,在AfterCreateNewData事件中新增单据将值赋值到对应字段。本次案例介绍核心思路如下:
-
OnInitialize事件:单据初始化时,获取当前登录用户对应的员工ID
-
AfterCreateNewData事件:新增单据时,将获取到的员工ID和预设的默认值自动填入对应字段
Python插件案例一之表单插件
新增单据设置默认值
(获取当前用户对应员工)
代码案例如下
# 引入clr运行库import clr# 添加对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 *# 全局变量,存储员工IDempId = 0# 事件1:单据初始化完成时触发def OnInitialize(e):"""单据初始化完毕,在这里可以获取一些控件备用通常用于准备后续需要使用的数据"""# 获取当前登录用户IDuserID = str(this.Context.UserId)# SQL查询:根据用户ID获取对应的员工信息sqlGetEmpId = """SELECT E.FID, E_L.FNAME, P.FPERSONID, U.FUSERID, U.FNAMEFROM T_SEC_USER UINNER JOIN T_BD_Person P ON (U.FLINKOBJECT = P.FPERSONID)INNER JOIN T_HR_EmpInfo E ON (P.FPERSONID = E.FPERSONID)LEFT JOIN T_HR_EmpInfo_L E_L ON (E.FID = E_L.FID AND E_L.FLOCALEID = 2052)WHERE U.FUserId = {0}""".format(userID)global empId# 执行SQL查询ds = DBServiceHelper.ExecuteDataSet(this.Context, sqlGetEmpId)tab = ds.Tables[0]# 获取员工ID,如果没有找到则默认为0empId = tab.Rows[0]["FID"] if tab.Rows.Count > 0 else 0# 事件2:单据新增界面打开时触发def AfterCreateNewData(e):"""单据新增界面打开时触发,可以获取到单据初始化之后的数据通常用于对单据新增进行默认值填充"""global empId# 设置员工字段默认值(根据实际情况修改字段标识)if empId != 0:this.Model.SetItemValueByID("F_empid", empId, 0)# 设置日期默认值this.Model.SetValue("FDate", "2025-12-31")# 这里可以补充其他默认值设置# 例如:this.Model.SetValue("FBillTypeID", "001")# 例如:this.Model.SetItemValueByID("FSaleDeptId", "部门ID", 0)
操作步骤如下
1、打开BOS设计器,找到需要批改的单据,如果单据是只读状态,不要慌!只需在单据上右键点击【扩展】,就能以可编辑模式打开

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

3、保存所有配置,新增单据,自动获取了固定销售订单日期和对应当前用户的员工!如下图:

温馨提示
-
字段标识:
F_empid需要替换为实际的员工字段标识,切记唯一标识一定是自己系统的标识 -
复制脚本注意缩进,严格遵守PYTHON缩进规则,否则保存会报错
如果这篇文章对你有帮助,欢迎点赞、收藏、转发!有任何问题也欢迎在评论区留言交流!
相关文章:
为啥娃一年级才发现这么好用的全科启蒙app
iOS最新上架Appstore神器,两个打包带走!
热门短剧《月染青川》完整版1-65集/大结局/合集 图片
这些iOS平台最好用的App你用过几款?
主力控盘 副选(指标源码)
搞笑!!“且听”APP上线后,全网的弹幕比AI还懂罗永浩
AppCan新增的9个超实用插件 (内含示例代码)
“强农”APP咨询回复选登(十三)
AI插件『插件合集1.1』安装教程
短剧《农门崽崽是锦鲤》完整版
热播短剧《离开不必回头》完整版1-80大结局/合集
1月4日高质量短剧推荐!
免费插件领取Safari Pedals 插件 (价值$49)
计算机专业宝子们,锁死这个App吧!
短剧演员千千万,广东演员占一半!高颜值广东演员大盘点!谁是你的NO.1呢?
【鸿蒙】冇有猫APP-轻疗愈猫咪视角下的哲学与量子力学,纯血鸿蒙单机免费
2017 精选音乐 iOS App
黑科技 | 8款极给力的C4D必装插件,简直就是开挂啊!
iOS13.5越狱必装插件推荐
【机G筹码增减】副图公式 筹码动向跟踪源码分享
这款SCADA软件不限点数,还给源代码!水行业应用还很多!
【科研软件】PPT画信号通路插件——ScienceSlides
短剧完整版【云海不相逢(全集)】全集大结局,在线看(全剧后续/完整版)
超好看!热门短剧丨大结局《娶了狂妃后,本王人间历凡尘》全集在线看
短剧完整版【满级保镖,一拳破局(全集)】全集大结局,在线看(全剧后续/完整版)
超好看!热门短剧丨大结局《离婚当天,戏精青梅缠上我》全集在线看
超实用期货量能指标源码:26/6周期VR指标对比,自动画多空趋势线+关键价位支撑压力线,新手也能上手!
【免费插件】东方马达-选型软件
Vue v2.6.11 响应式实现源码解析
短剧《姐姐我装的》大结局1-74集(完整版/后续)
20款Visual Studio实用插件推荐
12月更新版PR插件合集到低有多强? 据说媲美“降龙十八掌”
厉害!进博会交通App今上线!集地图、资讯等于一体,助你迅速抵达“四叶草”
挖到宝了!DeepSider插件:一个顶N个,免费SORA2使用
让Excel轻松制作酷炫图表!这款免费插件不能错过
超好看!热门短剧丨大结局《苏先生复婚请排队》全集在线看
精彩短剧《当爱抵达时》完整版1-87集(后续/大结局)
iOS App 安全基础
iOS12实用插件推荐:大大增加控制中心实用性!
Angelababy为了复出,跑去演短剧了?网友:这颜值,降维打击!
热门短剧《桃夭》完整版1-84集大结局
用了这些app新手也能秒变修图大神/妙图AI
短剧版《许我耀眼》陈添祥&朱小雪新剧《格林童话》
恶意软件团队解散,5 万美元起拍源代码
某款专门仅针对「中国网民」的勒索软件(含源码下载)
热门短剧《幸得相遇离婚时》完整版1-96集(后续/大结局)
不用插件,一键批量打印!
【软件插件】Enscape3.4.4渲染器安装教程及下载
一款用了就停不下来的足球app
【文华财经】多指标共振多空信号指标源码 – 红绿光柱 + 顶底背离标注 + 超买超卖区间 + 多空文字提示