二开插件实现汇总表联查明细表

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-16浏览:1

二开插件实现汇总表联查明细表

## 二开插件实现汇总表联查明细表 1、在汇总表中的服务取数插件,Initialize事件,配置明细报表信息; ![image20221213142927262.webp](/download/01000b05af1c3d1740c9855fdb06d945b1c2.webp) 明细id可在bos设计器中查看,一般用DetailReportId就够了,DetailReportFormIdFieldName可以不 用 ![image20221213143025001.webp](/download/01000358bdb3c3ff4b9994d1044f1e9f27c0.webp) 2、 配置汇总表的查询明细报表点击事件,联查明细报表; ![image20221213143116701.webp](/download/0100c40723b8de2a44f1af9be12b97195590.webp) 3、在明细报表的服务取数插件,BuilderReportSqlAndTempTable事件,判断是否汇总表查询,读取 filter.GetParentReportCurrentRow(),获取到父报表的当前行,以此为条件,加载明细报表的数据。 ``` bool srcFilter = false; Dictionary<string, object> dctCurrRow = new Dictionary<string, object> (); if (!filter.IsRefresh && filter.CustomParams.Count() > 1 && filter.CustomParams.ContainsKey("ParentReportFilter")) { //判断是否汇总传来 sbWhere = new StringBuilder(); //获取汇总表行数据 dctCurrRow = (Dictionary<string, object>)filter.CustomParams["ParentReportCurrentRow"]; srcFilter = true; } StringBuilder sbWhere = new StringBuilder(); if (srcFilter) { //根据汇总表数据,自行构建where条件 string BillNo = dctCurrRow["billno"].ToString(); sbWhere.AppendFormat(" where t1.billno ='{0}'", BillNo); } string sql = String.Format(@"select t1.*,{0} into {1} from ( select FBILLNO as [billno] from T_PRD_MO ) t1 {2}", KSQL_SEQ, tableName, sbWhere); DBUtils.Execute(Context, sql) ``` 4、最终实现汇总表联查明细表

二开插件实现汇总表联查明细表

## 二开插件实现汇总表联查明细表 1、在汇总表中的服务取数插件,Initialize事件,配置明细报表信息;![image20221213142927262.webp](...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息