查看: 2287|回复: 3

视图中显示数据表格(Datatable、datatable)每一行的实现方式

升级   60.2%

47

主题

63

回帖

801

积分

高级会员

Rank: 4

积分
801
发表于 2023-7-10 11:27:29 | 显示全部楼层 |阅读模式
本帖最后由 Baymax 于 2023-7-10 11:29 编辑

配置如下:
OA8.0.3
数据库:MySQL 8.0.33

1.先总结:在数据中心视图的查询配置中,利用原生SQL查询qry_item表的数据即可。

2.效果图:
注:未设置权限。

3.实现方式:
3.1 在流程应用中有如下数据表格(注意数据表格每一列的标识,SQL查询语句候需要对应):
3.2 在数据中心建立与流程应用对应的应用,在该应用中建立“查询配置”
3.3 “查询配置”的基本信息如下:
主要注意几个点:原生SQL,总数语句,访问对象类型。
3.4 查询语句如下:
SELECT t2.workId,t1.item,t1.unit,t1.count,t1.price,t1.total,t1.actualPayment,t1.`comment`
FROM
(
    SELECT
        a.xbundle AS aid,
        MAX(CASE a.xpath3 WHEN 'item' THEN a.xstringShortValue END) AS "item",
        MAX(CASE a.xpath3 WHEN 'unit' THEN a.xstringShortValue END) AS "unit",
        MAX(CASE a.xpath3 WHEN 'count' THEN a.xnumberValue END) AS "count",
        MAX(CASE a.xpath3 WHEN 'price' THEN a.xnumberValue END) AS "price",
        MAX(CASE a.xpath3 WHEN 'total' THEN a.xnumberValue END) AS "total",
        MAX(CASE a.xpath3 WHEN 'actualPayment' THEN a.xnumberValue END) AS "actualPayment",
        MAX(CASE a.xpath3 WHEN 'comment' THEN a.xstringShortValue END) AS "comment"
    FROM qry_item AS a
        LEFT JOIN pp_c_worklog AS b ON a.xbundle = b.xjob
    WHERE b.xfromActivity = '3d59f7b1-2c62-48a9-9247-7b1547d65138'
        AND a.xpath0 = "details"
        AND a.xpath1 = "data"
        AND LENGTH(a.xpath3) > 0
        AND a.xpath3 <> "attaItem"
    GROUP BY a.xbundle,a.xpath2
    ORDER BY CONVERT(a.xpath2,SIGNED)
) AS t1
LEFT JOIN   
(
    SELECT
        c.xbundle AS cid,
        c.xstringShortValue AS "workId"
    FROM qry_item AS c
        LEFT JOIN pp_c_worklog AS d ON c.xbundle = d.xjob
    WHERE d.xfromActivity = '3d59f7b1-2c62-48a9-9247-7b1547d65138'
        AND c.xpath0 = "$work"
        AND c.xpath1 = "workId"
) AS t2 ON t1.aid = t2.cid
说明:
a.以上查询条件是根据qry_item表的索引来的;
b.b.xfromActivity = '3d59f7b1-2c62-48a9-9247-7b1547d65138'”,后面的值是流程中“开始”节点的标识,如图:

4.查询速度2秒左右
我在另外的数据库中根据OA表新建了qry_item表和pp_c_worklog表,数据量如下:
本来想怼1千万数据进去,无奈电脑太慢,还是机械盘,所以就放弃了。

最后,优化改造就交给论坛里的各位大佬了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

升级   100%

138

主题

1万

回帖

3万

积分

超级版主

Rank: 8Rank: 8

积分
37297
发表于 2023-7-11 09:20:55 | 显示全部楼层
哇哦,大神大神,感谢您的分享  

点评

点赞  发表于 2023-7-26 13:01
回复

使用道具 举报

升级   18%

16

主题

21

回帖

590

积分

高级会员

Rank: 4

积分
590
发表于 2023-8-22 20:58:22 | 显示全部楼层
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

联系客服 关注微信 下载APP 返回顶部 返回列表
viewthread