Пример #1
0
        void EQP_DataCollectionComplete(SecsMessage msg)
        {
            var tmpList = msg.SecsItem.Items[2].Items[0].Items[1];

            var carrier_slot_port = (string)tmpList.Items[1];
            var i         = carrier_slot_port.IndexOf('.');
            var carrierId = carrier_slot_port.Substring(0, i);
            var slotNo    = Convert.ToByte(carrier_slot_port.Substring(i + 1, 2));
            var portNo    = carrier_slot_port[carrier_slot_port.Length - 1];

            var processJob = GetProcessJob(carrierId, slotNo);
            var dc         = new DataCollectionReport(processJob);
            var dcc        = new DataCollectionCompleteReport(processJob);

            try {
                dc.AddLotData("PJL0", processJob.Id);
                dc.AddLotData("CJL0", carrierId);
                dc.AddLotData("SNL0", slotNo);
                dc.AddLotData("PIL0", Convert.ToByte(portNo));
                dc.AddLotData("RIL0", tmpList.Items[2]);
                dc.AddLotData("LTL0", (uint)tmpList.Items[3] / 100);
            } finally {
                EAP.Report(dc);
                EAP.Report(dcc);
            }
        }
Пример #2
0
        void EQP_WaferProcessData_PVD(SecsMessage msg)
        {
            Item   tempList = msg.SecsItem.Items[2].Items[0].Items[1].Items[0];
            string pjID     = tempList.Items[1].GetValue <string>();
            byte   slotNo   = (byte)tempList.Items[4].Items[0].Items[1];

            tempList = tempList.Items[4].Items[0].Items[2].Items[0];
            string chamber = tempList.Items[0].Items[1].GetValue <string>();

            var dc = new DataCollectionReport(GetProcessJob(pjID));

            try {
                dc.AddLotData("CIWW", chamber);
            } finally {
                EAP.Report(dc);
            }
        }
Пример #3
0
        void EQP_WaferProcessData_PVD(SecsMessage msg) {
            Item tempList = msg.SecsItem.Items[2].Items[0].Items[1].Items[0];
            string pjID = tempList.Items[1].GetValue<string>();
            byte slotNo = (byte)tempList.Items[4].Items[0].Items[1];

            tempList = tempList.Items[4].Items[0].Items[2].Items[0];
            string chamber = tempList.Items[0].Items[1].GetValue<string>();

            var dc = new DataCollectionReport(GetProcessJob(pjID));
            try {
                dc.AddLotData("CIWW", chamber);

                
            } finally {
                EAP.Report(dc);
            }
        }
Пример #4
0
 void EQP_DataCollection(SecsMessage msg) {
     Item dataList = msg.SecsItem.Items[2].Items[0].Items[1];
     string pjId = dataList.Items[0].GetValue<string>();
     string carrier_slot_port = (string)dataList.Items[1];
     int i = carrier_slot_port.IndexOf('.');
     byte slotNo = Convert.ToByte(carrier_slot_port.Substring(i + 1, 2));
     string carrierId = carrier_slot_port.Substring(0, i); 
     var dc = new DataCollectionReport(GetProcessJob(carrierId,slotNo));
     try {
         dc.AddWaferData("SNW0", slotNo, slotNo);
         dc.AddWaferData("PTW0", slotNo, dataList.Items[2]);
         dc.AddWaferData("TXW0", slotNo, (uint)dataList.Items[3] / 100);
         dc.AddWaferData("TIW0", slotNo, (uint)dataList.Items[4] / 100);
         dc.AddWaferData("TAW0", slotNo, (uint)dataList.Items[5] / 100);
     } finally {
         EAP.Report(dc);
     }
 }
