📄 frmbusinessbankcard.frm
字号:
Unload Me
End If
Show intModal
End Sub
Private Function InitCard(Optional strName As String = "") As Boolean
Dim i As Integer
mblnIsInit = True
InitGrid
InitCard = True
If mlngBusinessBankID = 0 Then
txtName(0).Text = Trim(strName)
txtName(1).Text = ""
Else
With msgBank
For i = 1 To .Rows - 1
If .TextMatrix(i, 0) = mlngBusinessBankID Then Exit For
Next i
If i < .Rows Then
.Row = i
msgBank_Click
Else
InitCard = False
Exit Function
End If
End With
End If
' SendKeys "%{J}"
mblnIsInit = False
End Function
'刷新开户银行GRID
Private Sub InitGrid()
Dim strSql As String
strSql = "SELECT lngBusinessBankID,strBankName AS 银行,strAccountNO AS 帐号 " _
& "FROM BusinessBank"
Set Data1.Resultset = gclsBase.BaseDB.OpenResultset(strSql, rdOpenStatic)
If Data1.Resultset.EOF Then
msgBank.Rows = 2
msgBank.RowHeight(1) = 0
msgBank.TextMatrix(1, 0) = 0
msgBank.RowData(1) = -1
End If
msgBank.FixedAlignment(1) = flexAlignCenterCenter
msgBank.FixedAlignment(2) = flexAlignCenterCenter
msgBank.ColWidth(1) = msgBank.width / 3
msgBank.ColWidth(2) = msgBank.width - msgBank.ColWidth(1)
mintRow = 1
mclsGrid.SetupStyle
End Sub
Private Sub cmdOK_Click(index As Integer)
Dim strMess As String
Select Case index
Case 0
If cmdOk(2).Enabled Then
' If mblnBankIsAdd Then
' strMess = "要保存新增的开户银行“" & Trim$(txtName(0).Text) _
' & "” 及帐号 “" & Trim$(txtName(1).Text) & "” 吗?"
' Else
' strMess = "要保存对开户银行“" & Trim$(txtName(0).Text) _
' & "” 及帐号 “" & Trim$(txtName(1).Text) & "” 的修改吗?"
' End If
' If ShowMsg(hwnd, strMess, vbQuestion + vbYesNo, Caption) = vbYes Then
cmdOk(2).Value = True
If Not mblnBankCodeValid Then Exit Sub
' End If
Else
If txtName(0).Text = "" And txtName(1).Text <> "" Then
ShowMsg hwnd, "开户银行编码不能为空.", vbExclamation, Caption
txtName(0).SetFocus
Exit Sub
ElseIf txtName(0).Text <> "" And txtName(1).Text = "" Then
ShowMsg hwnd, "开户银行名称不能为空.", vbExclamation, Caption
txtName(1).SetFocus
Exit Sub
End If
End If
If SaveCard Then Unload Me
Case 1
Unload Me
Case 2
CheckBankCode
If Not mblnBankCodeValid Then
ShowMsg hwnd, "开户银行“" & Trim$(txtName(0).Text) & "” 及帐号 “" & _
Trim$(txtName(1).Text) & "” 已被使用,请重新录入!", vbExclamation + MB_TASKMODAL, Caption
txtName(1).SelStart = 0
txtName(1).SelLength = Len(txtName(1).Text)
txtName(1).SetFocus
Exit Sub
End If
If mblnBankIsAdd Then
mintRow = msgBank.Rows
msgBank.Rows = msgBank.Rows + 1
msgBank.TextMatrix(mintRow, 0) = 0 '新增
Else
msgBank.RowData(mintRow) = -5 '被修改
cmdOk(3).Enabled = False
mblnBankIsAdd = True
End If
mblnIsChanged = True
msgBank.TextMatrix(mintRow, 1) = txtName(0).Text
msgBank.TextMatrix(mintRow, 2) = txtName(1).Text
txtName(0).Text = ""
txtName(1).Text = ""
cmdOk(2).Enabled = False
cmdOk(2).Caption = "新增(&A)"
SendKeys "%{J}"
Case 3
If mintRow = 0 Or msgBank.RowHeight(mintRow) = 0 Then Exit Sub
If ShowMsg(hwnd, "您确实要删除企业开户银行“" & txtName(0).Text _
& "” “" & txtName(1).Text & "”吗?", _
vbQuestion + vbYesNo + vbDefaultButton2, "删除企业开户银行") = vbYes Then
msgBank.RowData(mintRow) = -1 '被删除
msgBank.RowHeight(mintRow) = 0
mblnIsChanged = True
txtName(0).Text = ""
txtName(1).Text = ""
mblnBankIsAdd = True
mblnIsChanged = True
cmdOk(2).Enabled = False
cmdOk(3).Enabled = False
cmdOk(2).Caption = "新增(&A)"
SendKeys "%{J}"
End If
Case 4
txtName(0).Text = ""
txtName(1).Text = ""
mblnBankIsAdd = True
cmdOk(2).Enabled = False
cmdOk(3).Enabled = False
cmdOk(2).Caption = "新增(&A)"
SendKeys "%{J}"
End Select
End Sub
Private Sub Form_Activate()
SetHelpID Me.HelpContextID
End Sub
Private Sub Form_KeyPress(KeyAscii As Integer)
If mblnIsList Then
mblnIsList = False
Exit Sub
End If
If KeyAscii = vbKeyReturn Then
BKKEY Me.ActiveControl.hwnd, vbKeyTab
End If
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyL And Shift = 4 Then
msgBank.Row = msgBank.Rows - 1
End If
End Sub
Private Sub Form_Load()
Dim edtErrReturn As ErrDealType
On Error GoTo ErrHandle
' SetHelpID hwnd, 13003
Utility.LoadFormResPicture Me
Set mclsGrid = New Grid
Set mclsGrid.Grid = msgBank
mblnBankIsAdd = True
Exit Sub
ErrHandle:
edtErrReturn = Errors.ErrorsDeal
If edtErrReturn = edtResume Then
Resume
Else
On Error Resume Next
Unload Me
End If
End Sub
Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Dim intResponse As Integer
If mblnIsChanged And UnloadMode = vbFormControlMenu Then
intResponse = ShowMsg(hwnd, "当前企业开户银行已被修改,是否保存?", _
vbYesNoCancel + vbQuestion, Caption)
If intResponse = vbYes Then
Cancel = Not SaveCard()
ElseIf intResponse = vbCancel Then
Cancel = True
End If
End If
End Sub
Private Sub Form_Unload(Cancel As Integer)
On Error Resume Next
Set mclsGrid = Nothing
mblnIsChanged = False
Utility.UnLoadFormResPicture Me
End Sub
Private Sub msgBank_Click()
If msgBank.Row = 0 Or msgBank.RowHeight(msgBank.Row) = 0 Then Exit Sub
If Not mblnBankIsAdd Then
If cmdOk(2).Enabled Then
If ShowMsg(hwnd, "要保存修改的数据吗?", vbQuestion + vbYesNo + MB_TASKMODAL, _
Caption) = vbYes Then
CheckBankCode
If Not mblnBankCodeValid Then
ShowMsg hwnd, "开户行" & Trim$(txtName(0).Text) & "及帐号" & _
Trim$(txtName(1).Text) & "已被使用,请重新录入!", vbExclamation + MB_TASKMODAL, Caption
SendKeys "{HOME}+{END}"
SendKeys "%{J}"
Exit Sub
End If
msgBank.TextMatrix(mintRow, 1) = txtName(0).Text
msgBank.TextMatrix(mintRow, 2) = txtName(1).Text
msgBank.RowData(mintRow) = -5 '被修改
End If
End If
Else
If cmdOk(2).Enabled Then
If ShowMsg(hwnd, "要保存新增的数据吗?", vbQuestion + vbYesNo + MB_TASKMODAL, Caption) = vbYes Then
CheckBankCode
If Not mblnBankCodeValid Then
ShowMsg hwnd, "开户行" & Trim$(txtName(0).Text) & "及帐号" & _
Trim$(txtName(1).Text) & "已被使用,请重新录入!", vbExclamation + MB_TASKMODAL, Caption
SendKeys "{HOME}+{END}"
SendKeys "%{J}"
Exit Sub
End If
msgBank.Rows = msgBank.Rows + 1
msgBank.TextMatrix(msgBank.Rows - 1, 0) = 0 '新增
msgBank.TextMatrix(msgBank.Rows - 1, 1) = txtName(0).Text
msgBank.TextMatrix(msgBank.Rows - 1, 2) = txtName(1).Text
End If
End If
'cmdOk(2).Picture = LoadPicture(App.Path & "\Edit.Bmp")
End If
txtName(0).Text = Trim(msgBank.TextMatrix(msgBank.Row, 1))
txtName(1).Text = Trim(msgBank.TextMatrix(msgBank.Row, 2))
mblnBankIsAdd = False
cmdOk(3).Enabled = True
cmdOk(2).Enabled = False
cmdOk(2).Caption = "修改(&E)"
mintRow = msgBank.Row
SendKeys "%{J}"
End Sub
Private Function SaveCard() As Boolean
Dim i As Integer ', j As Integer, recBank As rdoResultset
Dim strSql As String
SaveCard = True
If Not mblnIsChanged Then Exit Function
On Error GoTo ErrHandle
gclsBase.BaseWorkSpace.BeginTrans
' j = 0 '最后新增的开户银行
For i = 1 To msgBank.Rows - 1
If msgBank.RowData(i) <> -1 Then
If msgBank.TextMatrix(i, 0) = 0 Then
mlngBusinessBankID = GetNewID("BusinessBank")
strSql = "INSERT INTO BusinessBank(lngBusinessBankID,strBankName,strAccountNO) " _
& "VALUES(" & mlngBusinessBankID & ",'" & msgBank.TextMatrix(i, 1) & "','" _
& msgBank.TextMatrix(i, 2) & "')"
' j = i
ElseIf msgBank.RowData(i) = -5 Then
strSql = "UPDATE BusinessBank SET strBankName='" & msgBank.TextMatrix(i, 1) _
& "',strAccountNO='" & msgBank.TextMatrix(i, 2) & "' WHERE " _
& "lngBusinessBankID=" & msgBank.TextMatrix(i, 0)
Else
strSql = ""
End If
Else
strSql = "DELETE FROM BusinessBank WHERE lngBusinessBankID=" & _
msgBank.TextMatrix(i, 0)
End If
If strSql <> "" Then
If Not gclsBase.ExecSQL(strSql) Then GoTo ErrHandle
End If
Next i
' If j > 0 Then
' strSql = "SELECT * FROM BusinessBank WHERE trim(strBankName)='" _
' & Trim(msgBank.TextMatrix(j, 1)) & "' AND trim(strAccountNO)='" _
' & Trim(msgBank.TextMatrix(j, 2)) & "'"
' Set recBank = gclsBase.BaseDB.OpenResultset(strSql, rdOpenStatic)
' If Not recBank.EOF Then mlngBusinessBankID = recBank!lngBusinessBankID
' recBank.Close
' End If
gclsBase.BaseWorkSpace.CommitTrans
gclsSys.SendMessage Me.hwnd, Message.msgBusinessBank
mblnIsChanged = False
Exit Function
ErrHandle:
SaveCard = False
End Function
Private Sub txtName_Change(index As Integer)
If mblnBankIsAdd Then
If Trim$(txtName(0).Text) = "" Or Trim$(txtName(1).Text) = "" Then
cmdOk(2).Enabled = False
Else
cmdOk(2).Enabled = True
End If
Else
cmdOk(2).Enabled = True
End If
If Trim$(txtName(0).Text) <> "" Or Trim$(txtName(1).Text) <> "" Then
cmdOk(4).Enabled = True
Else
cmdOk(4).Enabled = False
End If
If ContainErrorChar(txtName(index).Text) Then BKKEY txtName(index).hwnd
If Not mblnIsInit Then mblnIsChanged = True
End Sub
Private Sub txtName_KeyPress(index As Integer, KeyAscii As Integer)
If InStr("`~!@#$%^&*=+' "";:,./?|\", Chr(KeyAscii)) > 0 Then KeyAscii = 0
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -