/// <summary> /// 呼叫PKG_VDS_VAM05.QueryReturnSKUClose取得廠退日大於期別結束日資料 /// N_MARKED_FLAG 0:全部 1:已註記 2:未註記 /// </summary> public DataTable QueryReturnSKUClose(ArrayList ParameterList) { try { DBO.VAM051_DBO DBO = new VAM051_DBO(ref USEDB); return DBO.doQueryReturnSKUClose(ParameterList); } catch (Exception ex) { throw ex; } }
/// <summary> /// 呼叫PKG_VDS_VAM05.InsertSelectdItem,PKG_VDS_VAM05.CheckVendorTotalAmt檢核註記或解除註記資料 /// /// </summary> public void CheckVendorTotalAmt(DataTable dtA, DataTable dtB, string V_CLOSE_MONTH, string V_SOURCE_DATE_E, DbTransaction RootDBT, out DataTable dtChk) { bool IsRootTranscation = false; try { DBO.VAM051_DBO dbo = new VAM051_DBO(ref USEDB); //判斷是否有傳入Root Transcation IsRootTranscation = (RootDBT == null) ? true : false; #region 啟動交易或指定RootTranscation if (IsRootTranscation) { //獨立呼叫啟動Transcation Conn = USEDB.CreateConnection(); Conn.Open(); DBT = Conn.BeginTransaction(); } else { DBT = RootDBT; } #endregion ArrayList ParameterListA = new ArrayList(); ArrayList ParameterListB = new ArrayList(); if (dtA != null) { for (int i = 0; i < dtA.Rows.Count; i++) { if (dtA.Rows[i]["CHK"].ToString() == "1") { ParameterListA.Clear(); ParameterListA.Add(dtA.Rows[i]["VENDOR"].ToString()); ParameterListA.Add(dtA.Rows[i]["ACCEPT_QTY"]); ParameterListA.Add(dtA.Rows[i]["RETURN_QTY"]); ParameterListA.Add(dtA.Rows[i]["COST"]); dbo.doInsertSelectdItem(ParameterListA, DBT); } } } if (dtB != null) { for (int i = 0; i < dtB.Rows.Count; i++) { if (dtB.Rows[i]["CHK"].ToString() == "1") { ParameterListB.Clear(); ParameterListB.Add(dtB.Rows[i]["VENDOR"].ToString()); ParameterListB.Add(0); ParameterListB.Add(dtB.Rows[i]["RETURN_QTY"]); ParameterListB.Add(dtB.Rows[i]["COST"]); dbo.doInsertSelectdItem(ParameterListB, DBT); } } } dtChk = dbo.doCheckVendorTotalAmt(V_SOURCE_DATE_E, DBT); #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 } }
/// <summary> /// 呼叫PKG_VDS_VAM05.SetSKUCloseMark /// 註記或解除註記 /// </summary> public void SetSKUCloseMark(DataTable dtA, DbTransaction RootDBT) { bool IsRootTranscation = false; try { DBO.VAM051_DBO dbo = new VAM051_DBO(ref USEDB); //判斷是否有傳入Root Transcation IsRootTranscation = (RootDBT == null) ? true : false; #region 啟動交易或指定RootTranscation if (IsRootTranscation) { //獨立呼叫啟動Transcation Conn = USEDB.CreateConnection(); Conn.Open(); DBT = Conn.BeginTransaction(); } else { DBT = RootDBT; } #endregion ArrayList ParameterListA = new ArrayList(); for (int i = 0; i < dtA.Rows.Count; i++) { ParameterListA.Clear(); ParameterListA.Add(dtA.Rows[i]["SOURCE_DATE_S"].ToString()); ParameterListA.Add(dtA.Rows[i]["SOURCE_DATE_E"].ToString()); ParameterListA.Add(dtA.Rows[i]["OLD_CLOSE_MONTH"]); ParameterListA.Add(dtA.Rows[i]["VENDOR"]); ParameterListA.Add(dtA.Rows[i]["ITEM"]); ParameterListA.Add(dtA.Rows[i]["PERIOD"]); ParameterListA.Add(dtA.Rows[i]["NEW_CLOSE_MONTH"]); ParameterListA.Add(dtA.Rows[i]["UPDATEUID"]); ParameterListA.Add(dtA.Rows[i]["UPDATEDATE"]); ParameterListA.Add(dtA.Rows[i]["RETURN_NO"]); dbo.doSetSKUCloseMark(ParameterListA, DBT); } #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 } }