Пример #5
0
        void EQP_DataCollection(SecsMessage msg)
        {
            var dataList          = msg.SecsItem.Items[2].Items[0].Items[1];
            var pjId              = dataList.Items[0].GetString();
            var carrier_slot_port = (string)dataList.Items[1];
            var i         = carrier_slot_port.IndexOf('.');
            var slotNo    = Convert.ToByte(carrier_slot_port.Substring(i + 1, 2));
            var carrierId = carrier_slot_port.Substring(0, i);
            var dc        = new DataCollectionReport(GetProcessJob(carrierId, slotNo));

            try {
                dc.AddWaferData("SNW0", slotNo, slotNo);
                dc.AddWaferData("PTW0", slotNo, dataList.Items[2]);
                dc.AddWaferData("TXW0", slotNo, (uint)dataList.Items[3] / 100);
                dc.AddWaferData("TIW0", slotNo, (uint)dataList.Items[4] / 100);
                dc.AddWaferData("TAW0", slotNo, (uint)dataList.Items[5] / 100);
            } finally {
                EAP.Report(dc);
            }
        }
Пример #6
0
        void EQP_WaferProcessData_LLH_LHC(SecsMessage msg) {
            Item tempList = msg.SecsItem.Items[2].Items[0].Items[1].Items[0];
            string pjID = tempList.Items[1].GetValue<string>();
            byte slotNo = (byte)tempList.Items[4].Items[0].Items[1];

            tempList = tempList.Items[4].Items[0].Items[2].Items[0];

            var dc = new DataCollectionReport(GetProcessJob(pjID));
            try {
                dc.AddWaferData("CIWD", slotNo, tempList.Items[0].Items[1]);

                tempList = tempList.Items[2].Items[0].Items[2];

                dc.AddWaferData("C1W1", slotNo, tempList.Items[3]);
                dc.AddWaferData("C1W2", slotNo, tempList.Items[6]);
                dc.AddWaferData("C2W1", slotNo, tempList.Items[9]);
                dc.AddWaferData("C2W2", slotNo, tempList.Items[12]);
            } finally {
                EAP.Report(dc);
            }
        }
Пример #7
0
        void EQP_WaferProcessData_LLH_LHC(SecsMessage msg)
        {
            Item   tempList = msg.SecsItem.Items[2].Items[0].Items[1].Items[0];
            string pjID     = tempList.Items[1].GetValue <string>();
            byte   slotNo   = (byte)tempList.Items[4].Items[0].Items[1];

            tempList = tempList.Items[4].Items[0].Items[2].Items[0];

            var dc = new DataCollectionReport(GetProcessJob(pjID));

            try {
                dc.AddWaferData("CIWD", slotNo, tempList.Items[0].Items[1]);

                tempList = tempList.Items[2].Items[0].Items[2];

                dc.AddWaferData("C1W1", slotNo, tempList.Items[3]);
                dc.AddWaferData("C1W2", slotNo, tempList.Items[6]);
                dc.AddWaferData("C2W1", slotNo, tempList.Items[9]);
                dc.AddWaferData("C2W2", slotNo, tempList.Items[12]);
            } finally {
                EAP.Report(dc);
            }
        }
Пример #8
0
        void EQP_DataCollectionComplete(SecsMessage msg) {
            Item tmpList = msg.SecsItem.Items[2].Items[0].Items[1];

            string carrier_slot_port = (string)tmpList.Items[1];
            int i = carrier_slot_port.IndexOf('.');
            string carrierId = carrier_slot_port.Substring(0, i);
            byte slotNo = Convert.ToByte(carrier_slot_port.Substring(i + 1, 2));
            char portNo = carrier_slot_port[carrier_slot_port.Length - 1];

            var processJob = GetProcessJob(carrierId, slotNo);
            var dc = new DataCollectionReport(processJob);
            var dcc = new DataCollectionCompleteReport(processJob);
            try {
                dc.AddLotData("PJL0", processJob.Id);
                dc.AddLotData("CJL0", carrierId);
                dc.AddLotData("SNL0", slotNo);
                dc.AddLotData("PIL0", Convert.ToByte(portNo));
                dc.AddLotData("RIL0", tmpList.Items[2]);
                dc.AddLotData("LTL0", (uint)tmpList.Items[3] / 100);
            } finally {
                EAP.Report(dc);
                EAP.Report(dcc);
            }
        }
Пример #9
0
 void IEAP.Report(DataCollectionReport report)
 {
     Report(report.XML);
 }