Exemplo n.º 1
0
        private bool TinhChuKy(string ma_dviqlyDN, string MaTram, int thang, int nam, int Ngay, int ChuKy, int ngaysau, int chukysau, int kiemtra)
        {
            DataAccess.clTTTT db = new DataAccess.clTTTT();

            DataTable dt = db.SELECT_TONTHAT_CHUKY(ma_dviqlyDN, MaTram + "", thang, nam, Ngay, ChuKy, ngaysau, chukysau, kiemtra);

            if (dt.Rows.Count == 0)
            {
                return(false);
            }
            if (dt.Rows[0]["CSUAT"] + "" == "0" || dt.Rows[0]["CSUAT"] + "" == "")
            {
                return(false);
            }
            decimal sltinhCK = 0, sanluongtrc = 0;

            for (int i = 0; i < dt.Rows.Count; i++)
            {
                if (i == 0)
                {
                    decimal slg = (decimal.Parse(dt.Rows[i]["SLGCOT"] + "") * decimal.Parse(dt.Rows[i]["CSUAT"] + "")) / decimal.Parse(dt.Rows[i]["SLDAUNGUONG"] + "");
                    sanluongtrc = decimal.Parse(dt.Rows[i]["SLGCOT"] + "");
                    sltinhCK    = slg;
                    db.INSERT_TTTT_SLGNUT_CHUKY(ma_dviqlyDN, MaTram + "", dt.Rows[i]["MACOT"] + "", thang, nam, Math.Round(slg, 2), Ngay, ChuKy);
                }
                else
                {
                    decimal slg = sltinhCK * decimal.Parse(dt.Rows[i]["SLGCOT"] + "") / sanluongtrc;
                    sanluongtrc = decimal.Parse(dt.Rows[i]["SLGCOT"] + "");
                    sltinhCK    = slg;
                    db.INSERT_TTTT_SLGNUT_CHUKY(ma_dviqlyDN, MaTram + "", dt.Rows[i]["MACOT"] + "", thang, nam, Math.Round(slg, 2), Ngay, ChuKy);
                }
            }
            return(true);
        }
Exemplo n.º 2
0
 static void Main()
 {
     Application.EnableVisualStyles();
     Application.SetCompatibleTextRenderingDefault(false);
     Application.Run(new Form1());
     DataAccess.clTTTT db = new DataAccess.clTTTT();
 }
Exemplo n.º 3
0
        private void InBienBanTonThat()
        {
            if (cmbMaTram.Value == null)
            {
                return;
            }
            MTCSYT.SYS_Session session = (MTCSYT.SYS_Session)Session["SYS_Session"];
            int strMadviqly            = int.Parse(session.User.ma_dviqly);

            DataAccess.clTTTT db = new DataAccess.clTTTT();

            CBDN.TonThatKyThuatReport.DuyetCanhBaoTTKD DuyetKH = new CBDN.TonThatKyThuatReport.DuyetCanhBaoTTKD();

            DataTable dttram = new DataTable();
            DataTable dtKhang = new DataTable();
            DataTable dtKhangD = new DataTable();
            int       thang = 0, thang1 = 0, thang2 = 0, thang3 = 0, nam = 0, nam1 = 0, nam2 = 0, nam3 = 0;
            string    Ma_dvi = cmMaDvi.Value + "";

            string Matram = cmbMaTram.Value + "";

            thang = int.Parse(cmbThang.Value + "");
            nam   = int.Parse(cmbNam.Value + "");
            if (thang == 1)
            {
                thang1 = 12; thang2 = 11; thang3 = 10; nam1 = nam - 1; nam2 = nam - 1; nam3 = nam - 1;
            }
            else if (thang == 2)
            {
                thang1 = 1; thang2 = 12; thang3 = 11; nam1 = nam; nam2 = nam - 1; nam3 = nam - 1;
            }
            else if (thang == 3)
            {
                thang1 = 2; thang2 = 1; thang3 = 12; nam1 = nam; nam2 = nam; nam3 = nam - 1;
            }
            else
            {
                thang1 = thang - 1; thang2 = thang - 2; thang3 = thang - 3; nam1 = nam; nam2 = nam; nam3 = nam;
            }

            float tylebt = float.Parse(txtTyLeBT.Text + "");

            dttram  = db.SELECT_THONGTIN_TRAM_BCKD(Ma_dvi, Matram, thang, nam, thang1, nam1, thang2, nam2, thang3, nam3);
            dtKhang = db.SELECT_THONGTIN_KHANG_BCKD(Ma_dvi, Matram, thang, nam);
            if (int.Parse(rdTinhToan.Value + "") == 0)
            {
                dtKhangD = DuyetKH.DCB_TKD(dtKhang, tylebt, 0, thang, nam, Ma_dvi, Matram);
            }
            else
            {
                dtKhangD = DuyetKH.DCB_TKD(dtKhang, tylebt, 1, thang, nam, Ma_dvi, Matram);
            }
            if (dtKhang.Rows.Count == 0 || dttram.Rows.Count == 0)
            {
                ScriptManager.RegisterStartupScript(Page, Page.GetType(), "", "alert('Trạm không có dữ liệu theo điều kiện chọn.');", true);
                return;
            }
            else
            {
                TonThatKyThuatReport.InBienTTKD report = new TonThatKyThuatReport.InBienTTKD(dttram, dtKhangD, "" + cmbThang.Value, "" + cmbNam.Value, Ma_dvi);
                ReportViewer2.Report        = report;
                ReportToolbar2.ReportViewer = ReportViewer2;
            }
        }
