Beispiel #1
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                try
                {
                    gridView1.FocusedRowHandle -= 1;
                    gridView1.FocusedRowHandle += 1;
                }
                catch { }

                int    iCou   = 0;
                string sErr   = "";
                string s_Guid = Guid.NewGuid().ToString();

                SqlConnection conn = new SqlConnection(DbHelperSQL.connectionString);
                conn.Open();
                //启用事务
                SqlTransaction tran = conn.BeginTransaction();
                try
                {
                    int    iCode = 0;
                    string sSQL  = "";
                    if (txt单据号.Text.Trim() != "")
                    {
                        sSQL = @"
select * from [dbo].[_高开返利单] where cCode = '{0}' 
";
                        sSQL = string.Format(sSQL, txt单据号.Text.Trim());
                        DataTable dt = DbHelperSQL.ExecuteDataset(tran, CommandType.Text, sSQL).Tables[0];
                        if (dt == null || dt.Rows.Count == 0)
                        {
                            iCode = 0;
                        }
                        else
                        {
                            if (dt.Rows[0]["auditUid"].ToString().Trim() != "")
                            {
                                throw new Exception("单据已经审核");
                            }

                            sSQL = @"
delete [_高开返利单] where cCode = '{0}' 
";
                            sSQL = string.Format(sSQL, txt单据号.Text.Trim());
                            DbHelperSQL.ExecuteNonQuery(tran, CommandType.Text, sSQL);
                        }
                    }

                    sSQL = @"
select max(cCode) as cCodeMax from [dbo].[_高开返利单] where cCode like '{0}%'
";
                    sSQL = string.Format(sSQL, dtm.DateTime.ToString("yyyyMM"));
                    DataTable dtCode = DbHelperSQL.ExecuteDataset(tran, CommandType.Text, sSQL).Tables[0];
                    if (dtCode == null || dtCode.Rows.Count == 0 || dtCode.Rows[0]["cCodeMax"].ToString().Trim() == "")
                    {
                        iCode = 1;
                    }
                    else
                    {
                        string sCodeTemp = dtCode.Rows[0]["cCodeMax"].ToString().Trim();
                        string stemp     = sCodeTemp.Substring(6);
                        iCode = BaseFunction.ReturnInt(stemp) + 1;
                    }

                    string sCode = iCode.ToString().Trim();
                    sCode = dtm.DateTime.ToString("yyyyMM") + sCode.PadLeft(4, '0');

                    for (int i = 0; i < gridView1.RowCount; i++)
                    {
                        if (!BaseFunction.ReturnBool(gridView1.GetRowCellValue(i, gridCol选择)))
                        {
                            continue;
                        }

                        bool    bRed  = BaseFunction.ReturnBool(gridView1.GetRowCellValue(i, gridColbRed));
                        decimal d发货单价 = BaseFunction.ReturnDecimal(gridView1.GetRowCellValue(i, gridCol发货单价));
                        if (d发货单价 <= 0 && !bRed)
                        {
                            sErr = sErr + "行" + (i + 1).ToString() + "发货单价不正确\n";
                            continue;
                        }

                        Model._高开返利单 mod = new UFIDA.U8.UAP.CustomApp.ControlForm.Model._高开返利单();
                        mod.cCode       = sCode;
                        mod.dtmDate     = dtm.DateTime;
                        mod.FPIDs       = BaseFunction.ReturnInt(gridView1.GetRowCellValue(i, gridCol发票表体ID));
                        mod.cSBVCode    = gridView1.GetRowCellValue(i, gridCol发票号).ToString().Trim();
                        mod.dDate       = BaseFunction.ReturnDate(gridView1.GetRowCellValue(i, gridCol发票日期));
                        mod.cPersonCode = gridView1.GetRowCellValue(i, gridColcPersonCode).ToString().Trim();
                        mod.cPersonName = gridView1.GetRowCellValue(i, gridColcPersonName).ToString().Trim();
                        //mod.cPersonCode = lookUpEditcPersonCode.EditValue.ToString().Trim();
                        //mod.cPersonName = lookUpEditcPersonName.Text.Trim();
                        mod.cDepCode        = gridView1.GetRowCellValue(i, gridCol部门编号).ToString().Trim();
                        mod.cDepName        = gridView1.GetRowCellValue(i, gridCol部门名称).ToString().Trim();
                        mod.cCusCode        = gridView1.GetRowCellValue(i, gridCol客户编码).ToString().Trim();
                        mod.cCusName        = gridView1.GetRowCellValue(i, gridCol客户名称).ToString().Trim();
                        mod.cCusAbbName     = gridView1.GetRowCellValue(i, gridCol客户简称).ToString().Trim();
                        mod.cInvCode        = gridView1.GetRowCellValue(i, gridCol存货编码).ToString().Trim();
                        mod.cInvName        = gridView1.GetRowCellValue(i, gridCol存货名称).ToString().Trim();
                        mod.cInvStd         = gridView1.GetRowCellValue(i, gridCol规格型号).ToString().Trim();
                        mod.iTaxUnitPrice   = BaseFunction.ReturnDecimal(gridView1.GetRowCellValue(i, gridCol单价));
                        mod.iQuantity       = BaseFunction.ReturnDecimal(gridView1.GetRowCellValue(i, gridCol数量));
                        mod.iSum            = BaseFunction.ReturnDecimal(gridView1.GetRowCellValue(i, gridCol金额));
                        mod.cDLCode         = gridView1.GetRowCellValue(i, gridCol发货单号).ToString().Trim();
                        mod.iTaxUnitPriceFH = BaseFunction.ReturnDecimal(gridView1.GetRowCellValue(i, gridCol发货单价));
                        mod.iTaxRateCJ      = BaseFunction.ReturnDecimal(gridView1.GetRowCellValue(i, gridCol差价税率));
                        mod.iTaxCJ          = BaseFunction.ReturnDecimal(gridView1.GetRowCellValue(i, gridCol差价税额));
                        mod.iMoneyFL        = BaseFunction.ReturnDecimal(gridView1.GetRowCellValue(i, gridCol返利金额));
                        mod.createUid       = sUserID;
                        mod.dtmCreate       = BaseFunction.ReturnDate(sLogDate);
                        mod.Remark          = txt备注.Text.Trim();
                        mod.DLS             = gridView1.GetRowCellValue(i, gridCol代理商编码).ToString().Trim();
                        mod.DLSName         = gridView1.GetRowCellValue(i, gridCol代理商).ToString().Trim();
                        mod.sGUID           = s_Guid;
                        mod.bRed            = BaseFunction.ReturnBool(gridView1.GetRowCellValue(i, gridColbRed));


                        DAL._高开返利单 dal = new UFIDA.U8.UAP.CustomApp.ControlForm.DAL._高开返利单();
                        sSQL  = dal.Add(mod);
                        iCou += DbHelperSQL.ExecuteNonQuery(tran, CommandType.Text, sSQL);


                        txt单据号.Text = mod.cCode;
                        lookUpEdit_cPersonCode.EditValue = mod.cPersonCode;


                        //int iFoc = gridView1.FocusedRowHandle;
                        //GetGrid(tran);
                        //gridView1.FocusedRowHandle = iFoc;
                    }

                    if (sErr.Length > 0)
                    {
                        throw new Exception(sErr.Trim());
                    }

                    if (iCou > 0)
                    {
                        tran.Commit();

                        MessageBox.Show("保存成功\n单据号:" + sCode);

                        SetEnable(false);
                    }
                    else
                    {
                        throw new Exception("请选择需要保存的数据");
                    }
                }
                catch (Exception error)
                {
                    tran.Rollback();
                    throw new Exception(error.Message);
                }
            }
            catch (Exception ee)
            {
                FrmMsgBox f = new FrmMsgBox();
                f.Text = "保存失败";
                f.richTextBox1.Text = ee.Message;
                f.ShowDialog();
            }
        }
