Crystal Reports特定期间试算平衡表借贷总额公式求助
解决Crystal Reports财年初至指定期间借贷发生额统计问题
1. 先明确财年期间的日期范围
首先要定义财年起始日期和选定期间的结束日期,这是统计的核心依据。假设你的财年起始月份固定(比如7月1日),先创建两个基础公式:
财年起始日期公式
// 公式名称:FY_Start_Date Local DateVar fyStart; // 替换为你的财年起始月日,示例为7月1日 fyStart := Date(Year(CurrentDate) - If Month(CurrentDate) < 7 Then 1 Else 0, 7, 1); fyStart
选定期间结束日期公式
// 公式名称:Selected_Period_End_Date Local DateVar fyStart := {@FY_Start_Date}; Local NumberVar selectedPeriod := {?Selected_Period}; // {?Selected_Period}是你创建的数字参数(1-12,代表财年第N期) DateAdd("m", selectedPeriod - 1, fyStart)
2. 编写累计借贷发生额公式
针对借方和贷方分别创建统计公式,只统计财年初到选定期间内的交易金额:
累计借方发生额
// 公式名称:Cumulative_Debit If {Transactions.Tran_Date} >= {@FY_Start_Date} And {Transactions.Tran_Date} <= {@Selected_Period_End_Date} Then {Transactions.Debit_Amount} Else 0
累计贷方发生额
// 公式名称:Cumulative_Credit If {Transactions.Tran_Date} >= {@FY_Start_Date} And {Transactions.Tran_Date} <= {@Selected_Period_End_Date} Then {Transactions.Credit_Amount} Else 0
3. 插入汇总得到合计数
- 将上述两个公式拖到报表的科目组页眉/页脚(如果按科目分组)或明细节。
- 右键点击公式字段,选择插入汇总,汇总方式选总和,汇总位置选对应科目组或报表尾,即可得到每个科目(或整体)从财年初到选定期间的累计借贷发生额。
4. 排查单月/错误累计的问题
如果之前只能得到单月数据,检查是否是公式中仅限制了交易日期为选定期间的单月,而非财年初到该期间的完整范围。确保日期条件是>= 财年初且<= 选定期间结束,而非等于单月日期。
内容的提问来源于stack exchange,提问作者user20635574
相关产品推荐
相关产品推荐

