示例#1
0
        private void kiemtra_nhap()
        {
            Cursor = Cursors.WaitCursor;
            string user = d.user, sql;

            d.execute_data("update " + user + mmyy + ".d_tonkhoct set slnhap=0 where makho in (select id from " + user + ".d_dmkho where nhom=" + i_nhom + ")");
            sql = "select id,makho,manguon,nhomcc from " + user + mmyy + ".d_nhapll where nhom=" + i_nhom;
            decimal sttt = 0; bool bFound = false;

            foreach (DataRow r in d.get_data(sql).Tables[0].Rows)
            {
                sql  = "select stt,mabd,handung,losx,soluong,dongia,giaban,giamua,namsx,baohanh,nguongoc,tinhtrang,sothe,tyle_ggia,st_ggia";
                sql += " from " + user + mmyy + ".d_nhapct where id=" + decimal.Parse(r["id"].ToString());
                foreach (DataRow r1 in d.get_data(sql).Tables[0].Rows)
                {
                    sql  = "select * from " + user + mmyy + ".d_tonkhoct where idn=" + decimal.Parse(r["id"].ToString()) + " and sttn=" + decimal.Parse(r1["stt"].ToString());
                    sttt = 0;
                    foreach (DataRow r2 in d.get_data(sql).Tables[0].Rows)
                    {
                        sttt = decimal.Parse(r2["stt"].ToString());
                    }
                    bFound = sttt != 0;
                    if (sttt == 0)
                    {
                        sttt = d.getidyymmdd(9);
                    }
                    d.upd_theodoi(mmyy, sttt, int.Parse(r1["mabd"].ToString()), int.Parse(r["manguon"].ToString()), int.Parse(r["nhomcc"].ToString()),
                                  r1["handung"].ToString(), r1["losx"].ToString(), r1["sothe"].ToString(), r1["namsx"].ToString(), r1["namsx"].ToString(),
                                  int.Parse(r1["baohanh"].ToString()), int.Parse(r1["nguongoc"].ToString()), int.Parse(r1["tinhtrang"].ToString()),
                                  decimal.Parse(r1["giamua"].ToString()), decimal.Parse(r1["giaban"].ToString()), decimal.Parse(r1["dongia"].ToString()),
                                  decimal.Parse(r1["tyle_ggia"].ToString()), decimal.Parse(r1["st_ggia"].ToString()));
                    if (bFound)
                    {
                        d.execute_data("update " + user + mmyy + ".d_tonkhoct set slnhap=slnhap+" + decimal.Parse(r1["soluong"].ToString()) + " where idn=" + decimal.Parse(r["id"].ToString()) + " and sttn=" + decimal.Parse(r1["stt"].ToString()) + " and makho=" + int.Parse(r["makho"].ToString()));
                    }
                    else
                    {
                        d.execute_data("insert into " + user + mmyy + ".d_tonkhoct(makho,stt,idn,sttn,mabd,tondau,slnhap,slxuat) values (" + int.Parse(r["makho"].ToString()) + "," + sttt + "," + decimal.Parse(r["id"].ToString()) + "," + decimal.Parse(r1["stt"].ToString()) + "," + decimal.Parse(r1["mabd"].ToString()) + ",0," + decimal.Parse(r1["soluong"].ToString()) + ",0)");
                    }
                }
            }
            d.upd_tonkho(i_nhom, mmyy);
            Cursor = Cursors.Default;
            MessageBox.Show(lan.Change_language_MessageText("Đã kiểm tra số liệu tồn kho !"), d.Msg);
        }