コード例 #1
0
ファイル: Stock_Func.cs プロジェクト: xcxlTeam/xcxl
 public bool SaveCheckOmitAdd(string strBarcode, Basic.Area.AreaInfo areaInfo, ref string strErrMsg)
 {
     return(_db.SaveCheckOmitAdd(strBarcode, areaInfo, ref strErrMsg));
 }
コード例 #2
0
ファイル: Stock_DB.cs プロジェクト: xcxlTeam/xcxl
        public bool SaveCheckOmitAdd(string strBarcode, Basic.Area.AreaInfo areaInfo, ref string strErrMsg)
        {
            SqlCommand     cmd  = new SqlCommand();
            SqlConnection  conn = new SqlConnection();
            SqlDataAdapter adp  = new SqlDataAdapter();

            conn.ConnectionString = OperationSql.connectionString;
            try
            {
                conn.Open();
            }
            catch (Exception ex)
            {
                strErrMsg = ex.Message;
                return(false);
            }

            SqlTransaction myTran;

            myTran          = conn.BeginTransaction();
            cmd.Connection  = conn;
            cmd.Transaction = myTran;
            //SqlDataReader reader = null;
            string sql = null;

            try
            {
                int iSn = 0;
                cmd.CommandText = "P_GetNewSeqVal_SEQ_STOCK";
                //指定SqlCommand对象传给数据库的是存储过程的名称而不是sql语句
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.Clear();
                cmd.Parameters.Add(new SqlParameter("@ID", SqlDbType.Int));
                //指定"@ID"为输出参数
                cmd.Parameters[0].Direction = ParameterDirection.Output;
                //执行
                cmd.ExecuteNonQuery();
                iSn             = Convert.ToInt32(cmd.Parameters["@ID"].Value);
                cmd.CommandType = CommandType.Text;
                cmd.Parameters.Clear();

                sql = string.Format(@"insert into t_stock (id,barcode,serialno,materialno,materialdesc,warehouseno,houseno,areano,qty,
       status,isdel,creater,createtime,batchno,sn,returnsupcode,returnreson,returnsupname)
       select {0} id,barcode,serialno,materialno,materialdesc,'{1}','{2}','{3}',
       qty,1,0,'admin',GETDATE(),batchno,sn,(case  when vouchertype=30 then supcode  end ), reason,(case  when vouchertype=30 then supname  end )  from t_outbarcode 
       where serialno = '{4}'", iSn, areaInfo.WarehouseNo, areaInfo.HouseNo, areaInfo.AreaNo, strBarcode);

                cmd.CommandText = sql;
                cmd.ExecuteNonQuery();

                if (areaInfo.AreaType == 1)
                {
                    sql = string.Format("update T_OUTBARCODE set iFlag=3 where serialno='{0}'", strBarcode);
                }
                else
                {
                    sql = string.Format("update T_OUTBARCODE set iFlag=2 where serialno='{0}'", strBarcode);
                }

                cmd.CommandText = sql;
                cmd.ExecuteNonQuery();

                myTran.Commit();
                return(true);
            }
            catch (Exception ex)
            {
                strErrMsg = ex.Message;
                myTran.Rollback();
                return(false);
            }
            finally
            {
                //if (reader != null && !reader.IsClosed)
                //    reader.Close();
                conn.Close();
            }
        }