二开案例.账表表单插件.直接SQL账表双击数据行打开新账表

【应用场景】
直接SQL账表双击数据行打开新账表。
【案例演示】
新建采购订单明细SQL账表,双击数据行时,以当前行的采购订单单号为查询条件,再次打开采购订单明细SQL账。

【实现步骤】
<1>编写账表表单插件,代码如下。
using Kingdee.BOS;
using Kingdee.BOS.Core.CommonFilter;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.Report;
using Kingdee.BOS.Core.Report.PlugIn;
using Kingdee.BOS.JSON;
using Kingdee.BOS.Util;
using System;
using System.ComponentModel;
using System.Linq;
namespace Jac.XkDemo.BOS.Report.PlugIn
{
/// <summary>
/// 【账表表单插件】直接SQL账表双击数据行打开新账表
/// </summary>
[Description("【账表表单插件】直接SQL账表双击数据行打开新账表"), HotUpdate]
public class OpenNewReportByRowDoubleClickSqlReportPlugIn : AbstractSysReportPlugIn
{
public override void EntityRowDoubleClick(EntityRowClickEventArgs e)
{
base.EntityRowDoubleClick(e);
var view = this.View as ISQLReportView;
if (view == null)
{
return;
}
// 双击数据行时,打开新账表
if (view.SelectedDataRows != null && view.SelectedDataRows.Length > 0)
{
var billNo = view.SelectedDataRows[0]["单据编号"].ToString();
var showParameter = new SQLReportShowParameter();
showParameter.FormId = "k10b1919206334052afef29d7b91cd318";
showParameter.CustomParams["CustomFilterRow"] = "#FBillNo#,单据编号," + billNo;
this.View.ShowForm(showParameter);
}
}
public override void OnLoad(EventArgs e)
{
base.OnLoad(e);
var view = this.View as ISQLReportView;
if (view == null)
{
return;
}
var customFilterRow = this.View.OpenParameter.GetCustomParameter("CustomFilterRow") as string;
if (string.IsNullOrWhiteSpace(customFilterRow))
{
return
二开案例.账表表单插件.直接SQL账表双击数据行打开新账表
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



