泛微E8的数据展示集成方法

前几天在开发一个需求,要关联表单中选中明细行的某个字段A,在调用同一个明细行的数据集成展示控件时,显示其他表中字段B和A值相等的记录。

因为泛微E8的文档中,连流程关联字段怎么用都没讲。摸索半天,结论如下:

  1. ”查询SQL“中,必须明确 select 出 “主键" 对应的字段、以及最好 select 出 ”字段设置“ 中需要显示的字段。
  2. ”查询SQL“中,需要在 where 条件中赋值给 $明细表数据库表名_明细表数据库字段名$ 或者$主表数据库字段名$ 这样格式的字段。而且 where 条件赋值应该有一对 ' ' 包围起来。
  3. 完成前面 2 项操作,在 “字段设置” 中填写需要显示的字段后,该字段的 “流程联动字段名称” 应该填写第 2 步中的 $明细表数据库表名_明细表数据库字段名$ 或者$主表数据库字段名$ 。 
  4. 各部分配置如图:
  5. “查询SQL”示例为:
    select dt1.id, dt1.WLBM_MX, dt1.XQCPMS_MX
      from formtable_main_1025_dt1 dt1
      left join formtable_main_1025 m
        on m.id = dt1.mainid
     where dt1.wlbm_mx is not null
     and dt1.WLBM_MX = '$formtable_main_829_dt1_MX_WLBM$'

 上面的 SQL 语句中,对应流程界面的明细表是 formtable_main_829_dt1 ,该明细表中带入数据展示的字段是 MX_WLBM 。该字段对应下面截图的 “编码字段” 字段。最终效果如图:

后续使用中发现了一个问题,就是查询 SQL 中不论配置哪个字段作为 “标题栏”显示在单元格中,实际对应单元格中 input 对应的值都是查询 SQL 中的 “主键” 的值。坑爹啊坑爹啊,来个有水平的讲讲,是怎么回事?

解决了第一个字段的传入之后,如果我们不需要数据集成展示的弹窗输入某些字段、而只是直接带出多个条件下的结果,可以尝试下面的另一种写法。

select m.LSH, dt1.id, dt1.WLBM_MX, dt1.XQCPMS_MX, m.SJH
  from formtable_main_1025_dt1 dt1
  left join formtable_main_1025 m
    on m.id = dt1.mainid
 where dt1.wlbm_mx is not null
   and dt1.WLBM_MX = '$formtable_main_829_dt1_MX1_WLBM$' and m.SJH = '$GCBBH$'

这里的 SJH 字段直接取当前表单中的 GCBBH 字段,所以没有写前缀的所属表名。配置数据展现集成时,此处不需要配置对应字段的 “流程联动字段”。前端页面对照结果如下:

 数据展现集成的字段配置如下:

点击之后,就呈现这样的效果了。注意配置为"标题栏"的字段只能有一个,就是选中后显示在表单界面的单元格中的字段、而配置为"查询字段"的字段可以不止一个

如果遇到数据展现集成抽风、忽然不显示字段、后台 sql 有结果但界面无结果的,考虑重启一下服务器和清理后端缓存。

哎,就是,非常不好用。。 

(完)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值