Đào tạo Tin học trực tuyến

XD phần mềm Quản lý điểm: Bài 10. Xử lý dữ liệu Bảng điểm chi tiết, tính điểm TB toàn khóa và XL toàn khóa


Video này sẽ hoàn thiện việc xử lý dữ liệu Bảng điểm chi tiết sinh viên, bao gồm đưa vào bảng điểm mã môn học, tên môn học, số tín chỉ, điểm học phần, điểm số, điểm chữ quy đổi theo quy chế của Hệ thống tín chỉ.

 

Code của nội dung các Videos về xây dựng Bảng điểm chi tiết cho sinh viên các bạn có thể tham khảo:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Quan_Ly_Diem
{
    public partial class frmBangDiemChiTiet : Form
    {
        public frmBangDiemChiTiet()
        {
            InitializeComponent();
        }

        QLDDataContext dt = new QLDDataContext();
        XuLy xl = new XuLy();
        private void frmBangDiemChiTiet_Load(object sender, EventArgs e)
        {
            cboLop.ValueMember = "maLop";
            cboLop.DisplayMember = "tenLop";
            cboLop.DataSource = dt.Lops_SelectAll();            
        }

        private void cboLop_SelectedIndexChanged(object sender, EventArgs e)
        {
            treeViewSV.Nodes.Clear();
            foreach(var r in dt.SinhVien_SelectMaLop(cboLop.SelectedValue.ToString()))
            {
                TreeNode node = new TreeNode();
                node.Name = r.maSV;
                node.Text = r.hoTen;
                treeViewSV.Nodes.Add(node);
            }
            treeViewSV.ExpandAll();  
        }

         private void treeViewSV_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
        {            
            foreach (var r in dt.SinhVien_SelectID(e.Node.Name))
            {
                lblMaSV.Text = e.Node.Name;
                lblHoTen.Text = r.hoTen;
                lblNgaySinh.Text = r.ngaySinh.Value.ToShortDateString();
                if (r.gioiTinh.ToString() == "1")
                {
                    lblGioiTinh.Text = "Nữ";
                }
                else
                {
                    lblGioiTinh.Text = "Nam";
                }                
                lblDanToc.Text = r.danToc;
                lblNoiSinh.Text = r.noiSinh;               
            }
            var table = new DataTable();
            DataColumnCollection col = table.Columns;
            if (!col.Contains("maMon"))
                table.Columns.Add("maMon", typeof(String));
            if (!col.Contains("tenMon"))
                table.Columns.Add("tenMon", typeof(String));
            if (!col.Contains("soTinChi"))
                table.Columns.Add("soTinChi", typeof(String));
            if (!col.Contains("diemHP"))
                table.Columns.Add("diemHP", typeof(String));
            if (!col.Contains("diemChu"))
                table.Columns.Add("diemChu", typeof(String));
            if (!col.Contains("diemSo"))
                table.Columns.Add("diemSo", typeof(String));
            Double tong = 0;
            int soTinChi = 0;
            foreach(var m in dt.MonHP_SelectAll())
            {
                DataRow r = table.NewRow();
                r["maMon"] = m.maMon;
                r["tenMon"] = m.tenMon;
                r["soTinChi"] = m.soTinChi;
                soTinChi += Convert.ToInt32(m.soTinChi);
                foreach(var d in dt.DiemHP_Search(m.maMon, e.Node.Name))
                {
                    if(d.diemLan2 == null)
                    {
                        r["diemHP"] = d.diemLan1;
                        r["diemChu"] = xl.diemChu(Convert.ToDouble(d.diemLan1));
                        r["diemSo"] = xl.diemSo(Convert.ToDouble(d.diemLan1));
                        tong += xl.diemSo(Convert.ToDouble(d.diemLan1))
                            * Convert.ToDouble(m.soTinChi);
                    }
                    else
                    {
                        r["diemHP"] = d.diemLan2;
                        r["diemChu"] = xl.diemChu(Convert.ToDouble(d.diemLan2));
                        r["diemSo"] = xl.diemSo(Convert.ToDouble(d.diemLan2));
                        tong += xl.diemSo(Convert.ToDouble(d.diemLan2))
                            * Convert.ToDouble(m.soTinChi);
                    }
                }
                table.Rows.Add(r);
            }// End for mon HP
            Double t = Math.Round(tong / soTinChi, 2);
            lblTBTK.Text = t.ToString();
            lblXLTK.Text = xl.xlTK(t);
            dtgDiem.DataSource = table;
        }

    }
}
 


Xem thêm

   Có gì khác biệt giữa HTML và HTML5?

   5 yếu tố quan trọng của định hướng thị giác trong thiết kế web

   Một số thẻ và Type quan trọng với HTML5 cần chú ý trong quá trình thiết kế website

   Xử lý text với Typography trong Bootstrap 4 CSS FrameWork

   Bootstrap 4.0: Bài 2. Thiết lập hệ thống lưới Grid System

   Bootstrap 4.0: Bài 1. Giới thiệu và các thiết lập cơ bản về công cụ, css, javascript

   Laravel 5.6: Thiết kế trang đăng ký người dùng

   Laravel 5.6: Bổ sung thêm cơ sở dữ liệu cho website

   Màu nền và màu chữ trong Bootstrap 4 CSS Framework

   Laravel 5.6: Validated, xử lý hệ thống đăng nhập, đăng xuất, ghi nhớ đăng nhập

   Laravel 5.6: Thiết kế trang đăng nhập hệ thống quản trị Login

   Laravel 5.6 : Xây dựng hệ thống Models

   Hướng dẫn cài đặt Opencart - CMS hệ thống bán hàng trực tuyến