VicoTas
Câu hỏi
avatar hoangdieu
22/06/2013 00:44

Báo lỗi: " object reference not set to an instance of an object" khi lưu vào csdl trong lap trinh visual 2005?

Mình làm bài tập win bi bao lỗi như vây mà không biết làm sao. khi mình nhấn vào button lưu thì bị báo lỗi như vậy. minh gặp rất nhiều bài như vậy mà không biết giải quyết sao nưa. code của mình là
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;

namespace QL_Nhan_Su_Huong_Tuyet
{
public partial class frm_QUAN_LY_KI_LUAT_NV : Form
{
public frm_QUAN_LY_KI_LUAT_NV()
{
InitializeComponent();
}
cls_QL_Nhan_Su obj = new cls_QL_Nhan_Su();
DataSet ds;

private void QUAN_LY_KI_LUAT_NV_Load(object sender, EventArgs e)
{
ds = new DataSet();
ds = obj.TT_KT();
dgliluat.DataSource = ds.Tables["tbl_KHEN_THUONG"];
hienthi();
}
public void hienthi()
{
ds = new DataSet();
ds = obj.hienthi_ma_NV();
comboBox1.DataSource = ds.Tables[0];
comboBox1.DisplayMember = "MA_NV";
comboBox1.ValueMember = "HO_TEN_NV";
}
private void gandl(DataSet ds)
{
if (txtma.Text == "")
{
MessageBox.Show("Bạn hãy điền đầy đủ thông tin", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
DataRow drw;
drw = ds.Tables["tbl_KHEN_THUONG"].NewRow();
drw["MA_KT"] = txtma.Text;
drw["MA_NV"] = comboBox1.Text;
drw["LY_DO_KT"] = txthinhthuc.Text;
drw["NGAY_KT"] = txtngay.Text;
drw["SO_TIEN_KT"] = txtsotien.Text;
drw["GHI_CHU"] = txtghichu.Text;
ds.Tables["tbl_KHEN_THUONG"].Rows.Add(dr…
}
}

private void btnluu_Click(object sender, EventArgs e)
{

try
{
if (KiemTraTrungKhoa(ds, txtma.Text))
{
MessageBox.Show("Trùng Khóa", "Loi");
}
else
{
gandl(ds);
if (ds.HasChanges())
{
obj.Them(ds, "tbl_KHEN_THUONG");
ds.AcceptChanges();
MessageBox.Show("Cập nhật thành công", " Thông Báo");
}
}

}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
Boolean KiemTraTrungKhoa(DataSet ds, string ma)
{
DataTable tbl = new DataTable();
tbl = ds.Tables["tbl_KHEN_THUONG"];
foreach (DataRow dr in tbl.Rows)
{
if (dr["MA_KT"].ToString().Equals(ma))
return true;

}
return false;
}

}
}
cũng viet code như vây nhưng mình làm trên form khác thi khong lam sao. mh làm y như vay sang form nay thi ko báo lối nhưng khi chọn vào nut lưu thì lại có vấn đề. ko luu dc. ai biết giúp mình với. minh am on nhe!



Danh sách câu trả lời (1)
avatar ChoeGa 22/06/2013 00:44

Có một đối tượng bạn sử dụng chưa được khởi tạo giá trị (mới chỉ khai báo), nên khi truy cập sẽ bị lỗi như vậy đó.
Bạn xem đó là biến nào rùi gán giá trị cho nó.

Chúc thành công!

Trả lời câu hỏi
Tải lại mã
Câu hỏi lĩnh vực Máy vi tính
Đức Vân Bios không nhận ổ đĩa cứng và ổ dvd . Phải làm sao, giúp mình với?

Đăng lúc: 00:44 - 22/06/2013 trong Máy vi tính

nophoto Cách nâng cấp card màn hình?

Đăng lúc: 00:44 - 22/06/2013 trong Máy vi tính

nophoto Cài lại win thấy xem phim hd bị vỡ hình?

Đăng lúc: 00:44 - 22/06/2013 trong Máy vi tính

Nguyễn Văn Siêu Cách khắc phục lỗi báo thiếu Adobe Flash Player?

Đăng lúc: 00:44 - 22/06/2013 trong Máy vi tính

nophoto Bộ nhớ ổ C chứa Windows 7 giảm dần ?

Đăng lúc: 00:44 - 22/06/2013 trong Máy vi tính

nophoto Chọn laptop Core 2 Duo hay Core i-series (core i3, core i5 hay core i7)

Đăng lúc: 00:44 - 22/06/2013 trong Máy vi tính

nophoto "Bóc tem" và ấn tượng ban đầu đối với máy tính bảng iPad?

Đăng lúc: 09:56 - 13/07/2013 trong Máy vi tính

Hoài Nam (Nam Tước) Đối thủ thực sự của iPad sẽ là WindPad đúng ko?

Đăng lúc: 00:44 - 22/06/2013 trong Máy vi tính

nophoto Chi phí sản xuất iPad… chưa đến 260 USD, tại sao ít vậy nhỉ?

Đăng lúc: 00:44 - 22/06/2013 trong Máy vi tính

nophoto Laptop với bộ vi xử lý Intel Dual-Core, Core 2 Duo thuộc dòng T có kém hơn laptop với bộ vi xử lý Intel Core i3 không?

Đăng lúc: 00:43 - 22/06/2013 trong Máy vi tính

nophoto Lỗi "Windows cannot access the specified device, path, or file. You may not have the appropriate permission to access the item"

Đăng lúc: 00:43 - 22/06/2013 trong Máy vi tính

nophoto Format ổ cứng quá nhiều có hại không ?

Đăng lúc: 00:43 - 22/06/2013 trong Máy vi tính

nophoto Máy tính của mình cài win 7 mà không hiểu tại sao bây giờ không chạy dc đuôi exe.?

Đăng lúc: 00:43 - 22/06/2013 trong Máy vi tính

nophoto Làm sao gỡ bỏ Avast Antivirus Professional 5?

Đăng lúc: 00:43 - 22/06/2013 trong Máy vi tính

nophoto Làm thế nào để chạy QuickView của LacViet khi khởi động ?

Đăng lúc: 00:43 - 22/06/2013 trong Máy vi tính

nophoto Hình ảnh thực tế bộ đôi laptop giá rẻ của Acer Aspire 4741G và 4745?

Đăng lúc: 00:43 - 22/06/2013 trong Máy vi tính

nophoto Các anh chị cho em hỏi về bộ đôi tablet 10 inch của MSI mới ra với? (WindPad 100 và WindPad 110)

Đăng lúc: 00:43 - 22/06/2013 trong Máy vi tính

nophoto Hình ảnh đầu tiên về chiếc máy tính bảng Eee Pad EP121?

Đăng lúc: 00:43 - 22/06/2013 trong Máy vi tính

nophoto Hình ảnh đầu tiên về thiết bị ghi chú kỹ thuật số ASUS Eee Tablet ?

Đăng lúc: 00:43 - 22/06/2013 trong Máy vi tính

nophoto Tư vấn gắn card đồ họa cho laptop Gateway nv7915u ?

Đăng lúc: 00:43 - 22/06/2013 trong Máy vi tính

Rao vặt Siêu Vip