private void btSave_Click(object sender, EventArgs e) { try { // 1.构建销售订单表 // 1.1 销售订单号 salesinfor.BillCode = txSalesNunber.Text; //txPurchaseNumber.Text; // 1.2 客户编号编号 salesinfor.CustomerCode = cbCustomerNumber.Text; //cbSupplierNumber.Text; // 1.3 接单员工号 salesinfor.SalesPersonCode = cbEmployeeNumber.Text; // 1.4 下单日期 salesinfor.BillDate = dateOrderTime.Value; // 1.6 订单金额 salesinfor.OrderTotalPayment = Convert.ToSingle(txTotalPay.Text); // 1.7订单状态 salesinfor.Status = "待出库"; // 2.构建采购订单明细表 // 2.1 检查每条明细数据是否合格 for (int i = 0; i < dgvSalesDetailList.RowCount - 1; i++) { if (Convert.ToInt32(dgvSalesDetailList[4, i].Value) <= 0) { MessageBox.Show("第 " + Convert.ToString(i) + " 条明细数量错误!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (Convert.ToSingle(dgvSalesDetailList[5, i].Value) <= 0) { MessageBox.Show("第 " + Convert.ToString(i) + " 条明细单价错误!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } } // 2.2 DataSet dsSalesDetail = baseinfo.GetAllBill("tb_sales_details"); int rowCount = dsSalesDetail.Tables[0].Rows.Count; for (int i = 0; i < dgvSalesDetailList.RowCount - 1; i++) { // 2.2.0 自动增长明细编号 // 2.2.2 明细编号 salesinfor.orderDetaildCode = Convert.ToString(700000001 + rowCount + i); // 2.2.3 采购订单号 salesinfor.BillCode = txSalesNunber.Text;//txPurchaseNumber.Text; // 2.2.4 商品编号 salesinfor.goodsCode = cbGoodsNumber.Text; // 2.2.5 商品数量 salesinfor.Qty = Convert.ToSingle(dgvSalesDetailList[4, i].Value); // 2.2.6 商品单价 salesinfor.goodsPrice = Convert.ToSingle(dgvSalesDetailList[5, i].Value); // 2.2.7 商品单位 salesinfor.goodsUnit = Convert.ToString(dgvSalesDetailList[3, i].Value); // 2.2.8 保存明细表 baseinfo.AddTableSalesDetail(salesinfor, "tb_sales_details"); // 2.2.9 增加明细表 row 数,在缓存中 rowCount += i; } // 3.保存采购订单 baseinfo.AddTableSales(salesinfor, "tb_sales"); MessageBox.Show("销售单--过账成功!", "成功提示", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (System.Exception ex) { MessageBox.Show("非法数据!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } this.Close(); }