Example #1
0
 private void toolEdit_Click(object sender, EventArgs e)
 {
     try
     {
         this.Cursor = Cursors.WaitCursor;
         if (DBGrid.CurrentRow == null)
         {
             return;
         }
         modAccPayableForm  mod = (modAccPayableForm)DBGrid.CurrentRow.DataBoundItem;
         EditAccPayableForm frm = new EditAccPayableForm();
         frm.EditItem(mod.Id);
         if (frm.ShowDialog() == DialogResult.OK)
         {
             LoadData();
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
         return;
     }
     finally
     {
         this.Cursor = Cursors.Default;
     }
 }
Example #2
0
        /// <summary>
        /// get new credence list
        /// <summary>
        /// <param name=fromdate>fromdate</param>
        /// <param name=todate>todate</param>
        /// <param name=out emsg>return error message</param>
        ///<returns>details of all salesshipment</returns>
        public BindingCollection <modAccPayableForm> GetWaitCredenceList(string fromdate, string todate, out string emsg)
        {
            try
            {
                BindingCollection <modAccPayableForm> modellist = new BindingCollection <modAccPayableForm>();
                //Execute a query to read the categories
                string formdatewhere = string.Empty;
                if (!string.IsNullOrEmpty(fromdate))
                {
                    formdatewhere = "and a.form_date >= '" + Convert.ToDateTime(fromdate) + "' ";
                }
                if (!string.IsNullOrEmpty(todate))
                {
                    formdatewhere += "and a.form_date <= '" + Convert.ToDateTime(todate) + "' ";
                }

                string sql = "select a.id,a.status,a.form_date,a.no,a.vendor_name,a.currency,a.exchange_rate,a.get_mny,a.payable_mny,a.subject_id,c.subject_name,a.detail_id,a.detail_name,a.check_no,a.check_type,a.bank_name,a.promise_date,a.remark,a.update_user,a.update_time,a.audit_man,a.audit_time,a.acc_name,a.acc_seq "
                             + "from acc_payable_form a inner join acc_subject_list c on a.subject_id=c.subject_id where a.status=1 and (a.acc_name is null or a.acc_name='') and a.acc_seq=0 " + formdatewhere + " order by a.id";
                using (SqlDataReader rdr = SqlHelper.ExecuteReader(sql))
                {
                    while (rdr.Read())
                    {
                        modAccPayableForm model = new modAccPayableForm();
                        model.Id           = dalUtility.ConvertToInt(rdr["id"]);
                        model.Status       = dalUtility.ConvertToInt(rdr["status"]);
                        model.FormDate     = dalUtility.ConvertToDateTime(rdr["form_date"]);
                        model.No           = dalUtility.ConvertToString(rdr["no"]);
                        model.VendorName   = dalUtility.ConvertToString(rdr["vendor_name"]);
                        model.Currency     = dalUtility.ConvertToString(rdr["currency"]);
                        model.ExchangeRate = dalUtility.ConvertToDecimal(rdr["exchange_rate"]);
                        model.PaidMny      = dalUtility.ConvertToDecimal(rdr["get_mny"]);
                        model.PayableMny   = dalUtility.ConvertToDecimal(rdr["payable_mny"]);
                        model.SubjectId    = dalUtility.ConvertToString(rdr["subject_id"]);
                        model.SubjectName  = dalUtility.ConvertToString(rdr["subject_name"]);
                        model.DetailId     = dalUtility.ConvertToString(rdr["detail_id"]);
                        model.DetailName   = dalUtility.ConvertToString(rdr["detail_name"]);
                        model.CheckNo      = dalUtility.ConvertToString(rdr["check_no"]);
                        model.CheckType    = dalUtility.ConvertToString(rdr["check_type"]);
                        model.BankName     = dalUtility.ConvertToString(rdr["bank_name"]);
                        model.PromiseDate  = dalUtility.ConvertToDateTime(rdr["promise_date"]);
                        model.Remark       = dalUtility.ConvertToString(rdr["remark"]);
                        model.UpdateUser   = dalUtility.ConvertToString(rdr["update_user"]);
                        model.UpdateTime   = dalUtility.ConvertToDateTime(rdr["update_time"]);
                        model.AuditMan     = dalUtility.ConvertToString(rdr["audit_man"]);
                        model.AuditTime    = dalUtility.ConvertToDateTime(rdr["audit_time"]);
                        model.AccName      = dalUtility.ConvertToString(rdr["acc_name"]);
                        model.AccSeq       = dalUtility.ConvertToInt(rdr["acc_seq"]);
                        modellist.Add(model);
                    }
                }
                emsg = null;
                return(modellist);
            }
            catch (Exception ex)
            {
                emsg = dalUtility.ErrorMessage(ex.Message);
                return(null);
            }
        }
Example #3
0
 /// <summary>
 /// get table record
 /// <summary>
 /// <param name=id>id</param>
 /// <param name=out emsg>return error message</param>
 ///<returns>get a record detail of accpayableform</returns>
 public modAccPayableForm GetItem(int id, out string emsg)
 {
     try
     {
         //Execute a query to read the categories
         string sql = string.Format("select a.id,a.status,a.form_date,a.no,a.vendor_name,a.currency,a.exchange_rate,a.get_mny,a.payable_mny,a.subject_id,c.subject_name,a.detail_id,a.detail_name,a.check_no,a.check_type,a.bank_name,a.promise_date,a.remark,a.update_user,a.update_time,a.audit_man,a.audit_time,a.acc_name,a.acc_seq "
                                    + "from acc_payable_form a inner join acc_subject_list c on a.subject_id=c.subject_id where a.id={0} order by a.id", id);
         using (SqlDataReader rdr = SqlHelper.ExecuteReader(sql))
         {
             if (rdr.Read())
             {
                 modAccPayableForm model = new modAccPayableForm();
                 model.Id           = dalUtility.ConvertToInt(rdr["id"]);
                 model.Status       = dalUtility.ConvertToInt(rdr["status"]);
                 model.FormDate     = dalUtility.ConvertToDateTime(rdr["form_date"]);
                 model.No           = dalUtility.ConvertToString(rdr["no"]);
                 model.VendorName   = dalUtility.ConvertToString(rdr["vendor_name"]);
                 model.Currency     = dalUtility.ConvertToString(rdr["currency"]);
                 model.ExchangeRate = dalUtility.ConvertToDecimal(rdr["exchange_rate"]);
                 model.PaidMny      = dalUtility.ConvertToDecimal(rdr["get_mny"]);
                 model.PayableMny   = dalUtility.ConvertToDecimal(rdr["payable_mny"]);
                 model.SubjectId    = dalUtility.ConvertToString(rdr["subject_id"]);
                 model.SubjectName  = dalUtility.ConvertToString(rdr["subject_name"]);
                 model.DetailId     = dalUtility.ConvertToString(rdr["detail_id"]);
                 model.DetailName   = dalUtility.ConvertToString(rdr["detail_name"]);
                 model.CheckNo      = dalUtility.ConvertToString(rdr["check_no"]);
                 model.CheckType    = dalUtility.ConvertToString(rdr["check_type"]);
                 model.BankName     = dalUtility.ConvertToString(rdr["bank_name"]);
                 model.PromiseDate  = dalUtility.ConvertToDateTime(rdr["promise_date"]);
                 model.Remark       = dalUtility.ConvertToString(rdr["remark"]);
                 model.UpdateUser   = dalUtility.ConvertToString(rdr["update_user"]);
                 model.UpdateTime   = dalUtility.ConvertToDateTime(rdr["update_time"]);
                 model.AuditMan     = dalUtility.ConvertToString(rdr["audit_man"]);
                 model.AuditTime    = dalUtility.ConvertToDateTime(rdr["audit_time"]);
                 model.AccName      = dalUtility.ConvertToString(rdr["acc_name"]);
                 model.AccSeq       = dalUtility.ConvertToInt(rdr["acc_seq"]);
                 emsg = null;
                 return(model);
             }
             else
             {
                 emsg = "Error on read data";
                 return(null);
             }
         }
     }
     catch (Exception ex)
     {
         emsg = dalUtility.ErrorMessage(ex.Message);
         return(null);
     }
 }
Example #4
0
        private void DBGrid_SelectionChanged(object sender, EventArgs e)
        {
            if (DBGrid.CurrentRow == null)
            {
                return;
            }
            modAccPayableForm mod = (modAccPayableForm)DBGrid.CurrentRow.DataBoundItem;

            if (mod.Status == 0)
            {
                toolDel.Enabled   = true;
                toolAudit.Enabled = true;
                toolReset.Enabled = false;
            }
            else
            {
                toolDel.Enabled   = false;
                toolAudit.Enabled = false;
                toolReset.Enabled = true;
            }
        }
Example #5
0
 private void toolDel_Click(object sender, EventArgs e)
 {
     try
     {
         this.Cursor = Cursors.WaitCursor;
         if (DBGrid.CurrentRow == null)
         {
             return;
         }
         if (MessageBox.Show(clsTranslate.TranslateString("Do you really want to delete it?"), clsTranslate.TranslateString("Confirm"), MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
         {
             return;
         }
         modAccPayableForm mod = _dal.GetItem(Convert.ToInt32(DBGrid.CurrentRow.Cells[0].Value), out Util.emsg);
         if (mod.Status == 1)
         {
             MessageBox.Show("该单据已审核,您不能删除!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
             return;
         }
         bool ret = _dal.Delete(mod.Id, out Util.emsg);
         if (ret)
         {
             LoadData();
         }
         else
         {
             MessageBox.Show(Util.emsg, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
         return;
     }
     finally
     {
         this.Cursor = Cursors.Default;
     }
 }
Example #6
0
 /// <summary>
 /// update a accpayableform
 /// <summary>
 /// <param name=id>id</param>
 /// <param name=mod>model object of accpayableform</param>
 /// <param name=out emsg>return error message</param>
 /// <returns>true/false</returns>
 public bool Update(int id, modAccPayableForm mod, out string emsg)
 {
     try
     {
         string sql = string.Format("update acc_payable_form set status={0},form_date='{1}',no='{2}',vendor_name='{3}',currency='{4}',exchange_rate={5},get_mny={6},payable_mny={7},subject_id='{8}',detail_id='{9}',detail_name='{10}',check_no='{11}',check_type='{12}',bank_name='{13}',promise_date='{14}',remark='{15}' where id={16}", mod.Status, mod.FormDate, mod.No, mod.VendorName, mod.Currency, mod.ExchangeRate, mod.PaidMny, mod.PayableMny, mod.SubjectId, mod.DetailId, mod.DetailName, mod.CheckNo, mod.CheckType, mod.BankName, mod.PromiseDate, mod.Remark, id);
         int    i   = SqlHelper.ExecuteNonQuery(sql);
         if (i > 0)
         {
             emsg = null;
             return(true);
         }
         else
         {
             emsg = "Unknown error when ExecuteNonQuery!";
             return(false);
         }
     }
     catch (Exception ex)
     {
         emsg = dalUtility.ErrorMessage(ex.Message);
         return(false);
     }
 }
Example #7
0
 /// <summary>
 /// insert a accpayableform
 /// <summary>
 /// <param name=mod>model object of accpayableform</param>
 /// <param name=out emsg>return error message</param>
 /// <returns>true/false</returns>
 public bool Insert(modAccPayableForm mod, out string emsg)
 {
     try
     {
         string sql = string.Format("insert into acc_payable_form(status,form_date,no,vendor_name,currency,exchange_rate,get_mny,payable_mny,subject_id,detail_id,detail_name,check_no,check_type,bank_name,promise_date,remark,update_user,update_time)values({0},'{1}','{2}','{3}','{4}',{5},{6},{7},'{8}','{9}','{10}','{11}','{12}','{13}','{14}','{15}','{16}',getdate())", mod.Status, mod.FormDate, mod.No, mod.VendorName, mod.Currency, mod.ExchangeRate, mod.PaidMny, mod.PayableMny, mod.SubjectId, mod.DetailId, mod.DetailName, mod.CheckNo, mod.CheckType, mod.BankName, mod.PromiseDate, mod.Remark, mod.UpdateUser);
         int    i   = SqlHelper.ExecuteNonQuery(sql);
         if (i > 0)
         {
             emsg = null;
             return(true);
         }
         else
         {
             emsg = "Unknown error when ExecuteNonQuery!";
             return(false);
         }
     }
     catch (Exception ex)
     {
         emsg = dalUtility.ErrorMessage(ex.Message);
         return(false);
     }
 }
Example #8
0
        private void toolReset_Click(object sender, EventArgs e)
        {
            try
            {
                this.Cursor = Cursors.WaitCursor;
                if (DBGrid.RowCount == 0)
                {
                    return;
                }
                if (DBGrid.SelectedRows.Count == 0 && DBGrid.CurrentRow == null)
                {
                    return;
                }
                if (MessageBox.Show(clsTranslate.TranslateString("Do you really want to reset it?"), clsTranslate.TranslateString("Confirm"), MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
                {
                    return;
                }

                if (DBGrid.SelectedRows.Count == 0)
                {
                    modAccPayableForm mod = _dal.GetItem(Convert.ToInt32(DBGrid.CurrentRow.Cells[0].Value), out Util.emsg);
                    if (mod.AccSeq > 0)
                    {
                        MessageBox.Show("该单据已做凭证,不可重置!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                        return;
                    }
                    if (_dal.Reset(mod.Id, Util.UserId, out Util.emsg))
                    {
                        MessageBox.Show(clsTranslate.TranslateString("Reset Success!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                        LoadData();
                    }
                    else
                    {
                        MessageBox.Show(clsTranslate.TranslateString(Util.emsg), mod.Id.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        return;
                    }
                }
                else
                {
                    for (int i = DBGrid.SelectedRows.Count - 1; i >= 0; i--)
                    {
                        modAccPayableForm mod = _dal.GetItem(Convert.ToInt32(DBGrid.SelectedRows[i].Cells[0].Value), out Util.emsg);
                        if (mod.AccSeq > 0)
                        {
                            MessageBox.Show("该单据已做凭证,不可重置!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                            return;
                        }
                        if (_dal.Reset(mod.Id, Util.UserId, out Util.emsg))
                        {
                            //
                        }
                        else
                        {
                            MessageBox.Show(clsTranslate.TranslateString(Util.emsg), mod.Id.ToString(), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                            return;
                        }
                    }
                    LoadData();
                }
                toolDel.Enabled   = true;
                toolAudit.Enabled = true;
                toolReset.Enabled = false;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }
            finally
            {
                this.Cursor = Cursors.Default;
            }
        }
Example #9
0
 public void EditItem(int id)
 {
     try
     {
         this.Cursor = Cursors.WaitCursor;
         _action     = "EDIT";
         modAccPayableForm mod = _dal.GetItem(id, out Util.emsg);
         if (mod != null)
         {
             txtId.Text           = id.ToString();
             dtpFormDate.Value    = mod.FormDate;
             txtNo.Text           = mod.No;
             txtVendorName.Text   = mod.VendorName;
             txtPaidMny.Text      = mod.PaidMny.ToString();
             txtPayable.Text      = mod.PayableMny.ToString();
             txtSubjectId.Text    = mod.SubjectId;
             txtSubjectName.Text  = mod.SubjectName;
             txtDetailId.Text     = mod.DetailId;
             txtDetailName.Text   = mod.DetailName;
             txtCurrency.Text     = mod.Currency;
             txtExchangeRate.Text = mod.ExchangeRate.ToString();
             txtCheckNo.Text      = mod.CheckNo;
             cboCheckType.Text    = mod.CheckType;
             cboBankName.Text     = mod.BankName;
             dtpPromiseDate.Value = mod.PromiseDate;
             txtRemark.Text       = mod.Remark;
             if (mod.Status == 1)
             {
                 status4.Image = Properties.Resources.audited;
                 Util.ChangeStatus(this, true);
                 toolSave.Enabled = false;
             }
             else
             {
                 status4.Image    = null;
                 toolSave.Visible = true;
                 Util.ChangeStatus(this, false);
                 txtId.ReadOnly   = true;
                 toolSave.Enabled = true;
                 if (mod.SubjectId == "1075" || mod.SubjectId == "5125")  //应收票据  应付票据
                 {
                     txtCheckNo.ReadOnly    = false;
                     cboCheckType.Enabled   = true;
                     cboBankName.Enabled    = true;
                     dtpPromiseDate.Enabled = true;
                 }
                 else
                 {
                     txtCheckNo.ReadOnly    = true;
                     cboCheckType.Enabled   = false;
                     cboBankName.Enabled    = false;
                     dtpPromiseDate.Enabled = false;
                 }
             }
             txtVendorName.ReadOnly  = true;
             txtVendorName.ReadOnly  = true;
             txtSubjectId.ReadOnly   = true;
             txtSubjectName.ReadOnly = true;
             txtCurrency.ReadOnly    = true;
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
         return;
     }
     finally
     {
         this.Cursor = Cursors.Default;
     }
 }
Example #10
0
        private void toolSave_Click(object sender, EventArgs e)
        {
            try
            {
                this.Cursor = Cursors.WaitCursor;
                if (dtpFormDate.Value < Util.modperiod.StartDate)
                {
                    MessageBox.Show("该日期的数据已锁定,不能更新数据!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                    dtpFormDate.Focus();
                    return;
                }
                if (string.IsNullOrEmpty(txtPaidMny.Text.Trim()))
                {
                    MessageBox.Show(clsTranslate.TranslateString("Get mny") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtPaidMny.Focus();
                    return;
                }
                else if (!Util.IsNumeric(txtPaidMny.Text))
                {
                    MessageBox.Show(clsTranslate.TranslateString("Get mny") + clsTranslate.TranslateString(" must be a numeric!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtPaidMny.Focus();
                    return;
                }
                if (string.IsNullOrEmpty(txtPayable.Text.Trim()))
                {
                    MessageBox.Show(clsTranslate.TranslateString("Payable mny") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtPayable.Focus();
                    return;
                }
                else if (!Util.IsNumeric(txtPayable.Text))
                {
                    MessageBox.Show(clsTranslate.TranslateString("Payable mny") + clsTranslate.TranslateString(" must be a numeric!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtPayable.Focus();
                    return;
                }
                if (string.IsNullOrEmpty(txtVendorName.Text))
                {
                    MessageBox.Show(clsTranslate.TranslateString("Vendor name") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtVendorName.Focus();
                    return;
                }
                if (string.IsNullOrEmpty(txtSubjectId.Text))
                {
                    MessageBox.Show(clsTranslate.TranslateString("Subject Id") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtSubjectId.Focus();
                    return;
                }
                if (string.IsNullOrEmpty(txtCurrency.Text))
                {
                    MessageBox.Show(clsTranslate.TranslateString("Currency") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtCurrency.Focus();
                    return;
                }
                if (string.IsNullOrEmpty(txtExchangeRate.Text))
                {
                    MessageBox.Show(clsTranslate.TranslateString("Exchange rate") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtExchangeRate.Focus();
                    return;
                }
                else if (!Util.IsNumeric(txtExchangeRate.Text))
                {
                    MessageBox.Show(clsTranslate.TranslateString("Exchange rate") + clsTranslate.TranslateString(" must be a numeric!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtExchangeRate.Focus();
                    return;
                }
                if (txtSubjectId.Text.Trim() == "1030" || txtSubjectId.Text.Trim() == "1055" || txtSubjectId.Text.Trim() == "1060" || txtSubjectId.Text.Trim() == "5145" || txtSubjectId.Text.Trim() == "5155")   //现金银行  应收 其它应收 应付 其它应付
                {
                    if (string.IsNullOrEmpty(txtDetailId.Text))
                    {
                        MessageBox.Show(clsTranslate.TranslateString("Detail id") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        txtDetailId.Focus();
                        return;
                    }
                }
                if (txtSubjectId.Text.Trim() == "1075" || txtSubjectId.Text.Trim() == "5125")  //应收票据  应付票据
                {
                    if (string.IsNullOrEmpty(txtCheckNo.Text))
                    {
                        MessageBox.Show(clsTranslate.TranslateString("Check no") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        txtCheckNo.Focus();
                        return;
                    }
                    if (string.IsNullOrEmpty(cboCheckType.Text))
                    {
                        MessageBox.Show(clsTranslate.TranslateString("Check type") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        cboCheckType.Focus();
                        return;
                    }
                    if (string.IsNullOrEmpty(cboBankName.Text))
                    {
                        MessageBox.Show(clsTranslate.TranslateString("Bank name") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        cboBankName.Focus();
                        return;
                    }
                }
                if (clsLxms.GetParameterValue("NEED_PAYABLE_NO").CompareTo("T") == 0 && string.IsNullOrEmpty(txtNo.Text))
                {
                    MessageBox.Show(clsTranslate.TranslateString("No") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                    txtNo.Focus();
                    return;
                }

                modAccPayableForm mod = new modAccPayableForm();
                mod.Id           = Convert.ToInt32(txtId.Text);
                mod.FormDate     = dtpFormDate.Value;
                mod.No           = txtNo.Text.Trim();
                mod.VendorName   = txtVendorName.Text.Trim();
                mod.PaidMny      = Convert.ToDecimal(txtPaidMny.Text);
                mod.PayableMny   = Convert.ToDecimal(txtPayable.Text);
                mod.SubjectId    = txtSubjectId.Text.Trim();
                mod.SubjectName  = txtSubjectName.Text.Trim();
                mod.DetailId     = txtDetailId.Text.Trim();
                mod.DetailName   = txtDetailName.Text.Trim();
                mod.Currency     = txtCurrency.Text.Trim();
                mod.ExchangeRate = Convert.ToDecimal(txtExchangeRate.Text);
                if (mod.SubjectId == "1075" || mod.SubjectId == "5125")
                {
                    mod.CheckNo   = txtCheckNo.Text.Trim();
                    mod.CheckType = cboCheckType.Text.Trim();
                    mod.BankName  = cboBankName.Text.Trim();
                    ShowHideCheckControl(true);
                }
                else
                {
                    ShowHideCheckControl(false);
                }
                mod.PromiseDate = dtpPromiseDate.Value;
                mod.Remark      = txtRemark.Text.Trim();
                mod.UpdateUser  = Util.UserId;
                mod.Status      = 0;
                bool ret;
                if (_action == "ADD" || _action == "NEW")
                {
                    ret = _dal.Insert(mod, out Util.emsg);
                    if (ret)
                    {
                        if (MessageBox.Show("保存成功,是否继续添加?", clsTranslate.TranslateString("Confirm"), MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
                        {
                            txtVendorName.Text = string.Empty;
                            txtPaidMny.Text    = string.Empty;
                            txtPayable.Text    = string.Empty;
                        }
                        else
                        {
                            this.DialogResult = DialogResult.OK;
                            this.Dispose();
                        }
                    }
                    else
                    {
                        MessageBox.Show(Util.emsg, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                }
                else
                {
                    ret = _dal.Update(mod.Id, mod, 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;
            }
        }