Esempio n. 1
0
        private void btnSua_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            groupBox1.Enabled = true;
            txtMACN.Enabled   = btnThem.Enabled = btnXoa.Enabled = btnReLoad.Enabled = txtMAKHO.Enabled = btnSua.Enabled = false;
            btnGhi.Enabled    = btnPhucHoi.Enabled = btnThoat.Enabled = true;
            luaChon           = SUA;

            Kho        kho = new Kho(txtMAKHO.Text, txtTENKHO.Text, txtDIACHI.Text, txtMACN.Text); //truyền các giá trị vô KHO
            ObjectUndo ob  = new ObjectUndo(luaChon, kho);

            st.Push(ob);
            updateButtonPhucHoi();
        }
Esempio n. 2
0
        private void btnXoa_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            //string makho = "";
            if (bdsPHIEUNHAP.Count > 0)
            {
                MessageBox.Show("Không xóa được Kho, Kho đã có PHIẾU NHẬP", "", MessageBoxButtons.OK);
                return;
            }
            if (bdsPHIEUXUAT.Count > 0)
            {
                MessageBox.Show("Không xóa được Kho, Kho đã có PHIẾU XUẤT", "", MessageBoxButtons.OK);
                return;
            }
            if (bdsDATHANG.Count > 0)
            {
                MessageBox.Show("Không xóa được Kho, Kho đã có phiếu ĐẶT HÀNG", "", MessageBoxButtons.OK);
                return;
            }
            if (MessageBox.Show("Bạn có thật sự muốn xóa Kho này ?? ", "Xác nhận",
                                MessageBoxButtons.OKCancel) == DialogResult.OK)
            {
                try
                {
                    luaChon = XOA;
                    Kho        kho = new Kho(txtMAKHO.Text, txtTENKHO.Text, txtDIACHI.Text, txtMACN.Text); //truyền các giá trị vô KHO
                    ObjectUndo ob  = new ObjectUndo(luaChon, kho);
                    st.Push(ob);

                    //makho = (((DataRowView)bdsKho[bdsKho.Position])["MAKHO"].ToString()); // giữ lại để khi xóa bị lỗi thì ta sẽ quay về lại
                    bdsKho.RemoveCurrent();
                    this.kHOTableAdapter.Connection.ConnectionString = Program.connstr;
                    this.kHOTableAdapter.Update(this.dS.KHO);
                    this.pHIEUNHAPTableAdapter.Connection.ConnectionString = Program.connstr;
                    this.pHIEUNHAPTableAdapter.Update(this.dS.PHIEUNHAP);
                    this.pHIEUXUATTableAdapter.Connection.ConnectionString = Program.connstr;
                    this.pHIEUXUATTableAdapter.Update(this.dS.PHIEUXUAT);
                    this.dATHANGTableAdapter.Connection.ConnectionString = Program.connstr;
                    this.dATHANGTableAdapter.Update(this.dS.DATHANG);
                    // makho = txtMAKHO.Text;
                    updateButtonPhucHoi();
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Lỗi xóa Kho. Bạn hãy xóa lại\n" + ex.Message, "", MessageBoxButtons.OK);
                    this.kHOTableAdapter.Fill(this.dS.KHO);
                    //bdsKho.Position = bdsKho.Find("MAKHO", makho);
                    return;
                }
            }
        }
