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

在插件中获取分页账表数据

来源:金蝶云社区作者:金蝶2024-09-234

在插件中获取分页账表数据

如何在插件中获取分页账表指定过滤方案的数据呢?

1. 在账表中新建过滤方案,设置好过滤条件。

2. 获取过滤方案的主键值。可通过该SQL语句查询得到:SELECT * FROM T_BAS_FILTERSCHEME

3. 调用如下代码获取账表数据。


/// <summary>
/// 测试按钮
/// </summary>
/// <param name="e"></param>
public override void BarItemClick(BarItemClickEventArgs e)
{
    base.BarItemClick(e);
    if (e.BarItemKey.EqualsIgnoreCase("tbExportRpt"))
    {
        // rpt.DataSource 获取账表的DataTable
        var rpt = GetReportData(this.Context, "GL_RPT_SubLedger", "GL_RPT_SubLedgerFilter", "5722148519a4a8",1);
    }
}

/// <summary>
/// 获取分页账表数据
/// </summary>
/// <param name="ctx"></param>
/// <param name="rptFormId">账表FormId</param>
/// <param name="rptFilterFormId">账表过滤方案FormId</param>
/// <param name="schemeId">过滤方案内码</param>
/// <param name="currentPosition">分页账表当前位置</param>
/// <returns></returns>
private IMoveReport GetReportData(Context ctx, string rptFormId, string rptFilterFormId, string schemeId, int currentPosition)
{
    var filterMetadata = FormMetaDataCache.GetCachedFilterMetaData(ctx);//加载字段比较条件元数据。
    var reportMetadata = FormMetaDataCache.GetCachedFormMetaData(ctx, rptFormId);//加载物料收发明细表
    var reportFilterMetadata = FormMetaDataCache.GetCachedFormMetaData(ctx, rptFilterFormId);//加载物料收发明细表表过滤条件元数据。
    var reportFilterServiceProvider = reportFilterMetadata.BusinessInfo.GetForm().GetFormServiceProvider();
    var model = new SysReportFilterModel();
    model.SetContext(ctx, reportFilterMetadata.BusinessInfo, reportFilterServiceProvider);
    model.FormId = reportFilterMetadata.BusinessInfo.GetForm().Id;
    model.FilterObject.FilterMetaData = filterMetadata;
    model.InitFieldList(reportMetadata, reportFilterMetadata);
    model.GetSchemeList();//过滤方案的主键值,可通过该SQL语句查询得到:SELECT * FROM T_BAS_FILTERSCHEME
    var entity = model.Load(schemeId);
    var dyn = DeserializeCustomFilter(reportFilterMetadata.BusinessInfo, entity.CustomFilterSetting);
    model.DataObject = dyn;
    var filter = model.GetFilterParameter();
    IRptParams rptParam = new RptParams();
    rptParam.FormId = reportFilterMetadata.BusinessInfo.GetForm().Id;
    rptParam.CurrentPosition =

在插件中获取分页账表数据

如何在插件中获取分页账表指定过滤方案的数据呢?1. 在账表中新建过滤方案,设置好过滤条件。2. 获取过滤方案的主键值。可通过该SQL语句...
点击下载文档文档为doc格式

声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。

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