NC单据模板公式使用

单据模板公式使用

(一) 公式使用场景

用户使用产品时,往往对单据上的字段取值有各种不同的需求。为此单据模板提供

了模板公式功能,可以让实施顾问或者用户通过配置各种公式,并且不用修改代码,从

而满足用户的各种个性化需求。

(二) 单据模板三种公式

1、编辑公式

可实现单据编辑中字段自动带值的功能。只在编辑状态起作用,在某字段上设置好

编辑公式,当此字段编辑后,公式会被执行,并将结果填充到目的字段上。

例如:单据上编辑业务员,自动带入部门

2、显示公式

可实现单据显示时加载非持久信息的功能。只在非编辑状态起作用,例如查询后加

载或保存后刷新界面等,模板上的显示公式均会执行,运算结算会显示到相应字段上。

例如:采购入库单取采购订单的预计到货日期。

3、控制公式

可实现单据保存的检查功能。只在编辑状态起作用,一般在单据保存时执行所有字

段上的控制公式,根据公式类型的不同做不同的响应,可能弹出错误信息,也可能弹出

确认信息等。可以起到控制及提示作用,项目上应用广泛。

控制公式又分为:提示公式、检查公式、界面控制公式三种。

a、提示公式:如单据金额超过某一数值时,进行提示或弹出界面,用户以此判断

是否继续保存单据。

b、检查公式:例如:单据金额超过某一数值时,报出错误,不能保存单据。

c、界面控制公式:根据条件判断,单据上的字段颜色显示、或者能否编辑、或者

是否激活。

(三) 常用公式的应用场景

在产品中,开发人员一般情况下直接在后台通过 sql语句实现用户所需功能。实际

上我们定义的公式在执行时也是转化为 sql语句,本质是一样的。

场景一:采购订单表体行中取来源请购单行的需求日期,客户需要

分析计划到货日期与需求日期的差距, 相差较大的话需要对供应商催

货或者提醒下游用料单位做好材料短缺准备。

实现此功能,可使用三个表体自定义项,分别起名为:需求日期、相差天数、是否

严重延迟。

a、需求日期显字段示公式定义为:

getcolvalue(po_praybill_b ,dreqdate ,pk_praybill_b ,csourcebid )

意思是:从请购单表体(po_praybill_b)中取需求日期(dreqdate)的值,条件是

请购单表体行 ID(pk_praybill_b)等于采购订单的表体字段来源单据明细值(csourcebid) 。

类似于 sql语句:select dreqdate from po_praybill_b where pk_praybill_b= csourcebid

b、相差天数定义显示公式为:

comparedate(dplanarrvdate ,vbdef1 ,"D" )

意思是:比较采购订单表体计划到货日期(dplanarrvdate)与自定义项一(需求日

期)的差值,用天数(D)来体现。

c、在是否严重延迟定义显示公式为:iif(vbdef2>5,"是","否")

意思是:如果自定义项二的值大于 5,则为:是,否则为:否

场景二:单据中编辑业务员,给部门字段带出人员的任职部

门。

此时可以在人员字段中定义编辑公式:

rowcount->getrowcount("bd_psnjob","pk_psndoc",cemployeeid,"pk_org",pk_org);

pk_dept->iif(rowcount==1,getcolvalue2(bd_psnjob,pk_dept,pk_psndoc,cemployeeid,pk

_org,pk_org),pk_dept);

pk_dept_v->iif(rowcount==1,getcolvalue(org_dept ,pk_vid , pk_dept ,

pk_dept),pk_dept_v);

场景三:如果请购单的请购数量超过 1000,给出用户提示,

让用户自己判断是否保存。

方式一:使用控制公式:$Confi

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值