Esempio n. 3
0
        private void btnPhucHoi_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (btnSua.Enabled == false || btnThem.Enabled == false)
            {
                this.bdsKho.CancelEdit();
                //if (btnThem.Enabled == false) bdsKho.Position = vitri;
                gcKho.Enabled     = true;
                groupBox1.Enabled = false;
                btnThem.Enabled   = btnSua.Enabled = btnXoa.Enabled = btnReLoad.Enabled = btnThoat.Enabled = true;
                btnGhi.Enabled    = btnSua.Enabled = false;
            }
            try
            {
                ObjectUndo ob = (ObjectUndo)st.Pop();

                switch (ob.luaChon)
                {
                case THEM:
                    String lenh = (String)ob.obj;
                    MessageBox.Show("Khôi phục sau khi THÊM ");
                    Program.ExecSqlDataReader(lenh);
                    this.kHOTableAdapter.Fill(this.dS.KHO);
                    break;

                case SUA:
                    MessageBox.Show("Khôi phục sau khi SỬA ");
                    Kho kho = (Kho)ob.obj;
                    if (Program.conn.State == ConnectionState.Closed)
                    {
                        Program.conn.Open();
                    }
                    String strLenh = "dbo.SP_UndoSuaKho";
                    Program.sqlcmd             = Program.conn.CreateCommand();
                    Program.sqlcmd.CommandType = CommandType.StoredProcedure;
                    Program.sqlcmd.CommandText = strLenh;
                    Program.sqlcmd.Parameters.Add("@MAKHO", SqlDbType.NChar).Value     = kho.maKho;
                    Program.sqlcmd.Parameters.Add("@TENKHO", SqlDbType.NVarChar).Value = kho.tenKho;
                    Program.sqlcmd.Parameters.Add("@DIACHI", SqlDbType.NVarChar).Value = kho.diaChi;
                    Program.sqlcmd.Parameters.Add("@Ret", SqlDbType.NChar).Direction   = ParameterDirection.ReturnValue;
                    Program.sqlcmd.ExecuteNonQuery();
                    Program.conn.Close();
                    String Ret = Program.sqlcmd.Parameters["@Ret"].Value.ToString();
                    if (Ret != "0")
                    {
                        MessageBox.Show("Khoi phuc khong thanh cong", "", MessageBoxButtons.OK);
                    }
                    else
                    {
                        MessageBox.Show("Khoi phuc thanh cong", "", MessageBoxButtons.OK);
                    }
                    break;

                case XOA:
                    MessageBox.Show("Khôi phục sau khi XÓA ");
                    Kho kho1 = (Kho)ob.obj;
                    if (Program.conn.State == ConnectionState.Closed)
                    {
                        Program.conn.Open();
                    }
                    String strLenh1 = "dbo.SP_UndoXoaKho";
                    Program.sqlcmd             = Program.conn.CreateCommand();
                    Program.sqlcmd.CommandType = CommandType.StoredProcedure;
                    Program.sqlcmd.CommandText = strLenh1;
                    Program.sqlcmd.Parameters.Add("@MAKHO", SqlDbType.NChar).Value     = kho1.maKho;
                    Program.sqlcmd.Parameters.Add("@TENKHO", SqlDbType.NVarChar).Value = kho1.tenKho;
                    Program.sqlcmd.Parameters.Add("@DIACHI", SqlDbType.NVarChar).Value = kho1.diaChi;
                    Program.sqlcmd.Parameters.Add("@MACN", SqlDbType.NChar).Value      = kho1.MaCN;
                    Program.sqlcmd.Parameters.Add("@Ret", SqlDbType.NChar).Direction   = ParameterDirection.ReturnValue;
                    Program.sqlcmd.ExecuteNonQuery();
                    Program.conn.Close();
                    String Ret1 = Program.sqlcmd.Parameters["@Ret"].Value.ToString();
                    if (Ret1 != "0")
                    {
                        MessageBox.Show("Khoi phuc khong thanh cong", "", MessageBoxButtons.OK);
                    }
                    else
                    {
                        MessageBox.Show("Khoi phuc thanh cong", "", MessageBoxButtons.OK);
                    }
                    break;
                }
                bdsKho.EndEdit();
                bdsKho.ResetCurrentItem();
                this.kHOTableAdapter.Connection.ConnectionString = Program.connstr;
                this.kHOTableAdapter.Update(this.dS.KHO);

                updateButtonPhucHoi();
                reload();
            }
            catch (Exception)
            {
                MessageBox.Show("Không có gì để UNDO", "THÔNG BÁO", MessageBoxButtons.OK);
            }
        }