Esempio n. 1
0
        private void GetCtData()
        {
            var prodList = new ReqRptCommonProductQuerier(6).Prods;

            DevCatcher.Conditions = string.Format("where prodspec_id in ('{0}')", string.Join("','", prodList));
            DevCatcher.GetEntities();
            CtTotal = DevCatcher.entities.EntityList.Sum(s => s.Total_CT);
        }
Esempio n. 2
0
        private void Initialize()
        {
            //DB2Helper db2 = new DB2Helper();

            //string sql = "select d_thesystemkey from smview.fbprod where prodcat_ident = 'Production' and mainpd_id = 'APAA'";

            //db2.GetSomeData(sql);

            //foreach (DataRow dr in db2.dt.Rows)
            //{
            //    TableEntities.Add(new ReqRpt025TableEntity(dr[0].ToString()));
            //}

            var productQuerier = new ReqRptCommonProductQuerier(6);

            foreach (var prod in productQuerier.Prods)
            {
                TableEntities.Add(new ReqRpt025TableEntity(prod));
            }

            DB2DataCatcher <RPT_RealTime_Lin> db2Catcher = new DB2DataCatcher <RPT_RealTime_Lin>("ISTRPT.RPT_RealTime_Lin");

            db2Catcher.Conditions = string.Format("where start_time>='{0}' and start_time <'{1}' ", strSelecedFrom, strSelectedTo);
            var list = db2Catcher.GetEntities().EntityList;

            foreach (var item in TableEntities)
            {
                var rowList     = list.Where(w => w.Product_ID == item.ProductID);
                var rowList_Fab = rowList.Where(w => w.PartName == "FAB");
                var rowList_Wat = rowList.Where(w => w.PartName == "WAT");
                if (rowList_Fab.Count() > 0)
                {
                    item.FAB_PassQty  = rowList_Fab.Sum(w => w.MoveQty);
                    item.FAB_ScrapQty = rowList_Fab.Sum(w => w.ScrappedQty);
                }
                if (rowList_Wat.Count() > 0)
                {
                    item.WAT_PassQty  = rowList_Wat.Sum(s => s.MoveQty);
                    item.WAT_ScrapQty = rowList_Wat.Sum(s => s.ScrappedQty);
                }
            }
        }
Esempio n. 3
0
        private void Initialize()
        {
            Products = new ReqRptCommonProductQuerier(6).Prods;
            string month = Date.ToString("yyyy-MM");
            var    model = new ReqRpt011TableDataBuilder(month, Products);
            var    lineYieldPostModel = new ReqRpt025PostModel()
            {
                FromCategory = "day", ToCategory = "day", FromDate = Date.ToString("yyyy-MM") + "-01", ToDate = Date.AddDays(1).ToString("yyyy-MM-dd")
            };
            var lineYiledDataModel = new ReqRpt025TableViewModel(lineYieldPostModel);

            foreach (var prod in Products)
            {
                var outSource = model.WipEntities.Where(w => w.ProductID == prod);
                var outEntity = new ReqRpt002WaferOutEntity()
                {
                    Product = prod
                };
                outEntity.OutSourceAccActual = outSource.Any() ? outSource.First().Plans.Take(Date.Day).Sum(s => s.Actual) : 0;
                outEntity.OutSourceAccTarget = outSource.Any() ? outSource.First().Plans.Take(Date.Day).Sum(s => s.Target) : 0;
                var waferOut = model.ShipEntities.Where(w => w.ProductID == prod);
                outEntity.WFOutAccActual = waferOut.Any() ? waferOut.First().Plans.Take(Date.Day).Sum(s => s.Actual) : 0;
                outEntity.WFOutAccTarget = waferOut.Any() ? waferOut.First().Plans.Take(Date.Day).Sum(s => s.Target) : 0;
                var yieldFindList = lineYiledDataModel.TableEntities.Where(w => w.ProductID == prod);
                outEntity.WFOutYield = yieldFindList.Any() ? yieldFindList.First().Yield : 0;
                WaferOutEntities.Add(outEntity);
            }
            WaferOutTotalEntity.Product            = "Total";
            WaferOutTotalEntity.OutSourceAccActual = WaferOutEntities.Sum(s => s.OutSourceAccActual);
            WaferOutTotalEntity.OutSourceAccTarget = WaferOutEntities.Sum(s => s.OutSourceAccTarget);
            WaferOutTotalEntity.WFOutAccActual     = WaferOutEntities.Sum(s => s.WFOutAccActual);
            WaferOutTotalEntity.WFOutAccTarget     = WaferOutEntities.Sum(s => s.WFOutAccTarget);
            var fab_pass  = lineYiledDataModel.TableEntities.Sum(s => s.FAB_PassQty);
            var fab_scrap = lineYiledDataModel.TableEntities.Sum(s => s.FAB_ScrapQty);
            var wat_pass  = lineYiledDataModel.TableEntities.Sum(s => s.WAT_PassQty);
            var wat_scrap = lineYiledDataModel.TableEntities.Sum(s => s.WAT_ScrapQty);
            var fab_yield = fab_pass + fab_scrap == 0 ? 0 : fab_pass * 1.0 / (fab_pass + fab_scrap);
            var wat_yield = wat_pass + wat_scrap == 0 ? 0 : wat_pass * 1.0 / (wat_pass + wat_scrap);

            WaferOutTotalEntity.WFOutYield = fab_yield * wat_yield;
        }