阅读:3669 回复:7
zhangbo_authine
12

帖子

42

跟帖

2071

积分

高级榴莲
高级榴莲

[已解决]流程图迁移至流程表单页面后,流程提交后,在我的已办中再次打开流程,流程图中的节点没有更新

楼主#
更多 发布于:2016-12-27 11:31
PS:用户在审批节点提交流程后,再在我的已办中打开,流程图并没有更新还是停留在当前节点,刷新页面无效,实际上已经流转到了下一个阶段,退出重新登录才会显示更新。
做了跟踪,基本上确认数据有缓存,但是js到底是在哪更新的数据这边做了跟踪没有进展,所以需要各位高能们看看有没有什么建议,或做过的给点思路

图片:流程图显示问题.png

图片:流程图节点.png

最新喜欢:

上善若水上善若水
武汉技术支持团队
40

帖子

1181

跟帖

3860

积分

论坛版主
论坛版主
1楼#
发布于:2016-12-29 19:26
帖内置顶  –    –  2016-12-30 10:41
通过远程代码调试,各位大神说的很对,表单链接生成时\Portal\WorkItemDetail.aspx.cs文件加了时间戳对表单进行了缓存。流程发起时去掉通过时间戳取最新数据即可。
路径:\Portal\WorkItemDetail.aspx.cs
 DateTime t = DateTime.Now;
                DateTime.TryParse(this.InstanceData.BizObject[OThinker.Organization.Unit.PropertyName_ModifiedTime] + string.Empty, out t);
                url += "&T=" + DateTime.Now.ToString("HHmmss") + WorkItemID.Substring(0, 8);
                if (SheetMode == WorkSheet.SheetMode.Print)
                {
                    url += "Print";
                }

                // 增加缓存控制
                this.Response.Redirect(url);
岩竹玉雨
20

帖子

840

跟帖

205241

积分

论坛版主
论坛版主
  • 社区居民
  • 忠实会员
2楼#
发布于:2016-12-27 12:58
因各个浏览器的差异导致缓存不能被及时刷新。
建议打开浏览器调试工具,查看网络请求,看看获取流程图的url请求状态是304还是什么。
我的解决方法是,在url请求中添加参数等于个时间戳,这样它每次访问都是新请求,
发问题贴的时候,可以@一下我,我就能更快的知道了
zhangbo_authine
12

帖子

42

跟帖

2071

积分

高级榴莲
高级榴莲
3楼#
发布于:2016-12-27 14:33
我试着在URL和引用的js后面都加了随机数,没有生效,这个流程图是一个控件,我是直接放在MvcSheet.Master中的,估计还是得看看数据缓存的位置在哪
zhangbo_authine
12

帖子

42

跟帖

2071

积分

高级榴莲
高级榴莲
4楼#
发布于:2016-12-27 14:35
岩竹玉雨:因各个浏览器的差异导致缓存不能被及时刷新。
建议打开浏览器调试工具,查看网络请求,看看获取流程图的url请求状态是304还是什么。
我的解决方法是,在url请求中添加参数等于个时间戳,这样它每次访问都是新请求,
回到原帖
我试了下在URL和js后面都加入随机数,没有生效,这个流程图是一个控件,直接加载在MvcSheet.Master模板页中,估计还是得跟踪一下,缓存数据的位置在哪
武汉技术支持团队
40

帖子

1181

跟帖

3860

积分

论坛版主
论坛版主
5楼#
发布于:2016-12-29 19:26
通过远程代码调试,各位大神说的很对,表单链接生成时\Portal\WorkItemDetail.aspx.cs文件加了时间戳对表单进行了缓存。流程发起时去掉通过时间戳取最新数据即可。
路径:\Portal\WorkItemDetail.aspx.cs
 DateTime t = DateTime.Now;
                DateTime.TryParse(this.InstanceData.BizObject[OThinker.Organization.Unit.PropertyName_ModifiedTime] + string.Empty, out t);
                url += "&T=" + DateTime.Now.ToString("HHmmss") + WorkItemID.Substring(0, 8);
                if (SheetMode == WorkSheet.SheetMode.Print)
                {
                    url += "Print";
                }

                // 增加缓存控制
                this.Response.Redirect(url);
zhangbo_authine
12

帖子

42

跟帖

2071

积分

高级榴莲
高级榴莲
6楼#
发布于:2016-12-30 10:05
武汉技术支持团队:通过远程代码调试,各位大神说的很对,表单链接生成时\Portal\WorkItemDetail.aspx.cs文件加了时间戳对表单进行了缓存。流程发起时去掉通过时间戳取最新数据即可。
路径:\Portal\WorkItemDetail.a...
回到原帖
厉害了,我的哥
zhangbo_authine
12

帖子

42

跟帖

2071

积分

高级榴莲
高级榴莲
7楼#
发布于:2016-12-30 10:07
@上善若水 ,老大,在武汉技术中心团队的支持下问题已解决,谢谢各位大神的帮助,可以结贴了
上善若水
17

帖子

1282

跟帖

12345

积分

管理员
管理员
  • 社区居民
8楼#
发布于:2016-12-30 10:16
zhangbo_authine:@上善若水 ,老大,在武汉技术中心团队的支持下问题已解决,谢谢各位大神的帮助,可以结贴了回到原帖
收到,谢谢分享,欢迎以后多来社区发帖讨论问题。
H3 BPM 让天下没有难用的流程。全国统一服务热线 :400-889-8625
游客

返回顶部