Beispiel #1
0
        private void toolExport_Click(object sender, EventArgs e)
        {
            if (DBGrid.CurrentRow == null)
            {
                return;
            }
            IList <modExcelRangeData> list = new List <modExcelRangeData>();
            modQuotationForm          mod  = (modQuotationForm)DBGrid.CurrentRow.DataBoundItem;
            BindingCollection <modQuotationDetail> listdetail = _dal.GetDetail(mod.FormId, out Util.emsg);
            dalCustomerList dalcust = new dalCustomerList();
            modCustomerList modcust = dalcust.GetItem(mod.CustId, out Util.emsg);

            //list.Add(new modExcelRangeData(clsLxms.GetParameterValue("COMPANY_NAME"), "B1", "J1"));
            list.Add(new modExcelRangeData("电话/TEL: " + clsLxms.GetParameterValue("COMPANY_TEL") + "                 传真/FAX: " + clsLxms.GetParameterValue("COMPANY_FAX") + "                 联系人/Contact Person: " + mod.ContactPerson, "A4", "I4"));
            //list.Add(new modExcelRangeData("公司地址:" + clsLxms.GetParameterValue("COMPANY_ADDR"), "B3", "J3"));
            list.Add(new modExcelRangeData(modcust.FullName, "B6", "B6"));
            list.Add(new modExcelRangeData("TEL: " + modcust.Linkman + "  " + modcust.Tel, "B7", "B7"));
            list.Add(new modExcelRangeData("单号Invoice No.: " + mod.No, "H6", "H6"));
            list.Add(new modExcelRangeData(mod.FormDate.ToString("yyyy/MM/dd"), "I8", "I8"));

            for (int i = 0; i < listdetail.Count; i++)
            {
                modQuotationDetail 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.Mny), "H" + col, "H" + col));
                list.Add(new modExcelRangeData(modd.Remark, "I" + col, "I" + col));
            }
            clsExport.ExportByTemplate(list, "报价单", 1, 20, 10, 1);
        }
Beispiel #2
0
        public void ImportItem(modVQuotationDetail mod)
        {
            _action              = "NEW";
            dtpFormDate.Value    = DateTime.Today;
            dtpRequireDate.Value = DateTime.Today;
            txtId.Text           = "0";
            //txtCustOrderNo.Text = mod.CustOrderNo;
            txtCurrency.Text = mod.Currency;
            txtCustName.Tag  = mod.CustId;
            txtCustName.Text = mod.CustName;
            dalCustomerList dalcust = new dalCustomerList();
            modCustomerList modcust = dalcust.GetItem(mod.CustId, out Util.emsg);

            if (modcust != null)
            {
                txtPayMethod.Text = modcust.PayMethod;
                txtSalesMan.Text  = modcust.SalesMan;
            }
            txtUnitNo.Text      = mod.UnitNo;
            txtQty.Text         = mod.Qty.ToString();
            txtPrice.Text       = mod.Price.ToString();
            txtProductName.Tag  = mod.ProductId;
            txtProductName.Text = mod.ProductName;
            txtSize.Text        = "1";
            txtRemark.Text      = mod.Remark;

            status4.Image = null;
        }
