Beispiel #1
0
        private void mnuNewVendorOrderList_Click(object sender, EventArgs e)
        {
            try
            {
                this.Cursor = Cursors.WaitCursor;
                if (DBGrid.CurrentRow == null)
                {
                    return;
                }

                string selectionlist = string.Empty;

                dalVendorList dalvendor = new dalVendorList();
                BindingCollection <modVendorList> listvendor = dalvendor.GetIList("1", string.Empty, out Util.emsg);
                if (listvendor != null)
                {
                    frmSingleSelect frm = new frmSingleSelect();
                    frm.InitViewList("请选择供应商", listvendor, "VendorName", "VendorName", ComboBoxStyle.DropDown);
                    if (frm.ShowDialog() == DialogResult.OK)
                    {
                        modVendorList modvendor = dalvendor.GetItem(Util.retValue1, out Util.emsg);
                        BindingCollection <modVendorOrderList> list = new BindingCollection <modVendorOrderList>();
                        if (DBGrid.SelectedRows.Count == 0)
                        {
                            modCustomerOrderList modco = (modCustomerOrderList)DBGrid.CurrentRow.DataBoundItem;
                            modVendorOrderList   mod   = new modVendorOrderList();
                            mod.Id          = 0;
                            mod.FormDate    = DateTime.Today;
                            mod.RequireDate = DateTime.Today;
                            //mod.VendorOrderNo = modco.CustOrderNo;
                            mod.Remark      = modco.CustName + ": " + modco.CustOrderNo;
                            mod.VendorName  = Util.retValue1;
                            mod.PayMethod   = string.Empty;
                            mod.PurchaseMan = Util.UserId;
                            mod.ProductId   = modco.ProductId;
                            mod.ProductName = modco.ProductName;
                            if (clsLxms.GetProductSizeFlag(mod.ProductId) == 0)
                            {
                                mod.Size = 1;
                            }
                            else
                            {
                                mod.Size = modco.Size;
                            }
                            mod.Currency   = modvendor.Currency;
                            mod.UnitNo     = modco.UnitNo;
                            mod.Qty        = modco.Qty;
                            mod.Price      = 0;
                            mod.UpdateUser = Util.UserId;
                            list.Add(mod);
                        }
                        else
                        {
                            for (int i = 0; i < DBGrid.SelectedRows.Count; i++)
                            {
                                if (DBGrid.SelectedRows[i].Visible)
                                {
                                    modCustomerOrderList modco = (modCustomerOrderList)DBGrid.SelectedRows[i].DataBoundItem;
                                    modVendorOrderList   mod   = new modVendorOrderList();
                                    mod.Id          = 0;
                                    mod.FormDate    = DateTime.Today;
                                    mod.RequireDate = DateTime.Today;
                                    //mod.VendorOrderNo = modco.CustOrderNo;
                                    mod.Remark      = modco.CustName + ": " + modco.CustOrderNo;
                                    mod.VendorName  = Util.retValue1;
                                    mod.PayMethod   = string.Empty;
                                    mod.PurchaseMan = Util.UserId;
                                    mod.ProductId   = modco.ProductId;
                                    mod.ProductName = modco.ProductName;
                                    if (clsLxms.GetProductSizeFlag(mod.ProductId) == 0)
                                    {
                                        mod.Size = 1;
                                    }
                                    else
                                    {
                                        mod.Size = modco.Size;
                                    }
                                    mod.Currency   = modvendor.Currency;
                                    mod.UnitNo     = modco.UnitNo;
                                    mod.Qty        = modco.Qty;
                                    mod.Price      = 0;
                                    mod.UpdateUser = Util.UserId;
                                    list.Add(mod);
                                }
                            }
                        }
                        VendorOrderImport frmImport = new VendorOrderImport();
                        frmImport.InitViewList(list);
                        frmImport.ShowDialog();
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }
Beispiel #2
0
        private void toolExport_Click(object sender, EventArgs e)
        {
            if (DBGrid.CurrentRow == null)
            {
                return;
            }

            frmSingleSelect frm = new frmSingleSelect();

            frm.InitData("请选择导出单据类别:", "购销合同,采购订单", "购销合同", ComboBoxStyle.DropDownList);
            if (frm.ShowDialog() == DialogResult.OK)
            {
                IList <modExcelRangeData>             list       = new List <modExcelRangeData>();
                modPurchaseList                       mod        = (modPurchaseList)DBGrid.CurrentRow.DataBoundItem;
                BindingCollection <modPurchaseDetail> listdetail = _dal.GetDetail(mod.PurchaseId, out Util.emsg);

                switch (Util.retValue1)
                {
                case "采购订单":
                    dalVendorList dalv = new dalVendorList();
                    modVendorList modv = dalv.GetItem(mod.VendorName, out Util.emsg);
                    list.Add(new modExcelRangeData(clsLxms.GetParameterValue("COMPANY_NAME"), "A1", "I1"));
                    list.Add(new modExcelRangeData("电话:" + clsLxms.GetParameterValue("COMPANY_TEL") + "      传真:" + clsLxms.GetParameterValue("COMPANY_FAX"), "A2", "I2"));
                    list.Add(new modExcelRangeData(clsLxms.GetParameterValue("COMPANY_ADDR"), "A3", "I3"));
                    list.Add(new modExcelRangeData(modv.VendorName, "C6", "E6"));
                    list.Add(new modExcelRangeData(modv.Tel, "C7", "E7"));
                    list.Add(new modExcelRangeData(modv.Fax, "C8", "E8"));
                    list.Add(new modExcelRangeData(modv.Linkman, "C9", "E9"));
                    list.Add(new modExcelRangeData(modv.Addr, "C10", "E10"));

                    list.Add(new modExcelRangeData(mod.PurchaseNo, "G6", "I6"));
                    list.Add(new modExcelRangeData(mod.PurchaseDate.ToString("yyyy年MM月dd日"), "G7", "I7"));
                    list.Add(new modExcelRangeData(mod.UpdateUser, "G8", "I8"));
                    list.Add(new modExcelRangeData(mod.txtPayMethod, "G9", "I9"));
                    list.Add(new modExcelRangeData(mod.UpdateUser, "F38", "F38"));
                    for (int i = 0; i < listdetail.Count; i++)
                    {
                        modPurchaseDetail modd = listdetail[i];
                        string            col  = (13 + i).ToString().Trim();
                        list.Add(new modExcelRangeData((i + 1).ToString(), "A" + col, "A" + col));
                        list.Add(new modExcelRangeData(modd.ProductName, "B" + col, "C" + col));
                        list.Add(new modExcelRangeData(modd.Brand, "D" + col, "D" + col));
                        list.Add(new modExcelRangeData(modd.UnitNo, "E" + col, "E" + col));
                        list.Add(new modExcelRangeData(modd.Qty.ToString(), "F" + col, "F" + col));
                        list.Add(new modExcelRangeData(string.Format("{0:C2}", modd.Price), "G" + col, "G" + col));
                        list.Add(new modExcelRangeData(string.Format("{0:C2}", modd.Qty * modd.Price), "H" + col, "H" + col));
                        list.Add(new modExcelRangeData(modd.Remark, "I" + col, "I" + col));
                    }
                    clsExport.ExportByTemplate(list, "采购单", 1, 38, 9, 1);
                    break;

                case "购销合同":
                    list.Add(new modExcelRangeData(mod.VendorName, "B6", "E6"));
                    list.Add(new modExcelRangeData(mod.PurchaseNo, "I6", "I6"));
                    list.Add(new modExcelRangeData(mod.PurchaseDate.ToString("yyyy年MM月dd日"), "I7", "I7"));
                    list.Add(new modExcelRangeData("金额大写:" + clsMoney.ConvertToMoney(Convert.ToDouble(mod.DetailSum + mod.OtherMny - mod.KillMny)), "A23", "I23"));
                    list.Add(new modExcelRangeData(string.Format("{0:C2}", mod.DetailSum + mod.OtherMny - mod.KillMny), "H22", "H22"));

                    for (int i = 0; i < listdetail.Count; i++)
                    {
                        modPurchaseDetail modd = listdetail[i];
                        string            col  = (10 + i).ToString().Trim();
                        //list.Add(new modExcelRangeData((i+1).ToString(), "A" + col, "A" + col));
                        list.Add(new modExcelRangeData(modd.ProductName, "B" + col, "B" + col));
                        list.Add(new modExcelRangeData(modd.Brand, "C" + col, "C" + col));
                        list.Add(new modExcelRangeData(modd.Qty.ToString(), "D" + col, "D" + col));
                        list.Add(new modExcelRangeData(modd.UnitNo, "E" + col, "E" + col));
                        list.Add(new modExcelRangeData(string.Format("{0:C2}", modd.Price), "G" + col, "G" + col));
                        list.Add(new modExcelRangeData(string.Format("{0:C2}", modd.Qty * modd.Price), "H" + col, "H" + col));
                        list.Add(new modExcelRangeData(modd.Remark, "I" + col, "I" + col));
                    }
                    clsExport.ExportByTemplate(list, "购销合同", 1, 41, 9, 1);
                    break;
                }
            }
        }
Beispiel #3
0
        private void cboBookType_SelectedIndexChanged(object sender, EventArgs e)
        {
            prepared          = false;
            DBGrid.DataSource = null;
            switch (cboBookType.SelectedIndex)
            {
            case 0:
                dalCustomerList dalCust = new dalCustomerList();
                BindingCollection <modCustomerSimpleList> listCust = dalCust.GetSimpleList(out Util.emsg);
                DBGrid.DataSource = listCust;
                if (listCust != null)
                {
                    for (int i = 2; i < DBGrid.ColumnCount; i++)
                    {
                        DBGrid.Columns[i].Visible = false;
                    }
                    DBGrid.Columns[0].Width = 90;
                    DBGrid.Columns[1].Width = DBGrid.Width - 140;
                }
                break;

            case 1:
                dalVendorList dalVendor = new dalVendorList();
                BindingCollection <modVendorList> listVendor = dalVendor.GetIList("1", string.Empty, out Util.emsg);
                DBGrid.DataSource = listVendor;
                if (listVendor != null)
                {
                    for (int i = 1; i < DBGrid.ColumnCount; i++)
                    {
                        DBGrid.Columns[i].Visible = false;
                    }
                    DBGrid.Columns[0].Width = DBGrid.Width - 50;
                }
                break;

            case 2:
                dalOtherReceivableObject dalORec = new dalOtherReceivableObject();
                BindingCollection <modOtherReceivableObject> listORec = dalORec.GetIList(true, out Util.emsg);
                DBGrid.DataSource = listORec;
                if (listORec != null)
                {
                    for (int i = 1; i < DBGrid.ColumnCount; i++)
                    {
                        DBGrid.Columns[i].Visible = false;
                    }
                    DBGrid.Columns[0].Width = DBGrid.Width - 50;
                }
                break;

            case 3:
                dalOtherPayableObject dalOPay = new dalOtherPayableObject();
                BindingCollection <modOtherPayableObject> listOPay = dalOPay.GetIList(true, out Util.emsg);
                DBGrid.DataSource = listOPay;
                if (listOPay != null)
                {
                    for (int i = 1; i < DBGrid.ColumnCount; i++)
                    {
                        DBGrid.Columns[i].Visible = false;
                    }
                    DBGrid.Columns[0].Width = DBGrid.Width - 50;
                }
                break;

            case 4:
                dalAccBankAccount dalCash = new dalAccBankAccount();
                BindingCollection <modAccBankAccount> listCash = dalCash.GetIList(out Util.emsg);
                DBGrid.DataSource = listCash;
                if (listCash != null)
                {
                    for (int i = 2; i < DBGrid.ColumnCount; i++)
                    {
                        DBGrid.Columns[i].Visible = false;
                    }
                    DBGrid.Columns[0].Width = 90;
                    DBGrid.Columns[1].Width = DBGrid.Width - 140;
                }
                break;
            }
            prepared = true;
        }
Beispiel #4
0
        private void toolImport_Click(object sender, EventArgs e)
        {
            try
            {
                this.Cursor = Cursors.WaitCursor;

                frmSingleSelect frm       = new frmSingleSelect();
                dalVendorList   dalvendor = new dalVendorList();
                BindingCollection <modVendorList> listvendor = dalvendor.GetIList("1", string.Empty, out Util.emsg);
                if (listvendor != null)
                {
                    frm.InitViewList("请选择供应商", listvendor, "VendorName", "VendorName", ComboBoxStyle.DropDown);
                    if (frm.ShowDialog() == DialogResult.OK)
                    {
                        modVendorList modvendor = dalvendor.GetItem(Util.retValue1, out Util.emsg);
                        frmSelectGrid frmsel    = new frmSelectGrid();

                        dalPurchaseList dalorder = new dalPurchaseList();
                        BindingCollection <modCustomerOrderList> listorder = dalorder.GetImportOrderData(DateTime.Today.AddDays(-30).ToString("MM-dd-yyyy"), string.Empty, out Util.emsg);
                        if (listorder != null)
                        {
                            frmsel.InitViewList("请选择要导入的客户订单号:", listorder);
                            if (frmsel.ShowDialog() == DialogResult.OK)
                            {
                                BindingCollection <modVendorOrderList> list = new BindingCollection <modVendorOrderList>();
                                dalCustomerOrderList dalco = new dalCustomerOrderList();
                                BindingCollection <modCustomerOrderList> listco = dalco.GetIList(frmSelectGrid.selectionlist, out Util.emsg);
                                foreach (modCustomerOrderList modco in listco)
                                {
                                    modVendorOrderList mod = new modVendorOrderList();
                                    mod.Id          = 0;
                                    mod.FormDate    = DateTime.Today;
                                    mod.RequireDate = DateTime.Today;
                                    //mod.VendorOrderNo = modco.CustOrderNo;
                                    mod.Remark      = modco.CustName + ": " + modco.CustOrderNo;
                                    mod.VendorName  = Util.retValue1;
                                    mod.PayMethod   = string.Empty;
                                    mod.PurchaseMan = Util.UserId;
                                    mod.ProductId   = modco.ProductId;
                                    mod.ProductName = modco.ProductName;
                                    if (clsLxms.GetProductSizeFlag(mod.ProductId) == 0)
                                    {
                                        mod.Size = 1;
                                    }
                                    else
                                    {
                                        mod.Size = modco.Size;
                                    }
                                    mod.Currency   = modvendor.Currency;
                                    mod.UnitNo     = modco.UnitNo;
                                    mod.Qty        = modco.Qty;
                                    mod.Price      = 0;
                                    mod.UpdateUser = Util.UserId;
                                    list.Add(mod);
                                }
                                VendorOrderImport frmImport = new VendorOrderImport();
                                frmImport.InitViewList(list);
                                if (frmImport.ShowDialog() == DialogResult.OK)
                                {
                                    LoadData();
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }
Beispiel #5
0
        private void toolExport_Click(object sender, EventArgs e)
        {
            if (DBGrid.CurrentRow == null)
            {
                return;
            }

            IList <modExcelRangeData> list = new List <modExcelRangeData>();

            decimal        summny        = 0;
            string         vendorname    = string.Empty;
            string         vendororderno = string.Empty;
            dalProductList dalpdt        = new dalProductList();

            if (DBGrid.SelectedRows.Count == 0)
            {
                for (int i = 0; i < DBGrid.RowCount; i++)
                {
                    if (DBGrid.Rows[i].Visible)
                    {
                        modVendorOrderList modd = (modVendorOrderList)DBGrid.Rows[i].DataBoundItem;
                        if (string.IsNullOrEmpty(vendorname))
                        {
                            dalVendorList dalvendor = new dalVendorList();

                            vendorname    = modd.VendorName;
                            vendororderno = modd.VendorOrderNo;
                            list.Add(new modExcelRangeData(modd.VendorName, "B6", "E6"));
                            list.Add(new modExcelRangeData(modd.VendorOrderNo, "I6", "I6"));
                            list.Add(new modExcelRangeData(modd.FormDate.ToString("yyyy年MM月dd日"), "I7", "I7"));
                        }
                        else
                        {
                            if (vendorname != modd.VendorName)
                            {
                                MessageBox.Show("您所选的订单必须属于同一个供应商!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                                return;
                            }
                            if (vendororderno != modd.VendorOrderNo)
                            {
                                if (MessageBox.Show("您所选的订单不是同一个订单编号,是否要继续?", clsTranslate.TranslateString("Confirm"), MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2) == DialogResult.No)
                                {
                                    return;
                                }
                            }
                        }
                        string col = (10 + i).ToString().Trim();
                        list.Add(new modExcelRangeData(modd.ProductName, "B" + col, "B" + col));
                        modProductList modpdt = dalpdt.GetItem(modd.ProductId, out Util.emsg);
                        if (modpdt != null)
                        {
                            list.Add(new modExcelRangeData(modpdt.Brand, "C" + col, "C" + col));
                        }
                        list.Add(new modExcelRangeData(modd.Qty.ToString(), "D" + col, "D" + col));
                        list.Add(new modExcelRangeData(modd.UnitNo, "E" + col, "E" + col));
                        list.Add(new modExcelRangeData(string.Format("{0:C2}", modd.Price), "G" + col, "G" + col));
                        list.Add(new modExcelRangeData(string.Format("{0:C2}", modd.Qty * modd.Price), "H" + col, "H" + col));
                        list.Add(new modExcelRangeData(modd.Remark, "I" + col, "I" + col));

                        summny = modd.Qty * modd.Price;
                    }
                }
                list.Add(new modExcelRangeData("金额大写:" + clsMoney.ConvertToMoney(Convert.ToDouble(summny)), "A23", "I23"));
                list.Add(new modExcelRangeData(string.Format("{0:C2}", summny), "H22", "H22"));
            }
            else
            {
                for (int i = 0; i < DBGrid.SelectedRows.Count; i++)
                {
                    if (DBGrid.SelectedRows[i].Visible)
                    {
                        modVendorOrderList modd = (modVendorOrderList)DBGrid.SelectedRows[i].DataBoundItem;
                        if (string.IsNullOrEmpty(vendorname))
                        {
                            dalVendorList dalcust = new dalVendorList();

                            vendorname    = modd.VendorName;
                            vendororderno = modd.VendorOrderNo;
                            list.Add(new modExcelRangeData(modd.VendorName, "B6", "E6"));
                            list.Add(new modExcelRangeData(modd.VendorOrderNo, "I6", "I6"));
                            list.Add(new modExcelRangeData(modd.FormDate.ToString("yyyy年MM月dd日"), "I7", "I7"));
                        }
                        else
                        {
                            if (vendorname != modd.VendorName)
                            {
                                MessageBox.Show("您所选的订单必须属于同一个供应商!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                                return;
                            }
                            if (vendororderno != modd.VendorOrderNo)
                            {
                                if (MessageBox.Show("您所选的订单不是同一个订单编号,是否要继续?", clsTranslate.TranslateString("Confirm"), MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2) == DialogResult.No)
                                {
                                    return;
                                }
                            }
                        }
                        string col = (10 + i).ToString().Trim();
                        list.Add(new modExcelRangeData(modd.ProductName, "B" + col, "B" + col));
                        modProductList modpdt = dalpdt.GetItem(modd.ProductId, out Util.emsg);
                        if (modpdt != null)
                        {
                            list.Add(new modExcelRangeData(modpdt.Brand, "C" + col, "C" + col));
                        }
                        list.Add(new modExcelRangeData(modd.Qty.ToString(), "D" + col, "D" + col));
                        list.Add(new modExcelRangeData(modd.UnitNo, "E" + col, "E" + col));
                        list.Add(new modExcelRangeData(string.Format("{0:C2}", modd.Price), "G" + col, "G" + col));
                        list.Add(new modExcelRangeData(string.Format("{0:C2}", modd.Qty * modd.Price), "H" + col, "H" + col));
                        list.Add(new modExcelRangeData(modd.Remark, "I" + col, "I" + col));

                        summny = modd.Qty * modd.Price;
                    }
                }
                list.Add(new modExcelRangeData("金额大写:" + clsMoney.ConvertToMoney(Convert.ToDouble(summny)), "A23", "I23"));
                list.Add(new modExcelRangeData(string.Format("{0:C2}", summny), "H22", "H22"));
            }
            clsExport.ExportByTemplate(list, "购销合同", 1, 38, 9, 1);
        }
Beispiel #6
0
        private void toolSave_Click(object sender, EventArgs e)
        {
            try
            {
                this.Cursor = Cursors.WaitCursor;
                DBGrid.EndEdit();
                if (dtpFormDate.Value < Util.modperiod.StartDate)
                {
                    MessageBox.Show("该日期的数据已锁定,不能更新数据!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                    dtpFormDate.Focus();
                    return;
                }
                if (string.IsNullOrEmpty(txtCheckId.Text.Trim()))
                {
                    MessageBox.Show(clsTranslate.TranslateString("Check Id") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtCheckId.Focus();
                    return;
                }
                if (DBGrid.RowCount == 0)
                {
                    MessageBox.Show("没有明细数据", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }

                for (int i = 0; i < DBGrid.RowCount; i++)
                {
                    switch (DBGrid.Rows[i].Cells[0].Value.ToString().Trim())
                    {
                    case "1055":        //应收帐款
                        dalCustomerList dalcust = new dalCustomerList();
                        if (!dalcust.Exists(DBGrid.Rows[i].Cells["DetailId"].Value.ToString().Trim(), out Util.emsg))
                        {
                            MessageBox.Show("应收帐款明细不正确!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            return;
                        }
                        break;

                    case "5145":        //应付帐款
                        dalVendorList dalvendor = new dalVendorList();
                        if (!dalvendor.Exists(DBGrid.Rows[i].Cells["DetailId"].Value.ToString().Trim(), out Util.emsg))
                        {
                            MessageBox.Show("应付帐款明细不正确!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            return;
                        }
                        break;

                    case "1060":        //其它应收款
                        dalOtherReceivableObject dalrec = new dalOtherReceivableObject();
                        if (!dalrec.Exists(DBGrid.Rows[i].Cells["DetailId"].Value.ToString().Trim(), out Util.emsg))
                        {
                            MessageBox.Show("其它应收款明细不正确!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            return;
                        }
                        break;

                    case "5155":        //其它应付款
                        dalOtherReceivableObject dalpay = new dalOtherReceivableObject();
                        if (!dalpay.Exists(DBGrid.Rows[i].Cells["DetailId"].Value.ToString().Trim(), out Util.emsg))
                        {
                            MessageBox.Show("其它应付款明细不正确!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            return;
                        }
                        break;

                    case "1075":       //应收票据
                    case "5125":       //应付票据
                        if (DBGrid.Rows[i].Cells[7].Value == null || string.IsNullOrEmpty(DBGrid.Rows[i].Cells[7].Value.ToString()))
                        {
                            MessageBox.Show(clsTranslate.TranslateString("Check No") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            return;
                        }
                        if (DBGrid.Rows[i].Cells[8].Value == null || string.IsNullOrEmpty(DBGrid.Rows[i].Cells[8].Value.ToString()))
                        {
                            MessageBox.Show(clsTranslate.TranslateString("Check Type") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            return;
                        }
                        if (DBGrid.Rows[i].Cells[9].Value == null || string.IsNullOrEmpty(DBGrid.Rows[i].Cells[9].Value.ToString()))
                        {
                            MessageBox.Show(clsTranslate.TranslateString("Bank Name") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            return;
                        }
                        if (DBGrid.Rows[i].Cells[10].Value == null || string.IsNullOrEmpty(DBGrid.Rows[i].Cells[10].Value.ToString()))
                        {
                            MessageBox.Show(clsTranslate.TranslateString("Promise Date") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            return;
                        }
                        break;
                    }
                }
                if (Math.Abs(Convert.ToDecimal(txtMny.Text) - GetDetailSum()) > Convert.ToDecimal("0.001"))
                {
                    MessageBox.Show("金额不平衡!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                    return;
                }
                modAccCheckForm mod = new modAccCheckForm();
                mod.FormId     = txtFormId.Text.Trim();
                mod.FormDate   = dtpFormDate.Value;
                mod.CheckId    = Convert.ToInt32(txtCheckId.Text);
                mod.Remark     = txtRemark.Text.Trim();
                mod.UpdateUser = Util.UserId;
                mod.Status     = 0;

                string detaillist = string.Empty;
                BindingCollection <modAccCheckFormDetail> list = new BindingCollection <modAccCheckFormDetail>();
                for (int i = 0; i < DBGrid.RowCount; i++)
                {
                    modAccCheckFormDetail modd = new modAccCheckFormDetail();
                    modd.Seq          = i + 1;
                    modd.SubjectId    = DBGrid.Rows[i].Cells[0].Value.ToString();
                    modd.SubjectName  = DBGrid.Rows[i].Cells[1].Value.ToString();
                    modd.DetailId     = DBGrid.Rows[i].Cells[2].Value == null ? string.Empty : DBGrid.Rows[i].Cells[2].Value.ToString();
                    modd.DetailName   = DBGrid.Rows[i].Cells[3].Value.ToString();
                    modd.Currency     = DBGrid.Rows[i].Cells[4].Value == null ? string.Empty : DBGrid.Rows[i].Cells[4].Value.ToString();
                    modd.Mny          = Convert.ToDecimal(DBGrid.Rows[i].Cells[5].Value.ToString());
                    modd.ExchangeRate = Convert.ToDecimal(DBGrid.Rows[i].Cells[6].Value.ToString());
                    modd.CheckNo      = DBGrid.Rows[i].Cells[7].Value == null ? string.Empty : DBGrid.Rows[i].Cells[7].Value.ToString();
                    modd.CheckType    = DBGrid.Rows[i].Cells[8].Value == null ? string.Empty : DBGrid.Rows[i].Cells[8].Value.ToString();
                    modd.BankName     = DBGrid.Rows[i].Cells[9].Value == null ? string.Empty : DBGrid.Rows[i].Cells[9].Value.ToString();
                    modd.PromiseDate  = Convert.ToDateTime(DBGrid.Rows[i].Cells[10].Value);
                    modd.Remark       = DBGrid.Rows[i].Cells[11].Value == null ? string.Empty : DBGrid.Rows[i].Cells[11].Value.ToString();
                    list.Add(modd);
                }
                bool ret = _dal.Save(_action, mod, list, out Util.emsg);
                if (ret)
                {
                    this.DialogResult = DialogResult.OK;
                    this.Dispose();
                }
                else
                {
                    MessageBox.Show(Util.emsg, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }