BOS:配置日期字段取当月最后一天(月末那天)原创
20人赞赏了该文章
2,407次浏览
未经作者许可,禁止转载编辑于2022年01月23日 21:31:15
一、业务需求
实际工作中会有把单据日期默认成当月最后一天的需求,比如说应收单的日期默认为当月最后一天,这种问题可以怎么设置呢?
二、解决方案
在不做二开的情况下,可以通过在BOS中配置实体服务规则和值更新事件实现(在单据表体的实体服务规则中,或者是单据转换的表单服务策略都可以这么设置),具体做法如下:
另外,也可以写Python脚本实现这个需求,可参考这位大神@帅_Lwzrd4C的回复:https://vip.kingdee.com/questions/221234878484730368
把下面的脚本注册到应收单的表单插件中即可生效!
from System import *
def OnLoad(e):
y = DateTime.Now.Year;
m = DateTime.Now.Month;
t1 = DateTime(y, m, 1);
t2 = t1.AddMonths(1).AddDays(-1);
this.Model.SetValue("FDATE", t2);
三、总结
如果使用python脚本的方式,只需要在表单插件中配置一次即可,不管是应收单新增还是下推的应收单,日期字段都可以取到当月最后一天,到期日也可以自动计算;
如果是使用实体服务规则配置公式的方式,就需要在表体实体服务规则和单据转换中都要配置一次,而且新增应收单的情况下,到期日不会跟着业务日期来计算,单据转换时就会,这里应该和表单的实体服务规则的执行顺序有关!
赞 20
20人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读