Beispiel #3
0
        private void AddHeader(string sheetname, int pagerows, int iCopy, string custid, ref IList <modExcelRangeData> list)
        {
            dalCustomerList dalcust = new dalCustomerList();
            modCustomerList modcust = dalcust.GetItem(custid, out Util.emsg);

            switch (sheetname)
            {
            case "蓝图对帐单":
                list.Add(new modExcelRangeData(modcust.FullName, "B" + ((iCopy * pagerows) + 6).ToString(), "B" + ((iCopy * pagerows) + 6).ToString()));
                list.Add(new modExcelRangeData(modcust.Tel, "I" + ((iCopy * pagerows) + 6).ToString(), "J" + ((iCopy * pagerows) + 6).ToString()));
                list.Add(new modExcelRangeData(modcust.Fax, "I" + ((iCopy * pagerows) + 7).ToString(), "J" + ((iCopy * pagerows) + 7).ToString()));
                list.Add(new modExcelRangeData(DateTime.Today.ToString("yyyy-MM-dd"), "I" + ((iCopy * pagerows) + 8).ToString(), "J" + ((iCopy * pagerows) + 8).ToString()));
                break;

            case "威廉姆对帐单":
                list.Add(new modExcelRangeData(clsLxms.GetParameterValue("COMPANY_NAME") + "\r\n" + dtpTo.Value.ToString("yyyy") + "年" + dtpTo.Value.ToString("MM") + "月份对帐单", "A" + ((iCopy * pagerows) + 1).ToString(), "L" + ((iCopy * pagerows) + 1).ToString()));
                list.Add(new modExcelRangeData(clsLxms.GetParameterValue("COMPANY_NAME"), "C" + ((iCopy * pagerows) + 2).ToString(), "C" + ((iCopy * pagerows) + 2).ToString()));
                list.Add(new modExcelRangeData(clsLxms.GetParameterValue("COMPANY_TEL"), "C" + ((iCopy * pagerows) + 3).ToString(), "C" + ((iCopy * pagerows) + 3).ToString()));
                list.Add(new modExcelRangeData(clsLxms.GetParameterValue("COMPANY_FAX"), "C" + ((iCopy * pagerows) + 4).ToString(), "C" + ((iCopy * pagerows) + 4).ToString()));
                list.Add(new modExcelRangeData("联系人:" + clsLxms.GetParameterValue("COMPANY_LINKMAN"), "H" + ((iCopy * pagerows) + 2).ToString(), "K" + ((iCopy * pagerows) + 2).ToString()));
                break;

            case "深科达对帐单":
                list.Add(new modExcelRangeData(dtpTo.Value.ToString("yyyy") + "年" + dtpTo.Value.ToString("MM") + "月", "D" + ((iCopy * pagerows) + 6).ToString(), "D" + ((iCopy * pagerows) + 6).ToString()));
                list.Add(new modExcelRangeData("From:" + clsLxms.GetParameterValue("COMPANY_NAME"), "H" + ((iCopy * pagerows) + 1).ToString(), "J" + ((iCopy * pagerows) + 2).ToString()));
                list.Add(new modExcelRangeData("联系人:" + clsLxms.GetParameterValue("COMPANY_LINKMAN"), "H" + ((iCopy * pagerows) + 2).ToString(), "J" + ((iCopy * pagerows) + 2).ToString()));
                list.Add(new modExcelRangeData("电话:" + clsLxms.GetParameterValue("COMPANY_TEL"), "H" + ((iCopy * pagerows) + 3).ToString(), "J" + ((iCopy * pagerows) + 3).ToString()));
                list.Add(new modExcelRangeData("传真:" + clsLxms.GetParameterValue("COMPANY_FAX"), "H" + ((iCopy * pagerows) + 4).ToString(), "J" + ((iCopy * pagerows) + 4).ToString()));
                break;

            default:
                list.Add(new modExcelRangeData(clsLxms.GetParameterValue("COMPANY_NAME"), "A" + ((iCopy * pagerows) + 2).ToString(), "J" + ((iCopy * pagerows) + 2).ToString()));
                list.Add(new modExcelRangeData("TEL:" + clsLxms.GetParameterValue("COMPANY_TEL") + "  Fax:" + clsLxms.GetParameterValue("COMPANY_FAX"), "A" + ((iCopy * pagerows) + 3).ToString(), "J" + ((iCopy * pagerows) + 3).ToString()));
                list.Add(new modExcelRangeData("公司地址:" + clsLxms.GetParameterValue("COMPANY_ADDR"), "A" + ((iCopy * pagerows) + 4).ToString(), "J" + ((iCopy * pagerows) + 4).ToString()));

                list.Add(new modExcelRangeData(modcust.FullName, "B" + ((iCopy * pagerows) + 6).ToString(), "D" + ((iCopy * pagerows) + 6).ToString()));
                list.Add(new modExcelRangeData(dtpFrom.Value.ToString("yyyy-MM-dd"), "F" + ((iCopy * pagerows) + 6).ToString(), "H" + ((iCopy * pagerows) + 6).ToString()));
                list.Add(new modExcelRangeData(dtpTo.Value.ToString("yyyy-MM-dd"), "J" + ((iCopy * pagerows) + 6).ToString(), "J" + ((iCopy * pagerows) + 6).ToString()));

                list.Add(new modExcelRangeData(modcust.Tel, "B" + ((iCopy * pagerows) + 7).ToString(), "D" + ((iCopy * pagerows) + 7).ToString()));
                list.Add(new modExcelRangeData(modcust.Fax, "F" + ((iCopy * pagerows) + 7).ToString(), "H" + ((iCopy * pagerows) + 7).ToString()));
                list.Add(new modExcelRangeData(modcust.Linkman, "J" + ((iCopy * pagerows) + 7).ToString(), "J" + ((iCopy * pagerows) + 7).ToString()));
                break;
            }
        }
Beispiel #4
0
        public static string GetDefaultCustId()
        {
            string defaultCustId = string.Empty;
            string key           = CacheKeys.DefaultCustId.ToString();
            object obj           = Cache.Get(key);

            if (obj == null)
            {
                dalCustomerList dal = new dalCustomerList();
                defaultCustId = dal.GetCustIdByName("散客");
                Cache.Set(key, defaultCustId);
            }
            else
            {
                defaultCustId = obj.ToString();
            }
            return(defaultCustId);
        }
Beispiel #5
0
        /// <summary>
        /// insert a salesshipment
        /// <summary>
        /// <param name=mod>model object of salesshipment</param>
        /// <param name=out emsg>return error message</param>
        /// <returns>true/false</returns>
        public bool Save(string oprtype, modQuotationForm mod, BindingCollection <modQuotationDetail> list, out string emsg)
        {
            using (TransactionScope transaction = new TransactionScope())//使用事务
            {
                try
                {
                    string sql        = string.Empty;
                    string formid     = mod.FormId;
                    string formno     = mod.No;
                    string content    = string.Empty;
                    string salesman   = string.Empty;
                    string actioncode = "QUOTATION";

                    dalCustomerList dalcust = new dalCustomerList();
                    salesman = dalcust.GetSalesMan(mod.CustId);

                    dalCustomerScoreRule dalcsr = new dalCustomerScoreRule();
                    modCustomerScoreRule modcsr = dalcsr.GetItem(actioncode, out emsg);
                    int?seq = 0;
                    switch (oprtype)
                    {
                    case "ADD":
                    case "NEW":
                        if (Exists(formid, out emsg))
                        {
                            formid = GetNewId(mod.FormDate);
                        }

                        sql = string.Format("insert into quotation_form(form_id,form_date,no,cust_id,remark,currency,contact_person,update_user,update_time)values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}',getdate())", formid, mod.FormDate, mod.No, mod.CustId, mod.Remark, mod.Currency, mod.ContactPerson, mod.UpdateUser);
                        SqlHelper.ExecuteNonQuery(sql);
                        if (list != null && list.Count > 0)
                        {
                            seq = 0;
                            foreach (modQuotationDetail modd in list)
                            {
                                seq++;
                                sql = string.Format("insert into quotation_detail(form_id,seq,product_id,product_name,specify,brand,unit_no,qty,price,remark,size)values('{0}',{1},'{2}','{3}','{4}','{5}','{6}',{7},{8},'{9}', 1)", formid, seq, modd.ProductId, modd.ProductName, modd.Specify, modd.Brand, modd.UnitNo, modd.Qty, modd.Price, modd.Remark);
                                SqlHelper.ExecuteNonQuery(sql);
                                if (string.IsNullOrEmpty(content))
                                {
                                    content = "产品:" + modd.ProductName + "  规格:" + modd.Specify + "  价格:" + modd.Price.ToString() + "/" + modd.UnitNo;
                                }
                                else
                                {
                                    content += "\r\n产品:" + modd.ProductName + "  规格:" + modd.Specify + "  价格:" + modd.Price.ToString() + "/" + modd.UnitNo;
                                }
                            }
                        }
                        sql = string.Format("insert into customer_log(cust_id,cust_name,action_code,action_type,action_man,form_id,action_subject,action_content,object_name,venue,from_time,to_time,scores,ad_flag,update_user,update_time)values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}',{12},{13},'{14}',getdate())", mod.CustId, mod.CustName, actioncode, "客户报价", salesman, formid, string.Empty, content, string.Empty, string.Empty, mod.FormDate, mod.FormDate, modcsr.Scores, 1, mod.UpdateUser);
                        SqlHelper.ExecuteNonQuery(sql);
                        break;

                    case "EDIT":
                    case "UPDATE":
                    case "MODIFY":
                        sql = string.Format("update quotation_form set form_date='{0}',no='{1}',cust_id='{2}',remark='{3}',currency='{4}',contact_person='{5}' where form_id='{6}'", mod.FormDate, mod.No, mod.CustId, mod.Remark, mod.Currency, mod.ContactPerson, formid);
                        SqlHelper.ExecuteNonQuery(sql);
                        sql = string.Format("delete quotation_detail where form_id='{0}'", formid);
                        SqlHelper.ExecuteNonQuery(sql);
                        seq = 0;
                        foreach (modQuotationDetail modd in list)
                        {
                            seq++;
                            sql = string.Format("insert into quotation_detail(form_id,seq,product_id,product_name,specify,brand,unit_no,qty,price,remark,size)values('{0}',{1},'{2}','{3}','{4}','{5}','{6}',{7},{8},'{9}', 1)", formid, seq, modd.ProductId, modd.ProductName, modd.Specify, modd.Brand, modd.UnitNo, modd.Qty, modd.Price, modd.Remark);
                            SqlHelper.ExecuteNonQuery(sql);
                            if (string.IsNullOrEmpty(content))
                            {
                                content = "产品:" + modd.ProductName + "  规格:" + modd.Specify + "  价格:" + modd.Price.ToString() + "/" + modd.UnitNo;
                            }
                            else
                            {
                                content += "\r\n产品:" + modd.ProductName + "  规格:" + modd.Specify + "  价格:" + modd.Price.ToString() + "/" + modd.UnitNo;
                            }
                        }

                        sql = string.Format("update customer_log set cust_id='{0}',cust_name='{1}',action_type='{2}',action_man='{3}',action_subject='{4}',action_content='{5}',object_name='{6}',venue='{7}',from_time='{8}',to_time='{9}',scores={10},ad_flag={11},update_user='******',update_time=getdate() where action_code='{13}' and form_id='{14}' ", mod.CustId, mod.CustName, "客户报价", salesman, string.Empty, content, string.Empty, string.Empty, mod.FormDate, mod.FormDate, modcsr.Scores, 1, mod.UpdateUser, actioncode, formid);
                        SqlHelper.ExecuteNonQuery(sql);
                        break;

                    case "DEL":
                    case "DELETE":
                        sql = string.Format("delete customer_log where action_code='{0}' and form_id='{1}'", actioncode, mod.FormId);
                        SqlHelper.ExecuteNonQuery(sql);
                        sql = string.Format("delete quotation_detail where form_id='{0}'", mod.FormId);
                        SqlHelper.ExecuteNonQuery(sql);
                        sql = string.Format("delete quotation_form where form_id='{0}'", mod.FormId);
                        SqlHelper.ExecuteNonQuery(sql);
                        break;
                    }

                    transaction.Complete();//就这句就可以了。
                    emsg = formid;
                    return(true);
                }
                catch (Exception ex)
                {
                    emsg = dalUtility.ErrorMessage(ex.Message);
                    return(false);
                }
            }
        }
Beispiel #6
0
        private void toolExport_Click(object sender, EventArgs e)
        {
            if (DBGrid.CurrentRow == null)
            {
                return;
            }

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

            decimal        summny      = 0;
            string         custid      = string.Empty;
            string         custorderno = string.Empty;
            dalProductList dalpdt      = new dalProductList();

            if (DBGrid.SelectedRows.Count == 0)
            {
                for (int i = 0; i < DBGrid.RowCount; i++)
                {
                    if (DBGrid.Rows[i].Visible)
                    {
                        modCustomerOrderList modd = (modCustomerOrderList)DBGrid.Rows[i].DataBoundItem;
                        if (string.IsNullOrEmpty(custid))
                        {
                            dalCustomerList dalcust = new dalCustomerList();
                            modCustomerList modcust = dalcust.GetItem(modd.CustId, out Util.emsg);

                            custid      = modd.CustId;
                            custorderno = modd.CustOrderNo;
                            list.Add(new modExcelRangeData(modcust.FullName, "B6", "E6"));
                            list.Add(new modExcelRangeData(modd.CustOrderNo, "I6", "I6"));
                            list.Add(new modExcelRangeData(modd.FormDate.ToString("yyyy年MM月dd日"), "I7", "I7"));
                        }
                        else
                        {
                            if (custid != modd.CustId)
                            {
                                MessageBox.Show("您所选的订单必须属于同一个客户!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                                return;
                            }
                            if (custorderno != modd.CustOrderNo)
                            {
                                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)
                    {
                        modCustomerOrderList modd = (modCustomerOrderList)DBGrid.SelectedRows[i].DataBoundItem;
                        if (string.IsNullOrEmpty(custid))
                        {
                            dalCustomerList dalcust = new dalCustomerList();
                            modCustomerList modcust = dalcust.GetItem(modd.CustId, out Util.emsg);

                            custid      = modd.CustId;
                            custorderno = modd.CustOrderNo;
                            list.Add(new modExcelRangeData(modcust.FullName, "B6", "E6"));
                            list.Add(new modExcelRangeData(modd.CustOrderNo, "I6", "I6"));
                            list.Add(new modExcelRangeData(modd.FormDate.ToString("yyyy年MM月dd日"), "I7", "I7"));
                        }
                        else
                        {
                            if (custid != modd.CustId)
                            {
                                MessageBox.Show("您所选的订单必须属于同一个客户!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                                return;
                            }
                            if (custorderno != modd.CustOrderNo)
                            {
                                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 #7
0
        /// <summary>
        /// audit
        /// <summary>
        /// <param name=id>id</param>
        /// <param name=updateuser>updateuser</param>
        /// <param name=out emsg>return error message</param>
        /// <returns>true/false</returns>
        public bool Audit(int id, string updateuser, out string emsg)
        {
            string        sql  = string.Empty;
            SqlConnection conn = SqlHelper.getConn();

            conn.Open();
            SqlTransaction trans = conn.BeginTransaction();
            SqlCommand     cmd   = new SqlCommand();

            try
            {
                string content           = string.Empty;
                string salesman          = string.Empty;
                string actioncode        = "GATHERING";
                int    adflag            = 1;
                modAccReceivableForm mod = GetItem(id, out emsg);
                if (mod.SubjectId.IndexOf("9135") == 0)
                {
                    actioncode = "BADDEBTS";
                    adflag     = -1;
                }

                dalCustomerList dalcust = new dalCustomerList();
                salesman = dalcust.GetSalesMan(mod.CustId);
                dalCustomerScoreRule dalcsr = new dalCustomerScoreRule();
                modCustomerScoreRule modcsr = dalcsr.GetItem(actioncode, out emsg);

                content = "科目:" + mod.SubjectName + "  实收金额:" + mod.GetMny + "  帐款金额:" + mod.ReceivableMny.ToString() + mod.Currency;

                sql = string.Format("update acc_receivable_form set status={0},audit_man='{1}',audit_time=getdate() where id={2}", 1, updateuser, id);
                SqlHelper.PrepareCommand(cmd, conn, trans, CommandType.Text, sql, null);
                cmd.ExecuteNonQuery();

                sql = string.Format("insert into customer_log(cust_id,cust_name,action_code,action_type,action_man,form_id,action_subject,action_content,object_name,venue,from_time,to_time,scores,ad_flag,update_user,update_time)values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}',{12},{13},'{14}',getdate())", mod.CustId, mod.CustName, actioncode, "收货款", salesman, id, string.Empty, content, string.Empty, string.Empty, mod.FormDate, mod.FormDate, modcsr.Scores * mod.GetMny * mod.ExchangeRate, adflag, mod.UpdateUser);
                SqlHelper.PrepareCommand(cmd, conn, trans, CommandType.Text, sql, null);
                cmd.ExecuteNonQuery();

                if (mod.ReceivableMny - mod.GetMny > 0)
                {
                    actioncode = "BADDEBTS";
                    modcsr     = dalcsr.GetItem(actioncode, out emsg);
                    content    = "折扣金额:" + (mod.ReceivableMny - mod.GetMny) + mod.Currency;
                    sql        = string.Format("insert into customer_log(cust_id,cust_name,action_code,action_type,action_man,form_id,action_subject,action_content,object_name,venue,from_time,to_time,scores,ad_flag,update_user,update_time)values('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}','{8}','{9}','{10}','{11}',{12},{13},'{14}',getdate())", mod.CustId, mod.CustName, actioncode, "货款折扣", salesman, id, string.Empty, content, string.Empty, string.Empty, mod.FormDate, mod.FormDate, modcsr.Scores * (mod.ReceivableMny - mod.GetMny) * mod.ExchangeRate, -1, mod.UpdateUser);
                    SqlHelper.PrepareCommand(cmd, conn, trans, CommandType.Text, sql, null);
                    cmd.ExecuteNonQuery();
                }
                trans.Commit();
                emsg = string.Empty;
                return(true);
            }
            catch (Exception ex)
            {
                trans.Rollback();
                emsg = dalUtility.ErrorMessage(ex.Message);
                return(false);
            }
            finally
            {
                trans.Dispose();
                cmd.Dispose();
                if (conn.State != ConnectionState.Closed)
                {
                    conn.Dispose();
                }
            }
        }
Beispiel #8
0
        private void btnPost_Click(object sender, EventArgs e)
        {
            try
            {
                this.Cursor = Cursors.WaitCursor;
                DBGrid.EndEdit();
                if (DBGrid.RowCount == 0)
                {
                    MessageBox.Show("没有明细数据", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    return;
                }

                for (int i = 0; i < DBGrid.RowCount; i++)
                {
                    if (DBGrid.Rows[i].Cells[0].Value == null || string.IsNullOrEmpty(DBGrid.Rows[i].Cells[0].Value.ToString()))
                    {
                        MessageBox.Show(clsTranslate.TranslateString("Product id") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        return;
                    }
                    if (DBGrid.Rows[i].Cells[4].Value == null || string.IsNullOrEmpty(DBGrid.Rows[i].Cells[4].Value.ToString()))
                    {
                        MessageBox.Show(clsTranslate.TranslateString("Qty") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        return;
                    }
                    else if (!Util.IsNumeric(DBGrid.Rows[i].Cells[4].Value.ToString()))
                    {
                        MessageBox.Show(clsTranslate.TranslateString("Qty") + clsTranslate.TranslateString(" must be a numeric!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        return;
                    }
                    else if (Convert.ToDecimal(DBGrid.Rows[i].Cells[4].Value.ToString()) <= 0)
                    {
                        MessageBox.Show(clsTranslate.TranslateString("Qty") + clsTranslate.TranslateString(" must > 0!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        return;
                    }

                    if (DBGrid.Rows[i].Cells[5].Value == null || string.IsNullOrEmpty(DBGrid.Rows[i].Cells[5].Value.ToString()))
                    {
                        MessageBox.Show(clsTranslate.TranslateString("Price") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        return;
                    }
                    else if (!Util.IsNumeric(DBGrid.Rows[i].Cells[5].Value.ToString()))
                    {
                        MessageBox.Show(clsTranslate.TranslateString("Price") + clsTranslate.TranslateString(" must be a numeric!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        return;
                    }
                }

                modSalesShipment mod = new modSalesShipment();
                mod.ShipId   = _dal.GetNewId(DateTime.Today);
                mod.ShipDate = DateTime.Today;
                mod.ShipType = "收营单";
                //mod.No = txtNo.Text.Trim();
                mod.AdFlag = 1;
                dalCustomerList dalcust = new dalCustomerList();
                //mod.CustOrderNo = txtCustOrderNo.Text.Trim();
                mod.CustName = "散客";
                mod.CustId   = clsLxms.GetDefaultCustId();

                mod.PayMethod = "现金";
                mod.SalesMan  = Util.UserId;
                mod.OtherMny  = 0;
                mod.KillMny   = 0;
                mod.Currency  = Util.Currency;
                dalAccCurrencyList dalcur = new dalAccCurrencyList();
                modAccCurrencyList modcur = dalcur.GetItem(mod.Currency, out Util.emsg);
                mod.ExchangeRate  = modcur.ExchangeRate;
                mod.DetailSum     = decimal.Parse(txtAmount.Text);
                mod.UpdateUser    = Util.UserId;
                mod.Status        = 0;
                mod.ReceiveStatus = 1;
                mod.AccountNo     = "现金";

                mod.MakeDate      = DateTime.Today;
                mod.ReceiveDate   = DateTime.Today.ToString("yyyy-MM-dd");
                mod.InvoiceStatus = 0;
                mod.InvoiceMny    = 0;
                string detaillist             = string.Empty;
                dalCustomerOrderList dalorder = new dalCustomerOrderList();
                BindingCollection <modSalesShipmentDetail> list = new BindingCollection <modSalesShipmentDetail>();
                for (int i = 0; i < DBGrid.RowCount; i++)
                {
                    modSalesShipmentDetail modd = new modSalesShipmentDetail();
                    modd.Seq         = i + 1;
                    modd.ProductId   = DBGrid.Rows[i].Cells[0].Value.ToString();
                    modd.ProductName = DBGrid.Rows[i].Cells[1].Value.ToString();
                    modd.Specify     = DBGrid.Rows[i].Cells[8].Value.ToString();
                    modd.UnitNo      = DBGrid.Rows[i].Cells[3].Value.ToString();
                    modd.Size        = 1;
                    modd.Qty         = Convert.ToDecimal(DBGrid.Rows[i].Cells[4].Value.ToString());
                    modd.Price       = Convert.ToDecimal(DBGrid.Rows[i].Cells[5].Value.ToString());
                    modd.SalesManMny = 0;
                    modd.WarehouseId = clsLxms.GetDefaultWarehouseId();

                    list.Add(modd);
                }
                bool ret = _dal.Save("ADD", mod, list, out Util.emsg);
                if (ret)
                {
                    this.DialogResult = DialogResult.OK;
                    LoadHistory();
                    DBGrid.Rows.Clear();
                    txtQty.Text    = "0";
                    txtAmount.Text = "0";
                    btnPreview_Click(null, null);
                    txtProduct.Focus();
                }
                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;
            }
        }
Beispiel #9
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 #10
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>();
                modSalesShipment          mod  = (modSalesShipment)DBGrid.CurrentRow.DataBoundItem;
                BindingCollection <modSalesShipmentDetail> listdetail = _dal.GetDetail(mod.ShipId, out Util.emsg);
                dalCustomerList dalcust = new dalCustomerList();
                modCustomerList modcust = dalcust.GetItem(mod.CustId, out Util.emsg);
                switch (Util.retValue1)
                {
                case "送货单":
                case "收营单":
                    string company = clsLxms.GetParameterValue("COMPANY_NAME");
                    switch (company)
                    {
                    case "深圳市蓝图净化用品有限公司":
                        list.Add(new modExcelRangeData("№ " + mod.ShipNo, "H6", "I6"));
                        list.Add(new modExcelRangeData(modcust.FullName, "C7", "E7"));
                        list.Add(new modExcelRangeData(modcust.Tel, "G7", "I7"));
                        list.Add(new modExcelRangeData(modcust.Linkman, "C8", "E8"));
                        list.Add(new modExcelRangeData(modcust.Fax, "G8", "I8"));
                        list.Add(new modExcelRangeData(mod.ShipAddr, "C9", "I9"));

                        list.Add(new modExcelRangeData(mod.CustOrderNo, "A13", "C13"));
                        list.Add(new modExcelRangeData(modcust.PayMethod, "D13", "E13"));
                        dalAdminEmployeeList dalemp = new dalAdminEmployeeList();
                        modAdminEmployeeList modemp = dalemp.GetItem(mod.SalesMan, out Util.emsg);
                        if (modemp != null)
                        {
                            list.Add(new modExcelRangeData(modemp.EmployeeName, "F13", "F13"));
                        }
                        else
                        {
                            list.Add(new modExcelRangeData(mod.SalesMan, "F13", "F13"));
                        }
                        list.Add(new modExcelRangeData(mod.ShipDate.ToString("yyyy年MM月dd日"), "G13", "G13"));

                        for (int i = 0; i < listdetail.Count; i++)
                        {
                            modSalesShipmentDetail modd = listdetail[i];
                            string col = (17 + 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.Specify, "D" + col, "D" + col));
                            list.Add(new modExcelRangeData(modd.Qty.ToString(), "E" + col, "E" + col));
                            list.Add(new modExcelRangeData(modd.UnitNo, "F" + col, "F" + col));
                            list.Add(new modExcelRangeData(modd.Price.ToString("#,##0.00"), "G" + col, "G" + col));
                            list.Add(new modExcelRangeData((modd.Qty * modd.Price).ToString("#,##0.00"), "H" + col, "H" + col));
                            list.Add(new modExcelRangeData(modd.Remark, "I" + col, "I" + col));
                        }
                        clsExport.ExportByTemplate(list, "蓝图送货单", 1, 24, 10, 1);
                        break;

                    default:
                        list.Add(new modExcelRangeData(clsLxms.GetParameterValue("COMPANY_NAME"), "A1", "L1"));
                        list.Add(new modExcelRangeData("TEL:" + clsLxms.GetParameterValue("COMPANY_TEL") + "  Fax:" + clsLxms.GetParameterValue("COMPANY_FAX"), "A2", "L2"));
                        list.Add(new modExcelRangeData("公司地址:" + clsLxms.GetParameterValue("COMPANY_ADDR"), "A3", "L3"));
                        if (mod.InvoiceStatus >= 1)
                        {
                            list.Add(new modExcelRangeData("S", "L4", "L4"));
                        }
                        list.Add(new modExcelRangeData(mod.ShipType, "E4", "I5"));
                        list.Add(new modExcelRangeData(mod.CustOrderNo, "C4", "D4"));
                        list.Add(new modExcelRangeData(modcust.FullName, "C5", "D5"));
                        list.Add(new modExcelRangeData(mod.ShipAddr, "C6", "D6"));
                        list.Add(new modExcelRangeData(modcust.Linkman + " " + modcust.Tel, "K4", "K4"));
                        list.Add(new modExcelRangeData(mod.ShipNo, "K5", "K5"));
                        list.Add(new modExcelRangeData(mod.ShipDate.ToString("yyyy年MM月dd日"), "K6", "K6"));
                        list.Add(new modExcelRangeData("合计金额:" + clsMoney.ConvertToMoney(Convert.ToDouble(mod.DetailSum + mod.OtherMny - mod.KillMny)), "A16", "I17"));
                        list.Add(new modExcelRangeData(string.Format("{0:C2}", mod.DetailSum + mod.OtherMny - mod.KillMny), "J16", "K16"));
                        list.Add(new modExcelRangeData("付款方式:" + mod.PayMethod, "J17", "K17"));
                        list.Add(new modExcelRangeData(Util.UserName, "K20", "K20"));

                        for (int i = 0; i < listdetail.Count; i++)
                        {
                            modSalesShipmentDetail modd = listdetail[i];
                            string col = (8 + i).ToString().Trim();
                            list.Add(new modExcelRangeData((i + 1).ToString(), "A" + col, "A" + col));
                            list.Add(new modExcelRangeData(modd.ProductName, "B" + col, "D" + col));
                            list.Add(new modExcelRangeData(modd.UnitNo, "E" + col, "E" + col));
                            list.Add(new modExcelRangeData(modd.Qty.ToString(), "F" + col, "G" + col));
                            list.Add(new modExcelRangeData(string.Format("{0:C2}", modd.Price), "H" + col, "I" + col));
                            list.Add(new modExcelRangeData(string.Format("{0:C2}", modd.Qty * modd.Price), "J" + col, "J" + col));
                            list.Add(new modExcelRangeData(modd.Remark, "K" + col, "K" + col));
                        }
                        clsExport.ExportByTemplate(list, "送货单", 1, 20, 11, 1);
                        break;
                    }
                    break;

                case "购销合同":
                    list.Add(new modExcelRangeData(modcust.FullName, "B6", "E6"));
                    list.Add(new modExcelRangeData(mod.ShipNo, "I6", "I6"));
                    list.Add(new modExcelRangeData(mod.ShipDate.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"));

                    dalProductList dalpdt = new dalProductList();
                    for (int i = 0; i < listdetail.Count; i++)
                    {
                        modSalesShipmentDetail 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));
                        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));
                    }
                    clsExport.ExportByTemplate(list, "购销合同", 1, 38, 9, 1);
                    break;
                }
            }
        }
Beispiel #11
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;
            }
        }