887 lines
34 KiB
VB.net
887 lines
34 KiB
VB.net
![]() |
Imports MySql.Data ' 데이터베이스 연동을 위한 네임스페이스 추가
|
|||
|
Imports MySql.Data.MySqlClient ' MYSQL Server용 네임스페이스 추가
|
|||
|
Module MySqlModule
|
|||
|
Private Const LocalHostIP As String = "192.168.0.250"
|
|||
|
Private Const DataBaseName As String = "jomtTesterDB"
|
|||
|
'Private Const DataBaseName As String = "jomtTestServerDB"
|
|||
|
Private Const UserDataBaseName As String = "jomtAccountDB"
|
|||
|
Private Const UserName As String = "root"
|
|||
|
Private Const Password As String = "JOMT1646db!!"
|
|||
|
Private Conn As String = "Server=" + LocalHostIP + ";DataBase=" + DataBaseName + ";user=" + UserName + ";password=" + Password + ";"
|
|||
|
|
|||
|
Private sqlCon As New MySqlConnection(Conn)
|
|||
|
Private sqlCmd As New MySqlCommand()
|
|||
|
Private sqlData As MySqlDataReader
|
|||
|
Public sqlDataQueryScalar As Object
|
|||
|
Public sqlDataQuery() As Object
|
|||
|
Public StrCmd As String
|
|||
|
|
|||
|
Public UseTestServer As Boolean = False
|
|||
|
|
|||
|
Public IQC_GrCapStr(,) As String = {{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
|
|||
|
{"0", "IQC_ProR1Cnt", "IQC_ProR2Cnt", "IQC_ProR3Cnt", "IQC_ProR4Cnt", "IQC_ProR5Cnt", "IQC_ProR6Cnt", "IQC_ProR7Cnt", "IQC_ProR8Cnt", "IQC_ProR9Cnt", "IQC_ProR10Cnt"},
|
|||
|
{"0", "IQC_LuxR1Cnt", "IQC_LuxR2Cnt", "IQC_LuxR3Cnt", "IQC_LuxR4Cnt", "IQC_LuxR5Cnt", "IQC_LuxR6Cnt", "IQC_LuxR7Cnt", "IQC_LuxR8Cnt", "IQC_LuxR9Cnt", "IQC_LuxR10Cnt"},
|
|||
|
{"0", "IQC_EyeR1Cnt", "IQC_EyeR2Cnt", "IQC_EyeR3Cnt", "IQC_EyeR4Cnt", "IQC_EyeR5Cnt", "IQC_EyeR6Cnt", "IQC_EyeR7Cnt", "IQC_EyeR8Cnt", "IQC_EyeR9Cnt", "IQC_EyeR10Cnt"}}
|
|||
|
Public Enum MODEL_NAME
|
|||
|
PRO = 1
|
|||
|
LUX
|
|||
|
EYE
|
|||
|
MAX
|
|||
|
MAX_MODEL_NUM
|
|||
|
End Enum
|
|||
|
Public Enum RELAY_NUM
|
|||
|
RL1 = 1
|
|||
|
RL2
|
|||
|
RL3
|
|||
|
RL4
|
|||
|
RL5
|
|||
|
RL6
|
|||
|
RL7
|
|||
|
RL8
|
|||
|
RL9
|
|||
|
RL10
|
|||
|
MAX_RELAY_NUM
|
|||
|
End Enum
|
|||
|
Public Enum PD1_ENUM
|
|||
|
STANDBY = 0
|
|||
|
WAIT
|
|||
|
WRITE
|
|||
|
SAVE
|
|||
|
COMPLETE
|
|||
|
MAX_NUM
|
|||
|
End Enum
|
|||
|
Public PD1_STATUS As PD1_ENUM
|
|||
|
Public Structure MEASURE
|
|||
|
Public MeasurePV_SN As String
|
|||
|
Public MeasureTestStep As Integer
|
|||
|
Public MeasureValue() As Double
|
|||
|
Public MeasureOkNg As String
|
|||
|
Public MeasureGrade As String
|
|||
|
Public MeasureCapacitor As String
|
|||
|
Public PreTestStep As Integer
|
|||
|
Public QC_LastDate As String
|
|||
|
|
|||
|
End Structure
|
|||
|
Public RegMeasure As MEASURE
|
|||
|
|
|||
|
Public Const LenPVSN As Integer = 10
|
|||
|
Public Const NamePVSN As String = "DIT"
|
|||
|
Public Const NamePVSN2 As String = "J"
|
|||
|
Public Structure TD_VALUE
|
|||
|
Public PV_SN As String
|
|||
|
Public PV_Date As String
|
|||
|
Public PV_Frequency As String
|
|||
|
Public PV_Impedance As String
|
|||
|
Public PV_Capacitance As String
|
|||
|
Public PV_Resistance As String
|
|||
|
Public PV_Reverved As String
|
|||
|
End Structure
|
|||
|
Public RegTD_VALUE As TD_VALUE
|
|||
|
Public Structure MES_IQC_CNT
|
|||
|
Public IQC_Date As String
|
|||
|
Public IQC_TotalCnt As Long
|
|||
|
Public IQC_OKCnt As Long
|
|||
|
Public IQC_NGCnt As Long
|
|||
|
Public IQC_GradeCnt() As Long
|
|||
|
Public IQC_GdCapCnt(,) As Long
|
|||
|
Public IQC_CapCnt() As Long
|
|||
|
Public IQC_ReTotalCnt As Long
|
|||
|
Public IQC_ReOkCnt As Long
|
|||
|
Public IQC_ReNgCnt As Long
|
|||
|
Public IQC_ReGradeCnt() As Long
|
|||
|
Public IQC_ReGdCapCnt(,) As Long
|
|||
|
End Structure
|
|||
|
Public RegMesIQC As MES_IQC_CNT
|
|||
|
Public CntRegMesIQC As MES_IQC_CNT
|
|||
|
Public Structure MES_PD1_CNT
|
|||
|
Public PD1_Date As String
|
|||
|
Public PD1_TotalCnt As Long
|
|||
|
Public PD1_OKCnt As Long
|
|||
|
Public PD1_NGCnt As Long
|
|||
|
Public PD1_GradeCnt() As Long
|
|||
|
Public PD1_CapCnt() As Long
|
|||
|
End Structure
|
|||
|
Public RegMesPD1 As MES_PD1_CNT
|
|||
|
Public CntRegMesPD1 As MES_PD1_CNT
|
|||
|
Public RegLocalPD1 As MES_PD1_CNT
|
|||
|
|
|||
|
Public Structure MES_Tester
|
|||
|
Dim MesDate As String
|
|||
|
|
|||
|
Dim Stock_GradeCnt() As Long
|
|||
|
Dim Release_GradeCnt() As Long
|
|||
|
|
|||
|
Dim PV_TDCnt As Long
|
|||
|
|
|||
|
Dim IQC_TotalCnt As Long
|
|||
|
Dim IQC_OkCnt As Long
|
|||
|
Dim IQC_NgCnt As Long
|
|||
|
Dim IQC_GradeCnt() As Long
|
|||
|
Dim IQC_GdCapCnt(,) As Long
|
|||
|
|
|||
|
Dim P1_TotalCnt As Long
|
|||
|
Dim P1_OkCnt As Long
|
|||
|
Dim P1_NgCnt As Long
|
|||
|
Dim P1_GradeCnt() As Long
|
|||
|
|
|||
|
Dim P2_TotalCnt As Long
|
|||
|
Dim P2_GradeCnt() As Long
|
|||
|
Dim P2_OkCnt As Long
|
|||
|
Dim P2_NgCnt As Long
|
|||
|
|
|||
|
End Structure
|
|||
|
Public RegMesProduct As MES_Tester
|
|||
|
Private Function DBOpen() As Boolean
|
|||
|
Try
|
|||
|
If sqlCon.State <> ConnectionState.Open Then
|
|||
|
sqlCon.Open()
|
|||
|
End If
|
|||
|
Return True
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox("MySqlCommand Error:" + vbCrLf + Err.Description)
|
|||
|
Return False
|
|||
|
End Try
|
|||
|
End Function
|
|||
|
|
|||
|
Private Function DBClose() As Boolean
|
|||
|
Try
|
|||
|
If sqlCon.State = ConnectionState.Open Then
|
|||
|
sqlCon.Close()
|
|||
|
End If
|
|||
|
Return True
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox("MySqlCommand Error:" + vbCrLf + Err.Description)
|
|||
|
Return False
|
|||
|
End Try
|
|||
|
End Function
|
|||
|
Public Function DBCommand(cmdStr As String) As Boolean
|
|||
|
Try
|
|||
|
sqlCon.Open()
|
|||
|
sqlCmd.CommandText = "USE " & DataBaseName & ";"
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCmd.CommandText = cmdStr
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCon.Close()
|
|||
|
|
|||
|
Return True
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox("MySqlCommand Error:" + vbCrLf + Err.Description)
|
|||
|
sqlCon.Close()
|
|||
|
Return False
|
|||
|
End Try
|
|||
|
End
|
|||
|
End Function
|
|||
|
|
|||
|
Public Function DBQueryScalar(cmdStr As String) As String
|
|||
|
Try
|
|||
|
sqlCon.Open()
|
|||
|
sqlCmd.CommandText = "USE " & DataBaseName & ";"
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCmd.CommandText = cmdStr
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlDataQueryScalar = sqlCmd.ExecuteScalar()
|
|||
|
|
|||
|
sqlCon.Close()
|
|||
|
|
|||
|
Return sqlDataQueryScalar
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox("MySqlCommand Error:" + vbCrLf + Err.Description)
|
|||
|
sqlCon.Close()
|
|||
|
Return False
|
|||
|
End Try
|
|||
|
End
|
|||
|
End Function
|
|||
|
|
|||
|
Public Function DBQueryReader(cmdStr As String) As Integer
|
|||
|
Dim FieldCount As Integer
|
|||
|
Dim QueryCount As ULong
|
|||
|
Dim initRun As Boolean = True
|
|||
|
Dim TmpData As Object
|
|||
|
Dim DataTypeName As String
|
|||
|
|
|||
|
Try
|
|||
|
DBOpen()
|
|||
|
|
|||
|
sqlCmd.CommandText = "USE " & DataBaseName & ";"
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCmd.CommandText = cmdStr
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlData = sqlCmd.ExecuteReader
|
|||
|
|
|||
|
FieldCount = sqlData.FieldCount
|
|||
|
|
|||
|
While (sqlData.Read())
|
|||
|
If initRun Then
|
|||
|
ReDim sqlDataQuery(FieldCount - 1)
|
|||
|
initRun = False
|
|||
|
Else
|
|||
|
ReDim Preserve sqlDataQuery(UBound(sqlDataQuery) + FieldCount)
|
|||
|
End If
|
|||
|
|
|||
|
For cnt = 0 To FieldCount - 1
|
|||
|
DataTypeName = sqlData.GetDataTypeName(cnt)
|
|||
|
|
|||
|
If DataTypeName = "DATE" Then
|
|||
|
TmpData = sqlData.GetDateTime(cnt)
|
|||
|
Else
|
|||
|
TmpData = sqlData.GetValue(cnt)
|
|||
|
End If
|
|||
|
|
|||
|
If DBNull.Value.Equals(TmpData) Or TmpData.Equals(String.Empty) Then
|
|||
|
sqlDataQuery(QueryCount) = "0"
|
|||
|
Else
|
|||
|
sqlDataQuery(QueryCount) = TmpData
|
|||
|
End If
|
|||
|
|
|||
|
QueryCount += 1
|
|||
|
Next
|
|||
|
End While
|
|||
|
|
|||
|
DBClose()
|
|||
|
Return QueryCount
|
|||
|
|
|||
|
Catch ex As Exception
|
|||
|
frmTD_JIG.cmdDisplay(Err.Description)
|
|||
|
If sqlCon.State = ConnectionState.Open Then sqlCon.Close()
|
|||
|
Return 0
|
|||
|
End Try
|
|||
|
End
|
|||
|
End Function
|
|||
|
Public Function UserDBCommand(cmdStr As String) As Boolean
|
|||
|
Try
|
|||
|
sqlCon.Open()
|
|||
|
sqlCmd.CommandText = "USE " & UserDataBaseName & ";"
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCmd.CommandText = cmdStr
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCon.Close()
|
|||
|
|
|||
|
Return True
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox("MySqlCommand Error:" + vbCrLf + Err.Description)
|
|||
|
sqlCon.Close()
|
|||
|
Return False
|
|||
|
End Try
|
|||
|
End
|
|||
|
End Function
|
|||
|
Public Function UserDBQueryReader(cmdStr As String) As Integer
|
|||
|
Dim FieldCount As Integer
|
|||
|
Dim QueryCount As ULong
|
|||
|
Dim initRun As Boolean = True
|
|||
|
Dim TmpData As Object
|
|||
|
Dim DataTypeName As String
|
|||
|
|
|||
|
Try
|
|||
|
DBOpen()
|
|||
|
|
|||
|
sqlCmd.CommandText = "USE " & UserDataBaseName & ";"
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlCmd.ExecuteNonQuery()
|
|||
|
|
|||
|
sqlCmd.CommandText = cmdStr
|
|||
|
sqlCmd.Connection = sqlCon
|
|||
|
sqlData = sqlCmd.ExecuteReader
|
|||
|
|
|||
|
FieldCount = sqlData.FieldCount
|
|||
|
|
|||
|
While (sqlData.Read())
|
|||
|
If initRun Then
|
|||
|
ReDim sqlDataQuery(FieldCount - 1)
|
|||
|
initRun = False
|
|||
|
Else
|
|||
|
ReDim Preserve sqlDataQuery(UBound(sqlDataQuery) + FieldCount)
|
|||
|
End If
|
|||
|
|
|||
|
For cnt = 0 To FieldCount - 1
|
|||
|
DataTypeName = sqlData.GetDataTypeName(cnt)
|
|||
|
|
|||
|
If DataTypeName = "DATE" Then
|
|||
|
TmpData = sqlData.GetDateTime(cnt)
|
|||
|
Else
|
|||
|
TmpData = sqlData.GetValue(cnt)
|
|||
|
End If
|
|||
|
|
|||
|
If DBNull.Value.Equals(TmpData) Or TmpData.Equals(String.Empty) Then
|
|||
|
sqlDataQuery(QueryCount) = "0"
|
|||
|
Else
|
|||
|
sqlDataQuery(QueryCount) = TmpData
|
|||
|
End If
|
|||
|
|
|||
|
QueryCount += 1
|
|||
|
Next
|
|||
|
End While
|
|||
|
|
|||
|
DBClose()
|
|||
|
Return QueryCount
|
|||
|
|
|||
|
Catch ex As Exception
|
|||
|
frmTD_JIG.cmdDisplay(Err.Description)
|
|||
|
If sqlCon.State = ConnectionState.Open Then sqlCon.Close()
|
|||
|
Return 0
|
|||
|
End Try
|
|||
|
End
|
|||
|
End Function
|
|||
|
Public Function getNowDateTime() As String
|
|||
|
Dim DateTimeStr As String
|
|||
|
|
|||
|
DateTimeStr = Format(DateAndTime.Year(Now), "0000") & "-" & Format(DateAndTime.Month(Now), "00") & "-" & Format(DateAndTime.Day(Now), "00") & " " & Format(DateAndTime.Hour(Now), "00") & ":" & Format(DateAndTime.Minute(Now), "00") & ":" & Format(DateAndTime.Second(Now), "00")
|
|||
|
|
|||
|
Return DateTimeStr
|
|||
|
End Function
|
|||
|
|
|||
|
Public Function getNowDate() As String
|
|||
|
Dim DateTimeStr As String = Format(DateAndTime.Year(Now), "0000") & "-" & Format(DateAndTime.Month(Now), "00") & "-" & Format(DateAndTime.Day(Now), "00")
|
|||
|
Return DateTimeStr
|
|||
|
End Function
|
|||
|
|
|||
|
Public Function getNowTime() As String
|
|||
|
Dim DateTimeStr As String
|
|||
|
|
|||
|
DateTimeStr = Format(DateAndTime.Hour(Now), "00") & ":" & Format(DateAndTime.Minute(Now), "00") & ":" & Format(DateAndTime.Second(Now), "00")
|
|||
|
|
|||
|
Return DateTimeStr
|
|||
|
End Function
|
|||
|
Public Sub ResetRegTD()
|
|||
|
With RegTD_VALUE
|
|||
|
.PV_SN = "N/A"
|
|||
|
.PV_Date = "N/A"
|
|||
|
.PV_Frequency = "N/A"
|
|||
|
.PV_Impedance = "N/A"
|
|||
|
.PV_Capacitance = "N/A"
|
|||
|
.PV_Resistance = "N/A"
|
|||
|
.PV_Reverved = "N/A"
|
|||
|
End With
|
|||
|
End Sub
|
|||
|
Public Function LoadRegTD(StrTD_SN As String) As Boolean
|
|||
|
Try
|
|||
|
If (Len(StrTD_SN) = LenPVSN Or Len(StrTD_SN) = (LenPVSN - 1) And (Mid(StrTD_SN, 1, 3) = NamePVSN Or Mid(StrTD_SN, 1, 1) = NamePVSN2)) Then
|
|||
|
|
|||
|
ResetRegTD()
|
|||
|
|
|||
|
RegTD_VALUE.PV_SN = StrTD_SN
|
|||
|
StrCmd = "select PV_Date,PV_Frequency,PV_Impedance,PV_Capacitance,PV_Resistance,TestStep from jomtCartridgeTbl where PV_SN = '" & StrTD_SN & "';"
|
|||
|
If DBQueryReader(StrCmd) Then
|
|||
|
RegTD_VALUE.PV_Date = sqlDataQuery(0)
|
|||
|
RegTD_VALUE.PV_Frequency = sqlDataQuery(1)
|
|||
|
RegTD_VALUE.PV_Impedance = sqlDataQuery(2)
|
|||
|
RegTD_VALUE.PV_Capacitance = sqlDataQuery(3)
|
|||
|
RegTD_VALUE.PV_Resistance = sqlDataQuery(4)
|
|||
|
RegMeasure.PreTestStep = sqlDataQuery(5)
|
|||
|
Return False
|
|||
|
Else
|
|||
|
RegTD_VALUE.PV_Date = "N/A"
|
|||
|
RegTD_VALUE.PV_Frequency = "N/A"
|
|||
|
RegTD_VALUE.PV_Impedance = "N/A"
|
|||
|
RegTD_VALUE.PV_Capacitance = "N/A"
|
|||
|
RegTD_VALUE.PV_Resistance = "N/A"
|
|||
|
Return True
|
|||
|
End If
|
|||
|
Else
|
|||
|
Return True
|
|||
|
End If
|
|||
|
Return False
|
|||
|
Catch ex As Exception
|
|||
|
Return True
|
|||
|
End Try
|
|||
|
End Function
|
|||
|
Public Sub ResetRegMeasure()
|
|||
|
With RegMeasure
|
|||
|
.MeasurePV_SN = "N/A"
|
|||
|
''.MeasureValue = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
|
|||
|
.MeasureOkNg = "N/A"
|
|||
|
.MeasureGrade = "N/A"
|
|||
|
.MeasureCapacitor = "N/A"
|
|||
|
.MeasureTestStep = 1
|
|||
|
End With
|
|||
|
End Sub
|
|||
|
Public Sub ResetRegMeasureValue()
|
|||
|
With RegMeasure
|
|||
|
.MeasureValue = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
|
|||
|
End With
|
|||
|
End Sub
|
|||
|
Public Sub ResetRegMesIQC()
|
|||
|
With RegMesIQC
|
|||
|
.IQC_Date = "0"
|
|||
|
.IQC_TotalCnt = "0"
|
|||
|
.IQC_OKCnt = "0"
|
|||
|
.IQC_NGCnt = "0"
|
|||
|
.IQC_ReTotalCnt = "0"
|
|||
|
.IQC_ReOkCnt = "0"
|
|||
|
.IQC_ReNgCnt = "0"
|
|||
|
End With
|
|||
|
|
|||
|
ReDim RegMesIQC.IQC_GradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
ReDim RegMesIQC.IQC_GdCapCnt(MODEL_NAME.MAX_MODEL_NUM - 1, RELAY_NUM.MAX_RELAY_NUM - 1)
|
|||
|
ReDim RegMesIQC.IQC_CapCnt(RELAY_NUM.MAX_RELAY_NUM - 1)
|
|||
|
ReDim RegMesIQC.IQC_ReGradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
ReDim RegMesIQC.IQC_ReGdCapCnt(MODEL_NAME.MAX_MODEL_NUM - 1, RELAY_NUM.MAX_RELAY_NUM - 1)
|
|||
|
End Sub
|
|||
|
Public Sub ResetCntRegIQC()
|
|||
|
Try
|
|||
|
With CntRegMesIQC
|
|||
|
.IQC_Date = ""
|
|||
|
.IQC_TotalCnt = 0
|
|||
|
.IQC_OKCnt = 0
|
|||
|
.IQC_NGCnt = 0
|
|||
|
.IQC_ReTotalCnt = 0
|
|||
|
.IQC_ReOkCnt = 0
|
|||
|
.IQC_ReNgCnt = 0
|
|||
|
End With
|
|||
|
|
|||
|
ReDim CntRegMesIQC.IQC_GradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
ReDim CntRegMesIQC.IQC_GdCapCnt(MODEL_NAME.MAX_MODEL_NUM - 1, RELAY_NUM.MAX_RELAY_NUM - 1)
|
|||
|
ReDim CntRegMesIQC.IQC_CapCnt(RELAY_NUM.MAX_RELAY_NUM - 1)
|
|||
|
ReDim CntRegMesIQC.IQC_ReGradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
ReDim CntRegMesIQC.IQC_ReGdCapCnt(MODEL_NAME.MAX_MODEL_NUM - 1, RELAY_NUM.MAX_RELAY_NUM - 1)
|
|||
|
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox(Err.Description)
|
|||
|
End Try
|
|||
|
End Sub
|
|||
|
Public Sub ResetRegMesPD1()
|
|||
|
Try
|
|||
|
With RegMesPD1
|
|||
|
.PD1_Date = ""
|
|||
|
.PD1_TotalCnt = 0
|
|||
|
.PD1_OKCnt = 0
|
|||
|
.PD1_NGCnt = 0
|
|||
|
End With
|
|||
|
|
|||
|
ReDim RegMesPD1.PD1_GradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
ReDim RegLocalPD1.PD1_GradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
ReDim RegMesPD1.PD1_CapCnt(RELAY_NUM.MAX_RELAY_NUM - 1)
|
|||
|
ReDim RegLocalPD1.PD1_CapCnt(RELAY_NUM.MAX_RELAY_NUM - 1)
|
|||
|
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox(Err.Description)
|
|||
|
End Try
|
|||
|
End Sub
|
|||
|
Public Sub ResetCntRegMesPD1()
|
|||
|
Try
|
|||
|
With CntRegMesPD1
|
|||
|
.PD1_Date = ""
|
|||
|
.PD1_TotalCnt = 0
|
|||
|
.PD1_OKCnt = 0
|
|||
|
.PD1_NGCnt = 0
|
|||
|
End With
|
|||
|
|
|||
|
ReDim CntRegMesPD1.PD1_GradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
ReDim CntRegMesPD1.PD1_CapCnt(RELAY_NUM.MAX_RELAY_NUM - 1)
|
|||
|
|
|||
|
Catch ex As Exception
|
|||
|
MsgBox(Err.Description)
|
|||
|
End Try
|
|||
|
End Sub
|
|||
|
Public Function LoadRegIQC() As Boolean
|
|||
|
Dim TodayDate As String
|
|||
|
Dim RetCnt As String
|
|||
|
Dim IQCCmd As String = "IQC_Date,IQC_TotalCnt,IQC_OkCnt,IQC_NgCnt,IQC_ProCnt,IQC_LuxCnt,IQC_EyeCnt,IQC_R1Cnt,IQC_R2Cnt,IQC_R3Cnt,IQC_R4Cnt,IQC_R5Cnt,IQC_R6Cnt,IQC_R7Cnt,IQC_R8Cnt,IQC_R9Cnt,IQC_R10Cnt,IQC_ReTotalCnt,IQC_ReOkCnt,IQC_ReNgCnt"
|
|||
|
Dim cnt, queryCnt As Integer
|
|||
|
|
|||
|
Try
|
|||
|
TodayDate = getNowDate()
|
|||
|
ResetRegMesIQC()
|
|||
|
|
|||
|
RetCnt = DBQueryReader("select Number from jomtMES_IQCTbl where IQC_Date='" & TodayDate & "';")
|
|||
|
|
|||
|
If RetCnt = 0 Then
|
|||
|
StrCmd = "insert jomtMES_IQCTbl(" & IQCCmd & ") values('" & TodayDate & "',0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);"
|
|||
|
DBCommand(StrCmd)
|
|||
|
End If
|
|||
|
|
|||
|
RetCnt = DBQueryReader("select " & IQCCmd & " from jomtMES_IQCTbl where IQC_Date='" & TodayDate & "';")
|
|||
|
If RetCnt Then
|
|||
|
queryCnt = 0
|
|||
|
RegMesIQC.IQC_Date = sqlDataQuery(queryCnt)
|
|||
|
queryCnt += 1
|
|||
|
RegMesIQC.IQC_TotalCnt = sqlDataQuery(queryCnt)
|
|||
|
queryCnt += 1
|
|||
|
RegMesIQC.IQC_OKCnt = sqlDataQuery(queryCnt)
|
|||
|
queryCnt += 1
|
|||
|
RegMesIQC.IQC_NGCnt = sqlDataQuery(queryCnt)
|
|||
|
|
|||
|
For cnt = MODEL_NAME.PRO To MODEL_NAME.EYE
|
|||
|
queryCnt += 1
|
|||
|
RegMesIQC.IQC_GradeCnt(cnt) = sqlDataQuery(queryCnt)
|
|||
|
Next
|
|||
|
|
|||
|
For cnt = RELAY_NUM.RL1 To RELAY_NUM.MAX_RELAY_NUM - 1
|
|||
|
queryCnt += 1
|
|||
|
RegMesIQC.IQC_CapCnt(cnt) = sqlDataQuery(queryCnt)
|
|||
|
Next cnt
|
|||
|
|
|||
|
queryCnt += 1
|
|||
|
RegMesIQC.IQC_ReTotalCnt = sqlDataQuery(queryCnt)
|
|||
|
queryCnt += 1
|
|||
|
RegMesIQC.IQC_ReOkCnt = sqlDataQuery(queryCnt)
|
|||
|
queryCnt += 1
|
|||
|
RegMesIQC.IQC_ReNgCnt = sqlDataQuery(queryCnt)
|
|||
|
Return False
|
|||
|
Else
|
|||
|
Return True
|
|||
|
End If
|
|||
|
Catch ex As Exception
|
|||
|
Return True
|
|||
|
End Try
|
|||
|
End Function
|
|||
|
Public Function LoadRegPD1() As Boolean
|
|||
|
Dim TodayDate As String
|
|||
|
Dim RetCnt As String
|
|||
|
Dim IQCCmd As String = "PD1_Date,PD1_TotalCnt,PD1_OkCnt,PD1_NgCnt,PD1_ProCnt,PD1_LuxCnt,PD1_EyeCnt,PD1_MAXCnt,PD1_R1Cnt,PD1_R2Cnt,PD1_R3Cnt,PD1_R4Cnt,PD1_R5Cnt,PD1_R6Cnt,PD1_R7Cnt,PD1_R8Cnt,PD1_R9Cnt,PD1_R10Cnt"
|
|||
|
Dim cnt, queryCnt As Integer
|
|||
|
|
|||
|
Try
|
|||
|
TodayDate = getNowDate()
|
|||
|
ResetRegMesPD1()
|
|||
|
|
|||
|
RetCnt = DBQueryReader("select Number from jomtMES_PD1Tbl where PD1_Date='" & TodayDate & "';")
|
|||
|
|
|||
|
If RetCnt = 0 Then
|
|||
|
StrCmd = "insert jomtMES_PD1Tbl(" & IQCCmd & ") values('" & TodayDate & "',0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);"
|
|||
|
DBCommand(StrCmd)
|
|||
|
End If
|
|||
|
|
|||
|
RetCnt = DBQueryReader("select " & IQCCmd & " from jomtMES_PD1Tbl where PD1_Date='" & TodayDate & "';")
|
|||
|
If RetCnt Then
|
|||
|
|
|||
|
queryCnt = 0
|
|||
|
RegMesPD1.PD1_Date = sqlDataQuery(queryCnt)
|
|||
|
queryCnt += 1
|
|||
|
RegMesPD1.PD1_TotalCnt = sqlDataQuery(queryCnt)
|
|||
|
queryCnt += 1
|
|||
|
RegMesPD1.PD1_OKCnt = sqlDataQuery(queryCnt)
|
|||
|
queryCnt += 1
|
|||
|
RegMesPD1.PD1_NGCnt = sqlDataQuery(queryCnt)
|
|||
|
|
|||
|
For cnt = MODEL_NAME.PRO To MODEL_NAME.MAX
|
|||
|
queryCnt += 1
|
|||
|
RegMesPD1.PD1_GradeCnt(cnt) = sqlDataQuery(queryCnt)
|
|||
|
Next
|
|||
|
|
|||
|
For cnt = RELAY_NUM.RL1 To RELAY_NUM.MAX_RELAY_NUM - 1
|
|||
|
queryCnt += 1
|
|||
|
RegMesPD1.PD1_CapCnt(cnt) = sqlDataQuery(queryCnt)
|
|||
|
Next cnt
|
|||
|
|
|||
|
Return False
|
|||
|
Else
|
|||
|
Return True
|
|||
|
End If
|
|||
|
Catch ex As Exception
|
|||
|
Return True
|
|||
|
End Try
|
|||
|
End Function
|
|||
|
Public Sub ResetRegProduct()
|
|||
|
With RegMesProduct
|
|||
|
.IQC_TotalCnt = 0
|
|||
|
.IQC_OkCnt = 0
|
|||
|
.IQC_NgCnt = 0
|
|||
|
.P1_TotalCnt = 0
|
|||
|
.P2_TotalCnt = 0
|
|||
|
.P2_OkCnt = 0
|
|||
|
.P2_NgCnt = 0
|
|||
|
End With
|
|||
|
ReDim RegMesProduct.Stock_GradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
ReDim RegMesProduct.Release_GradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
ReDim RegMesProduct.IQC_GradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
ReDim RegMesProduct.IQC_GdCapCnt(MODEL_NAME.MAX_MODEL_NUM - 1, RELAY_NUM.MAX_RELAY_NUM - 1)
|
|||
|
ReDim RegMesProduct.P1_GradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
ReDim RegMesProduct.P2_GradeCnt(MODEL_NAME.MAX_MODEL_NUM - 1)
|
|||
|
End Sub
|
|||
|
Public Function LoadRegProduct() As Boolean
|
|||
|
Dim TodayDate As String
|
|||
|
Dim RetCnt As String
|
|||
|
Dim PuductCmd As String = "MesDate,Stock_ProCnt,Stock_LuxCnt,Stock_EyeCnt,Release_ProCnt,Release_LuxCnt,Release_EyeCnt,PV_TDCnt,IQC_TotalCnt,IQC_OkCnt,IQC_NgCnt,IQC_ProCnt,IQC_LuxCnt,IQC_EyeCnt,IQC_ProR1Cnt,IQC_ProR2Cnt,IQC_ProR3Cnt,IQC_ProR4Cnt,IQC_ProR5Cnt,IQC_ProR6Cnt,IQC_ProR7Cnt,IQC_ProR8Cnt,IQC_ProR9Cnt,IQC_ProR10Cnt,IQC_LuxR1Cnt,IQC_LuxR2Cnt,IQC_LuxR3Cnt,IQC_LuxR4Cnt,IQC_LuxR5Cnt,IQC_LuxR6Cnt,IQC_LuxR7Cnt,IQC_LuxR8Cnt,IQC_LuxR9Cnt,IQC_LuxR10Cnt,IQC_EyeR1Cnt,IQC_EyeR2Cnt,IQC_EyeR3Cnt,IQC_EyeR4Cnt,IQC_EyeR5Cnt,IQC_EyeR6Cnt,IQC_EyeR7Cnt,IQC_EyeR8Cnt,IQC_EyeR9Cnt,IQC_EyeR10Cnt,P1_TotalCnt,P1_OkCnt,P1_NgCnt,P1_ProCnt,P1_LuxCnt,P1_EyeCnt,P2_TotalCnt,P2_OkCnt,P2_NgCnt,P2_ProCnt,P2_LuxCnt,P2_EyeCnt"
|
|||
|
Dim PreNumber As Long
|
|||
|
Dim QueryCnt As Integer
|
|||
|
Dim TmpStrCmd As String = ""
|
|||
|
|
|||
|
Try
|
|||
|
If frmTD_JIG.ShowDetailLog Then frmTD_JIG.cmdDisplay("Enter the 'LoadRegProduct' processor")
|
|||
|
|
|||
|
ResetRegProduct()
|
|||
|
TodayDate = getNowDate()
|
|||
|
|
|||
|
RetCnt = DBQueryReader("select Number from jomtMESTbl where MesDate='" & TodayDate & "';")
|
|||
|
|
|||
|
If RetCnt = 0 Then
|
|||
|
StrCmd = "insert jomtMESTbl(" & PuductCmd & ") values('" & TodayDate & "',0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0);"
|
|||
|
DBCommand(StrCmd)
|
|||
|
|
|||
|
RetCnt = DBQueryReader("select Number from jomtMESTbl where MesDate='" & TodayDate & "';")
|
|||
|
|
|||
|
If RetCnt Then
|
|||
|
PreNumber = sqlDataQuery(0)
|
|||
|
Else
|
|||
|
Return True
|
|||
|
End If
|
|||
|
|
|||
|
If PreNumber > 1 Then
|
|||
|
RetCnt = DBQueryReader("select " & PuductCmd & " from jomtMESTbl where Number=" & (PreNumber - 1) & ";")
|
|||
|
If RetCnt Then
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & "Stock_ProCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",Stock_LuxCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",Stock_EyeCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",Release_ProCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",Release_LuxCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",Release_EyeCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",PV_TDCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_TotalCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_OkCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_NgCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_ProCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_LuxCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_EyeCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
|
|||
|
For n = 1 To 10
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_ProR" & n & "Cnt=" & sqlDataQuery(QueryCnt)
|
|||
|
Next
|
|||
|
For n = 1 To 10
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_LuxR" & n & "Cnt=" & sqlDataQuery(QueryCnt)
|
|||
|
Next
|
|||
|
For n = 1 To 10
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_EyeR" & n & "Cnt=" & sqlDataQuery(QueryCnt)
|
|||
|
Next
|
|||
|
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_TotalCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_OkCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_NgCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_ProCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_LuxCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_EyeCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P2_TotalCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P2_OkCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P2_NgCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P2_ProCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P2_LuxCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
TmpStrCmd = TmpStrCmd & ",P2_EyeCnt=" & sqlDataQuery(QueryCnt)
|
|||
|
End If
|
|||
|
|
|||
|
StrCmd = "update jomtMESTbl set " & TmpStrCmd & " where MesDate = '" & TodayDate & "';"
|
|||
|
DBCommand(StrCmd)
|
|||
|
End If
|
|||
|
End If
|
|||
|
|
|||
|
RetCnt = DBQueryReader("select " & PuductCmd & " from jomtMESTbl where MesDate='" & TodayDate & "';")
|
|||
|
|
|||
|
If RetCnt Then
|
|||
|
QueryCnt = 0
|
|||
|
RegMesProduct.MesDate = sqlDataQuery(QueryCnt)
|
|||
|
|
|||
|
For i = MODEL_NAME.PRO To MODEL_NAME.EYE
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.Stock_GradeCnt(i) = sqlDataQuery(QueryCnt)
|
|||
|
Next
|
|||
|
|
|||
|
For i = MODEL_NAME.PRO To MODEL_NAME.EYE
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.Release_GradeCnt(i) = sqlDataQuery(QueryCnt)
|
|||
|
Next
|
|||
|
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.PV_TDCnt = sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.IQC_TotalCnt = sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.IQC_OkCnt = sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.IQC_NgCnt = sqlDataQuery(QueryCnt)
|
|||
|
|
|||
|
For i = MODEL_NAME.PRO To MODEL_NAME.EYE
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.IQC_GradeCnt(i) = sqlDataQuery(QueryCnt)
|
|||
|
Next
|
|||
|
|
|||
|
For i = MODEL_NAME.PRO To MODEL_NAME.EYE
|
|||
|
For n = RELAY_NUM.RL1 To RELAY_NUM.MAX_RELAY_NUM - 1
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.IQC_GdCapCnt(i, n) = sqlDataQuery(QueryCnt)
|
|||
|
Next
|
|||
|
Next
|
|||
|
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.P1_TotalCnt = sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.P1_OkCnt = sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.P1_NgCnt = sqlDataQuery(QueryCnt)
|
|||
|
For i = MODEL_NAME.PRO To MODEL_NAME.EYE
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.P1_GradeCnt(i) = sqlDataQuery(QueryCnt)
|
|||
|
Next
|
|||
|
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.P2_TotalCnt = sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.P2_OkCnt = sqlDataQuery(QueryCnt)
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.P2_NgCnt = sqlDataQuery(QueryCnt)
|
|||
|
|
|||
|
For i = MODEL_NAME.PRO To MODEL_NAME.EYE
|
|||
|
QueryCnt += 1
|
|||
|
RegMesProduct.P2_GradeCnt(i) = sqlDataQuery(QueryCnt)
|
|||
|
Next
|
|||
|
|
|||
|
Return False
|
|||
|
Else
|
|||
|
Return True
|
|||
|
End If
|
|||
|
|
|||
|
Catch ex As Exception
|
|||
|
Return True
|
|||
|
End Try
|
|||
|
End Function
|
|||
|
Public Function UploadDB_IQC() As Boolean
|
|||
|
Dim UpdateSetDataStr As String
|
|||
|
|
|||
|
Try
|
|||
|
If frmTD_JIG.ShowDetailLog Then frmTD_JIG.cmdDisplay("Enter the 'UploadDB_IQC' processor")
|
|||
|
If RegMeasure.PreTestStep <= 19 Then
|
|||
|
UpdateSetDataStr = "QC_LastDate='" & getNowDate() & "',TestStep='" & RegMeasure.MeasureTestStep & "',QC_Frequency='" & RegTD_VALUE.PV_Frequency & "',QC_Current='" & RegMeasure.MeasureValue(RegMeasure.MeasureValue(0)) & "',QC_Capacitor='" & RegMeasure.MeasureCapacitor & "',QC_Grade='" & RegMeasure.MeasureGrade & "',QC_R1Value='" & RegMeasure.MeasureValue(1) & "',QC_R2Value='" & RegMeasure.MeasureValue(2) & "',QC_R3Value='" & RegMeasure.MeasureValue(3) & "',QC_R4Value='" & RegMeasure.MeasureValue(4) & "',QC_R5Value='" & RegMeasure.MeasureValue(5) & "',QC_R6Value='" & RegMeasure.MeasureValue(6) & "',QC_R7Value='" & RegMeasure.MeasureValue(7) & "',QC_R8Value='" & RegMeasure.MeasureValue(8) & "',QC_R9Value='" & RegMeasure.MeasureValue(9) & "',QC_R10Value='" & RegMeasure.MeasureValue(10) & "'"
|
|||
|
|
|||
|
If RegMeasure.PreTestStep = 1 Then
|
|||
|
UpdateSetDataStr = UpdateSetDataStr & ",QC_Date='" & getNowDate() & "',QC_Time='" & getNowTime() & "'"
|
|||
|
End If
|
|||
|
|
|||
|
StrCmd = "update jomtCartridgeTbl set " & UpdateSetDataStr & " where PV_SN ='" & RegTD_VALUE.PV_SN & "';"
|
|||
|
DBCommand(StrCmd)
|
|||
|
Return False
|
|||
|
End If
|
|||
|
Return True
|
|||
|
Catch ex As Exception
|
|||
|
Return True
|
|||
|
End Try
|
|||
|
End Function
|
|||
|
Public Function UploadRegProductIQC() As Boolean
|
|||
|
Dim TmpStrCmd As String
|
|||
|
|
|||
|
Try
|
|||
|
If frmTD_JIG.ShowDetailLog Then frmTD_JIG.cmdDisplay("Enter the 'UploadRegProductIQC' processor")
|
|||
|
|
|||
|
TmpStrCmd = "PV_TDCnt=" & RegMesProduct.PV_TDCnt
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_TotalCnt=" & RegMesProduct.IQC_TotalCnt
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_OkCnt=" & RegMesProduct.IQC_OkCnt
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_NgCnt=" & RegMesProduct.IQC_NgCnt
|
|||
|
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_ProCnt=" & RegMesProduct.IQC_GradeCnt(MODEL_NAME.PRO)
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_LuxCnt=" & RegMesProduct.IQC_GradeCnt(MODEL_NAME.LUX)
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_EyeCnt=" & RegMesProduct.IQC_GradeCnt(MODEL_NAME.EYE)
|
|||
|
|
|||
|
For i = MODEL_NAME.PRO To MODEL_NAME.EYE
|
|||
|
For n = RELAY_NUM.RL1 To RELAY_NUM.RL2
|
|||
|
TmpStrCmd = TmpStrCmd & "," & IQC_GrCapStr(i, n) & "=" & RegMesProduct.IQC_GdCapCnt(i, n)
|
|||
|
Next
|
|||
|
Next
|
|||
|
|
|||
|
StrCmd = "update jomtMESTbl set " & TmpStrCmd & " where MesDate = '" & getNowDate() & "';"
|
|||
|
DBCommand(StrCmd)
|
|||
|
Return False
|
|||
|
|
|||
|
Catch ex As Exception
|
|||
|
Return True
|
|||
|
End Try
|
|||
|
End Function
|
|||
|
Public Sub CalRegProductPD1()
|
|||
|
Dim gCnt, rCnt As Integer
|
|||
|
|
|||
|
Try
|
|||
|
If frmTD_JIG.ShowDetailLog Then frmTD_JIG.cmdDisplay("Enter the 'CalRegProductPD1' processor")
|
|||
|
|
|||
|
RegMesProduct.P1_TotalCnt += CntRegMesPD1.PD1_TotalCnt
|
|||
|
RegMesProduct.P1_OkCnt += CntRegMesPD1.PD1_OKCnt
|
|||
|
RegMesProduct.P1_NgCnt += CntRegMesPD1.PD1_NGCnt
|
|||
|
|
|||
|
For i = MODEL_NAME.PRO To MODEL_NAME.MAX
|
|||
|
RegMesProduct.P1_GradeCnt(i) += CntRegMesPD1.PD1_GradeCnt(i)
|
|||
|
Next
|
|||
|
|
|||
|
RegMesProduct.IQC_TotalCnt -= CntRegMesPD1.PD1_TotalCnt
|
|||
|
|
|||
|
gCnt = frmTD_JIG.GradeToValue(RegMeasure.MeasureGrade)
|
|||
|
For rCnt = 1 To 10
|
|||
|
If RegMeasure.MeasureCapacitor = frmTD_JIG.RELAY_C(rCnt) Then
|
|||
|
Exit For
|
|||
|
End If
|
|||
|
Next
|
|||
|
|
|||
|
RegMesProduct.IQC_GradeCnt(gCnt) -= CntRegMesPD1.PD1_GradeCnt(gCnt)
|
|||
|
RegMesProduct.IQC_GdCapCnt(gCnt, rCnt) -= CntRegMesPD1.PD1_CapCnt(rCnt)
|
|||
|
Catch ex As Exception
|
|||
|
|
|||
|
End Try
|
|||
|
|
|||
|
End Sub
|
|||
|
Public Function UploadRegProductPD1() As Boolean
|
|||
|
Dim TmpStrCmd As String
|
|||
|
|
|||
|
Try
|
|||
|
If frmTD_JIG.ShowDetailLog Then frmTD_JIG.cmdDisplay("Enter the 'UploadRegProductPD1' processor")
|
|||
|
|
|||
|
TmpStrCmd = "IQC_TotalCnt=" & RegMesProduct.IQC_TotalCnt
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_ProCnt=" & RegMesProduct.IQC_GradeCnt(MODEL_NAME.PRO)
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_LuxCnt=" & RegMesProduct.IQC_GradeCnt(MODEL_NAME.LUX)
|
|||
|
TmpStrCmd = TmpStrCmd & ",IQC_EyeCnt=" & RegMesProduct.IQC_GradeCnt(MODEL_NAME.EYE)
|
|||
|
|
|||
|
For i = MODEL_NAME.PRO To MODEL_NAME.EYE
|
|||
|
For n = RELAY_NUM.RL1 To RELAY_NUM.MAX_RELAY_NUM
|
|||
|
TmpStrCmd = TmpStrCmd & "," & IQC_GrCapStr(i, n) & "=" & RegMesProduct.IQC_GdCapCnt(i, n)
|
|||
|
Next
|
|||
|
Next
|
|||
|
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_TotalCnt=" & RegMesProduct.P1_TotalCnt
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_OkCnt=" & RegMesProduct.P1_OkCnt
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_NgCnt=" & RegMesProduct.P1_NgCnt
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_ProCnt=" & RegMesProduct.P1_GradeCnt(MODEL_NAME.PRO)
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_LuxCnt=" & RegMesProduct.P1_GradeCnt(MODEL_NAME.LUX)
|
|||
|
TmpStrCmd = TmpStrCmd & ",P1_EyeCnt=" & RegMesProduct.P1_GradeCnt(MODEL_NAME.EYE)
|
|||
|
|
|||
|
StrCmd = "update jomtMESTbl set " & TmpStrCmd & " where MesDate = '" & getNowDate() & "';"
|
|||
|
DBCommand(StrCmd)
|
|||
|
Return False
|
|||
|
|
|||
|
Catch ex As Exception
|
|||
|
Return True
|
|||
|
End Try
|
|||
|
End Function
|
|||
|
End Module
|