Form nhập điểm cho sinh viờn khoa Điện-Điện tử

Một phần của tài liệu (LUẬN văn THẠC sĩ) thiết kế, xây dựng cơ sở dữ liệu phân tán phục vụ công tác đào tạo, quản lý giáo dục tại hải phòng (Trang 66 - 76)

3.6. Kết luận

Hệ hỗ trợ quyết định DSS là hệ thống cơ sở mỏy tớnh được thiết kế để nõng cao hiệu quả của những người làm quyết định trong từng cụng việc cụ thể. Núi cỏch khỏc, DSS là hệ thống dựa trờn tương tỏc mỏy tớnh, giỳp người ra quyết định dựng dữ liệu và cỏc mụ hỡnh để giải quyết những bài toỏn nửa cấu trỳ hoặc phi cấu trỳc. DSS được sử dụng để trợ giỳp trong cụng việc quản lý. Hệ DSS hoàn chỉnh cú thể đưa ra những thụng tin trợ giỳp cho sự giải quyết cỏc vấn đề. DSS được thiết kế như là tổ hợp của cụng nghệ mỏy tớnh và truyền thụng thiết kế để điều phối và lựa chọn ra quyết định ở cỏc lĩnh vực chức năng và phõn cấp để quyết định phự hợp với mục đớch của cỏ nhõn, tổ chức và với hoàn cảnh chung của mụi trường cạnh tranh để nõng cao quỏ trỡnh ra quyết định của cỏ nhõn, tổ chức.

Việc nghiờn cứ về DSS và ứng dụng để thiết kế hệ trợ giỳp trong cụng tỏc quản lý và đỏnh giỏ cỏc hoạt động của trường học đó đem lại hiệu quả rất lớn, nú khụng chỉ giỳp cho sinh viờn cú được cỏc thụng tin chớnh xỏc về tỡnh hỡnh học

tập nhanh chúng mà cũn giỳp cỏc nhà quản lý đỏnh giỏ đỳng về tỡnh hỡnh học tập trong trường và cỏc hoạt động ngoại khoỏ mà cũn thay đổi cỏch thức quản lý phức tạp trong cỏc trường học.

Chương trỡnh được thiết kế cú một giao diện người dựng thõn thiện, cỏc thao tỏc thực hiện chỉ đơn giản là cỳ nhấp chuột, do đú tạo cảm giỏc thoải mỏi khi sử dụng chương trỡnh.

Kết luận

Những kết quả luận văn đó đạt được

Qua quỏ trỡnh trỡnh nghiờn cứu và tỡm hiểu đề tài này, em đó trỡnh bày hệ thống cỏc hiện trạng, yờu cầu thực tế, hệ thống hoỏ cỏc mụ hỡnh thực tế, trạng thỏi của cỏc đối tượng liờn quan, mụ hỡnh dữ liệu, …

Trờn cơ sở nghiờn cứu, phõn tớch đú em đó đưa ra một hệ thống quản lý thụng tin mới khụng chỉ hỗ trợ cho việc quản lý thụng tin của từng sinh viờn mà cũn giỳp cỏc nhà quản lý, cũng như cỏc sinh viờn cú được cỏc thụng tin chớnh xỏc và đầy đủ về tỡnh hỡnh học tập của từng sinh viờn cũng như cỏc hoạt động của nhà trường. Ngoài ra hệ thống trợ giỳp quyết định trong đào tạo cũn đơn giản hoỏ cỏc quy trỡnh nghiệp vụ và tin học hoỏ cỏc quy trỡnh thực thi mà hiện nay cũn đang phải làm thủ cụng.

Một số phương hướng sắp tới

Việc ứng dụng cụng nghệ thụng tin trong ngành giỏo dục đang là một xu hướng rất đỳng mà Đảng và Nhà nước ta rất coi trọng.

Trờn cơ sở những kết quả đó đạt được, đề tài của em cú những hướng phỏt triển như sau:

1. Xõy dựng một hệ thống trợ giỳp quyết định đào tạo liờn thụng giữa cỏc trường đại học mà cơ quan chủ quản là Bộ giỏo dục và đào tạo.

2. Xõy dựng một trang Web để hiển thị cỏc thụng tin về tất cả cỏc hoạt động của từng trường đại học, cỏc mặt mạnh cũng như cỏc mặt yếu của từng trường.

Tài liệu tham khảo

1. Đỗ Trung Tuấn (1997), Cơ sở Dữ liệu, Nhà xuất bản Giỏo dục.

2. Nguyễn Bỏ Tường (2004), Nhập mụn cơ sở dữ liệu phõn tỏn, Nhà xuất bản Khoa học kĩ thuật.

3. Phạm Thế Quế (2009), Cơ sở dữ liệu phõn tỏn, Nhà xuất bản Thụng tin Truyền thụng.

