电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

U9技术文档-范例-U9研发体系(批量生单后的翻页处理).PDFVIP免费

U9技术文档-范例-U9研发体系(批量生单后的翻页处理).PDF_第1页
1/5
U9技术文档-范例-U9研发体系(批量生单后的翻页处理).PDF_第2页
2/5
U9技术文档-范例-U9研发体系(批量生单后的翻页处理).PDF_第3页
3/5
U9 批量生单后的翻页处理范例说明 版 本 号 :V1.0 作者:鞠万群 版本记录 【此部分要记录该文档形成过程中的历次版本变更过程及变更的内容】 版本 修改与参与人 修改时间 修改原因 修改概述 审批人1.0 鞠万群 2008/06/30 原始文档建立 一.问题域说明 批量生单:批量参照来源单据产生单据。 本范例的应用场景:通过批量生单操作,产生一系列单据,如何通过 Toolbar 功能翻页查询单据 二.基本原理 通过后台 Bp 查询出来的结果,返回单据 ID 组成的 List,把 List 以及当前的单据的 Index放在 session 中, 翻页操作处理 List 与 Index 三.关键代码及说明 1、首页: 首先判断缓存中是否存在 AdjustMemos 的值,如果缓存中同时存在应收单 ID 列表AdjustMemosARBillIDs,则按照自定义的规则翻页,否则,按照平台默认实现翻页。 if (this.CurrentState["AdjustMemos"] != null && this.CurrentState["AdjustMemos"].ToString().Length > 0){ if (this.CurrentState["AdjustMemosARBillIDs"] != null) { //从缓存中取批量生单产生的ID列表 List ARBillIDs = (List)this.CurrentState["AdjustMemosARBillIDs"]; //导航到应收单ID列表中的第一个ID对应的应收单 this.NavigateAction.MovePageAt(null, ARBillIDs[0]); //设置当前索引 CurrenctIndex = 0; } }else{ //平台默认实现 this.FirstPage_DefaultImpl(sender, e); } 2、上一页: if (this.CurrentState["AdjustMemos"] != null && 他his.CurrentState["AdjustMemos"].ToString().Length > 0) { if (this.CurrentState["AdjustMemosARBillIDs"] != null) { List ARBillIDs = (List)this.CurrentState["AdjustMemosARBillIDs"]; //如果当前索引没有超出缓存中的应收单ID列表的长度,并且大于0,当前索引递减一位 if (CurrenctIndex < ARBillIDs.Count && CurrenctIndex > 0) { CurrenctIndex--; this.NavigateAction.MovePageAt(null, ARBillIDs[CurrenctIndex]); } } } else{ //平台默认实现 this.PrevPage_DefaultImpl(sender, e); } 3、下一页: if (this.CurrentState["AdjustMemos"] != null && this.CurrentState["AdjustMemos"].ToString().Length > 0) { if (this.CurrentState["AdjustMemosARBillIDs"] != null) { List ARBillIDs = (List)this.CurrentState["AdjustMemosARBillIDs"]; //如果当前索引没有超出缓存中的应收单ID列表的长度,并且大于等于0,当前索引递增一位 if (CurrenctIndex < ARBillIDs.Count - 1 && CurrenctIndex >= 0) { CurrenctIndex++; this.NavigateAction.MovePageAt(null, ARBillIDs[CurrenctIndex]); } } }else{ this.NextPage_DefaultImpl(sender, e); } 4、末页: if (this.CurrentState["AdjustMemos"] != null && this.CurrentState["AdjustMemos"].ToString().Length > 0) { if (this.CurrentState["AdjustMemosARBillIDs"] != null) { List ARBillIDs = (List)this.CurrentState["AdjustMemosARBillIDs"]; //指定索引为列表长度数量去1 CurrenctIndex = ARBillIDs.Count - 1; this.NavigateAction.MovePageAt(null, ARBillIDs[CurrenctIndex]); } }else{ this.LastPage_DefaultImpl(sender, e); } //批量生单产生一系列应收单 batchAccrueDocDTODataOri = (List)this.CurrentState["batchAccrueDocDTODatas"]; BatchAccrueDocToARBillBPProxy batchAccrueDocToARBillBPProxy = new BatchAccrueDocToARBillBPProxy(); ARBatchAccrueResultView batchAccrueResultView = this.CurrentModel.ARBatchAccrueResult; List list = new List(); foreach (ARBatchAccrueResultRecord temp in batchAccrueResultView.Records) { if (temp.IsSelected) { long dtoid = temp.DTOID ?? 0; foreach (BatchAccrueDocDTOData tempDto in batchAccrueDocDTODataOri) { if (tempDto.DocLineID == dtoid) { list.Add(tempDto); break; } } } } batchAccrueDocToARBillBPProxy.BatchAccrueDocDTO = list; batchAccrueDocToARBillBPProxy.AccOrg = PDContext.Current.OrgRef.ID; batchAccrueDocToARBillBPProxy.SrcOrg = long.Parse(this.CurrentState["SrcOrg"].ToString()); List IDList = batchAccrueDocToARBillBPProxy.Do(); //缓存产生的应收单ID列表 this.CurrentState["AdjustMemosARBillIDs"] = IDList; //显示第一张应收单 if (IDList != null && IDList.Count > 0) //给IsReLoadARBill赋值,加载第一条记录 this.CurrentState["IsReLoadARBill"] = IDList[0]; 本示例具体代码请参见 E:\View\U9UICode\U9.VOB.PD.FI\AR\Code\ARMaintenanceUI\Action\ AROtherUIModelActionExtend.cs 486行开始 E:\View\U9UICode\U9.VOB.PD.FI\AR\Code\ARMaintenanceUI\Action\ ARMaintenanceUIModelActionExtend.cs 1750行开始 四.源代码使用说明 下载:http://u9scm91/isvdoc/download/U9 研发体系(批量生单后的翻页处理).rar直接解压缩到 E:\View\U9UICode\U9.VOB.PD.FI\AR\Code

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

U9技术文档-范例-U9研发体系(批量生单后的翻页处理).PDF

您可能关注的文档

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信