设计每日客户毛利统计模板,包含每日小计和总计
2024-05-30 11:19:51
admin
简介
本文将展示如何设计一个复杂的打印模板,可以按客户和每日毛利率两个层级进行分组汇总,并显示相关的销售金额、利润、成本和毛利率数据。
打印预览效果
首页预览:显示按客户分组的数据
末页预览:显示按每日分组的数据
实现难点
每日毛利率的计算是实现该打印模板的关键难点。由于使用了两级分组,虽然客户级别的毛利率可直接在模板中设置,但每日毛利率需要使用脚本辅助计算。
脚本实现
下面是实现每日毛利率计算的关键脚本:
double amount=0; //销售金额 double cost=0; //成本 //获取并计算每日毛利率 private void tcGrossProfitRateDay_SummaryGetResult(...) { double profit = amount - cost; double result = 0; if (amount == 0) result = 0; else result = 100 * (profit / amount); result = Math.Round(result, 2); e.Result = result; e.Handled = true; } //重置amount和cost private void tcGrossProfitRateDay_SummaryReset(...) { amount = 0; cost = 0; } //累计amount和cost private void tcGrossProfitRateDay_SummaryRowChanged(...) { amount += Convert.ToDouble(GetCurrentColumnValue("金额")); cost += Convert.ToDouble(GetCurrentColumnValue("计算成本金额")); }
总结
通过分组汇总和脚本的结合,可实现按客户汇总,再按天汇总,最后显示报表的总计及各级毛利率。这种复杂的打印模板格式设计需求在实际场景中非常常见。