Exemplo n.º 4
0
        public DataTable DCB_TKD(DataTable dtKhang, float tylebt, int t, int thang, int nam, string Ma_dvi, string Matram)
        {
            DataAccess.clTTTT db = new DataAccess.clTTTT();
            int a = dtKhang.Rows.Count;

            for (int i = 0; i < a; i++)
            {
                float sanluong   = float.Parse(dtKhang.Rows[i]["SAN_LUONG"] + "");
                float sanluong_1 = float.Parse(dtKhang.Rows[i]["SLUONG_1"] + "");
                float sanluong_2 = float.Parse(dtKhang.Rows[i]["SLUONG_2"] + "");
                float sanluong_3 = float.Parse(dtKhang.Rows[i]["SLUONG_3"] + "");
                var   sl_check1  = sanluong - sanluong_1;
                var   sl_check2  = sanluong_1 - sanluong_2;
                var   sl_check3  = sanluong_2 - sanluong_3;
                var   sl_tb      = (sanluong + sanluong_1 + sanluong_2 + sanluong_3) / 4;
                var   tbsl1      = sl_check1 / sanluong_1 * 100;
                var   tbsl2      = sl_check2 / sanluong_2 * 100;
                var   tbsl3      = sl_check3 / sanluong_3 * 100;
                var   tb1        = tbsl1 - tbsl2;
                var   tb2        = tbsl2 - tbsl3;
                var   tb3        = tbsl1 - tbsl3;
                //H0 - Cháy hỏng
                if (sanluong <= 2 && sanluong_1 > 10 && sanluong_2 > 10)
                {
                    if ((dtKhang.Rows[i]["CANH_BAO"] + "") != "")
                    {
                        dtKhang.Rows[i]["CANH_BAO"] = "Có thể " + dtKhang.Rows[0]["CANH_BAO"] + ", " + "Có thể chết cháy kẹt sản lượng không tăng hoặc tăng rất nhỏ so với tháng trước";
                    }
                    else
                    {
                        dtKhang.Rows[i]["CANH_BAO"] = "Có thể chết cháy kẹt sản lượng không tăng hoặc tăng rất nhỏ so với tháng trước";
                    }
                    dtKhang.Rows[i]["MA_TTCTO"]    = "C2";
                    dtKhang.Rows[i]["DX_CANH_BAO"] = "Kiểm tra và thay tháo công tơ";
                    //GD - Ghi đè
                }
                if (sl_check1 == 0)
                {
                    dtKhang.Rows[i]["MA_TTCTO"]    = "C1";
                    dtKhang.Rows[i]["CANH_BAO"]    = "Có thể " + "Chết cháy kẹt với chỉ số bằng 0";
                    dtKhang.Rows[i]["DX_CANH_BAO"] = "Tháo công tơ thay thế	";
                }
                if (tb1 > 0)
                {
                    if (tb1 > tylebt)
                    {
                        //T2 - Sản lượng tăng bất thường 2 tháng
                        if (Math.Abs(tb2) > tylebt && Math.Abs(tb3) < tylebt || Math.Abs(tb2) < tylebt && Math.Abs(tb3) > tylebt)
                        {
                            dtKhang.Rows[i]["MA_TTCTO"]    = "T2";
                            dtKhang.Rows[i]["CANH_BAO"]    = "Sản lượng tăng bất thường trong 2 tháng";
                            dtKhang.Rows[i]["DX_CANH_BAO"] = "Kiểm tra lại công tơ";
                        }
                        //T3 - Sản lượng tăng bất thường trong 3 tháng
                        else if (Math.Abs(tb2) > tylebt && Math.Abs(tb3) > tylebt)
                        {
                            dtKhang.Rows[i]["MA_TTCTO"]    = "T3";
                            dtKhang.Rows[i]["CANH_BAO"]    = "Sản lượng tăng bất thường trong 3 tháng";
                            dtKhang.Rows[i]["DX_CANH_BAO"] = "Kiểm tra lại công tơ";
                        }
                        //ST1 - Sản lượng tăng bất thường trong 1 tháng
                        else
                        {
                            dtKhang.Rows[i]["MA_TTCTO"]    = "T1";
                            dtKhang.Rows[i]["CANH_BAO"]    = "Sản lượng tăng bất thường trong 1 tháng";
                            dtKhang.Rows[i]["DX_CANH_BAO"] = "Kiểm tra lại công tơ";
                        }
                    }
                }

                if (tb1 < 0)
                {
                    if (Math.Abs(tb1) > tylebt)
                    {
                        if (Math.Abs(tb2) > tylebt && Math.Abs(tb3) > tbsl3)
                        {
                            dtKhang.Rows[i]["MA_TTCTO"]    = "G3";
                            dtKhang.Rows[i]["CANH_BAO"]    = "Sản lượng giảm bất thường trong 3 tháng";
                            dtKhang.Rows[i]["DX_CANH_BAO"] = "Kiểm tra lại công tơ";
                        }
                        else if (Math.Abs(tb2) < tylebt && Math.Abs(tb3) > tylebt || Math.Abs(tb2) > tylebt && Math.Abs(tb3) < tylebt)
                        {
                            dtKhang.Rows[i]["MA_TTCTO"]    = "G2";
                            dtKhang.Rows[i]["CANH_BAO"]    = "Sản lượng giảm bất thường trong 2 tháng";
                            dtKhang.Rows[i]["DX_CANH_BAO"] = "Kiểm tra lại công tơ";
                        }
                        else
                        {
                            dtKhang.Rows[i]["MA_TTCTO"]    = "G1";
                            dtKhang.Rows[i]["CANH_BAO"]    = "Sản lượng giảm bất thường trong 1 tháng";
                            dtKhang.Rows[i]["DX_CANH_BAO"] = "Kiểm tra lại công tơ";
                        }
                    }
                }
            }
            //Insert vào DB

            /*
             * for (int j = 0; i < a; j++)
             * {
             *  string check = dtKhang.Rows[i]["MA_TTCTO"] + "";
             *  if (check != "")
             *  {
             *      db.INSERT_TBDD_PT_CHISO_KH(dtKhang.Rows[i]["MA_DVIQLY"]+"", dtKhang.Rows[i]["MATRAM"] + "", dtKhang.Rows[i]["MAKHACHHANG"] + "", dtKhang.Rows[i]["MA_NN"] + "",
             *      dtKhang.Rows[i]["TENKHACHHANG"] + "", dtKhang.Rows[i]["DIACHI"] + "", dtKhang.Rows[i]["MA_TTCTO"] + "", dtKhang.Rows[i]["CANH_BAO"] + "",
             *      dtKhang.Rows[i]["DX_CANH_BAO"] + "", dtKhang.Rows[i]["MA_CLOAI"] + "",
             *      dtKhang.Rows[i]["SO_CTO"] + "", dtKhang.Rows[i]["SAN_LUONG"] + "", dtKhang.Rows[i]["SLUONG_1"] + "", dtKhang.Rows[i]["SLUONG_2"] + "",
             *      dtKhang.Rows[i]["SLUONG_3"] + "", dtKhang.Rows[i]["SOHO"] + "", dtKhang.Rows[i]["HANKD"] + "");
             *
             *  }
             * }
             */



            DataTable dt = new DataTable();

            dt.Columns.Add("MA_DVIQLY");
            dt.Columns.Add("MATRAM");
            dt.Columns.Add("MAKHACHHANG");
            dt.Columns.Add("MA_NN");
            dt.Columns.Add("TENKHACHHANG");
            dt.Columns.Add("DIACHI");
            dt.Columns.Add("MA_TTCTO");
            dt.Columns.Add("CANH_BAO");
            dt.Columns.Add("DX_CANH_BAO");
            dt.Columns.Add("MA_CLOAI");
            dt.Columns.Add("SO_CTO");
            dt.Columns.Add("SAN_LUONG");
            dt.Columns.Add("SLUONG_1");
            dt.Columns.Add("SLUONG_2");
            dt.Columns.Add("SLUONG_3");
            dt.Columns.Add("SOHO");
            dt.Columns.Add("HANKD");
            int k = dtKhang.Rows.Count;
            int j = 1;

            for (int i = 0; i < k; i++)
            {
                string check = dtKhang.Rows[i]["MA_TTCTO"] + "";
                if (check != "")
                {
                    dt.Rows.Add(dtKhang.Rows[i]["MA_DVIQLY"], dtKhang.Rows[i]["MATRAM"], dtKhang.Rows[i]["MAKHACHHANG"], dtKhang.Rows[i]["MA_NN"],
                                dtKhang.Rows[i]["TENKHACHHANG"], dtKhang.Rows[i]["DIACHI"], dtKhang.Rows[i]["MA_TTCTO"], dtKhang.Rows[i]["CANH_BAO"],
                                dtKhang.Rows[i]["DX_CANH_BAO"], dtKhang.Rows[i]["MA_CLOAI"],
                                dtKhang.Rows[i]["SO_CTO"], dtKhang.Rows[i]["SAN_LUONG"], dtKhang.Rows[i]["SLUONG_1"], dtKhang.Rows[i]["SLUONG_2"],
                                dtKhang.Rows[i]["SLUONG_3"], dtKhang.Rows[i]["SOHO"], dtKhang.Rows[i]["HANKD"]);
                    j++;
                }
            }
            if (dt.Rows.Count != 0)
            {
                //Kiểm tra xem dữ liệu được chèn vào bảng TBDD_PT_CHISO
                DataTable ds = db.SELECT_THONGTIN_TRAM_TLTT_B10_CHECK(Ma_dvi, Matram, thang, nam);
                int       a1 = ds.Rows.Count;
                //Nếu có dữ liệu rồi ktra với TBDD_PT_CHISO_TRAM_B10 có dữ liệu chưa và nếu có thì tybt có trùng nhau không
                //Nếu trùng thì dữ nguyên, nếu không trùng tiến hành xoá ở TBDD_PT_CHISO rồi insert TBDD_PT_CHISO và insert DL vào lại bảng TBDD_PT_CHISO_TRAM_B10
                if (a1 == 1)
                {
                    DataTable check  = db.SELECT_THONGTIN_TRAM_TLTT_B10_TEMP_Check(Ma_dvi, Matram, thang, nam, tylebt);
                    int       check1 = check.Rows.Count;
                    if (check1 == 0)
                    {
                        float dnn   = 0;
                        float dntt  = 0;
                        float tt_lk = 0;
                        int   nn    = 0;
                        int   tt    = 0;
                        db.DELETE_KHANG_PHUCTRA_TRAM(Ma_dvi, Matram, "DDK", "0A", thang, nam, 0);
                        db.Insert_Khang_PhucTra(dt, thang, nam, Ma_dvi);
                        ds = db.SELECT_THONGTIN_TRAM_TLTT_B10_CHECK(Ma_dvi, Matram, thang, nam);
                        string ten_tram    = ds.Rows[0]["TEN_TRAM"] + "";
                        int    csuat_tram  = int.Parse(ds.Rows[0]["CSUAT_TRAM"] + "");
                        string DNN         = ds.Rows[0]["DNN"] + "";
                        string TT_LK       = ds.Rows[0]["TT_LK"] + "";
                        string NGUYEN_NHAN = ds.Rows[0]["NGUYEN_NHAN"] + "";
                        string TINH_TRANG  = ds.Rows[0]["TINH_TRANG"] + "";
                        string DNTT        = ds.Rows[0]["DNTT"] + "";
                        if (DNN != "")
                        {
                            dnn = float.Parse(DNN);
                        }
                        if (TT_LK != "")
                        {
                            tt_lk = float.Parse(TT_LK);
                        }
                        if (NGUYEN_NHAN != "")
                        {
                            nn = int.Parse(NGUYEN_NHAN);
                        }
                        if (TINH_TRANG != "")
                        {
                            tt = int.Parse(TINH_TRANG);
                        }
                        if (DNTT != "")
                        {
                            dntt = float.Parse(DNTT);
                        }
                        db.INSERT_THONGTIN_TRAM_TLTT_B10(Ma_dvi, Matram, ten_tram, csuat_tram, dnn, tt_lk, dntt, nn, tt, thang, nam, tylebt);
                    }
                }
                else if (a1 == 0)
                {
                    float dnn   = 0;
                    float dntt  = 0;
                    float tt_lk = 0;
                    int   nn    = 0;
                    int   tt    = 0;
                    db.Insert_Khang_PhucTra(dt, thang, nam, Ma_dvi);
                    ds = db.SELECT_THONGTIN_TRAM_TLTT_B10_CHECK(Ma_dvi, Matram, thang, nam);
                    string ten_tram    = ds.Rows[0]["TEN_TRAM"] + "";
                    int    csuat_tram  = int.Parse(ds.Rows[0]["CSUAT_TRAM"] + "");
                    string DNN         = ds.Rows[0]["DNN"] + "";
                    string TT_LK       = ds.Rows[0]["TT_LK"] + "";
                    string NGUYEN_NHAN = ds.Rows[0]["NGUYEN_NHAN"] + "";
                    string TINH_TRANG  = ds.Rows[0]["TINH_TRANG"] + "";
                    string DNTT        = ds.Rows[0]["DNTT"] + "";
                    if (DNN != "")
                    {
                        dnn = float.Parse(DNN);
                    }
                    if (TT_LK != "")
                    {
                        tt_lk = float.Parse(TT_LK);
                    }
                    if (NGUYEN_NHAN != "")
                    {
                        nn = int.Parse(NGUYEN_NHAN);
                    }
                    if (TINH_TRANG != "")
                    {
                        tt = int.Parse(TINH_TRANG);
                    }
                    if (DNTT != "")
                    {
                        dntt = float.Parse(DNTT);
                    }
                    db.INSERT_THONGTIN_TRAM_TLTT_B10(Ma_dvi, Matram, ten_tram, csuat_tram, dnn, tt_lk, dntt, nn, tt, thang, nam, tylebt);
                }
            }

            if (t != 0)
            {
                return(dt);
            }
            return(dtKhang);
        }
