public static void UpdateLSX(frmVoucher_Edit frmEditCt, DataTable dtDinhMucVt) { if (dtDinhMucVt.Rows.Count < 0) { return; } foreach (DataRow dr in dtDinhMucVt.Rows) { Hashtable ht = new Hashtable(); ht["STT"] = dr["Stt"]; ht["NGAY_CT"] = dr["Ngay_Ct"]; ht["MA_SO"] = dr["Ma_SO"]; ht["MA_SP"] = dr["Ma_Sp"]; ht["MA_VT"] = dr["Ma_Vt"]; ht["TEN_VT"] = dr["Ten_Vt"]; ht["DVT"] = dr["Dvt"]; ht["SO_LUONG"] = dr["So_Luong"]; ht["SO_LUONG_DM"] = dr["So_Luong_Dm"]; ht["SO_LUONG_VTDC"] = dr["So_Luong_VtDc"]; //ht["GHI_CHU_LSX"] = dr["Ghi_Chu_Lsx"]; ht["DELETED"] = dr["Deleted"]; ht["MA_DVCS"] = Convert.ToString(Parameters.GetParaValue("SYNC_MA_DVCS")); SQLExecSync1.Execute("Sp_UpdateMA_LSX", ht, CommandType.StoredProcedure); } }
private bool Save() { string strSQLExec = string.Empty; Hashtable htPara; //Lưu phần Checked vào GLVOUCHER if (chkDuyet.Enabled) { htPara = new Hashtable(); htPara.Add("DUYET", chkDuyet.Checked); htPara.Add("DUYET_LOG", txtDuyet_Log.Text); htPara.Add("STT", drEdit["Stt"]); strSQLExec = "UPDATE GLVOUCHER SET Duyet = @Duyet, Duyet_Log = @Duyet_Log WHERE Stt = @Stt"; if (SQLExec.Execute(strSQLExec, htPara, CommandType.Text)) { drEdit["Duyet"] = chkDuyet.Checked; drEdit["Duyet_Log"] = txtDuyet_Log.Text; } //Sync Data string Is_Sync = Convert.ToString(SQLExec.ExecuteReturnValue("SELECT Parameter_Value FROM SYSPARAMETER WHERE Parameter_ID = 'SYNC_BEGIN'")); if (Is_Sync == "1") { SqlConnection sqlCon = SQLExecSync1.GetNewSQLConnectionSync1(); if (sqlCon.State != ConnectionState.Open) { SQLExec.Execute("UPDATE SYSPARAMETER SET Parameter_Value = 0 WHERE Parameter_ID = 'SYNC_BEGIN'"); string strMsg = Element.sysLanguage == enuLanguageType.Vietnamese ? "Quá trình đồng bộ đang bị gián đoạn. Vui lòng chờ trong ít phút !" : "The synchronization process is interrupted. Please wait a few minutes !"; Common.MsgCancel(strMsg); } else { if (SQLExecSync1.Execute(strSQLExec, htPara, CommandType.Text)) { drEdit["Duyet"] = chkDuyet.Checked; drEdit["Duyet_Log"] = txtDuyet_Log.Text; } } } } return(true); }
public static bool SQLDeleteCt(string strStt, string strMa_Ct) { DataRow drDmCt = DataTool.SQLGetDataRowByID("SYSDMCT", "Ma_Ct", strMa_Ct); if (drDmCt == null) { return(false); } //Kiem tra Permission if (!Common.CheckPermission((string)drDmCt["Object_ID"], enuPermission_Type.Allow_Delete)) { Common.MsgCancel(Languages.GetLanguage("No_Permission")); return(false); } if (!Element.sysIs_Admin) { string strCreate_User = (string)SQLExecSync1.ExecuteReturnValue("SELECT ISNULL(MAX(Create_Log), '') FROM GLVOUCHER WHERE Stt = '" + strStt + "'"); if (strCreate_User != string.Empty && strCreate_User.Substring(14) != Element.sysUser_Id) { string strUser_Allow = (string)SQLExecSync1.ExecuteReturnValue("SELECT Member_ID_Allow FROM SYSMEMBER WHERE Member_ID = '" + Element.sysUser_Id + "'") + ","; if (!strUser_Allow.Contains("*,")) //Được phép sửa tất cả { if (!strUser_Allow.Contains(strCreate_User.Substring(14) + ",")) { string strMsg = Element.sysLanguage == enuLanguageType.Vietnamese ? "Không xóa được chứng từ do " + strCreate_User + " lập, liên hệ với người quản trị !" : "Do not delete vouchers from " + strCreate_User + " create, contact the administrator !"; Common.MsgCancel(strMsg); return(false); } } } } DataRow drEditPh = DataTool.SQLGetDataRowByID((string)drDmCt["Table_Ph"], "Stt", strStt); SqlConnection sqlCon = SQLExecSync1.GetNewSQLConnectionSync1(); SqlCommand sqlCom = sqlCon.CreateCommand(); SqlTransaction sqlTran = sqlCom.Connection.BeginTransaction("Deleting_Voucher_Tran"); sqlCom.Transaction = sqlTran; string strTable_Ph = (string)drDmCt["Table_Ph"]; string strTable_Ct = (string)drDmCt["Table_Ct"]; //#region DeleteQueue //if (!Voucher.DeleteQueue(sqlCom, drEditPh)) //{ // sqlTran.Rollback(); // return false; //} //#endregion #region Delete HanTt //Common.SQLPushQueue(sqlCom, "SP_CT_DELETE_HANTT '" + strStt + "'", strStt); //Không viết trong Delete_All do: khi F3 chứng từ, chương trình chay Delele_All -> sai sqlCom.Parameters.Clear(); sqlCom.CommandText = "EXEC SP_CT_DELETE_HANTT @Stt"; sqlCom.CommandType = CommandType.Text; sqlCom.Parameters.AddWithValue("@Stt", strStt); try { sqlCom.ExecuteNonQuery(); } catch (Exception ex) { MessageBox.Show("Có lỗi xảy ra :" + ex.Message); sqlTran.Rollback(); return(false); } #endregion #region Delete Ct sqlCom.Parameters.Clear(); sqlCom.CommandText = "DELETE FROM " + strTable_Ct + " WHERE Stt = @Stt"; sqlCom.CommandType = CommandType.Text; sqlCom.Parameters.AddWithValue("@Stt", strStt); try { sqlCom.ExecuteNonQuery(); } catch (Exception ex) { MessageBox.Show("Có lỗi xảy ra :" + ex.Message); sqlTran.Rollback(); return(false); } //DeleteCtLR if (Common.Inlist(strMa_Ct, "LR,TR")) { sqlCom.Parameters.Clear(); sqlCom.CommandText = "DELETE FROM INLAPRAP WHERE Stt = @Stt"; sqlCom.CommandType = CommandType.Text; sqlCom.Parameters.AddWithValue("@Stt", strStt); try { sqlCom.ExecuteNonQuery(); } catch (Exception ex) { MessageBox.Show("Có lỗi xảy ra :" + ex.Message); sqlTran.Rollback(); return(false); } } #endregion #region Delete Ph sqlCom.CommandText = "DELETE FROM " + strTable_Ph + " WHERE Stt = @Stt"; try { sqlCom.ExecuteNonQuery(); } catch (Exception ex) { MessageBox.Show("Có lỗi xảy ra :" + ex.Message); sqlTran.Rollback(); return(false); } #endregion sqlTran.Commit(); return(true); }
//SQLUpdateCt public static bool SQLUpdateCt(frmVoucher_Edit frmEditCt) { string sSYNC_MA_DVCS = Convert.ToString(Parameters.GetParaValue("SYNC_MA_DVCS")); SqlConnection sqlCon = SQLExecSync1.GetNewSQLConnectionSync1(); SqlCommand sqlCom = sqlCon.CreateCommand(); SqlTransaction sqlTran = sqlCom.Connection.BeginTransaction("Update_Voucher_Tran"); sqlCom.Transaction = sqlTran; DataRow drEditPhSync = frmEditCt.drEditPh; DataTable dtEditCtSync = frmEditCt.dtEditCt; string strKey = string.Empty; string strTable_Ph = (string)frmEditCt.drDmCt["Table_Ph"]; string sp_UpdatePh = (string)frmEditCt.drDmCt["sp_UpdatePh"]; string strStt = (string)drEditPhSync["Stt"]; string strMa_Ct = (string)drEditPhSync["Ma_Ct"]; //Chuyển đổi Ma_Dvcs------------- drEditPhSync["Ma_DvCs"] = sSYNC_MA_DVCS; foreach (DataRow drEditCt in dtEditCtSync.Rows) { drEditCt["Ma_DvCs"] = sSYNC_MA_DVCS; } dtEditCtSync.AcceptChanges(); //----------------- #region UpdatePh if (drEditPhSync != null) {//Có nhiều trường hợp cập nhật CT mà không cần cập nhật PH(VD: frmEditLR) sqlCom.CommandText = sp_UpdatePh; sqlCom.CommandType = CommandType.StoredProcedure; sqlCom.Parameters.Clear(); strKey = "Object_id = Object_id('" + sp_UpdatePh + "')"; DataTable dtUpdatePh_Para = DataTool.SQLGetDataTable("Sys.Parameters", "Name", strKey, null); sqlCom.Parameters.AddWithValue("@strNew_Edit", (char)frmEditCt.enuNew_Edit); Common.SetDefaultDataRow(ref drEditPhSync); foreach (DataRow drPara in dtUpdatePh_Para.Rows) { string strColumnName = ((string)drPara["Name"]).Replace("@", ""); if (!drEditPhSync.Table.Columns.Contains(strColumnName)) { continue; } sqlCom.Parameters.AddWithValue("@" + strColumnName, drEditPhSync[strColumnName]); } try { sqlCom.ExecuteNonQuery(); } catch (Exception ex) { MessageBox.Show("Có lỗi xảy ra :" + ex.Message); sqlTran.Rollback(); return(false); } } #endregion #region UpdateCt if (!UpdateCt(frmEditCt, sqlCom, dtEditCtSync)) { return(false); } //UpdateCtLR if (Common.Inlist(frmEditCt.strMa_Ct, "LR,TR")) { if (!UpdateCt(frmEditCt, sqlCom, ((IEditCtLR)frmEditCt).dtEdiCtLR, "sp_UpdateIN_LR", "INLAPRAP")) { return(false); } } #endregion #region UpdateLSX if (frmEditCt.dtCtVt != null) { if (!UpdateCtSX(frmEditCt, sqlCom, frmEditCt.dtCtVt)) { return(false); } } #endregion //#region UpdateQueue //if (!Voucher.UpdateQueue(sqlCom, drEditPhSync)) // return false; //#endregion #region UpdateHanTt0 if (!UpdateHanTt(frmEditCt, sqlCom)) { return(false); } #endregion #region History if (frmEditCt.enuNew_Edit == enuEdit.Edit) { if (!History(frmEditCt, sqlCom)) { return(false); } } #endregion //Luu So_Ct string strLoai_Ma_Ct = ((DateTime)drEditPhSync["Ngay_Ct"]).Month.ToString().Trim(); string[] strParaName = new string[] { "Ma_Ct", "Loai_Ma_Ct", "Ngay_Ct", "So_Ct" }; object[] objParaValue = new object[] { frmEditCt.strMa_Ct, strLoai_Ma_Ct, drEditPhSync["Ngay_Ct"], drEditPhSync["So_Ct"] }; SQLExecSync1.Execute("Sp_Luu_So_Ct", strParaName, objParaValue, CommandType.StoredProcedure); //Update_dsVoucher(frmEditCt); sqlTran.Commit(); return(true); }