From 50def4c2cf704ac390b9732a010fde0ffbf3bf01 Mon Sep 17 00:00:00 2001 From: hyelinjung Date: Fri, 6 Feb 2026 17:56:24 +0900 Subject: [PATCH] =?UTF-8?q?1.=20EP=20=EA=B2=80=EC=82=AC=20=EA=B3=84?= =?UTF-8?q?=EC=B8=A1=EA=B8=B0=20=EC=98=A4=EB=A5=98=20=EC=A6=89=EC=8B=9C=20?= =?UTF-8?q?=EC=A2=85=EB=A3=8C=20->=20=EC=9E=AC=EA=B2=80=EC=82=AC=20?= =?UTF-8?q?=EB=A3=A8=ED=8B=B4=EC=97=90=20=ED=8F=AC=ED=95=A8=202.=20LDM=20?= =?UTF-8?q?=EA=B2=80=EC=82=AC=20=EC=8A=A4=EC=BD=94=ED=94=84=20->=20?= =?UTF-8?q?=EC=8A=A4=ED=8E=99=ED=8A=B8=EB=9F=BC=20=ED=9D=90=EB=A6=84?= =?UTF-8?q?=EC=9C=BC=EB=A1=9C=20=EC=88=98=EC=A0=95=202-1.=20=EC=8A=A4?= =?UTF-8?q?=ED=8E=99=ED=8A=B8=EB=9F=BC=20=EA=B2=80=EC=82=AC=20=EC=A0=84=20?= =?UTF-8?q?=ED=8C=8C=ED=98=95=EA=B2=80=EC=82=AC=20TEST=20STEP=20=ED=99=95?= =?UTF-8?q?=EC=9D=B8=20=ED=9B=84=20=EC=A7=84=ED=96=89=20(27,23,=2021=20?= =?UTF-8?q?=EB=A7=8C=20=EA=B0=80=EB=8A=A5)=202-2.=20LDM=20=EB=AA=A8?= =?UTF-8?q?=EB=93=A0=20=EA=B2=80=EC=82=AC=20=EC=B5=9C=EC=A2=85=20=ED=95=A9?= =?UTF-8?q?=EA=B2=A9=EC=8B=9C=20TESTSTEP=EC=9D=80=2021=203.=20TD=20?= =?UTF-8?q?=EC=9D=B4=EB=AF=B8=20=EC=9E=85=EB=A0=A5=20=EB=90=98=EC=97=88?= =?UTF-8?q?=EC=9D=84=20=EA=B2=BD=EC=9A=B0=20UI=20(=EC=9D=B4=EB=AF=B8?= =?UTF-8?q?=EB=93=B1=EB=A1=9D=EC=99=84=EB=A3=8C=EB=90=9CTD)=20=EC=A0=81?= =?UTF-8?q?=EC=9A=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ProductFunctionTester/Main_Form.vb | 502 +++++++++++++++++++++-------- 1 file changed, 375 insertions(+), 127 deletions(-) diff --git a/ProductFunctionTester/Main_Form.vb b/ProductFunctionTester/Main_Form.vb index 269afe7..057167a 100644 --- a/ProductFunctionTester/Main_Form.vb +++ b/ProductFunctionTester/Main_Form.vb @@ -9,7 +9,7 @@ Imports uPLibrary.Networking.M2Mqtt Public Class Main_Form Public Program_Name As String = "DUALSONIC_Multi_Function_Tester Ver." - Public Program_Version As String = "2.1.3" + Public Program_Version As String = "2.1.7" ''데이터 베이스 테이블 목록 @@ -57,8 +57,10 @@ Public Class Main_Form Running Fail Success + TDWritten + Retry End Enum - Private testState(testRunningList.Success) As String + Private testState(testRunningList.Retry) As String Private Enum ConnectList USB @@ -270,6 +272,7 @@ Public Class Main_Form Battey Temp DataWrite + DataWritten MESreg DBWrite COUNT @@ -315,6 +318,7 @@ Public Class Main_Form Private todayCount As Integer = 1 '' 금일 측정 개수 Private newTDYnFlag As Boolean = False ''임시 td 생성 여부 + Private ResponseErrorCheck As Boolean = False Private Sub typeDataSetting() If formType = formTypeList.iqcRFEP Or formType = formTypeList.prdRFEP Then @@ -399,13 +403,13 @@ Public Class Main_Form LDMt_WMin(1) = txbHFLDMMin2 LDMt_WMin(2) = txbHFLDMMin3 - LDMt_VRMSMax(0) = txbLDMVRmax1 + LDMt_VRMSMax(0) = txbLDMVRmax3 LDMt_VRMSMax(1) = txbLDMVRmax2 - LDMt_VRMSMax(2) = txbLDMVRmax3 + LDMt_VRMSMax(2) = txbLDMVRmax1 - LDMt_VRMSmin(0) = txbLDMVRmin1 + LDMt_VRMSmin(0) = txbLDMVRmin3 LDMt_VRMSmin(1) = txbLDMVRmin2 - LDMt_VRMSmin(2) = txbLDMVRmin3 + LDMt_VRMSmin(2) = txbLDMVRmin1 FWVerNow = txbFirmVer @@ -434,6 +438,8 @@ Public Class Main_Form testState(testRunningList.Running) = "Running" testState(testRunningList.Fail) = "F A I L" testState(testRunningList.Success) = "O K" + testState(testRunningList.Retry) = "장 치 F A I L" + testState(testRunningList.TDWritten) = "이 미 등 록 완 료 된 TD" HifuStep(HifuTest_Step.Step1) = txbFrStep1.Text HifuStep(HifuTest_Step.Step2) = txbFrStep2.Text @@ -675,7 +681,7 @@ Public Class Main_Form DBCmd = "SELECT PD1_LowPriceHFCnt,PD1_LowPriceHFOkCnt,PD1_LowPriceHFNgCnt FROM " & pd1CntTableNow & " WHERE PD1_Date = '" & NowDate & "'" ElseIf formType = formTypeList.prdHFLDMEP Or formType = formTypeList.prdEP Then ''저가형 DBCmd = "SELECT PD1_LowPriceEPCnt,PD1_LowPriceEPOkCnt,PD1_LowPriceEPNgCnt FROM " & pd1CntTableNow & " WHERE PD1_Date = '" & NowDate & "'" - ElseIf formType = formTypeList.prdRFMC Then ''저가형 마름모 + ElseIf formType = formTypeList.prdRFMC Or formType = formTypeList.prdVRLDM Then ''저가형 마름모, 세모rf DBCmd = "SELECT PD1_LowPriceRFCnt,PD1_LowPriceRFOKCnt,PD1_LowPriceRFNgCnt FROM " & pd1CntTableNow & " WHERE PD1_Date = '" & NowDate & "'" ElseIf formType = formTypeList.iqcLDM Then ''세모 DBCmd = "SELECT IQC_LDMTotalCnt,IQC_LDMOkCnt,IQC_LDMNgCnt FROM " & iqcCntTableNow & " WHERE IQC_Date = '" & NowDate & "'" @@ -683,8 +689,6 @@ Public Class Main_Form DBCmd = "SELECT IQC_ALTOTotalCnt,IQC_ALTOOkCnt,IQC_ALTONgCnt FROM " & iqcCntTableNow & " WHERE IQC_Date = '" & NowDate & "'" ElseIf formType = formTypeList.prdLDM Then ''세모 생산(ldm) DBCmd = "SELECT PD1_LowPriceLDMCnt,PD1_LowPriceLDMOkCnt,PD1_LowPriceLDMNgCnt FROM " & pd1CntTableNow & " WHERE PD1_Date = '" & NowDate & "'" - ElseIf formType = formTypeList.prdVRLDM Then ''세모 생산(rf) - DBCmd = "SELECT PD1_LowPriceRFCnt,PD1_LowPriceRFOKCnt,PD1_LowPriceRFNgCnt FROM " & pd1CntTableNow & " WHERE PD1_Date = '" & NowDate & "'" Else NotChecked = True End If @@ -1018,8 +1022,26 @@ Public Class Main_Form End If End Function - Private Function SpecFreq_Set(FreqReg As Single) As Boolean - Dim specData As String = RunCommand(":FREQuency:CENTer " & FreqReg & "kHz") + Private Function SpecFreq_Set(cnt As Integer) As Boolean + Dim specData As String + If formType = formTypeList.iqcLDM Or formType = formTypeList.prdLDM Then + Dim flag As Int16 + If cnt = 0 Then + flag = 3000 + ElseIf cnt = 1 Then + flag = 10000 + Else + flag = 15000 + End If + specData = RunCommand(":FREQuency:CENTer " & flag & "kHz") + If specData <> "PASS" Then + Return False + Else + Return True + End If + End If + + specData = RunCommand(":FREQuency:CENTer " & HifuStep(cnt) & "kHz") If specData <> "PASS" Then Return False Else @@ -1767,15 +1789,17 @@ Public Class Main_Form Dim retVal As String Dim ldmMhzNum As Int16 If count = 0 Then - ldmMhzNum = 3 + ldmMhzNum = 3000 ElseIf count = 1 Then - ldmMhzNum = 10 + ldmMhzNum = 10000 Else - ldmMhzNum = 19 + ldmMhzNum = 15000 End If - tmpCmdMessage = "runldm" - cmdMessage = "[" & tmpCmdMessage & " " & ldmMhzNum & "," & nudRFRun.Value & "]" + 'tmpCmdMessage = "runldm" + tmpCmdMessage = "runhifu" + 'cmdMessage = "[" & tmpCmdMessage & " " & ldmMhzNum & "," & nudRFRun.Value & "]" + cmdMessage = "[" & tmpCmdMessage & " " & 0 & "," & ldmMhzNum & "," & nudRFRun.Value & "]" If SendData(cmdMessage) Then Return True @@ -2041,7 +2065,7 @@ Public Class Main_Form End Function Private Function TDExist() As Boolean - If formType = formTypeList.prdLDM Then + If formType = formTypeList.prdLDM Or formType = formTypeList.prdVRLDM Then TDTableNow = LDMTable Else TDTableNow = TDTable @@ -2072,6 +2096,20 @@ Public Class Main_Form Return True End Function + Private Function LDMTestStepCheck() As Boolean + DBCmd = "SELECT TestStep FROM " & ldmTableNow & "WHERE PV_SN ='" & TestData.Test_Serial & "'" + Dim sqlData As String = DBQueryScalar(DBCmd) + Dim teststep As Int16 = Val(sqlData) + If Not (teststep = 23 Or 27 Or 21) Then + Return True + ElseIf teststep = 24 Or 28 Then + txbWindow.AppendText("LDM 생산1 불합격 중 검사 진행 오류!" & vbCrLf) + Return True + End If + + Return False + End Function + Private Sub TDCompare() Dim tableName() As String Dim dupCount As Int16 = 0 @@ -2192,7 +2230,7 @@ Public Class Main_Form TestStep = TestList.HIFU TestRunningState(testRunningList.Running, Color.Yellow) - Const ModCnt As Int16 = 1 + Dim ModCnt As Int16 = 1 Dim ErrorCheck As Boolean = False Dim ForCnt As Int16 = 0 Dim PlayCount As Int16 = nudHFCount.Value @@ -2219,7 +2257,7 @@ Public Class Main_Form GoTo ForSettingFail End If Else - If SpecFreq_Set(HifuStep(cnt)) = False Then + If SpecFreq_Set(cnt) = False Then txbWindow.AppendText("Spectrum Center Frequence Fail :" & cnt & vbCrLf) GoTo ForSettingFail End If @@ -2234,7 +2272,7 @@ Public Class Main_Form GoTo ForSettingFail End If - txbWindow.AppendText("Run Hifu setting : " & cnt & vbCrLf) + txbWindow.AppendText("Run Hifu Spectrum setting : " & cnt & vbCrLf) End If delay_run(txbHFStDelay.Text) @@ -2244,22 +2282,20 @@ Public Class Main_Form If formType = formTypeList.iqcLDM Or formType = formTypeList.prdLDM Then '' 3, 10, 19 If RunLDM(cnt) Then - txbWindow.AppendText("Run LDM Fail : " & cnt & vbCrLf) + txbWindow.AppendText("Run LDM RESPONSE Fail : " & cnt & vbCrLf) GoTo ForSettingFail End If - txbWindow.AppendText("Run LDM Success : " & cnt & vbCrLf) + txbWindow.AppendText("Run LDM RESPONSE Success : " & cnt & vbCrLf) delay_run(nudHFwait.Value) Else If RunHifu(False, HifuStep(cnt), nudHFRun.Value) Then - txbWindow.AppendText("Run Hifu Fail : " & cnt & vbCrLf) + txbWindow.AppendText("Run Hifu RESPONSE Fail : " & cnt & vbCrLf) GoTo ForSettingFail End If - txbWindow.AppendText("Run Hifu freq : " & HifuStep(cnt) & vbCrLf) - - txbWindow.AppendText("Run HIFU Success : " & cnt & vbCrLf) + txbWindow.AppendText("Run HIFU RESPONSE Success : " & cnt & vbCrLf) delay_run(nudHFwait.Value) End If Next @@ -2276,22 +2312,22 @@ Public Class Main_Form If cnt Mod 2 = 0 Then If TestData.Test_HFData(cnt) < Convert.ToDouble(Val(txbDSSub_Min.Text)) Or TestData.Test_HFData(cnt) > Convert.ToDouble(Val(txbDSSub_Max.Text)) Then - txbWindow.AppendText("Run Hifu Fail " & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) + txbWindow.AppendText("Hifu MEASURE Fail " & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) hfTestFail(cnt) ErrorCheck = True Else - txbWindow.AppendText("Run Hifu " & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) + txbWindow.AppendText("Hifu MEASURE SUCCESS" & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) hfTestSuccess(cnt) End If Else If TestData.Test_HFData(cnt) < Convert.ToDouble(Val(txbDShfOut_stMin.Text)) Or TestData.Test_HFData(cnt) > Convert.ToDouble(Val(txbDShfOut_stMax.Text)) Then - txbWindow.AppendText("Run Hifu Fail " & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) + txbWindow.AppendText("Hifu MEASURE Fail " & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) hfTestFail(cnt) ErrorCheck = True Else - txbWindow.AppendText("Run Hifu " & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) + txbWindow.AppendText("Hifu MEASURE SUCCESS" & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) hfTestSuccess(cnt) End If @@ -2299,23 +2335,25 @@ Public Class Main_Form Else - txbWindow.AppendText("Run Hifu setting : " & TestData.Test_HFData(cnt) & vbCrLf) + If formType = formTypeList.iqcLDM Or formType = formTypeList.prdLDM Then - If TestData.Test_HFData(cnt) < Convert.ToDouble(Val(LDMt_WMin(cnt))) Or TestData.Test_HFData(cnt) > Convert.ToDouble(Val(LDMt_WMax(cnt))) Then - txbWindow.AppendText("Run LDM Fail " & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) + txbWindow.AppendText("LDM MEASURE VALUE : " & TestData.Test_HFData(cnt) & vbCrLf) + If TestData.Test_HFData(cnt) < Convert.ToDouble(Val(LDMt_WMin(cnt).Text)) Or TestData.Test_HFData(cnt) > Convert.ToDouble(Val(LDMt_WMax(cnt).Text)) Then + txbWindow.AppendText("LDM MEASURE Fail " & cnt & vbCrLf) hfTestFail(cnt) ErrorCheck = True Else - txbWindow.AppendText("Run LDM " & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) + txbWindow.AppendText("LDM MEASURE SUCCESS " & cnt & vbCrLf) hfTestSuccess(cnt) End If Else + txbWindow.AppendText("LDM MEASURE VALUE : " & TestData.Test_HFData(cnt) & vbCrLf) If TestData.Test_HFData(cnt) < Convert.ToDouble(Val(HF_OutMIN.Text)) Or TestData.Test_HFData(cnt) > Convert.ToDouble(Val(HF_OutMax.Text)) Then - txbWindow.AppendText("Run Hifu Fail " & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) + txbWindow.AppendText("Hifu MEASURE Fail " & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) hfTestFail(cnt) ErrorCheck = True Else - txbWindow.AppendText("Run Hifu " & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) + txbWindow.AppendText("Hifu MEASURE SUCCESS" & cnt & " : " & TestData.Test_HFData(cnt) & vbCrLf) hfTestSuccess(cnt) End If @@ -2518,8 +2556,56 @@ SettingFail: End If End Sub + Private Sub hfTestRetry(cnt As Int16) + If formType = formTypeList.prdHF Or formType = formTypeList.prdLowHF Or formType = formTypeList.prdHFLDMEP Or formType = formTypeList.prdEP Or formType = formTypeList.prdVRLDM Or formType = formTypeList.prdLDM Then + If cnt = HifuTest_Step.Step1 Then + txbHFtest1.Text = "보 류" + txbHFtest1.BackColor = Color.Gray + txbHFtest1.Refresh() + ElseIf cnt = HifuTest_Step.Step2 Then + txbHFtest2.Text = "보 류" + txbHFtest2.BackColor = Color.Gray + txbHFtest2.Refresh() + Else + txbHFtest3.Text = "보 류" + txbHFtest3.BackColor = Color.Gray + txbHFtest3.Refresh() + End If + ElseIf formType = formTypeList.iqcDsHF Or formType = formTypeList.prdDsHF Then + If cnt = HifuTest_Step.Step1 Then + txbDSHifu_1.Text = "보 류" + txbDSHifu_1.BackColor = Color.Gray + txbDSHifu_1.Refresh() + ElseIf cnt = HifuTest_Step.Step2 Then + txbDSHifu_2.Text = "보 류" + txbDSHifu_2.BackColor = Color.Gray + txbDSHifu_2.Refresh() + Else + txbDSHifu_3.Text = "보 류" + txbDSHifu_3.BackColor = Color.Gray + txbDSHifu_3.Refresh() + End If + Else + If cnt = HifuTest_Step.Step1 Then + txbIQCHF1.Text = "보 류" + txbIQCHF1.BackColor = Color.Gray + txbIQCHF1.Refresh() + ElseIf cnt = HifuTest_Step.Step2 Then + txbIQCHF2.Text = "보 류" + txbIQCHF2.BackColor = Color.Gray + txbIQCHF2.Refresh() + Else + txbIQCHF3.Text = "보 류" + txbIQCHF3.BackColor = Color.Gray + txbIQCHF3.Refresh() + End If + End If + End Sub + + Public Function RFTestRun() As Boolean - Dim ForCnt As Int16 = 0 + Dim ForCnt, LdmCnt As Int16 + Dim ModCnt As Int16 = 2 Dim chooseStatusFunc As Action(Of Int16) Dim chooseSuccessFunc As Action(Of Int16) Dim chooseFailFunc As Action(Of Int16) @@ -2529,6 +2615,7 @@ SettingFail: chooseSuccessFunc = AddressOf hfTestSuccess chooseFailFunc = AddressOf hfTestFail TestStep = TestList.HIFU + ModCnt = 1 Else chooseStatusFunc = AddressOf rfTestState chooseSuccessFunc = AddressOf rfTestSuccess @@ -2540,7 +2627,7 @@ SettingFail: MainTextChange("RF 측정중") TestRunningState(testRunningList.Running, Color.Yellow) - Const ModCnt As Int16 = 2 + Dim ScopeData As String = String.Empty Dim ErrorCheck As Boolean = False @@ -2549,6 +2636,7 @@ SettingFail: TestData.Test_RFFreq(i) = 0 Next + If RF_Setting() Then txbWindow.AppendText("RF Scope Setting Fail: " & ModCnt & vbCrLf) GoTo SettingFail @@ -2569,17 +2657,22 @@ SettingFail: freqCount = i End If - chooseStatusFunc(i) + If formType = formTypeList.prdVRLDM Then + chooseStatusFunc(LdmCnt) + Else + chooseStatusFunc(i) + End If + DoCommand(":Single") If formType = formTypeList.prdVRLDM Then - If RunLDM(freqCount) Then - txbWindow.AppendText("Run LDM Fail : " & freqCount & vbCrLf) + If RunLDM(LdmCnt) Then + txbWindow.AppendText("LDM RESPONSE Fail : " & freqCount & vbCrLf) GoTo forSettingFail End If Else If RunRF(freqCount) Then - txbWindow.AppendText("Run RF Fail : " & freqCount & vbCrLf) + txbWindow.AppendText("RF RESPONSE Fail : " & freqCount & vbCrLf) GoTo forSettingFail End If End If @@ -2588,6 +2681,7 @@ SettingFail: ScopeData = DoQueryString(":MEASure:VRMS? CHANnel" & nudRFCh.Value) If InStr(1, ScopeData.ToLower, "error") > 0 Then + txbWindow.AppendText("VRMS RESPONSE Fail : " & freqCount & vbCrLf) GoTo forSettingFail End If @@ -2596,6 +2690,7 @@ SettingFail: ScopeData = DoQueryString(":MEASure:FREQuency? CHANnel" & nudRFCh.Value) If InStr(1, ScopeData.ToLower, "error") > 0 Then + txbWindow.AppendText("FREQ RESPONSE Fail : " & freqCount & vbCrLf) GoTo forSettingFail End If @@ -2603,26 +2698,26 @@ SettingFail: If formType = formTypeList.prdVRLDM Then If (TestData.Test_RFVRMS(i) < CSng(LDMt_VRMSmin(i).Text) Or TestData.Test_RFVRMS(i) > CSng(LDMt_VRMSMax(i).Text)) Or Round(TestData.Test_RFFreq(i), 0) <> i + 1 Then - txbWindow.AppendText("Run LDM(RF) FAIL" & i & " : " & TestData.Test_RFVRMS(i) & "/" & TestData.Test_RFFreq(i) & vbCrLf) - chooseFailFunc(i) + txbWindow.AppendText("Run LDM(RF) MEASURE FAIL" & LdmCnt & " : " & TestData.Test_RFVRMS(i) & "/" & TestData.Test_RFFreq(i) & vbCrLf) + chooseFailFunc(LdmCnt) ErrorCheck = True Else - txbWindow.AppendText("Run LDM(RF) " & i & " : " & TestData.Test_RFVRMS(i) & "/" & TestData.Test_RFFreq(i) & vbCrLf) - chooseSuccessFunc(i) + txbWindow.AppendText("Run LDM(RF) MEASURE SUCCESS" & LdmCnt & " : " & TestData.Test_RFVRMS(i) & "/" & TestData.Test_RFFreq(i) & vbCrLf) + chooseSuccessFunc(LdmCnt) End If Else If (TestData.Test_RFVRMS(i) < CSng(RF_VRMSMin(i).Text) Or TestData.Test_RFVRMS(i) > CSng(RF_VRMSMax(i).Text)) Or Round(TestData.Test_RFFreq(i), 0) <> i + 1 Then - txbWindow.AppendText("Run RF FAIL" & i & " : " & TestData.Test_RFVRMS(i) & "/" & TestData.Test_RFFreq(i) & vbCrLf) + txbWindow.AppendText("Run RF MEASURE FAIL" & i & " : " & TestData.Test_RFVRMS(i) & "/" & TestData.Test_RFFreq(i) & vbCrLf) chooseFailFunc(i) ErrorCheck = True Else - txbWindow.AppendText("Run RF " & i & " : " & TestData.Test_RFVRMS(i) & "/" & TestData.Test_RFFreq(i) & vbCrLf) + txbWindow.AppendText("Run RF MEASURE SUCCESS" & i & " : " & TestData.Test_RFVRMS(i) & "/" & TestData.Test_RFFreq(i) & vbCrLf) chooseSuccessFunc(i) End If End If - + LdmCnt += 1 Next If ErrorCheck = True Then @@ -2641,7 +2736,12 @@ SettingFail: End Try forSettingFail: - chooseFailFunc(ForCnt) + If formType = formTypeList.prdVRLDM Then + chooseFailFunc(LdmCnt) + Else + chooseFailFunc(ForCnt) + End If + txbWindow.AppendText("measuring instrument response error!" & vbCrLf) SettingFail: txbWindow.AppendText("Run RF FAIL" & vbCrLf) @@ -2891,6 +2991,7 @@ SettingFail: End Try SettingFail: + txbWindow.AppendText("measuring instrument response error!" & vbCrLf) txbWindow.AppendText("Run MC FAIL" & vbCrLf) TestRunningState(testRunningList.Fail, Color.Red) TestError = False @@ -2980,17 +3081,21 @@ SettingFail: Dim chooseStatusFunc As Action(Of Int16) Dim chooseSuccessFunc As Action(Of Int16) Dim chooseFailFunc As Action(Of Int16) + Dim chooseRetryFunc As Action(Of Int16) + ResponseErrorCheck = False Try If formType = formTypeList.prdHFLDMEP Or formType = formTypeList.iqcEP Or formType = formTypeList.prdEP Then chooseStatusFunc = AddressOf hfTestState chooseSuccessFunc = AddressOf hfTestSuccess chooseFailFunc = AddressOf hfTestFail + chooseRetryFunc = AddressOf hfTestRetry TestStep = TestList.HIFU Else chooseStatusFunc = AddressOf epTestState chooseSuccessFunc = AddressOf epTestSuccess chooseFailFunc = AddressOf epTestFail + chooseRetryFunc = AddressOf epTestRetry TestStep = TestList.EP End If @@ -3017,13 +3122,15 @@ SettingFail: Next If EP_Setting() Then + ResponseErrorCheck = True txbWindow.AppendText("EP Scope Setting Fail" & vbCrLf) - GoTo SettingFail + GoTo ForSettingFail End If If TestMode_On(ModCnt) Then + ResponseErrorCheck = True txbWindow.AppendText("TestMode_EP Entrance Fail: " & ModCnt & vbCrLf) - GoTo SettingFail + GoTo ForSettingFail End If For i = 0 To EPTest_Count @@ -3034,33 +3141,65 @@ SettingFail: DoCommand(":Single") If RunEP(Val(EPFreq(i).Text)) Then - GoTo ForSettingFail + txbWindow.AppendText("Run EP RESPONSE Fail: " & i & vbCrLf) + If i = 0 And n = nudEPRe.Value Then + ResponseErrorCheck = True + chooseRetryFunc(i) + GoTo ForSettingFail + ElseIf n = nudEPRe.Value Then + ResponseErrorCheck = True + chooseRetryFunc(i) + + End If + Continue For End If ScopeData = DoQueryString(":MEASure:VPP? CHANnel" & nudEPCh.Value) If InStr(1, ScopeData.ToLower, "error") > 0 Then - GoTo ForSettingFail + txbWindow.AppendText("EP VPP RESPONSE FAIL :" & i & vbCrLf) + If i = 0 And n = nudEPRe.Value Then + ResponseErrorCheck = True + chooseRetryFunc(i) + GoTo ForSettingFail + ElseIf n = nudEPRe.Value Then + ResponseErrorCheck = True + chooseRetryFunc(i) + End If + Continue For End If TestData.Test_EPVpp(i) = Convert.ToDouble(ScopeData).ToString("f12") If TestData.Test_EPVpp(i) < EPVppMin.Text Or TestData.Test_EPVpp(i) > EPVppMax.Text Then - txbWindow.AppendText("Run EP VPP FAIL" & i & " : " & TestData.Test_EPVpp(i) & vbCrLf) - chooseFailFunc(i) - ErrorCheck = True - 'Exit For + txbWindow.AppendText("EP VPP MEASURE FAIL:" & i & "(re:" & n & ") / 측정값: " & TestData.Test_EPVpp(i) & vbCrLf) + + If n = nudEPRe.Value Then + chooseFailFunc(i) + ErrorCheck = True + End If + Else ScopeData = DoQueryString(":MEASure:FREQuency? CHANnel" & nudEPCh.Value) If InStr(1, ScopeData.ToLower, "error") > 0 Then - GoTo ForSettingFail + txbWindow.AppendText("EP PREQ RESPONSE FAIL :" & i & vbCrLf) + If i = 0 And n = nudEPRe.Value Then + ResponseErrorCheck = True + chooseRetryFunc(i) + GoTo ForSettingFail + ElseIf n = nudEPRe.Value Then + ResponseErrorCheck = True + chooseRetryFunc(i) + + End If + Continue For End If TestData.Test_EPFreq(i) = Convert.ToDouble(ScopeData).ToString("f12") / 10000 If Round(TestData.Test_EPFreq(i), 0) <> Round((CSng(EPFreq(i).Text) / 10000), 0) Then - txbWindow.AppendText("Run EP FREQ FAIL" & i & " : " & TestData.Test_EPNWidth(i) & "/" & TestData.Test_EPPWidth(i) & vbCrLf) + txbWindow.AppendText("EP FREQ MEASURE FAIL:" & i & "(re:" & n & ") / 측정값: " & TestData.Test_EPFreq(i) & vbCrLf) If n = nudEPRe.Value Then chooseFailFunc(i) @@ -3072,7 +3211,17 @@ SettingFail: ScopeData = DoQueryString(":MEASure:NWIDth? CHANnel" & nudEPCh.Value) If InStr(1, ScopeData.ToLower, "error") > 0 Then - GoTo ForSettingFail + txbWindow.AppendText("EP NWIDth RESPONSE FAIL :" & i & vbCrLf) + If i = 0 And n = nudEPRe.Value Then + ResponseErrorCheck = True + chooseRetryFunc(i) + GoTo ForSettingFail + ElseIf n = nudEPRe.Value Then + ResponseErrorCheck = True + chooseRetryFunc(i) + + End If + Continue For End If TestData.Test_EPNWidth(i) = Convert.ToDouble(ScopeData).ToString("f12") * 1000000 @@ -3080,23 +3229,32 @@ SettingFail: ScopeData = DoQueryString(":MEASure:PWIDth? CHANnel" & nudEPCh.Value) If InStr(1, ScopeData.ToLower, "error") > 0 Then - GoTo ForSettingFail + txbWindow.AppendText("EP PWIDth RESPONSE FAIL :" & i & vbCrLf) + If i = 0 And n = nudEPRe.Value Then + ResponseErrorCheck = True + chooseRetryFunc(i) + GoTo ForSettingFail + ElseIf n = nudEPRe.Value Then + ResponseErrorCheck = True + chooseRetryFunc(i) + + End If + Continue For End If TestData.Test_EPPWidth(i) = Convert.ToDouble(ScopeData).ToString("f12") * 1000000 If Abs(TestData.Test_EPPWidth(i) - TestData.Test_EPNWidth(i)) < Val(EPWidthMin(i).Text) Or Abs(TestData.Test_EPPWidth(i) - TestData.Test_EPNWidth(i)) > Val(EPWidthMax(i).Text) Then - txbWindow.AppendText("Run EP WIDTH FAIL" & i & " : " & TestData.Test_EPNWidth(i) & "/" & TestData.Test_EPPWidth(i) & vbCrLf) + txbWindow.AppendText("EP WIDTH MEASURE FAIL" & i & "(re:" & n & ") / 측정값: " & TestData.Test_EPNWidth(i) & "/" & TestData.Test_EPPWidth(i) & vbCrLf) If n = nudEPRe.Value Then chooseFailFunc(i) ErrorCheck = True - Exit For End If Else - txbWindow.AppendText("Run EP " & i & " : " & TestData.Test_EPVpp(i) & "/" & TestData.Test_EPFreq(i) & "/" & TestData.Test_EPNWidth(i) & "/" & TestData.Test_EPPWidth(i) & vbCrLf) + txbWindow.AppendText("EP MEASURE SUCCESS " & i & " : " & TestData.Test_EPVpp(i) & "/" & TestData.Test_EPFreq(i) & "/" & TestData.Test_EPNWidth(i) & "/" & TestData.Test_EPPWidth(i) & vbCrLf) chooseSuccessFunc(i) Exit For End If @@ -3107,16 +3265,12 @@ SettingFail: Next ''재측정 - If ErrorCheck = True Then - Exit For - End If - Next If ErrorCheck = True Then TestRunningState(testRunningList.Fail, Color.Red) TestError = False - Else + Else ErrorCheck = False TestRunningState(testRunningList.Success, Color.Green) End If @@ -3125,16 +3279,13 @@ SettingFail: Catch ex As Exception txbWindow.AppendText("EP Try Error : " & ex.Message & " : " & vbCrLf) - GoTo SettingFail + GoTo ForSettingFail End Try ForSettingFail: - chooseFailFunc(ForCnt) txbWindow.AppendText("measuring instrument response error!" & vbCrLf) -SettingFail: txbWindow.AppendText("Run EP FAIL" & vbCrLf) - TestRunningState(testRunningList.Fail, Color.Red) - TestError = False + TestRunningState(testRunningList.Retry, Color.Gray) MeasureTimeFunc(MeasEnd) Return True @@ -3283,6 +3434,53 @@ SettingFail: End If End If End Sub + Private Sub epTestRetry(cnt As Int16) + If formType = formTypeList.prdRFMCEP Then + If cnt = 0 Then + txbEPtest1.Text = "보 류" + txbEPtest1.BackColor = Color.Gray + txbEPtest1.Refresh() + ElseIf cnt = 1 Then + txbEPtest2.Text = "보 류" + txbEPtest2.BackColor = Color.Gray + txbEPtest2.Refresh() + Else + txbEPtest3.Text = "보 류" + txbEPtest3.BackColor = Color.Gray + txbEPtest3.Refresh() + End If + + ElseIf formType = formTypeList.prdRFEP Or formType = formTypeList.iqcRFEP Or formType = formTypeList.company Then + If cnt = 0 Then + txbAlIQCEP_1.Text = "보 류" + txbAlIQCEP_1.BackColor = Color.Gray + txbAlIQCEP_1.Refresh() + ElseIf cnt = 1 Then + txbAlIQCEP_2.Text = "보 류" + txbAlIQCEP_2.BackColor = Color.Gray + txbAlIQCEP_2.Refresh() + Else + txbAlIQCEP_3.Text = "보 류" + txbAlIQCEP_3.BackColor = Color.Gray + txbAlIQCEP_3.Refresh() + End If + + Else + If cnt = 0 Then + txbIQCEP1.Text = "보 류" + txbIQCEP1.BackColor = Color.Gray + txbIQCEP1.Refresh() + ElseIf cnt = 1 Then + txbIQCEP2.Text = "보 류" + txbIQCEP2.BackColor = Color.Gray + txbIQCEP2.Refresh() + Else + txbIQCEP3.Text = "보 류" + txbIQCEP3.BackColor = Color.Gray + txbIQCEP3.Refresh() + End If + End If + End Sub Private Function JigRun_On() As Boolean Try @@ -3632,7 +3830,7 @@ DataFail: End If For i = 1 To nudSaveCk.Value - If formType = formTypeList.prdHF Or formType = formTypeList.prdLowHF Then + If formType = formTypeList.prdHF Or formType = formTypeList.prdHFLDMEP Then If prod_reg_data("JOMT", "000000", ProdCode, "82", "0") Then GoTo DataFail End If @@ -3691,7 +3889,7 @@ DataFail: Else txbWindow.AppendText("Product Frequence : " & freqData & "/ Power : " & powerData & vbCrLf) End If - If formType <> formTypeList.prdLowHF Then + If formType <> formTypeList.prdHFLDMEP Then For i = 1 To nudSaveCk.Value sucSwitch = False If Motor_reg(TDDataSet(TD_Data.motor)) Then @@ -3723,7 +3921,7 @@ DataFail: Return False DataFail: - txbWindow.AppendText("Product Data Write Error" & vbCrLf) + txbWindow.AppendText("Product Data PCB Write Error" & vbCrLf) TestRunningState(testRunningList.Fail, Color.Red) TestError = False Return True @@ -3747,6 +3945,7 @@ DataFail: For i = 1 To nudSaveCk.Value If ldm_reg_data() Then + txbWindow.AppendText("LDM PCB WRITE ERROR" & vbCrLf) GoTo DataFail End If Next @@ -3756,12 +3955,14 @@ DataFail: For i = 1 To nudSaveCk.Value sucSwitch = False If LDMSerialWrite(TestData.Test_Serial) Then + txbWindow.AppendText("LDM PCB SN WRITE ERROR" & vbCrLf) GoTo DataFail End If tdData = LDM_name_load() If tdData = "0" Or tdData = "1" Then + txbWindow.AppendText("LDM PCB SN READ ERROR" & vbCrLf) GoTo DataFail End If @@ -3781,18 +3982,21 @@ DataFail: Dim loopFlag As Int16 = 2 sucSwitch = False If LDMFreqWrite(LDM_DataSet(LDM_Data.freq_1), LDM_DataSet(LDM_Data.power_1), LDM_DataSet(LDM_Data.freq_2), LDM_DataSet(LDM_Data.power_2), LDM_DataSet(LDM_Data.freq_3), LDM_DataSet(LDM_Data.power_3)) Then + txbWindow.AppendText("LDM PCB PREQ & POWER WRITE ERROR" & vbCrLf) GoTo DataFail End If freqData = LDM_load_data() If freqData = "0" Then + txbWindow.AppendText("LDM PCB PREQ & POWER READ ERROR" & vbCrLf) GoTo DataFail End If returnData = Split(freqData, ",") If returnData.Length <> 6 Then + txbWindow.AppendText("LDM PCB PREQ & POWER READ ERROR" & vbCrLf) GoTo DataFail End If @@ -3874,9 +4078,10 @@ DataFail: Return True End If - retVal = PollingReceiveData(1000) + retVal = PollingReceiveData(1000) + Dim compareData As String = TestData.Test_Serial & "," & LDM_DataSet(LDM_Data.freq_1) & "," & LDM_DataSet(LDM_Data.freq_2) & "," & LDM_DataSet(LDM_Data.freq_3) & "," & LDM_DataSet(LDM_Data.power_1) & "," & LDM_DataSet(LDM_Data.power_2) & "," & LDM_DataSet(LDM_Data.power_3) - If retVal <> TestData.Test_Serial & "," & LDM_DataSet(LDM_Data.freq_1) & "," & LDM_DataSet(LDM_Data.freq_2) & "," & LDM_DataSet(LDM_Data.freq_3) & "," & LDM_DataSet(LDM_Data.power_1) & "," & LDM_DataSet(LDM_Data.power_2) & "," & LDM_DataSet(LDM_Data.power_3) Then + If Not retVal.Equals(compareData) Then Return True End If @@ -4388,11 +4593,11 @@ DataFail: Dim TDSerial As String = TD_name_load() - txbWindow.AppendText("Prod Serial Number Send Fail!!" & TDSerial & vbCrLf) + txbWindow.AppendText("Non TD SN READ : " & TDSerial & vbCrLf) If TDSerial = "1" Then TestError = False - txbWindow.AppendText("Prod Serial Number Send Fail!!" & vbCrLf) + txbWindow.AppendText("Non TD SN READ FAIL : " & vbCrLf) Return True End If @@ -4402,7 +4607,7 @@ DataFail: If IsNumeric(TDSerial) = False Then TestError = False - txbWindow.AppendText("Prod Serial Number Standard Fail!!" & vbCrLf) + txbWindow.AppendText("Non TD SN FORMAT(number) FAIL : " & TDSerial & vbCrLf) Return True '' 잘못된 번호가 들어갈 경우 Else @@ -4420,6 +4625,7 @@ DataFail: Dim NewSerial As Boolean = False Dim AltoSerial As String = String.Empty Dim chooseFnc As Func(Of Int16, String) + newTDYnFlag = False dupDATA = 0 If formType = formTypeList.prdRFEP Then @@ -4869,6 +5075,9 @@ SuccessEnd: ProcessEnd: + If ResponseErrorCheck Then + RetryMain() + End If Jig_End() NormalEnd: @@ -5239,7 +5448,6 @@ ErrorEnd: delay_run(StepDelay) If EPTestRun() Then - TestError = False GoTo processEnd End If @@ -5295,6 +5503,9 @@ SuccessEnd: End If End If processEnd: + If ResponseErrorCheck Then + RetryMain() + End If Jig_End() ErrorEnd: myscope.IO.Clear() @@ -5506,7 +5717,6 @@ ErrorEnd: delay_run(StepDelay) If EPTestRun() Then - FailMain() GoTo ProcessEnd End If @@ -5571,6 +5781,9 @@ RunSuccess: End If ProcessEnd: + If ResponseErrorCheck Then + RetryMain() + End If Jig_End() NormalEnd: myscope.IO.Clear() @@ -5851,7 +6064,6 @@ ErrorEnd: End If If EPTestRun() Then - FailMain() GoTo ProcessEnd End If @@ -5918,6 +6130,9 @@ RunSuccess: End If ProcessEnd: + If ResponseErrorCheck Then + RetryMain() + End If Jig_End() NormalEnd: myscope.IO.Clear() @@ -5986,12 +6201,12 @@ NormalEnd: GoTo ProcessEnd End If - If TDSetCheck() Then + If RFTestRun() Then FailMain() GoTo ProcessEnd End If - If RFTestRun() Then + If LDMDataWrite() Then FailMain() GoTo ProcessEnd End If @@ -6062,7 +6277,6 @@ ProcessEnd: Jig_End() NormalEnd: myscope.IO.Clear() - 'txbWindow.AppendText("[" & MeasureTimeAll(MeasEnd) & "ms] Test Play" & vbCrLf) Try If TestError = False Then @@ -6080,7 +6294,7 @@ NormalEnd: Private Function TDSetCheck() As Boolean Dim TDResult As String - If formType = formTypeList.prdVRLDM Then + If formType = formTypeList.prdLDM Then TDResult = LDM_name_load() Else TDResult = TD_name_load() @@ -6105,11 +6319,11 @@ NormalEnd: End If If TestData.Test_Serial.ToUpper = TDResult.ToUpper Then - txbWindow.AppendText("TS : " & TestData.Test_Serial & ", TR : " & TDResult & "" & vbCrLf) + txbWindow.AppendText("TD INPUT : " & TestData.Test_Serial & ", TD WRITTEN : " & TDResult & "" & vbCrLf) txbTDSN.ForeColor = Color.Blue Return False Else - txbWindow.AppendText("TS : " & TestData.Test_Serial & ", TR : " & TDResult & "" & vbCrLf) + txbWindow.AppendText("TD INPUT : " & TestData.Test_Serial & ", TD WRITTEN : " & TDResult & "" & vbCrLf) txbTDSN.ForeColor = Color.Red Return True End If @@ -6371,6 +6585,11 @@ NormalEnd: If StartSwitch = True Then If JigSerial.IsOpen = True Then + If LDMTestStepCheck() Then + MsgBox("공정 순서 오류, LDM 생산1을 먼저 진행해 주십시오.", vbExclamation, Program_Name & Program_Version) + GoTo NormalEnd + End If + If LDMDataSearch() Then FailMain() GoTo NormalEnd @@ -6415,13 +6634,13 @@ NormalEnd: GoTo ProcessEnd End If - - If HFTestRun() Then + If TDSetCheck() Then FailMain() GoTo ProcessEnd End If - If LDMDataWrite() Then + + If HFTestRun() Then FailMain() GoTo ProcessEnd End If @@ -6498,6 +6717,7 @@ NormalEnd: Private Function LDMDataSearch() As Boolean MeasureTimeFunc(MeasStart) + If TDExist() Then TDCompare() @@ -6529,6 +6749,7 @@ NormalEnd: MeasureTimeFunc(MeasEnd) Return True End If + End Function @@ -6582,15 +6803,20 @@ NormalEnd: GoTo ProcessEnd End If + If TDSetCheck() Then + FailMain() + GoTo ProcessEnd + End If + If HFTestRun() Then FailMain() GoTo ProcessEnd End If - If DataWrite(ModelCode.PadRight(2, "0"c)) Then - FailMain() - GoTo ProcessEnd - End If + 'If DataWrite(ModelCode.PadRight(2, "0"c)) Then + ' FailMain() + ' GoTo ProcessEnd + 'End If GoTo runSuccess Else @@ -6686,12 +6912,12 @@ NormalEnd: Next - 'If TDSetCheck() Then - ' FailMain() - ' GoTo ProcessEnd - 'End If If EPTestRun() Then + GoTo ProcessEnd + End If + + If DataWrite(ModelCode.PadRight(2, "0"c)) Then FailMain() GoTo ProcessEnd End If @@ -6751,6 +6977,9 @@ RunSuccess: FailMain() End If ProcessEnd: + If ResponseErrorCheck Then + RetryMain() + End If Jig_End() NormalEnd: myscope.IO.Clear() @@ -6816,16 +7045,18 @@ NormalEnd: End If If EPTestRun() Then - FailMain() GoTo ProcessEnd End If - If newTDYnFlag = False Then + If newTDYnFlag = True Then If DataWriteAL() Then TestError = False newTDYnFlag = False GoTo ProcessEnd End If + Else + TestStep = TestList.DataWritten + TestRunningState(testRunningList.TDWritten, Color.Beige) End If GoTo RunSuccess @@ -6844,7 +7075,6 @@ NormalEnd: GoTo ProcessEnd End Try RunSuccess: - newTDYnFlag = False If EP_PostReg() Then txbWindow.AppendText("PostgreSQL Data Save : OK" & vbCrLf) If dbEPSave() Then @@ -6885,6 +7115,9 @@ RunSuccess: FailMain() End If ProcessEnd: + If ResponseErrorCheck Then + RetryMain() + End If Jig_End() startFail: myscope.IO.Clear() @@ -6953,12 +7186,15 @@ startFail: GoTo ProcessEnd End If - If newTDYnFlag = False Then + If newTDYnFlag = True Then If DataWriteAL() Then TestError = False newTDYnFlag = False GoTo ProcessEnd End If + Else + TestStep = TestList.DataWritten + TestRunningState(testRunningList.TDWritten, Color.Beige) End If GoTo SuccessEnd @@ -6973,7 +7209,6 @@ startFail: End If SuccessEnd: - newTDYnFlag = False If RFMc_PostReg() Then txbWindow.AppendText("PostgreSQL Data Save : OK" & vbCrLf) @@ -7385,6 +7620,7 @@ ProcessEnd: LDMReCount() Case formType = formTypeList.prdVRLDM LDMRFReCount() + End Select If CountUpdate() Then @@ -7425,19 +7661,19 @@ ProcessEnd: Private Sub LDMReCount() If dupDATA = 0 Then txbDayCount.Text = Val(txbDayCount.Text) + 1 - If processNum = TestStepList.HF_NewSuc Or processNum = TestStepList.HF_ReSuc Then + If processNum = TestStepList.HF_NewSuc Then txbOkCount.Text = Val(txbOkCount.Text) + 1 Else txbNgCount.Text = Val(txbNgCount.Text) + 1 End If Else - If LDM_DataSet(LDM_Data.TestStep) = TestStepList.HF_NEWFail Or LDM_DataSet(LDM_Data.TestStep) = TestStepList.HF_ReFail Then - If processNum = TestStepList.HF_ReSuc Then + If LDM_DataSet(LDM_Data.TestStep) <> TestStepList.HF_NewSuc Then + If processNum = TestStepList.HF_NewSuc Then txbOkCount.Text = Val(txbOkCount.Text) + 1 txbNgCount.Text = Val(txbNgCount.Text) - 1 End If Else - If processNum = TestStepList.HF_ReFail Then + If processNum <> TestStepList.HF_NewSuc Then txbOkCount.Text = Val(txbOkCount.Text) - 1 txbNgCount.Text = Val(txbNgCount.Text) + 1 End If @@ -7520,9 +7756,9 @@ ProcessEnd: DBCmd = "UPDATE " & pd1CntTableNow & " SET PD1_LowPriceEPCnt = '" & txbDayCount.Text & "', PD1_LowPriceEPOkCnt = '" & txbOkCount.Text & "', PD1_LowPriceEPNgCnt = '" & txbNgCount.Text & "' WHERE PD1_Date = '" & NowDate & "'" ElseIf formType = formTypeList.iqcLDM Then DBCmd = "UPDATE " & iqcCntTableNow & " SET IQC_LDMTotalCnt = '" & txbDayCount.Text & "', IQC_LDMOkCnt = '" & txbOkCount.Text & "', IQC_LDMNgCnt = '" & txbNgCount.Text & "' WHERE IQC_Date = '" & NowDate & "'" - ElseIf formType = formTypeList.prdLDM Then + ElseIf formType = formTypeList.prdLDM Then ''저가형 세모 ldm DBCmd = "UPDATE " & pd1CntTableNow & " SET PD1_LowPriceLDMCnt = '" & txbDayCount.Text & "', PD1_LowPriceLDMOkCnt = '" & txbOkCount.Text & "', PD1_LowPriceLDMNgCnt = '" & txbNgCount.Text & "' WHERE PD1_Date = '" & NowDate & "'" - ElseIf formType = formTypeList.prdVRLDM Or formType = formTypeList.prdRFMC Then + ElseIf formType = formTypeList.prdVRLDM Or formType = formTypeList.prdRFMC Then '' 저가형 마름모 , 세모rf DBCmd = "UPDATE " & pd1CntTableNow & " SET PD1_LowPriceRFCnt = '" & txbDayCount.Text & "', PD1_LowPriceRFOKCnt = '" & txbOkCount.Text & "', PD1_LowPriceRFNgCnt = '" & txbNgCount.Text & "' WHERE PD1_Date = '" & NowDate & "'" End If @@ -7678,7 +7914,7 @@ ProcessEnd: If formType = formTypeList.prdHF Or formType = formTypeList.prdLowHF Or formType = formTypeList.prdEP Or formType = formTypeList.prdHFLDMEP Or formType = formTypeList.prdLDM Or formType = formTypeList.prdVRLDM Then ChangeTxb = txbHFresult - ElseIf formType = formTypeList.iqcHFRFEP Or formType = formTypeList.iqcHF Or formType = formTypeList.iqcEP Or formType = formTypeList.iqcLDM Then + ElseIf formType = formTypeList.iqcHFRFEP Or formType = formTypeList.iqcHF Or formType = formTypeList.iqcEP Or formType = formTypeList.iqcLDM Or formType = formTypeList.iqcHFEP Then ChangeTxb = txbIQCHF ElseIf formType = formTypeList.iqcDsHF Or formType = formTypeList.prdDsHF Then ChangeTxb = txbDSHifu @@ -7717,7 +7953,7 @@ ProcessEnd: ElseIf formType = formTypeList.prdRFEP Or formType = formTypeList.iqcRFEP Or formType = formTypeList.company Then ChangeTxb = txbAlIQCEP - ElseIf formType = formTypeList.iqcHFRFEP Then + ElseIf formType = formTypeList.iqcHFRFEP Or formType = formTypeList.iqcHFEP Then ChangeTxb = txbIQCEP Else @@ -7725,7 +7961,7 @@ ProcessEnd: End If Case TestList.DataWrite - If formType = formTypeList.prdHF Or formType = formTypeList.prdLowHF Or formType = formTypeList.prdEP Or formType = formTypeList.prdLDM Then + If formType = formTypeList.prdHF Or formType = formTypeList.prdLowHF Or formType = formTypeList.prdEP Or formType = formTypeList.prdVRLDM Or formType = formTypeList.prdRFMC Then ChangeTxb = txbTDreg ElseIf formType = formTypeList.iqcDsHF Or formType = formTypeList.prdDsHF Then @@ -7735,6 +7971,9 @@ ProcessEnd: runSwitch = False End If + Case TestList.DataWritten + ChangeTxb = txbTDreg + Case TestList.DBWrite If formType = formTypeList.prdHF Or formType = formTypeList.prdLowHF Or formType = formTypeList.prdEP Or formType = formTypeList.prdHFLDMEP Or formType = formTypeList.prdLDM Or formType = formTypeList.prdVRLDM Then ChangeTxb = txbDBreg @@ -7772,6 +8011,11 @@ ProcessEnd: txbBarcode.BackColor = Color.Red txbBarcode.Refresh() End Sub + Private Sub RetryMain() + txbBarcode.Text = " 계 측 기 재 검 사 필 요" + txbBarcode.BackColor = Color.Gray + txbBarcode.Refresh() + End Sub Private Sub SuccessMain() txbBarcode.Text = " 합 격" @@ -7967,7 +8211,7 @@ dbFail: Dim DupYn As Boolean = DBQueryScalar(DBCmd) If DupYn = True Then - DBCmd = "UPDATE " & ldmRfTestTableNow & " SET TestDate='" & NowDate & "',TestTime='" & NowTime & "',RF_R1Vrms='" & TestData.Test_RFVRMS(0) & "',RF_R1Freq='" & TestData.Test_RFFreq(0) & "',RF_R2Vrms='" & TestData.Test_RFVRMS(1) & "',RF_R2Freq='" & TestData.Test_RFFreq(1) & "',RF_R3Vrms='" & TestData.Test_RFVRMS(2) & "',RF_R3Freq='" & TestData.Test_RFFreq(2) & "',MC_R1Wave='" & TestData.Test_MCWidth(0) & "',MC_R1Vpp='" & TestData.Test_MCVpp(0) & "',MC_R1Freq='" & TestData.Test_MCFreq(0) & "',MC_R2Wave='" & TestData.Test_MCWidth(1) & "',MC_R2Vpp='" & TestData.Test_MCVpp(0) & "',MC_R2Freq='" & TestData.Test_MCFreq(0) & "',EP_R1Vpp='" & TestData.Test_EPVpp(0) & "',EP_R1Freq='" & TestData.Test_EPFreq(0) & "',EP_R1PWidth='" & TestData.Test_EPPWidth(0) & "',EP_R1NWidth='" & TestData.Test_EPNWidth(0) & "',EP_R2Vpp='" & TestData.Test_EPVpp(1) & "',EP_R2Freq='" & TestData.Test_EPFreq(1) & "',EP_R2PWidth='" & TestData.Test_EPPWidth(1) & "',EP_R2NWidth='" & TestData.Test_EPNWidth(1) & "',EP_R3Vpp='" & TestData.Test_EPVpp(2) & "',EP_R3Freq='" & TestData.Test_EPFreq(2) & "',EP_R3PWidth='" & TestData.Test_EPPWidth(2) & "',EP_R3NWidth='" & TestData.Test_EPNWidth(2) & "' .TestResult='" & TestError & "' WHERE PV_SN = '" & TestData.Test_Serial & "'" + DBCmd = "UPDATE " & ldmRfTestTableNow & " SET TestDate='" & NowDate & "',TestTime='" & NowTime & "',RF_R1Vrms='" & TestData.Test_RFVRMS(0) & "',RF_R1Freq='" & TestData.Test_RFFreq(0) & "',RF_R2Vrms='" & TestData.Test_RFVRMS(1) & "',RF_R2Freq='" & TestData.Test_RFFreq(1) & "',RF_R3Vrms='" & TestData.Test_RFVRMS(2) & "',RF_R3Freq='" & TestData.Test_RFFreq(2) & "',TestResult='" & TestError & "' WHERE PV_SN = '" & TestData.Test_Serial & "'" If TestError = False Then processNum = TestStepList.RF_ReFail @@ -7976,7 +8220,7 @@ dbFail: End If Else - DBCmd = "INSERT INTO " & ldmRfTestTableNow & "(PV_SN,TestDate,TestTime,TestResult,RF_R1Vrms,RF_R1Freq,RF_R2Vrms,RF_R2Freq,RF_R3Vrms,RF_R3Freq,MC_R1Wave,MC_R1Vpp,MC_R1Freq,MC_R2Wave,MC_R2Vpp,MC_R2Freq,EP_R1Vpp,EP_R1Freq,EP_R1PWidth,EP_R1NWidth,EP_R2Vpp,EP_R2Freq,EP_R2PWidth,EP_R2NWidth,EP_R3Vpp,EP_R3Freq,EP_R3PWidth,EP_R3NWidth) VALUE ('" & TestData.Test_Serial & "','" & NowDate & "','" & NowTime & "','" & TestError & "','" & TestData.Test_RFVRMS(0) & "','" & TestData.Test_RFFreq(0) & "','" & TestData.Test_RFVRMS(1) & "','" & TestData.Test_RFFreq(1) & "','" & TestData.Test_RFVRMS(2) & "','" & TestData.Test_RFFreq(2) & "','" & TestData.Test_MCWidth(0) & "','" & TestData.Test_MCVpp(0) & "','" & TestData.Test_MCFreq(0) & "','" & TestData.Test_MCWidth(1) & "','" & TestData.Test_MCVpp(1) & "','" & TestData.Test_MCFreq(1) & "','" & TestData.Test_EPVpp(0) & "','" & TestData.Test_EPFreq(0) & "','" & TestData.Test_EPPWidth(0) & "','" & TestData.Test_EPNWidth(0) & "','" & TestData.Test_EPVpp(1) & "','" & TestData.Test_EPFreq(1) & "','" & TestData.Test_EPPWidth(1) & "','" & TestData.Test_EPNWidth(1) & "','" & TestData.Test_EPVpp(2) & "','" & TestData.Test_EPFreq(2) & "','" & TestData.Test_EPPWidth(2) & "','" & TestData.Test_EPNWidth(2) & "')" + DBCmd = "INSERT INTO " & ldmRfTestTableNow & "(PV_SN,TestDate,TestTime,TestResult,RF_R1Vrms,RF_R1Freq,RF_R2Vrms,RF_R2Freq,RF_R3Vrms,RF_R3Freq) VALUE ('" & TestData.Test_Serial & "','" & NowDate & "','" & NowTime & "','" & TestError & "','" & TestData.Test_RFVRMS(0) & "','" & TestData.Test_RFFreq(0) & "','" & TestData.Test_RFVRMS(1) & "','" & TestData.Test_RFFreq(1) & "','" & TestData.Test_RFVRMS(2) & "','" & TestData.Test_RFFreq(2) & "')" If TestError = False Then processNum = TestStepList.RF_NewFail @@ -8218,7 +8462,7 @@ dbFail: GoTo dbFail End If - If formType = formTypeList.prdHF Or formType = formTypeList.prdRFMCEP Or formType = formTypeList.prdLowHF Then + If formType = formTypeList.prdHF Or formType = formTypeList.prdLowHF Then Dim sucSwitch As Boolean = False For i = 1 To nudSaveCk.Value @@ -8272,15 +8516,19 @@ dbFail: If DupYn = True Then DBCmd = "UPDATE " & ldmTestTableNow & " SET TestDate = '" & NowDate & "', TestTime = '" & NowTime & "', FW_Ver = '" & TestData.Test_Firmware & "', BatteryLv = '" & TestData.Test_Battery & "', DivTemp = '" & TestData.Test_Temperature(TempData.DivTemp) & "', CtTemp = '" & TestData.Test_Temperature(TempData.CartTemp) & "', HF_R1Value = '" & TestData.Test_HFData(HifuTest_Step.Step1) & "', HF_R2Value = '" & TestData.Test_HFData(HifuTest_Step.Step2) & "', HF_R3Value = '" & TestData.Test_HFData(HifuTest_Step.step3) & "', TestResult ='" & TestError & "' WHERE PV_SN = '" & TestData.Test_Serial & "'" If TestError = False Then - processNum = TestStepList.HF_ReFail + If LDM_DataSet(LDM_Data.TestStep) = TestStepList.HF_NewSuc Then ''합격 후 재검진행 시 불합격인 경우 + processNum = 23 ''강제로 이전 단계로 초기화 + Else + processNum = LDM_DataSet(LDM_Data.TestStep) + End If Else - processNum = TestStepList.HF_ReSuc + processNum = TestStepList.HF_NewSuc End If Else DBCmd = "INSERT INTO " & ldmTestTableNow & "(PV_SN,TestDate,TestTime,FW_Ver,BatteryLv,DivTemp,CtTemp,HF_R1Value,HF_R2Value,HF_R3Value,TestResult) VALUE('" & TestData.Test_Serial & "','" & NowDate & "','" & NowTime & "','" & TestData.Test_Firmware & "','" & TestData.Test_Battery & "','" & TestData.Test_Temperature(TempData.DivTemp) & "','" & TestData.Test_Temperature(TempData.CartTemp) & "','" & TestData.Test_HFData(HifuTest_Step.Step1) & "','" & TestData.Test_HFData(HifuTest_Step.Step2) & "','" & TestData.Test_HFData(HifuTest_Step.step3) & "','" & TestError & "')" If TestError = False Then - processNum = TestStepList.HF_NEWFail + processNum = LDM_DataSet(LDM_Data.TestStep) Else processNum = TestStepList.HF_NewSuc End If @@ -9810,8 +10058,8 @@ WR_File_Error: End If If LdmUseYn = True Then ''세모 comboBoxVerificationStep.Items.Add(New DictionaryEntry("수입검사(LDM)", "iqcLDM")) - comboBoxVerificationStep.Items.Add(New DictionaryEntry("생산1(LDM)", "prdLDM")) - comboBoxVerificationStep.Items.Add(New DictionaryEntry("생산2(LDM/VRMS)", "prdVRLDM")) + comboBoxVerificationStep.Items.Add(New DictionaryEntry("생산1(LDM/VRMS)", "prdVRLDM")) + comboBoxVerificationStep.Items.Add(New DictionaryEntry("생산2(LDM)", "prdLDM")) End If If LdmUseYn = True And EpUseYn = True Then ''세모 플러스 comboBoxVerificationStep.Items.Add(New DictionaryEntry("수입검사(EP)", "iqcLDMEP")) @@ -9819,10 +10067,10 @@ WR_File_Error: End If If McUseYn = True And HifuUseYn = False Then comboBoxVerificationStep.Items.Add(New DictionaryEntry("수입검사(RF/EP/MC)", "iqcRFEPMC")) ''맥시멈 생산 화면 - comboBoxVerificationStep.Items.Add(New DictionaryEntry("생산2(RF/MC)", "prdRFMC")) ''맥시멈 생산 화면 + comboBoxVerificationStep.Items.Add(New DictionaryEntry("생산1-2(RF/MC)", "prdRFMC")) ''맥시멈 생산 화면 End If If EpUseYn = True And (HifuUseYn = False And LdmUseYn = False) Then - comboBoxVerificationStep.Items.Add(New DictionaryEntry("생산1(EP)", "prdEP")) ''맥시멈 hf 생산 화면 + comboBoxVerificationStep.Items.Add(New DictionaryEntry("생산1-1(EP)", "prdEP")) ''맥시멈 hf 생산 화면 End If End If