Ejemplo n.º 1
0
        private static void MoveQty(this FabMask mask, FabAoEquipment eqp, FabLot lot)
        {
            if (mask.HasLimit() == false)
            {
                return;
            }

            int qty = lot.UnitQty;

            if (qty <= 0)
            {
                return;
            }

            foreach (var item in mask.Limits)
            {
                if (item.ActivateType != ActivateType.M)
                {
                    continue;
                }

                item.MoveQty += qty;
                item.Seq++;

                OutCollector.WriteLimitMLog(item, eqp, lot, eqp.NowDT);
            }
        }
Ejemplo n.º 2
0
        public static void OnDayChanged(DateTime now)
        {
            var list = InputMart.Instance.FabMask.Values;

            foreach (var mask in list)
            {
                if (mask.HasLimit() == false)
                {
                    continue;
                }

                foreach (var item in mask.Limits)
                {
                    if (item.ActivateType != ActivateType.M)
                    {
                        continue;
                    }

                    if (item.IsDailyMode == false)
                    {
                        OutCollector.WriteLimitMLog(item, null, null, now, "DAY_CHANGE");
                        continue;
                    }

                    item.MoveQty = 0;
                    item.Seq     = 0;

                    OutCollector.WriteLimitMLog(item, null, null, now, "RESET");
                }
            }
        }
Ejemplo n.º 3
0
        private static void MoveQty(this EqpArrangeSet setInfo, FabAoEquipment eqp, FabLot lot)
        {
            if (setInfo.HasItems() == false)
            {
                return;
            }

            int qty = lot.UnitQty;

            if (qty <= 0)
            {
                return;
            }

            string productVersion = lot.CurrentProductVersion;
            var    mask           = lot.CurrentMask;

            var list = setInfo.Items;

            foreach (var item in list)
            {
                if (item.ActivateType != ActivateType.M)
                {
                    continue;
                }

                if (item.IsMatchedByProductVersion(productVersion) == false)
                {
                    continue;
                }

                if (item.IsMatchedByMask(mask) == false)
                {
                    continue;
                }

                item.MoveQty += qty;
                item.Seq++;

                OutCollector.WriteLimitMLog(item, eqp, lot, eqp.NowDT);
            }
        }
Ejemplo n.º 4
0
        public static void OnDayChanged(DateTime now)
        {
            foreach (var list in AllArrange.Values)
            {
                foreach (var item in list)
                {
                    if (item.ActivateType != ActivateType.M)
                    {
                        continue;
                    }

                    if (item.IsDailyMode == false)
                    {
                        OutCollector.WriteLimitMLog(item, null, null, now, "DAY_CHANGE");
                        continue;
                    }

                    item.MoveQty = 0;
                    item.Seq     = 0;

                    OutCollector.WriteLimitMLog(item, null, null, now, "RESET");
                }
            }
        }