如何设置产品价格和产品折扣率根据订货数量和客户的不同而自动变化呢?
1、业务场景一:
合同订单选择产品,录入数量之后,含税单价自动根据定制的“价格表”带出
配置实现方法:在ld_related_producttoolfield 表中写入控制规则和查询SQL,然后清除缓存,刷新页面。
id:自动增长 modulename:设置需要添加控制的模块 trigger_columnname:设置哪些字段改变时触可以发规则,多个字段使用英文逗号分隔。单据分录中的“产品名称”使用“hdnProductId”来表示,其他字段使用单据分录 ld_producttoolfield 表中对应的 columnname 来表示。 effect_columnname:设置规则触发时,影响的字段(需要赋值的字段),多个字段使用英文逗号 query_sql:被影响字段赋值查询脚本: SELECT total AS taxprice FROM ld_customform05 a LEFT JOIN ld_customform05scf b ON b.customform05id=a.customform05id WHERE a.deleted=0 AND a.product_id='{hdnProductId}' AND b.cf_3321<='{quantity}' AND b.cf_3322>='{quantity}' ORDER BY b.cf_3321,b.cf_3322,a.modifiedtime DESC LIMIT 1 1) 查询脚本中变量引用方法: {触发字段} 2) 一定要把查询结果字段 AS 为 effect_columnname,查询结果只取一条记录 3) 该功能仅适用于V8.2.2及以上版本
2、业务场景二:
合同订单选择客户和产品后,自动带出对应客户和产品的折扣
配置实现方法:在ld_related_producttoolfield 表中写入控制规则和查询SQL,然后清除缓存,刷新页面。
Modulename:SalesOrder trigger_columnname:hdnProductId effect_columnname:discount_percent query_sql: SELECT ROUND(b.discount_percent,3) AS discount_percent FROM ld_quotes a LEFT JOIN ld_quotesdetail b ON b.id=a.quoteid WHERE a.deleted=0 AND a.approvestatus<>'已拒绝' AND b.productid='{hdnProductId}' AND a.accountid='{ld_salesorder.accountid}' ORDER BY a.modifiedtime DESC LIMIT 1
|