Exemplo n.º 5
0
        private void tinhtonthat()
        {
            //var Thang = DateTime.Now.Month - 1;
            //var Nam = DateTime.Now.Year;
            int Thang = 6;
            int Nam   = 2020;

            DataAccess.clTTTT         db   = new DataAccess.clTTTT();
            TBAUuTien.clTinhTonThatKT clTT = new TBAUuTien.clTinhTonThatKT();

            var dstba = db.SELECT_TTTT_TRAM_UUTIEN_TT(Thang, Nam);
            int a1    = dstba.Rows.Count;

            for (int i1 = 0; i1 < a1; i1++)
            {
                string ma_dviqlyDN = "PA23MV";
                string MaTram      = "MVCE00099";
                //string ma_dviqlyDN = dstba.Rows[i1]["MADVIQLY"].ToString();
                //string MaTram = dstba.Rows[i1]["MATRAM"].ToString();
                DataTable dtNew = new DataTable();

                DataTable dt            = db.SELECT_TONTHATKD_BYTRAM(ma_dviqlyDN, MaTram, int.Parse(Thang + ""), int.Parse(Nam + ""));
                string    tonthatKyThat = "0";

                int  ngay = 0, gio = 23, ngaysau = 0, giosau = 0, kiemtra;
                bool ktrMuc2 = false;
                int  songay  = DateTime.DaysInMonth(int.Parse(Nam + ""), int.Parse(Thang + ""));
                for (int i = songay * 24; i > 0; i--)
                {
                    if (i == 706)
                    {
                        string a = "1";
                    }
                    if (i == songay * 24)
                    {
                        kiemtra = 1;
                    }
                    else if (ktrMuc2)
                    {
                        kiemtra = 1;
                    }
                    else
                    {
                        kiemtra = 2;
                    }
                    ngaysau = ngay;
                    giosau  = gio;
                    if (i % 24 == 0)
                    {
                        ngay = i / 24;
                        gio  = 23;
                    }
                    else if (i != songay * 24)
                    {
                        gio = gio - 1;
                    }
                    //int strNgay = 0, strChuKy = 0;
                    if (TinhChuKy(ma_dviqlyDN, MaTram, int.Parse(Thang + ""), int.Parse("" + Nam), ngay, gio, ngaysau, giosau, kiemtra))
                    {
                        DataTable dtTTKT = clTT.TTKyThuat(ma_dviqlyDN, MaTram, ref tonthatKyThat, int.Parse(Thang + ""), int.Parse("" + Nam), ngay, gio);

                        ktrMuc2 = false;
                    }
                    else
                    {
                        ktrMuc2 = true;
                    }
                }
                dtNew.Columns.Add("TTDN");
                dtNew.Columns.Add("TTKT");
                dtNew.Columns.Add("TTKD");
                dtNew.Columns.Add("SoSanh");

                //dtNew.Rows.Add("ĐN tổn thất delta A", decimal.Parse(tonthatKyThat) * decimal.Parse("15"), dt.Rows[0]["TONTHAT"] + "", decimal.Parse(dt.Rows[0]["TONTHAT"] + "") - decimal.Parse(tonthatKyThat) * decimal.Parse("15"));
                //decimal phantramkt = Math.Round(decimal.Parse(tonthatKyThat) * decimal.Parse("15") / decimal.Parse(dt.Rows[0]["DAUNGUONTHANG"] + "") * 100, 2);
                //dtNew.Rows.Add("Tỉ lệ tổn thất delta A", phantramkt, decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + ""), decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + "") - phantramkt);

                DataTable dtTongKT = db.select_TTTT_TONTHATKYTHUAT_THANG(ma_dviqlyDN, MaTram, int.Parse(Thang + ""), int.Parse("" + Nam), 1);

                if (dtTongKT.Rows.Count > 0)
                {
                    tonthatKyThat = dtTongKT.Rows[0]["TONTHAT"] + "";
                }

                dtNew.Rows.Add("ĐN tổn thất delta A", tonthatKyThat, dt.Rows[0]["TONTHAT"] + "", decimal.Parse(dt.Rows[0]["TONTHAT"] + "") - decimal.Parse(tonthatKyThat));
                decimal phantramkt = Math.Round(decimal.Parse(tonthatKyThat) / decimal.Parse(dt.Rows[0]["DAUNGUONTHANG"] + "") * 100, 2);
                dtNew.Rows.Add("Tỉ lệ tổn thất delta A", phantramkt, decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + ""), decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + "") - phantramkt);
                DataTable dtBD = new DataTable();
            }
        }