Beispiel #2
0
        private void btnDel_Click(object sender, EventArgs e)
        {
            try
            {
                try
                {
                    gridView1.FocusedRowHandle -= 1;
                    gridView1.FocusedRowHandle += 1;
                }
                catch { }

                string        sErr = "";
                int           iCou = 0;
                SqlConnection conn = new SqlConnection(DbHelperSQL.connectionString);
                conn.Open();
                //启用事务
                SqlTransaction tran = conn.BeginTransaction();
                try
                {
                    if (txt单据号.Text.Trim() == "")
                    {
                        throw new Exception("请选择单据");
                    }

                    string sSQL = @"
select * from [dbo].[_高开返利单] where cCode = '{0}' 
";
                    sSQL = string.Format(sSQL, txt单据号.Text.Trim());
                    DataTable dt = DbHelperSQL.ExecuteDataset(tran, CommandType.Text, sSQL).Tables[0];
                    if (dt == null || dt.Rows.Count == 0)
                    {
                        throw new Exception("单据不存在");
                    }

                    if (dt.Rows[0]["auditUid"].ToString().Trim() != "")
                    {
                        throw new Exception("单据已经审核");
                    }

                    DAL._高开返利单 dal = new UFIDA.U8.UAP.CustomApp.ControlForm.DAL._高开返利单();
                    sSQL = dal.Delete(txt单据号.Text.Trim());
                    iCou = DbHelperSQL.ExecuteNonQuery(tran, CommandType.Text, sSQL);
                    tran.Commit();

                    if (iCou > 0)
                    {
                        MessageBox.Show("删除成功");

                        SetNull();
                        SetEnable(true);
                    }
                }
                catch (Exception error)
                {
                    tran.Rollback();
                    throw new Exception(error.Message);
                }
            }
            catch (Exception ee)
            {
                FrmMsgBox f = new FrmMsgBox();
                f.Text = "删除失败";
                f.richTextBox1.Text = ee.Message;
                f.ShowDialog();
            }
        }