报表打开对应的对应表单

//一下代码为合法性检查错误报表点击错误详情这一超链接列时打开错误详情的动态表单
using
System; using System.Collections.Generic; using System.Linq; using System.Text; using Kingdee.BOS.Core.Report.PlugIn; using System.ComponentModel; using Kingdee.BOS.Core.DynamicForm; using Kingdee.BOS.ServiceHelper; using Kingdee.BOS.Orm.DataEntity; namespace LUTAI.K3.FIN.Business.PlugIn.Report { [Description("合法性检查错误详情")] public class LT_HS_ValidityCheckDetail : AbstractSysReportPlugIn { public override void OnInitialize(Kingdee.BOS.Core.DynamicForm.PlugIn.Args.InitializeEventArgs e) { base.OnInitialize(e); }
//点击错误详情字段
public override void EntryButtonCellClick(Kingdee.BOS.Core.DynamicForm.PlugIn.Args.EntryButtonCellClickEventArgs e) { base.EntryButtonCellClick(e); if (e.FieldKey == "FERRORDETAIL") { this.ShowCheckDetailForm(Convert.ToInt32(e.Row)); } } private void ShowCheckDetailForm(int row) { string sql = string.Format(@"/*dialect*/ select fentryid from {0} where FIDENTITYID={1}",this.SysReportModel.DataSource.TableName,row); DynamicObject DBfentryId = DBServiceHelper.ExecuteDynamicObject(this.Context, sql).FirstOrDefault(); if (DBfentryId == null) return; string fentryId = Convert.ToString(DBfentryId["fentryid"]); DynamicFormShowParameter parameter = new DynamicFormShowParameter(); parameter.FormId = "LT_HS_CHECKDETAIL"; parameter.CustomParams.Add("FEntryId", fentryId);//参数为内码 parameter.ParentPageId = this.View.PageId; this.View.ShowForm(parameter); } } }

   //在要打开的单据或报表的表单插件中获取传递的参数

    [Description("期初在产品成本调整汇总")]
    public class LT_CB_INITPRODUCECOSTADJSUM : AbstractSysReportPlugIn
    {
        public override void OnInitialize(Kingdee.BOS.Core.DynamicForm.PlugIn.Args.InitializeEventArgs e)
        {
            base.OnInitialize(e);
           var customPara = this.SysReportModel.OpenParameter.GetCustomParameters();//获取
           var RptParams = this.SysReportModel.RptParams.CustomParams;//赋值
           RptParams["FACCTGSYSTEMID"] = Convert.ToString(customPara["FACCTGSYSTEMID"]);
           RptParams["FACCTGORGID"] = Convert.ToString(customPara["FACCTGORGID"]);
           RptParams["FACCTPOLICYID"] = Convert.ToString(customPara["FACCTPOLICYID"]);
           RptParams["FYEAR"] = Convert.ToString(customPara["FYEAR"]);
           RptParams["FPERIOD"] = Convert.ToString(customPara["FPERIOD"]);
           RptParams["FACCTGSYSTEMNAME"] = Convert.ToString(customPara["FACCTGSYSTEMNAME"]);
           RptParams["FACCTGORGNAME"] = Convert.ToString(customPara["FACCTGORGNAME"]);
           RptParams["FACCTPOLICYNAME"] = Convert.ToString(customPara["FACCTPOLICYNAME"]);
        }
    }

   //在要打开的单据或报表的服务端插件中获得参数并使用

 var CustParams = filter.CustomParams;
            if (CustParams.Count() > 0 &&CustParams != null)
            {
                this.FAcgId = Convert.ToString(CustParams["FACCTGSYSTEMID"]);
                this.FOrgId = Convert.ToString(CustParams["FACCTGORGID"]);
                this.FPlyId = Convert.ToString(CustParams["FACCTPOLICYID"]);
                this.FYear = Convert.ToString(CustParams["FYEAR"]);
                this.FPeriod = Convert.ToString(CustParams["FPERIOD"]);
                this.FAcgName = Convert.ToString(CustParams["FACCTGSYSTEMNAME"]);
                this.FOrgName = Convert.ToString(CustParams["FACCTGORGNAME"]);
                this.FPlyName = Convert.ToString(CustParams["FACCTPOLICYNAME"]);
            }



原文地址:https://www.cnblogs.com/liuyudong0825/p/7400887.html