Exemplo n.º 6
0
        public void tinhtonthat()
        {
            try
            {
                TinhToanTBAUuTien.clTinhTonThatKT clTT = new TinhToanTBAUuTien.clTinhTonThatKT();

                int               thang   = 6;
                int               nam     = 2020;
                string            strDate = DateTime.Now.ToString("dd/MM/yyyy hh:mm");
                DataAccess.clTTTT db      = new DataAccess.clTTTT();
                var               dstba   = db.SELECT_TTTT_TRAM_UUTIEN_TT(thang, nam);
                int               a1      = dstba.Rows.Count;

                for (int i1 = 0; i1 < a1; i1++)
                {
                    string ma_dviqlyDN = dstba.Rows[i1]["MADVIQLY"] + "";
                    string MaTram      = dstba.Rows[i1]["MATRAM"] + "";
                    //ma_dviqlyDN = "PA23MV";
                    //MaTram = "MVCE00099";
                    DataTable dtSLg_DD = db.TTTT_SELECT_SLG_DUONGDAY_TRAM_CHECK(ma_dviqlyDN, MaTram, thang, nam);
                    int       check    = dtSLg_DD.Rows.Count;
                    if (check > 1)
                    {
                        DataTable dtNew = new DataTable();
                        db.Delete_TTTT_TRAM_CHUYKYTINH(ma_dviqlyDN, MaTram, thang, nam);

                        DataTable dt            = db.SELECT_TONTHATKD_BYTRAM(ma_dviqlyDN, MaTram, thang, nam);
                        string    tonthatKyThat = "0";

                        int  ngay = 0, gio = 23, ngaysau = 0, giosau = 0, kiemtra;
                        bool ktrMuc2 = false;
                        int  songay  = DateTime.DaysInMonth(nam, thang);
                        for (int i = songay * 24; i > 0; i--)
                        {
                            if (i == 706)
                            {
                                string a = "1";
                            }
                            if (i == songay * 24)
                            {
                                kiemtra = 1;
                            }
                            else if (ktrMuc2)
                            {
                                kiemtra = 1;
                            }
                            else
                            {
                                kiemtra = 2;
                            }
                            ngaysau = ngay;
                            giosau  = gio;
                            if (i % 24 == 0)
                            {
                                ngay = i / 24;
                                gio  = 23;
                            }
                            else if (i != songay * 24)
                            {
                                gio = gio - 1;
                            }
                            //int strNgay = 0, strChuKy = 0;
                            //string ma_dviqlyDN, string maTram, ref string TonThat, int thang, int nam, int ngay, int chuky)
                            if (TinhChuKy(ma_dviqlyDN, MaTram, thang, nam, ngay, gio, ngaysau, giosau, kiemtra))
                            {
                                DataTable dtTTKT = clTT.TTKyThuat(ma_dviqlyDN, MaTram, ref tonthatKyThat, thang, nam, ngay, gio);

                                ktrMuc2 = false;
                            }
                            else
                            {
                                ktrMuc2 = true;
                            }
                        }
                        dtNew.Columns.Add("TTDN");
                        dtNew.Columns.Add("TTKT");
                        dtNew.Columns.Add("TTKD");
                        dtNew.Columns.Add("SoSanh");

                        //dtNew.Rows.Add("ĐN tổn thất delta A", decimal.Parse(tonthatKyThat) * decimal.Parse("15"), dt.Rows[0]["TONTHAT"] + "", decimal.Parse(dt.Rows[0]["TONTHAT"] + "") - decimal.Parse(tonthatKyThat) * decimal.Parse("15"));
                        //decimal phantramkt = Math.Round(decimal.Parse(tonthatKyThat) * decimal.Parse("15") / decimal.Parse(dt.Rows[0]["DAUNGUONTHANG"] + "") * 100, 2);
                        //dtNew.Rows.Add("Tỉ lệ tổn thất delta A", phantramkt, decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + ""), decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + "") - phantramkt);

                        DataTable dtTongKT = db.select_TTTT_TONTHATKYTHUAT_THANG(ma_dviqlyDN, MaTram, thang, nam, 1);
                        string    kiemtra1 = dtTongKT.Rows[0]["TONTHAT"] + "";
                        if (dtTongKT.Rows.Count > 0 && kiemtra1 != "")
                        {
                            tonthatKyThat = dtTongKT.Rows[0]["TONTHAT"] + "";
                            tonthatKyThat = (decimal.Parse(tonthatKyThat) / 1000) + "";
                            dtNew.Rows.Add("ĐN tổn thất delta A", tonthatKyThat, dt.Rows[0]["TONTHAT"] + "", decimal.Parse(dt.Rows[0]["TONTHAT"] + "") - decimal.Parse(tonthatKyThat));
                            decimal phantramkt = Math.Round(decimal.Parse(tonthatKyThat) / decimal.Parse(dt.Rows[0]["DAUNGUONTHANG"] + "") * 100, 2);
                            dtNew.Rows.Add("Tỉ lệ tổn thất delta A", phantramkt, decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + ""), decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + "") - phantramkt);
                            string KyThuat     = dtNew.Rows[0]["TTKT"] + "";
                            string KinhDoanh   = dtNew.Rows[0]["TTKD"] + "";
                            string SoSanh      = dtNew.Rows[0]["SoSanh"] + "";
                            string KyThuatTL   = dtNew.Rows[1]["TTKT"] + "";
                            string KinhDoanhTL = dtNew.Rows[1]["TTKD"] + "";
                            string SoSanhTL    = dtNew.Rows[1]["SoSanh"] + "";
                            string Nam         = nam + "";
                            string Thang       = thang + "";
                            db.INSERT_TTTT_TRAM_UUTIEN_TINHTOAN(ma_dviqlyDN, MaTram, KyThuat, KinhDoanh, SoSanh, KyThuatTL, KinhDoanhTL, SoSanhTL, strDate, Nam, Thang);
                        }
                    }
                }
                //hienthiBanDo(dtBD, decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + "") - phantramkt, decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + ""), phantramkt);

                //grdDVT.Caption = "Tính toán tổn thất điện năng trạm " + MaTram.Text + " điện nhận tháng 6: " + dt.Rows[0]["DAUNGUONTHANG"] + " kwwh";
                // grdDVT.DataSource = dtNew;
                // grdDVT.DataBind();
                // ScriptManager.RegisterStartupScript(Page, Page.GetType(), "", "alert('Đã thực hiện tính xong tổn thật tại trạm');", true);
            }
            catch (Exception ex)
            {
                //ScriptManager.RegisterStartupScript(Page, Page.GetType(), "", "alert('Đã thực hiện tính xong tổn thật tại trạm');", true);
                //ScriptManager.RegisterStartupScript(Page, Page.GetType(), "", "alert('Lỗi thực hiện tính " + ex.Message + "');", true);
            }
        }
Exemplo n.º 7
0
        static void tinhtonthat()
        {
            try
            {
                string            ma_dviqlyDN = "PA23MV";
                string            MaTram      = "MVCE00099";
                int               thang       = 6;
                int               nam         = 2020;
                DataAccess.clTTTT db          = new DataAccess.clTTTT();
                DataTable         dtNew       = new DataTable();
                db.Delete_TTTT_TRAM_CHUYKYTINH(ma_dviqlyDN, MaTram, thang, nam);

                DataTable dt            = db.SELECT_TONTHATKD_BYTRAM(ma_dviqlyDN, MaTram, thang, nam);
                string    tonthatKyThat = "0";

                int  ngay = 0, gio = 23, ngaysau = 0, giosau = 0, kiemtra;
                bool ktrMuc2 = false;
                int  songay  = DateTime.DaysInMonth(nam, thang);
                for (int i = songay * 24; i > 0; i--)
                {
                    if (i == 706)
                    {
                        string a = "1";
                    }
                    if (i == songay * 24)
                    {
                        kiemtra = 1;
                    }
                    else if (ktrMuc2)
                    {
                        kiemtra = 1;
                    }
                    else
                    {
                        kiemtra = 2;
                    }
                    ngaysau = ngay;
                    giosau  = gio;
                    if (i % 24 == 0)
                    {
                        ngay = i / 24;
                        gio  = 23;
                    }
                    else if (i != songay * 24)
                    {
                        gio = gio - 1;
                    }
                    //int strNgay = 0, strChuKy = 0;
                    //string ma_dviqlyDN, string maTram, ref string TonThat, int thang, int nam, int ngay, int chuky)
                    if (TinhChuKy(thang, nam, ngay, gio, ngaysau, giosau, kiemtra))
                    {
                        DataTable dtTTKT = clTinhTonThatKT.TTKyThuat(ma_dviqlyDN, MaTram, ref tonthatKyThat, thang, nam, ngay, gio);

                        ktrMuc2 = false;
                    }
                    else
                    {
                        ktrMuc2 = true;
                    }
                }
                dtNew.Columns.Add("TTDN");
                dtNew.Columns.Add("TTKT");
                dtNew.Columns.Add("TTKD");
                dtNew.Columns.Add("SoSanh");

                //dtNew.Rows.Add("ĐN tổn thất delta A", decimal.Parse(tonthatKyThat) * decimal.Parse("15"), dt.Rows[0]["TONTHAT"] + "", decimal.Parse(dt.Rows[0]["TONTHAT"] + "") - decimal.Parse(tonthatKyThat) * decimal.Parse("15"));
                //decimal phantramkt = Math.Round(decimal.Parse(tonthatKyThat) * decimal.Parse("15") / decimal.Parse(dt.Rows[0]["DAUNGUONTHANG"] + "") * 100, 2);
                //dtNew.Rows.Add("Tỉ lệ tổn thất delta A", phantramkt, decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + ""), decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + "") - phantramkt);

                DataTable dtTongKT = db.select_TTTT_TONTHATKYTHUAT_THANG(ma_dviqlyDN, MaTram, thang, nam, 1);

                if (dtTongKT.Rows.Count > 0)
                {
                    tonthatKyThat = dtTongKT.Rows[0]["TONTHAT"] + "";
                }

                dtNew.Rows.Add("ĐN tổn thất delta A", tonthatKyThat, dt.Rows[0]["TONTHAT"] + "", decimal.Parse(dt.Rows[0]["TONTHAT"] + "") - decimal.Parse(tonthatKyThat));
                decimal phantramkt = Math.Round(decimal.Parse(tonthatKyThat) / decimal.Parse(dt.Rows[0]["DAUNGUONTHANG"] + "") * 100, 2);
                dtNew.Rows.Add("Tỉ lệ tổn thất delta A", phantramkt, decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + ""), decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + "") - phantramkt);
                DataTable dtBD = new DataTable();
                dtBD = dtHienThiBanDo(dtNew);

                hienthiBanDo(dtBD, decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + "") - phantramkt, decimal.Parse(dt.Rows[0]["PHANTRAMTT"] + ""), phantramkt);
                //grdDVT.Caption = "Tính toán tổn thất điện năng trạm " + MaTram.Text + " điện nhận tháng 6: " + dt.Rows[0]["DAUNGUONTHANG"] + " kwwh";
                // grdDVT.DataSource = dtNew;
                // grdDVT.DataBind();
                // ScriptManager.RegisterStartupScript(Page, Page.GetType(), "", "alert('Đã thực hiện tính xong tổn thật tại trạm');", true);
            }
            catch (Exception ex)
            {
                //ScriptManager.RegisterStartupScript(Page, Page.GetType(), "", "alert('Đã thực hiện tính xong tổn thật tại trạm');", true);
                //ScriptManager.RegisterStartupScript(Page, Page.GetType(), "", "alert('Lỗi thực hiện tính " + ex.Message + "');", true);
            }
        }