查看: 1392|回复: 6

主流程表单里如何查看子流程具体流转情况?

升级   0.1%

136

主题

241

回帖

10

积分

注册会员

Rank: 2

积分
10
发表于 2024-8-28 09:24:36 | 显示全部楼层 |阅读模式
本帖最后由 szhtest 于 2024-8-28 10:16 编辑

需求点:业务要求能在主流程表单上查看到子流程的状态(显示流转到哪个环节或者是否结束)都可以


1.我这些子流程结束后接下来是不会回到主流程环节的(可以看做由主流程另外启动了条新的流程),子流程及其结束是完全独立的。
所以我不能配置流程等待,没法在子流程完成事件后返回数据到主流程

2.查看过往帖子,但并不想在表单中放入视图:https://www.o2oa.net/forum/forum.php?mod=viewthread&tid=21547&highlight=%E5%AD%90%E6%B5%81%E7%A8%8B

3.发现有个帖子提到在主流程里放入子流程的流程监控的,但是我不太理解管理员所说的操作,想在详细询问下:
子流程的流程监控
管理员说:“可以做一个iframe,给子流程做一个表单,表单上只放流程监控组件,通过iframe嵌入子流程的方式来实现”

现在我主流程A和子流程BCD其实是独立的,各自有各自的表单,平时B/C/D也会作为独立的流程启动。不太理解说再给子流程做个额外的表单,通过iframe嵌入子流程,具体是怎么操作呢?适用于我这种情况吗?
我可能比较想在主流程表单上放几个子流程的流程监控的“按钮”点击开来。


或者有没有什么其他方法?让我能拿到对应子流程的状态或者环节也行,然后我去赋值到主流程的一个文本组件上
回复

使用道具 举报

升级   100%

139

主题

1万

回帖

4万

积分

超级版主

Rank: 8Rank: 8

积分
41458
发表于 2024-8-30 09:40:34 | 显示全部楼层
嵌入视图最简单,如果不想嵌入视图,就还是一样,做一个视图出来,然后使用脚本this.view.lookup(view, callback, async);拿到数据后在表单上显示
http://xxxxxxx/api/module-view.html#.lookup
回复

使用道具 举报

升级   0.1%

136

主题

241

回帖

10

积分

注册会员

Rank: 2

积分
10
发表于 2024-8-30 14:47:52 | 显示全部楼层
论坛管理员 发表于 2024-8-30 09:40
嵌入视图最简单,如果不想嵌入视图,就还是一样,做一个视图出来,然后使用脚本this.view.lookup(view, cal ...

有没有什么办法可以在主流程里获取子流程的jobid还是workid,然后我调用什么接口可以拿到子流程走到哪个环节或者状态的?
回复

使用道具 举报

升级   100%

139

主题

1万

回帖

4万

积分

超级版主

Rank: 8Rank: 8

积分
41458
发表于 2024-9-2 09:34:28 | 显示全部楼层
主流程里没有记录子流程的id,只有子流程里有记录主流程的id
回复

使用道具 举报

升级   0.1%

136

主题

241

回帖

10

积分

注册会员

Rank: 2

积分
10
发表于 2024-9-2 09:36:15 | 显示全部楼层
本帖最后由 szhtest 于 2024-9-2 09:42 编辑
论坛管理员 发表于 2024-9-2 09:34
主流程里没有记录子流程的id,只有子流程里有记录主流程的id

那请问您说的做一个视图是什么操作呢?


按我自己的理解是创建一个视图然后写SQL语句?但如果我主流程里无法拿到子流程的ID之类的,我视图是要如何select到子流程的对应数据?
回复

使用道具 举报

升级   100%

139

主题

1万

回帖

4万

积分

超级版主

Rank: 8Rank: 8

积分
41458
发表于 2024-9-2 13:26:54 | 显示全部楼层
做一个视图,子流程里是有主流程的id的,在work里面,或者您不用系统的,直接在发起子流程时作为业务数据把jobid、workid带到子流程中都可以,
然后在主流程里通过this.view.lookup(view, callback, async);视图的过滤,过滤带到子流程里的id,就可以拿到匹配的数据了
回复

使用道具 举报

升级   0.1%

136

主题

241

回帖

10

积分

注册会员

Rank: 2

积分
10
发表于 2024-9-4 10:07:00 来自手机 | 显示全部楼层
本帖最后由 szhtest 于 2024-9-5 11:18 编辑
论坛管理员 发表于 2024-9-2 13:26
做一个视图,子流程里是有主流程的id的,在work里面,或者您不用系统的,直接在发起子流程时作为业务数据把 ...

我采用了你说的嵌入视图的方式,很便捷

我在该视图中加了一列:主流程ID

1.请问我在视图里的主流程ID列的选择数据和数据路径应该填写什么?



我根据this.workContext.getTask()的字段,在数据路径尝试写了$work.parentJob或者parentWork,是拿取不到的,我发现似乎只有选择数据里能让我选的字段,我即使不进行选择然后直接在数据字段写$work.xx能拿到。而this.workContext.getTask()里存在的字段但是选择数据里没能选择的,我直接在“数据路径”写也是获取不到的。。。为什么?
我只能在流程调用的数据脚本里,把父流程的jobid当业务数据a赋给子流程,我的视图里才能直接拿到这个字段
回复

使用道具 举报

发表回复

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

本版积分规则

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