主从表界面自动计算明细表合计汇总金额数量

  主从表界面自动计算明细表合计汇总金额数量


分为两个部分:
1. 修改明细表的【单价】、【数量】列,自动计算金额。
2. 自动计算主表的合计金额(TotalAmount)

贴图图片-合计汇总


绑定明细表格的CellValueChanged事件:

C# Code:

gvDetail.CellValueChanged += new DevExpress.XtraGrid.Views.Base.CellValueChangedEventHandler(OnCellValueChanged); //表格值改变

//来源:C/S框架网 | www.csframework.com | QQ:23404761





C# Code:


private void OnCellValueChanged(object sender, CellValueChangedEventArgs e)
{
  
//用户修改了单价、数量列
  
if ((e.Column == colD_Price) || (e.Column == colD_Quantity))
  {
    
this.UpdateDetailAmount();
  }
}

/// <summary>
/// 当用户修改单价/数量列, 自动计算采购金额
/// </summary>
private void UpdateDetailAmount()
{
  
decimal price = ConvertEx.ToDecimal(gvDetail.GetDataRow(gvDetail.FocusedRowHandle)[tb_POs.Price]);//单价
  
decimal quantity = ConvertEx.ToDecimal(gvDetail.GetDataRow(gvDetail.FocusedRowHandle)[tb_POs.Quantity]);//数量
  
decimal amt = Math.Round(price * quantity, 2, MidpointRounding.ToEven);//金额=数量*单价
  
  
//计算本产品的采购金额
  
gvDetail.SetFocusedRowCellValue(colD_Amount, amt);
  
  gvDetail.UpdateCurrentRow();
//更新当前资料行
  
gvDetail.UpdateTotalSummary();//更新合计
  
  
//更新主表的合计金额
  
decimal totalAmt = ConvertEx.ToDecimal(colD_Amount.SummaryItem.SummaryValue);
  
this.SetEditorBindingValue(txtAmount, totalAmt, true);
}

//来源:C/S框架网 | www.csframework.com | QQ:23404761



SetEditorBindingValue 方法是给主表的txtTotalAmount文本框赋值。框架基类自带的方法。



C/S框架网|原创精神.创造价值.打造精品

扫一扫加微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务

版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
C/S框架网
发表评论

评论内容
昵称:
关联文章

主从界面自动计算明细表合计汇总金额数量
修改单价/数量列, 自动计算金额
CS开发框架旗舰版主从(多级明细表)实例,自动生成主从代码
CSFramework代码生成器自动生成主从界面-C/S框架网
C/S系统开发框架多级明细表(三级/主从)数据结构参考
支持主从BLL单独提交明细表优化UpdateDetailKey方法|C/S框架网
使用bllBaseDataDict类提交业务单据(主从)的明细表实例|C/S框架网
DevExpress XtraReport 开发指南 - 主从报表设计(C#)
2.10生成业务窗体 (主从数据管理界面)
旺铺每日汇总
FastReport for.Net开发指南-主从(Master/Detail)报表设计详解
GridControl表格实现主从展示数据(Master/Detail)
解决代码生成器生成主从界面没有带出中文标题的问题
C#将数据导出到Excel汇总
采购订单 (PO, 主从资料维护)
C/S开发框架教程:使用基础资料(数据字典)的DAL层更新主从(或多)数据
C# 自动计算字符串公式的值(三种方式)
弹出窗体勾选多条记录自动添加到明细表
关于业务单据主从导入数据,销售订单(SO)的数据导入到销售退货单(SR)
仓库设计在主还是明细表更合理?