4. J. D. ULLMAN, bản dịch của Trần Đức Quang (1998), Nguyờn lý cỏc hệ thống cơ sở dữ liệu và hệ thống tri thức, Nhà xuất bản Thống kờ.

5. M.Tamer Ozsu And Patricle Valduriez (1999), Principles of Distributed Database Systems, Second Edition, Prentive Hall Upper Saddle River, New Jersy.

6. Abram Siberschatz, Henry F.Korth, S.Sudarshan (2002), Database Systems Concepts, Published by McGaw-Hill /Irwin, New York.

7. Phạm Hữu Khanh(2009), Lập Trỡnh Cơ Sở Dữ Liệu, Report, Visual SourceSafe 2005, Tập 4, Nhà xuất bản Lao động xó hội.

8. Nguyễn Văn Lõn (Chủ biờn), Phương Lan (Hiệu đớnh)(2009), Lập trỡnh cơ sở dữ liệu với C#: Mụ hỡnh nhiều tầng, Nxb Lao động - Xó hội.

9. ThS.Trịnh Thế Tiến, Nguyễn Minh(2009),“Cỏc cơ sở dữ liệu Microsoft Visual C# 2008 - Lập trỡnh căn bản và nõng cao”, , Nhà xuất bản Hồng Đức. 10. http://www.umsl.edu/~sauter/DSS/book/ui.html, Decision Support Systems,

Phụ lục chương trỡnh

Kết nối tới phũng đào tạo:

private void RegisterToPhongDaoTao() {

try {

// Register ourselves to the server with a callback to the client sink.

_ServerTalk.RegisterHostToClient(Properties.Settings.Default.StringKhoaID, _CallbackSink.HandleToClient);

RemotingConfiguration.RegisterWellKnownServiceType(

typeof (KhoaServices),"TalkIsGood",WellKnownObjectMode.Singleton); // make sure we can't register again!

RegisterBtn.Enabled = false;

ThongBaoTuPhDaoTaoTxt.Text = "Kết nối tới Phũng Đào tạo thành cụng"; isConnectedToPDT = true;

}

catch (Exception ex) {

MessageBox.Show("Lỗi khụng thể kết nối tới Phũng Đào tạo \n" + ex.Message, "Thụng bỏo",MessageBoxButtons.OK, MessageBoxIcon.Error);

isConnectedToPDT = false; }

}

Truy cập cơ sở dữ liệu từ xa:

private void RegisterChannelServicesRemoting() {

// creates a client object that 'lives' here on the client. _CallbackSink = new CallbackSink();

// hook into the event exposed on the Sink object so we can transfer a server // message through to this class.

_CallbackSink.OnHostToClient += CallbackSink_OnHostToClient;

// Register a client channel so the server can communicate back - it needs a channel

// opened for the callback to the CallbackSink object that is anchored on the client!

HttpChannel channel = new HttpChannel(9003); ChannelServices.RegisterChannel(channel, false);

// now create a transparent proxy to the server component

object obj = Activator.GetObject(typeof (ServerTalk),

"http://localhost:9000/TalkIsGood"); // cast returned object

_ServerTalk = (ServerTalk) obj; }

void CallbackSink_OnHostToClient(CommsInfo info) {

if (ThongBaoTuPhDaoTaoTxt.InvokeRequired) ThongBaoTuPhDaoTaoTxt.Invoke(new

delCommsInfo(CallbackSink_OnHostToClient), new object[] { info }); else

ThongBaoTuPhDaoTaoTxt.Text = "Form PDT: " + info.Message + Environment.NewLine + ThongBaoTuPhDaoTaoTxt.Text;

}

private void NhapDiemFrm_FormClosing(object sender, FormClosingEventArgs e)

if (!RegisterBtn.Enabled) { try { _ServerTalk.LogoutHostToClient(Properties.Settings.Default.StringKhoaID, _CallbackSink.HandleToClient); }

catch (Exception ex) {

MessageBox.Show("Đó ngắt kết nối tới Phũng Đào tạo \n" + ex.Message, "Thụng bỏo",MessageBoxButtons.OK, MessageBoxIcon.Information);

} } } Nỳt cập nhật dữ liệu

