/// <summary> /// 查詢進貨驗收退貨資料(明細) /// </summary> /// <param name="ParameterList"></param> /// <returns></returns> public DataTable QueryVAMUpdateItem(ArrayList ParameterList) { try { VAM08_DBO DBO = new VAM08_DBO(ref USEDB); DataTable dt = DBO.QueryVAMUpdateItem(ParameterList); return dt; } catch (Exception ex) { throw ex; } }
/// <summary> /// 異動進貨驗收退貨資料 /// </summary> /// <param name="V_ACCEPT_RETURN_NO">檢查是否已經日、月結</param> /// <param name="ArrayList_Main">異動主檔,null表無異動</param> /// <param name="dt">異動明細檔</param> /// <param name="RootDBT"></param> /// <param name="R_MSG">檢查是否已經日、月結回傳訊息</param> public void VAMUpdateOrder(string V_VENDOR_NEW, ArrayList ArrayList_Main, DataTable dt, DbTransaction RootDBT, out string R_MSG) { bool IsRootTranscation = false; try { //判斷是否有傳入Root Transcation IsRootTranscation = (RootDBT == null) ? true : false; #region 啟動交易或指定RootTranscation if (IsRootTranscation) { //獨立呼叫啟動Transcation Conn = USEDB.CreateConnection(); Conn.Open(); DBT = Conn.BeginTransaction(); } else { DBT = RootDBT; } #endregion R_MSG = string.Empty; DBO.VAM08_DBO dbo = new VAM08_DBO(ref USEDB); //2010/3/26 把檢查註解掉 //string V_MSG = string.Empty, V_RESULT = string.Empty; //dbo.CheckCloseStatus(ArrayList_Main, out V_MSG, out V_RESULT); //if (V_RESULT == "0") //{ // R_MSG = V_MSG; // return; //} //if (V_VENDOR_NEW != null) // dbo.VAMUpdateMain(ArrayList_Main, DBT); //else // V_VENDOR_NEW = dt.Rows[0]["ACCEPT_RETURN_NO"].ToString(); dbo.VAMUpdateMain(ArrayList_Main, DBT); if (dt != null) { foreach (DataRow dr in dt.Rows) { dbo.VAMUpdateDetl(dr, ArrayList_Main, DBT);//異動進貨驗收退貨資料 } //dbo. } #region 交易成功 if (IsRootTranscation) { //獨立呼叫Transcation成立 DBT.Commit(); } #endregion } catch (Exception ex) { #region 交易失敗 if (IsRootTranscation) { //獨立呼叫Transcation失敗 DBT.Rollback(); } #endregion throw ex; } finally { #region 判斷是否關閉交易連線 if (IsRootTranscation) { //獨立呼叫Transcation,關閉連線 if (Conn.State == ConnectionState.Connecting) { Conn.Close(); } } #endregion } }