从单据列表打开单据错乱
金蝶云社区-云小爱
云小爱
0人赞赏了该文章 1,510次浏览 未经作者许可,禁止转载编辑于2014年04月03日 12:38:56

当没有修改权限时,从单据列表通过点击单据编号链接的方式打开一张单据后(查看状态),再通过双击的方式打开另一张单据时,打开的还是之前通过单击单据编号链接打开的那张单据,经过跟踪发现,是由于Kingdee.BOS.Core.DynamicForm.AbstractFormOperation中的SelectedIDs属性取值有问题,代码如下:


继续跟踪发现通过单击单据编号链接的方式打开单据时在Kingdee.BOS.Web.List.ListView.OpenBill方法中往ListView的OpenParameter的CustomParameter属性中增加了以下键值对,代码如下:this.OpenParameter.SetCustomParameter("ListOpenPK", obj3);
this.OpenParameter.SetCustomParameter("ListOpenFormId", str3);
this.OpenParameter.SetCustomParameter("ListOpenLayoutId", str4);
应该在Operation操作中获取这三个键值对后删除这几个键值对,后续通过双击打开单据时就能正常打开对应的单据,但是跟踪发现当用户拥有修改权限时,以修改方式打开的情况下会正常删除,而当用户没有修改权限时,以查看方式打开的情况下则不会删除,具体代码如下:
1、修改操作,Kingdee.BOS.Business.Bill.Operation.Modify的ExecuteListOperation方法代码


2、查看操作,Kingdee.BOS.Business.Bill.Operation.View的ExecuteOperation方法代码


以上是跟踪发现的问题,目前已给用户增加修改权限临时解决此问题,请BOS的大神们看看是否需要修改,谢谢!