Imports System.Threading Public Class invForm Private projectForm As String = " -Invoice" Private startBol As Boolean = False Public successSwitch As Boolean = False Const limitLength As Int16 = 7 Private Sub invForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load Me.Text = mainForm.projectName & mainForm.projectVer & projectForm startBol = False successSwitch = False formLoad() End Sub Private Sub formLoad() txbInv.BackColor = Color.LemonChiffon txbInv.Text = Nothing If mainForm.chbUseBarcode.Checked = True Then Me.Size = New Size(825, 315) btnInvOK.Visible = False Else Me.Size = New Size(825, 390) btnInvOK.Visible = True End If End Sub Private Sub SetInputCnt() mainForm.InputCnt = mainForm.InputCntVal invTimer.Enabled = True End Sub Private Sub invTimer_Tick(sender As Object, e As EventArgs) Handles invTimer.Tick If mainForm.InputCnt Then mainForm.InputCnt -= 1 Else invTimer.Enabled = False If mainForm.chbUseBarcode.Checked Then btnInvOK_Click(sender, e) Else txbInv.Focus() txbInv.Refresh() End If End If End Sub Private Sub txbProdSN_TextChanged(sender As Object, e As EventArgs) Handles txbInv.TextChanged Dim tmpStr As String If startBol = True Then If mainForm.InputCnt = 0 And mainForm.chbUseBarcode.Checked = True Then tmpStr = txbInv.Text If (Len(tmpStr) > 1) Then tmpStr = Mid(tmpStr, Len(tmpStr), 1) txbInv.Clear() txbInv.AppendText(tmpStr) End If SetInputCnt() End If Else startBol = True End If End Sub Private Sub btnInvOK_Click(sender As Object, e As EventArgs) Handles btnInvOK.Click If txbInv.Text.Replace(" ", "") = "" Then mainForm.errorGen("송장 번호를 입력해 주십시오.") Exit Sub End If If txbInv.Text.Length < limitLength Then mainForm.errorGen("올바른 송장 번호가 아닙니다. 번호를 확인하여 주십시오.") Exit Sub End If If InStr(txbInv.Text, mainForm.codeState(mainForm.codeStateList.ERP)) > 0 Or InStr(txbInv.Text, mainForm.codeState(mainForm.codeStateList.MES)) Then mainForm.errorGen("전표번호를 입력할 수 없습니다. 번호를 확인하여 주십시오.") Exit Sub End If If InStr(mainForm.codeState(mainForm.codeStateList.ERP), txbInv.Text) > 0 Or InStr(mainForm.codeState(mainForm.codeStateList.MES), txbInv.Text) Then mainForm.errorGen("전표 번호는 입력할 수 없습니다. 번호를 확인하여 주십시오.") Exit Sub End If For i = 0 To mainForm.prodArray.GetLength(1) - 1 If InStr(mainForm.prodArray(mainForm.itemCode.serialNum, i), txbInv.Text) > 0 Then mainForm.errorGen("시리얼 번호는 입력할 수 없습니다. 번호를 확인하여 주십시오.") Exit Sub End If Next txbInv.BackColor = Color.Green weightForm.delay(1000) mainForm.invoiceCode = txbInv.Text successSwitch = True Me.Close() End Sub Private Sub failFunc(txtError As String) txbInv.BackColor = Color.Red txbInv.Text = txtError End Sub End Class