设计每日客户毛利统计模板,包含每日小计和总计

2024-05-30 11:19:51 admin

简介

本文将展示如何设计一个复杂的打印模板,可以按客户和每日毛利率两个层级进行分组汇总,并显示相关的销售金额、利润、成本和毛利率数据。

打印预览效果

  1. 首页预览:显示按客户分组的数据

食品配送进销存

  1. 末页预览:显示按每日分组的数据

    食品配送进销存

实现难点

每日毛利率的计算是实现该打印模板的关键难点。由于使用了两级分组,虽然客户级别的毛利率可直接在模板中设置,但每日毛利率需要使用脚本辅助计算。

脚本实现

下面是实现每日毛利率计算的关键脚本:

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("计算成本金额"));
}


总结

通过分组汇总和脚本的结合,可实现按客户汇总,再按天汇总,最后显示报表的总计及各级毛利率。这种复杂的打印模板格式设计需求在实际场景中非常常见。


下载此打印模板