private void CapNhatBtn_Click(object sender, EventArgs e) {

SqlTransaction transaction = null; try

{

transaction = conn.BeginTransaction("NhapDiemTransaction"); SqlDataAdapter dataAdapterCapNhatDiem =

new SqlDataAdapter(new SqlCommand("select * from DiemThi", conn,

transaction));

DataTable tableCapNhatDiem = new DataTable(); dataAdapterCapNhatDiem.Fill(tableCapNhatDiem);

dataAdapterCapNhatDiem.MissingSchemaAction = MissingSchemaAction.AddWithKey;

//Xỏc định khúa chớnh của bảng

DataColumn[] keyColumns = new DataColumn[3]; keyColumns[0] = tableCapNhatDiem.Columns["MaSV"]; keyColumns[1] = tableCapNhatDiem.Columns["MaMH"]; keyColumns[2] = tableCapNhatDiem.Columns["KyHoc"]; tableCapNhatDiem.PrimaryKey = keyColumns;

foreach (DataGridViewRow dataGridViewRow in NhapDiemDgv.Rows) {

if (isEnterScore) {

//Thờm một dũng mới vào bảng

DataRow row = tableCapNhatDiem.NewRow();

row["MaSV"] = dataGridViewRow.Cells["MaSVDgc"].Value; row["MaMH"] = MonHocCbb.SelectedValue; row["KyHoc"] = HocKyCbb.SelectedItem; row["NgayNhap"] = dataGridViewRow.Cells["NgayNhapDgc"].Value; row["DiemQt"] = dataGridViewRow.Cells["DiemQTDgc"].Value; row["Diem1"] = dataGridViewRow.Cells["DiemL1Dgc"].Value; row["Diem2"] = dataGridViewRow.Cells["DiemL2Dgc"].Value; row["Diem"] = dataGridViewRow.Cells["DiemDgc"].Value; tableCapNhatDiem.Rows.Add(row); } else {

object[] key = new object[3];

key[0] = dataGridViewRow.Cells["MaSVDgc"].Value; key[1] = MonHocCbb.SelectedValue.ToString(); key[2] = HocKyCbb.SelectedItem.ToString();

DataRow row = tableCapNhatDiem.Rows.Find(key); //Sửa đổi thụng tin

row.BeginEdit(); row["DiemQt"] = dataGridViewRow.Cells["DiemQTDgc"].Value; row["Diem1"] = dataGridViewRow.Cells["DiemL1Dgc"].Value; row["Diem2"] = dataGridViewRow.Cells["DiemL2Dgc"].Value; row["Diem"] = dataGridViewRow.Cells["DiemDgc"].Value; row.EndEdit(); } } //Cập nhật vào database new SqlCommandBuilder(dataAdapterCapNhatDiem); dataAdapterCapNhatDiem.Update(tableCapNhatDiem); transaction.Commit(); }

catch (Exception ex) { if(transaction!=null) transaction.Rollback("NhapDiemTransaction"); MessageBox.Show(ex.Message, "Thụng bỏo", MessageBoxButtons.OK, MessageBoxIcon.Error); return;

}

if (isEnterScore) {

ThongBaoLbl.Text = "Sinh viờn đó được nhập điểm, bạn muốn sửa lại điểm cho sinh viờn?"; CapNhatBtn.Text = "Sửa điểm";

MessageBox.Show("Nhập điểm cho sinh viờn thành cụng", "Thụng bỏo",

MessageBoxButtons.OK,

MessageBoxIcon.Information); //thụng bỏo tới phũng đào tạo if (isConnectedToPDT)

_ServerTalk.SendMessageToServer(new CommsInfo("Đó nhập điểm

mụn " + dtbMon.Rows[MonHocCbb.SelectedIndex]["TenMH"].ToString

() + cho cỏc sinh viờn thuộc lớp " + dtbLop.Rows[LopCbb.SelectedIndex]["TenLop"])); isEnterScore = false;

} else {

MessageBox.Show("Sửa điểm cho sinh viờn thành cụng", "Thụng bỏo", MessageBoxButtons.OK,MessageBoxIcon.Information);

//thụng bỏo tới phũng đào tạo if (isConnectedToPDT)

_ServerTalk.SendMessageToServer(new CommsInfo("Đó sửa điểm mụn: " +dtbMon.Rows[MonHocCbb.SelectedIndex]["TenMH"].ToString() +" cho cỏc sinh viờn thuộc lớp: " + dtbLop.Rows[LopCbb.SelectedIndex]["TenLop"]));

} } Thủ tục tớnh điểm:

foreach (DataGridViewRow dataGridViewRow in NhapDiemDgv.Rows) {

Float diem1 = float.Parse(dataGridViewRow.Cells["DiemL1Dgc"].Value.ToString()); float diem2 = float.Parse(dataGridViewRow.Cells["DiemL2Dgc"].Value.ToString()); float diemTemp = diem1 > diem2 ? diem1 : diem2;

dataGridViewRow.Cells["DiemDgc"].Value =

((float.Parse(dataGridViewRow.Cells["DiemQTDgc"].Value.ToString()) + diemTemp)/2).ToString();

} }

Một phần của tài liệu (LUẬN văn THẠC sĩ) thiết kế, xây dựng cơ sở dữ liệu phân tán phục vụ công tác đào tạo, quản lý giáo dục tại hải phòng (Trang 66 - 76)

Tải bản đầy đủ (PDF)

(76 trang)