⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmbusinessbankcard.frm

📁 金算盘软件代码
💻 FRM
📖 第 1 页 / 共 2 页
字号:
        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 + -