反写.二开案例.实现枚举字段的反写
【场景】枚举字段的反写
![image.webp](/download/01003d72cb0fd72f401699487812cb266900.webp)
实现 1-》-2-》3-》4的转换;
由于枚举列表是字符型字段,不支持累加/扣减,使用覆盖模式时回退不支持。
【案例1】利用状态字段、行关闭控制处理;( 调整枚举字段为状态字段)
(a)拆分状态,正向状态和反向状态
![image.webp](/download/0100e919a65e948c4b3da4b9aa6732c14dc4.webp)
![image.webp](/download/0100b3e8dfae268e466eabbf53d276a545a3.webp)
(b)借助单据上的数量字段进行关闭控制,如果没有的话最上游增加一个数量字段,默认值为1;反写计算累加1(注意自行增加数值字段后是否支持拆单下推)
![image.webp](/download/01000d2e58e8801b4730815d6665fd1859bd.webp)
![image.webp](/download/0100cdf870a7bdc94602a3f39e1d6c68cdcf.webp)
(c)配置关联的关闭控制
采购申请单,默认值为1;下推订单后反写累加1,变为2,行关闭使用 是否大于等于2判断,大于等于2 则代表 为执行
同理下推入库单,原2累加1,变为3,使用 是否大于等于3判断,大于等于3代表入库
![image.webp](/download/01006fd263e179ff4d7b868e4eaea0234257.webp)
![image.webp](/download/01009a813aff5389470c87efcfa20a0f0113.webp)
(4)合并两个状态字段组成枚举字段,枚举字段不再支持修改,仅通过修改状态字段合并
增加子单据头作为视图,调整枚举为视图字段(注意配置操作后刷新字段)
```sql
-- 如果 反向状态为空则取正向状态,否则 取反向状态
create view V_PUR_Requisition as
select fid, fid as fentryid,
case when (FBillStatus1 is null or FBillStatus1 ='' or FBillStatus1 = 'Z') then F_BHR_BillStatus else FBillStatus1 end as F_BHR_PrivateCombo1
from T_PUR_Requisition
```
![image.webp](/download/010014af9034a45c4e219e5140e11efc99ad.webp)
![image.webp](/download/0100f4142ff3ecfe4f43840f7239d4c4b773.webp)
![image.webp](/download/0100e8bc7a4d7362464ca71352d8ea4ab10f.webp)
(5)验证枚举字段 = 两个状态字段的组合, 如果 反向状态为空则取正向状态,否则 取反向状态
![image.webp](/download/010081ad1f5eff19439e9525bff4e1d870d9.webp)
![image.webp](/download/0100fdc63447104042589a020aac90f27b26.webp)
(6)说明:此方案最好是使用单据上已有的数量字段,能够支持拆分下推
本质逻辑就是拆分为两个状态字段处理
【案例2】利用数值字段、反写控制处理
(a) 案例一说明了数据库视图的逻辑,利用了状态字段和状态字段实现了组合,本案例也可以以同样的逻辑, 实现 数值字段 和状态字段组合,反写的时候反写数值即可
(b) 同案例一,增加一个数值字段,只用作1、2、3、4,实现累加反写
(c) 数据库视图
![image.webp](/download/0100dbbfbce2590043f28eacbd12fdbf3ccd.webp)
```sql
-- 如果 反向状态为空则取反写状态位,否则 取反向状态
create view V_PUR_Requisition as
select fid, fid as fentryid,
case when (FBillStatus1 is null or FBillStatus1 ='' or FBillStatus1 = 'Z') then convert(varchar(20),F_BHR_Integer) else FBillStatus1 end as F_BHR_PrivateCombo1
from T_PUR_Requisition
```
(d)验证
![image.webp](/download/010008cffe26037f4c1996b538c18dbc35db.webp)
【备注】能用状态字段最好用状态字段
反写.二开案例.实现枚举字段的反写
【场景】枚举字段的反写![image.webp](/download/01003d72cb0fd72f401699487812cb266900.webp)实现 1-》-2-》3-》4的转换;由于枚举列表是...
点击下载文档
本文2024-09-16 18:21:35发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-21625.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章