二开插件实现汇总表联查明细表
## 二开插件实现汇总表联查明细表
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](...
点击下载文档
本文2024-09-16 17:15:51发表“云星空知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-k3cloud-14579.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章