Excel服务器用于连环查询的方法解析
1. 客户需求:
我做了查询表输入1月15号到10月15号,查询出相关数据后,还希望通过查出的数据再查看 显示具体每个月的数据,也就是说1月15到1月30属于1月份的,二月1号到2月30是二月份的,以此类推,最后个月是10月1号到10月15号的。
2. 需求分析:
第一次查询很简单,提数公式就可以了,复杂的是第二次查询。我们可以通过超级链接的功能完成二次查询的功能。
具体过程设计如下:
基础数据模板
总查询模板
分查询模板
辅助模板月份
总查询模板写提数公式查询基础模板的数据
提取<基础源数据_明细>中满足下列条件的数据:
<数据筛选: 本报表.总查询_主表.起始日期 <= 基础源数据_明细.日期
并且 基础源数据_明细.日期 <= 本报表.总查询_主表.截止日期>
按以下方式填入<总查询_明细> :
基础源数据_明细.供应商 --->(填入值)供应商名称
基础源数据_明细.采购余额 --->(填入值)采购余额
基础源数据_明细.付款金额 --->(填入值)付款金额
基础源数据_明细.欠款金额 --->(填入值)欠款金额
分查询模板超级链接过去,根据链接的内容查询对应的信息:
第一步根据链接过去的起始日期好截止日期计算所有月份
提取<月份_明细>中满足下列条件的数据:
<数据筛选: 月份值(本报表.分查询_主表.起始日期) <= 月份_明细.序号 并且 月份_明细.序号 <= 月份值(本报表.分查询_主表.截止日期)>
按以下方式填入<分查询_明细> :
月份_明细.序号 --->(填入值) 月
第二步计算每个月对应的截止日期
提取<>中的数据:
按以下方式填入<分查询_明细> :
本报表.分查询_明细.起始日期 ====(按行(列)匹配)起始日期
条件取值(年份值(本报表.分查询_明细.起始日期) =年份值(本报表.分查询_主表.截止日期)
并且 月份值(本报表.分查询_主表.截止日期) =月份值(本报表.分查询_明细.起始日期),本报表.分查询_主表.截止日期,月末(年份值(本报表.分查询_明细.起始日期),月份值(本报表.分查询_明细.起始日期))) --->(填入值)截止日期
第三步通过链接的数据查询对应的数据
提取<基础源数据_明细>中满足下列条件的数据:
<数据筛选: 本报表.分查询_明细.起始日期 <= 基础源数据_明细.日期
并且 基础源数据_明细.日期 <= 本报表.分查询_明细.截止日期
并且 基础源数据_明细.供应商 = 本报表.分查询_主表.供应商名称>
按以下方式填入<分查询_明细> :
合计(基础源数据_明细.采购余额) --->(填入值)采购金额
合计(基础源数据_明细.付款金额) --->(填入值)付款金额
合计(基础源数据_明细.欠款金额) --->(填入值)欠款金额
本报表.分查询_明细.起始日期 ====(按行(列)匹配)起始日期
本报表.分查询_明细.截止日期 ====(按行(列)匹配)截止日期
经过以上设计后达到的效果如下。
本文链接:http://blog.a001a.com/index.php/post/13.html
转载声明:本站发布文章及版权归原作者所有,转载本站文章请注明文章来源!
网友评论