?? frmdh1.frm
字號:
Case 4
sMeg = "數量"
Case 5
sMeg = "訂貨單價"
Case 6
sMeg = "折扣比例"
Case 7
sMeg = "總金額"
End Select
sMeg = sMeg & "不能為空!"
MsgBox sMeg, vbOKOnly + vbExclamation, "警告"
txtItem(intCount).SetFocus
Exit Sub
End If
Next intCount
For intCount = 0 To 2
If Trim(Combo1(intCount) & " ") = "" Then
Select Case intCount
Case 0
sMeg = "業務員"
Case 1
sMeg = "供應商名稱"
Case 2
sMeg = "產品名稱"
End Select
sMeg = sMeg & "不能為空!"
MsgBox sMeg, vbOKOnly + vbExclamation, "警告"
Combo1(intCount).SetFocus
Exit Sub
End If
Next intCount
For intCount = 4 To 7
If Not IsNumeric(Trim(txtItem(intCount))) Then
sMeg = "請輸入數字!"
MsgBox sMeg, vbOKOnly + vbExclamation, "警告"
txtItem(intCount).SetFocus
Exit Sub
End If
Next intCount
'添加判斷是否有相同的ID記錄
If gintDHmode = 1 Then
txtSQL = "select * from dh where dh_no ='" & Trim(txtItem(1)) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If mrc.EOF = False Then
MsgBox "已經存在此訂單編號的記錄!", vbOKOnly + vbExclamation, "警告"
txtItem(1).SetFocus
Exit Sub
End If
mrc.Close
End If
'先刪除已有記錄
txtSQL = "delete from dh where dh_no ='" & Trim(txtItem(1)) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
'再加入新記錄
txtSQL = "execute dh_setup '"
txtSQL = txtSQL & Trim(txtItem(0)) & "','"
txtSQL = txtSQL & Trim(Combo1(0).ItemData(Combo1(0).ListIndex)) & "','"
For intCount = 1 To 3
txtSQL = txtSQL & Trim(txtItem(intCount)) & "','"
Next intCount
For intCount = 4 To 7
txtSQL = txtSQL & Trim(txtItem(intCount)) & "','"
Next intCount
txtSQL = txtSQL & Trim(txtItem(8)) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
If gintDHmode = 1 Then
MsgBox "添加記錄成功!", vbOKOnly + vbExclamation, "添加記錄"
For intCount = 0 To 8
txtItem(intCount) = ""
Next intCount
For intCount = 0 To 2
Combo1(intCount).ListIndex = 0
Next intCount
txtItem(0) = Format(Now, "yyyy-mm-dd")
mblChange = False
Unload frmdh
frmdh.txtSQL = "select dh_no,in_date,ywman,gfdm,wzdm,sl,in_danj,i_zk,i_zke,bz from dh"
frmdh.Show
ElseIf gintDHmode = 2 Then
Unload Me
Unload frmdh
frmdh.txtSQL = "select dh_no,in_date,ywman,gfdm,wzdm,sl,in_danj,i_zk,i_zke,bz from dh"
frmdh.Show
End If
End Sub
Private Sub Combo1_Change(Index As Integer)
mblChange = True
End Sub
Private Sub Combo1_Click(Index As Integer)
Dim mrcc As ADODB.Recordset
Dim mrcd As ADODB.Recordset
Dim MsgText As String
If Index = 1 Then
txtSQL = "select dm from dm_gf where mc = '" & Trim(Combo1(1)) & "'"
Set mrcc = ExecuteSQL(txtSQL, MsgText)
If Not mrcc.EOF Then
txtItem(2) = mrcc.Fields(0)
End If
mrcc.Close
ElseIf Index = 2 Then
txtSQL = "select dm from dm_wz where mc = '" & Trim(Combo1(2)) & "'"
Set mrcc = ExecuteSQL(txtSQL, MsgText)
If Not mrcc.EOF Then
txtItem(3) = mrcc.Fields(0)
End If
mrcc.Close
End If
End Sub
Private Sub Form_Load()
Dim intCount As Integer
Dim MsgText As String
Dim i As Integer
Dim mrcc As ADODB.Recordset
If gintDHmode = 1 Then
Me.Caption = Me.Caption & "添加"
For i = 0 To 8
txtItem(i).Text = ""
Next i
For i = 0 To 2
Combo1(i).Clear
Next i
ElseIf gintDHmode = 2 Then
Set mrc = ExecuteSQL(txtSQL, MsgText)
If mrc.EOF = False Then
With mrc
txtItem(0) = .Fields(0)
For intCount = 1 To 3
txtItem(intCount) = .Fields(intCount + 1)
Next intCount
For intCount = 4 To 8
txtItem(intCount) = .Fields(intCount + 1)
Next intCount
End With
txtItem(0).Enabled = False
End If
Me.Caption = Me.Caption & "修改"
End If
For i = 0 To 2
Combo1(i).Clear
Next i
txtSQL = "select dm,mc from dm_ywy"
Set mrcc = ExecuteSQL(txtSQL, MsgText)
If Not mrcc.EOF Then
Do While Not mrcc.EOF
Combo1(0).AddItem mrcc.Fields(1)
Combo1(0).ItemData(Combo1(0).NewIndex) = mrcc.Fields(0)
mrcc.MoveNext
Loop
End If
mrcc.Close
txtItem(0) = Format(Now, "yyyy-mm-dd")
txtItem(0).Enabled = False
txtSQL = "select mc from dm_gf"
Set mrcc = ExecuteSQL(txtSQL, MsgText)
If Not mrcc.EOF Then
Do While Not mrcc.EOF
Combo1(1).AddItem mrcc.Fields(0)
mrcc.MoveNext
Loop
End If
mrcc.Close
txtSQL = "select mc from dm_wz"
Set mrcc = ExecuteSQL(txtSQL, MsgText)
If Not mrcc.EOF Then
Do While Not mrcc.EOF
Combo1(2).AddItem mrcc.Fields(0)
mrcc.MoveNext
Loop
End If
mrcc.Close
mblChange = False
End Sub
Private Sub Form_Unload(Cancel As Integer)
gintDHmode = 0
End Sub
Private Sub txtItem_Change(Index As Integer)
Dim intCount As Integer
'用于計算工資
Dim dblTotal As Double
'有變化設置gblchange
mblChange = True
If (Index >= 4 And Index <= 6) Then
dblTotal = 0
If Trim(txtItem(4)) <> "" And Trim(txtItem(5)) <> "" And Trim(txtItem(6)) <> "" Then
dblTotal = CDbl(txtItem(4)) * CDbl(txtItem(5)) * CDbl(txtItem(6)) / 100
End If
txtItem(7) = Format(dblTotal, "#0.00")
End If
Exit Sub
End Sub
Private Sub txtItem_GotFocus(Index As Integer)
txtItem(Index).SelStart = 0
txtItem(Index).SelLength = Len(txtItem(Index))
End Sub
Private Sub txtItem_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
EnterToTab KeyCode
End Sub
Private Sub txtItem_KeyPress(Index As Integer, KeyAscii As Integer)
If Index >= 4 And Index <= 6 Then
'MsgBox KeyCode
'對鍵入字符進行控制
'txtQuantity(Index).Locked = False
'小數點只允許輸入一次
If KeyAscii = 190 Then
If InStr(Trim(txtItem(Index)), ".") = 0 Then
If Len(Trim(txtItem(Index))) > 0 Then
txtItem(Index).Locked = False
Else
txtItem(Index).Locked = True
End If
Else
txtItem(Index).Locked = True
End If
Exit Sub
End If
'非數字不能輸入
If KeyAscii > 57 Or KeyAscii < 48 Then
txtItem(Index).Locked = True
Else
txtItem(Index).Locked = False
End If
'允許Backspace
If KeyAscii = 8 Then
txtItem(Index).Locked = False
End If
'Delete鍵
If KeyAscii = 46 Then
txtItem(Index).Locked = False
End If
End If
End Sub
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -