示例#1
0
        public override void TinhGiatri()
        {
            // string sql;
            dtkq = DbData.GetDataSetByStore("gtGiandon", new string[] { "@tungay", "@denngay", "@tk", "@manhom" }, new object [] { _Tungay, _Denngay, tk, Manhom });
            DataColumn col = dtkq.Columns[1];

            col.ColumnName   = dryt["MaYT"].ToString();
            col.DefaultValue = 0.0;
            col.Caption      = dryt["TenYT"].ToString();
        }
示例#2
0
        public override void TinhGiatri()
        {
            //So luong thanh phan phap kho            dtkq
            //Soluong nguyen vat lieu xuat san xuat
            tbNVLXuat            = DbData.GetDataSetByStore("GetNVLXuat", new string[] { "@tungay", "@denngay", "@tk" }, new object[] { _Tungay, _Denngay, tk });
            tbNVLXuat.PrimaryKey = new DataColumn[] { tbNVLXuat.Columns["Mavt"] };
            // Số lượng nvl định mức cho từng sản phẩm
            tbDM = DbData.GetDataSetByStore("GetsldmNVL", new string[] { "@tungay", "@denngay", "@manhom", "@BangDM", "@TruongSP", "@Mavt", "@Heso" },
                                            new object[] { _Tungay, _Denngay, Manhom, dryt["BangDM"].ToString(), dryt["TruongSP"].ToString(), dryt["Mavt"].ToString(), dryt["Heso"].ToString() });
            DataColumn coltmp = new DataColumn("tien");

            coltmp.DataType     = typeof(double);
            coltmp.DefaultValue = 0.0;
            tbDM.Columns.Add(coltmp);
            //try
            //{
            tbDM.PrimaryKey = new DataColumn[] { tbDM.Columns["MaSP"], tbDM.Columns["mavt"] };
            //Phân bổ tiền vào bảng định mức
            tbTongNVLDM = DbData.GetDataSetByStore("GetTongDMNVL", new string[] { "@tungay", "@denngay", "@manhom", "@BangDM", "@TruongSP", "@Mavt", "@Heso" },
                                                   new object[] { _Tungay, _Denngay, Manhom, dryt["BangDM"].ToString(), dryt["TruongSP"].ToString(), dryt["Mavt"].ToString(), dryt["Heso"].ToString() });

            tbTongNVLDM.PrimaryKey = new DataColumn[] { tbTongNVLDM.Columns["Mavt"] };
            //Đối với từng loại vật tư - sản phẩm  và tính tiền đã phân bổ
            //foreach (DataRow drxuat in tbNVLXuat.Rows)
            //{
            //    double tongDM = 0;
            //    double slXuat = 0;
            //    double tienXuat = 0;
            //    double tiendaPb = 0;

            //    string mavt = drxuat["mavt"].ToString().Trim();
            //    tienXuat = double.Parse(drxuat["psco"].ToString());
            //    DataRow [] arrDr = tbDM.Select("mavt='" + drxuat["mavt"].ToString().Trim() + "'");
            //    if (tbTongNVLDM.Rows.Contains(mavt))
            //    {
            //        tongDM = double.Parse(tbTongNVLDM.Rows.Find(mavt)["tongNVL"].ToString());
            //    }
            //    double TSLDM = 0;
            //    foreach (DataRow dr in arrDr)
            //    {
            //        double slDM = double.Parse(dr["soluongxDM"].ToString());
            //        tiendaPb = tienXuat * slDM / tongDM;
            //        dr["tien"] = tiendaPb;
            //        Tongtien += tiendaPb;
            //        TSLDM += slDM;
            //    }

            //}
            foreach (DataRow dr in tbDM.Rows)
            {
                string mavt     = dr["mavt"].ToString().Trim();
                string masp     = dr["masp"].ToString();
                double slDM     = double.Parse(dr["soluongxDM"].ToString());
                double tongDM   = 0;
                double slXuat   = 0;
                double tienXuat = 0;
                double tiendaPb = 0;
                if (tbTongNVLDM.Rows.Contains(mavt))
                {
                    tongDM = double.Parse(tbTongNVLDM.Rows.Find(mavt)["tongNVL"].ToString());
                }
                if (tbNVLXuat.Rows.Contains(mavt))
                {
                    DataRow drxuat = tbNVLXuat.Rows.Find(mavt);
                    slXuat   = double.Parse(drxuat["soluongx"].ToString());
                    tienXuat = double.Parse(drxuat["psco"].ToString());
                }
                else
                {
                    //tienhh += tienhh;
                }
                if (tongDM > 0 && slXuat > 0)
                {
                    tiendaPb = tienXuat * slDM / tongDM;
                }
                dr["tien"] = tiendaPb;
                Tongtien  += tiendaPb;
            }
            //MessageBox.Show(tienhh.ToString());
            //Đưa vào bảng kết quả
            foreach (DataRow dr in dtkq.Rows)
            {
                string masp = dr["masp"].ToString().Trim();
                dr[Name] = getSum(tbDM.Select("Masp='" + masp + "'"), "tien");
            }

            //}
            //catch
            //{
            //}
        }