简单帐表A双击行跳转简单帐表B
代码简单,希望能够帮忙需要的人,如有更简洁的代码,欢迎分享。
第一步:生成表A表单插件,引用类包,继承AbstractSysReportPlugIn,添加CellDbClick方法
using System.Collections.Generic; using System.Linq; using System.Text; using System.ComponentModel; using System.Data; using Kingdee.BOS.Util; using Kingdee.BOS.Core.Report.PlugIn; using Kingdee.BOS.Core.Report.PlugIn.Args; using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; using Kingdee.BOS.Model.Report; using Kingdee.BOS.Web.Report.SQLReport; using Kingdee.BOS.Core.DynamicForm; using Kingdee.BOS.Core.Report; |
[Description("双击行打开简单帐表")] public class KDVPriceListParameters : AbstractSysReportPlugIn { /// <summary> /// 帐表行双击事件 /// </summary> /// <param name="e"></param> public override void CellDbClick(CellEventArgs Args) { var showParam = new SysReportShowParameter(); showParam.FormId = "kb77d7d312de648e9a781a0e41119b747";//目标账表B的标识 showParam.ParentPageId = this.View.PageId; showParam.CustomComplexParams["KDVFCUSTID"] = ((ISysReportViewService)this.View).GetCurrentRowValue("FCUSTID").ToString();//要传递的参数 showParam.IsShowFilter = false; showParam.OpenStyle.ShowType = ShowType.MainNewTabPage; this.View.ShowForm(showParam); } } |
第二步:生成表B表单插件,引用类包,继承AbstractSysReportPlugIn,添加OnInitialize方法
using System; using System.Collections.Generic; using System.Linq; using System.Text; using Kingdee.BOS; using Kingdee.BOS.Core.Bill.PlugIn; using Kingdee.BOS.Core.DynamicForm.PlugIn.Args; using Kingdee.BOS.Orm.DataEntity; using Kingdee.BOS.Core.SqlBuilder; using Kingdee.BOS.Core.Metadata; using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel; using Kingdee.BOS.Core.Report.PlugIn; using System.ComponentModel; using Kingdee.BOS.Core.Report; |
[Description("过滤器接收参数")] public class KDVPriceListDetailsFilter : AbstractSysReportPlugIn { public override void OnInitialize(InitializeEventArgs e) { //接收源单传递的参数"KDVFCUSTID" base.OnInitialize(e); string Fid = this.View.ParentFormView.OpenParameter.GetCustomParameter("KDVFCUSTID").ToString(); this.SysReportModel.RptParams.CustomParams["FCustomerID"] = Fid; } } |
第三步:服务插件帐表B中获取帐表A传递的值
接收方式一:
object FCUSTID = null; filter.CustomParams.TryGetValue("KDVFCUSTID", out FCUSTID); if (FCUSTID != null) { FCustomerID= FCUSTID.ToString(); } |
接收方式二:
Dictionary<string, object> fiterstrings = (Dictionary<string, object>)filter.CustomParams.FirstOrDefault().Value;//CustomParams中拿到传过来的参数 var fiterstring = (from p in fiterstrings where p.Key == "KDVFCUSTID" select p).ToList(); if (fiterstring != null) { FCustomerID= fiterstring[0].Value.ToString(); } |
宝,不要看了,没有第四步了,此外十分感谢金蝶开发 拿了你的糖 的友情指导~
请教一下,一样的照着写的为什么这里获取不到值?
简单帐表A双击行跳转简单帐表B
本文2024-09-16 19:04:17发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-26207.html
- 鼎捷EAI整合規範文件V3.1.07 (集團).pdf
- 鼎捷OpenAPI應用場景說明_基礎資料.pdf
- 鼎捷OpenAPI應用場景說明_財務管理.pdf
- 鼎捷T100 API設計器使用手冊T100 APIDesigner(V1.0).docx
- 鼎新e-GoB2雲端ERP B2 線上課程E6-2應付票據整批郵寄 領取.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A4使用者建立權限設定.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程C3會計開帳與會計傳票.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程E6-1應付票據.pdf
- 鼎新e-GoB2雲端ERP B2 線上課程A5-1進銷存參數設定(初階篇).pdf
- 鼎新e-GoB2雲端ERP B2 線上課程D2帳款開帳與票據開帳.pdf