Toshiba_Kanban_Issuance/Mounting Sequence/Forms/partsForm.vb

299 lines
8.3 KiB
VB.net

Imports System
Imports System.Data
Imports System.Data.SqlClient
Imports System.IO
Imports System.Text
Public Class partsForm
Private cnstr = mainForm.cnstr
Private conn As New SqlConnection(cnstr)
Private myQuery As String = String.Empty
Private myCommand As SqlCommand
Private adapter As SqlDataAdapter = New SqlDataAdapter()
Private ds As New DataSet("KParts")
Private i, limit As Integer
Private oldPartNum As String = String.Empty
Private addMode, editMode As Integer
Private Sub parts_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Me.MdiParent = mainForm
Control.CheckForIllegalCrossThreadCalls = False
Me.Top = 0
Me.Left = 0
fillDataSet()
disableControls()
moveFirst()
addMode = 0
editMode = 0
btn_find.Visible = False
End Sub
Private Sub enableControls()
txtPartno.Enabled = True
txtDesc.Enabled = True
End Sub
Private Sub disableControls()
txtPartno.Enabled = False
txtDesc.Enabled = False
End Sub
Private Sub clear()
txtPartno.Text = String.Empty
txtDesc.Text = String.Empty
End Sub
Public Sub toNormalMode()
ts_new.Enabled = True
ts_edit.Enabled = True
ts_delete.Enabled = True
ts_find.Enabled = True
ts_revert.Enabled = False
ts_save.Enabled = False
disableControls()
End Sub
Public Sub toEditMode()
ts_new.Enabled = False
ts_edit.Enabled = False
ts_delete.Enabled = False
ts_find.Enabled = False
ts_revert.Enabled = True
ts_save.Enabled = True
enableControls()
End Sub
Public Sub toAddMode()
ts_new.Enabled = False
ts_edit.Enabled = False
ts_delete.Enabled = False
ts_find.Enabled = False
ts_revert.Enabled = True
ts_save.Enabled = True
enableControls()
End Sub
Public Sub toSearchMode()
ts_new.Enabled = False
ts_edit.Enabled = False
ts_delete.Enabled = False
ts_find.Enabled = True
ts_revert.Enabled = False
ts_save.Enabled = False
End Sub
Private Sub fillDataSet()
Dim conn As New SqlConnection(cnstr)
myQuery = "SELECT * FROM KParts ORDER BY kptpartnum"
myCommand = New SqlCommand(myQuery, conn)
Try
conn.Open()
adapter.SelectCommand = myCommand
ds.Clear()
adapter.Fill(ds)
i = 0
limit = ds.Tables(0).Rows.Count - 1
Catch ex As Exception
MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error)
Finally
conn.Close()
conn.Dispose()
End Try
End Sub
Private Sub trace(ByVal partno As String)
Dim j As Integer = 0
For j = 0 To ds.Tables(0).Rows.Count - 1
If Trim(ds.Tables(0).Rows(j).Item("kptpartnum")) = partno Then
txtPartno.Text = ds.Tables(0).Rows(j).Item("kptpartnum")
txtDesc.Text = ds.Tables(0).Rows(j).Item("kptdescription")
i = j
Exit For
End If
Next
End Sub
Public Sub moveFirst()
If ds.Tables(0).Rows.Count <> 0 And limit > -1 Then
i = 0
txtPartno.Text = ds.Tables(0).Rows(i).Item("kptpartnum")
oldPartNum = ds.Tables(0).Rows(i).Item("kptpartnum")
txtDesc.Text = ds.Tables(0).Rows(i).Item("kptdescription")
Else
clear()
End If
End Sub
Public Sub moveNext()
If i < limit And limit > -1 Then
i = i + 1
txtPartno.Text = ds.Tables(0).Rows(i).Item("kptpartnum")
oldPartNum = ds.Tables(0).Rows(i).Item("kptpartnum")
txtDesc.Text = ds.Tables(0).Rows(i).Item("kptdescription")
End If
End Sub
Public Sub movePrevious()
If i <> 0 And limit > -1 Then
i = i - 1
txtPartno.Text = ds.Tables(0).Rows(i).Item("kptpartnum")
oldPartNum = ds.Tables(0).Rows(i).Item("kptpartnum")
txtDesc.Text = ds.Tables(0).Rows(i).Item("kptdescription")
End If
End Sub
Public Sub moveLast()
If limit > -1 Then
i = limit
txtPartno.Text = ds.Tables(0).Rows(i).Item("kptpartnum")
oldPartNum = ds.Tables(0).Rows(i).Item("kptpartnum")
txtDesc.Text = ds.Tables(0).Rows(i).Item("kptdescription")
Else
clear()
End If
End Sub
Public Sub add()
clear()
addMode = 1
editMode = 0
toAddMode()
End Sub
Public Sub edit()
oldPartNum = txtPartno.Text
editMode = 1
addMode = 0
toEditMode()
End Sub
Public Sub save()
Dim parts As New Parts(txtPartno.Text)
If addMode Or editMode Then
If addMode Then
parts.add(txtPartno.Text, txtDesc.Text)
ElseIf editMode Then
parts.edit(txtPartno.Text, txtDesc.Text)
End If
fillDataSet()
If ds.Tables(0).Rows.Count <> 0 Then
oldPartNum = txtPartno.Text
trace(oldPartNum)
End If
disableControls()
addMode = 0
editMode = 0
toNormalMode()
End If
End Sub
Public Sub delete()
If txtPartno.Text <> "" Then
If MessageBox.Show("Are you sure you want to delete?", "System User", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes And txtPartno.Text <> "" Then
Dim parts As New Parts(txtPartno.Text)
parts.delete(txtPartno.Text)
fillDataSet()
moveFirst()
End If
End If
End Sub
Public Sub revert()
If (editMode Or addMode) Then
disableControls()
clear()
If oldPartNum <> "" Then
retrieve(oldPartNum)
End If
toNormalMode()
End If
End Sub
Public Sub find()
txtPartno.Enabled = True
txtPartno.Text = String.Empty
txtDesc.Text = String.Empty
btn_find.Visible = True
toSearchMode()
End Sub
Private Sub retrieve(ByVal partnum As String)
fillDataSet()
trace(partnum)
txtPartno.Enabled = False
btn_find.Visible = False
toNormalMode()
End Sub
Private Sub ts_new_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ts_new.Click
add()
End Sub
Private Sub ts_edit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ts_edit.Click
edit()
End Sub
Private Sub ts_delete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ts_delete.Click
delete()
End Sub
Private Sub ts_find_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ts_find.Click
find()
End Sub
Private Sub ts_save_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ts_save.Click
save()
End Sub
Private Sub ts_revert_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ts_revert.Click
revert()
End Sub
Private Sub btn_find_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_find.Click
oldPartNum = txtPartno.Text
retrieve(oldPartNum)
End Sub
Private Sub txtUsername_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs)
If e.KeyCode = Keys.Enter Then
oldPartNum = txtPartno.Text
retrieve(oldPartNum)
End If
End Sub
Private Sub ts_close_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
Me.Close()
End Sub
Private Sub partsForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.MdiParent = mainForm
Control.CheckForIllegalCrossThreadCalls = False
Me.Top = 0
Me.Left = 0
fillDataSet()
disableControls()
moveFirst()
addMode = 0
editMode = 0
btn_find.Visible = False
End Sub
End Class