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

📄 +

📁 VB财务软件系统下载源代码提供自由下载使用学习
💻
📖 第 1 页 / 共 5 页
字号:
    
    '----解除锁定
    If m_EO.State = U8FDEso.esoEdit Then
        objLockMgr.UnlockIt g_sDataSourceName, m_EO.OID
    End If
    
    m_EO.State = U8FDEso.esoInstance
    
    '----释放任务
    
    '刷新参照表单数据
    For i = 0 To Forms.count - 1
        If Forms(i).Name = "frmRefCtl" Then
            frmRefCtl.FDRefCtrl.Refresh
            Exit For
        End If
    Next
    
    '----设置界面
    SetUI
    
    Save = True
    
    Exit Function
lblHandle:
    MsgBox Err.Description, vbInformation, g_conSysName
End Function

Private Sub Delete()
    Dim objIRateBI   As New U8FDBso.clsIRateBI
    
    If MsgBox("真的要删除当前记录吗?", vbQuestion + vbYesNo) = vbNo Then Exit Sub
    
    On Error GoTo lblHandle
    '----删除当前记录
    If objIRateBI.Delete(g_sDataSourceName, m_EO, m_conBIStyle) Then
        Dim NodeTemp As String
        NodeTemp = Me.treStyle.Nodes("K" & m_OID.id).Parent.key
        Me.treStyle.Nodes.Remove Me.treStyle.Nodes("K" & m_OID.id).Parent.key
            
        Dim objOID As New U8FDEso.OIDObject
        
        '----移动到下一条记录
        If objIRateBI.RecordCount(g_sDataSourceName, EO) > 0 Then
            objOID = mID(NodeTemp, 2)
            Set m_EO = objIRateBI.MoveTo(g_sDataSourceName, U8FDEso.esoNext, m_conBIStyle, objOID)
            m_OID = m_EO.EOS(1)(EO.EOS.EOMetaData.SourceOIDField)
            NodeKey = "K" & m_OID.id
            Set objOID = Nothing
            
            SetUI
            
            Me.treStyle.Nodes("K" & m_OID).Parent.Expanded = True
            Me.treStyle.Nodes("K" & m_OID).Selected = True
        Else
            NodeKey = ""
            m_OID.id = ""
            Set m_EO = objIRateBI.Init(g_sDataSourceName, m_conBIStyle)
            SetUI
        End If
        '----设置界面
        'SetUI
    Else
        MsgBox "删除没有成功!"
    End If
    
    Set objIRateBI = Nothing
    
    Exit Sub
lblHandle:
    MsgBox Err.Description, vbInformation, g_conSysName
End Sub

Private Sub DeleteCol()
    Dim objIRateBI   As New U8FDBso.clsIRateBI
    Dim objLockMgr   As New U8FDMgr.LockManager
    
    If Me.treStyle.SelectedItem.Parent.children = 1 Then
        MsgBox "至少保留一个时间!", vbOKOnly + vbInformation
        Exit Sub
    End If
    
    If MsgBox("真的要删除当前记录吗?", vbQuestion + vbYesNo) = vbNo Then Exit Sub
    
    On Error GoTo lblHandle
    '----删除当前记录
    '----锁定实体对象
    objLockMgr.LockIt g_sDataSourceName, m_EO.OID, zjLogInfo.cUserName, ComputerName
    
    '先验证这个时间是否可以删除,然后删除eo的子表集
    m_EO.EOS.Delete "K" & m_OID.id
    If objIRateBI.Save(g_sDataSourceName, m_EO, m_conBIStyle) Then
        '----解除锁定
        objLockMgr.UnlockIt g_sDataSourceName, m_EO.OID
        
        Dim NodeTemp As String
        If NodeKey = Me.treStyle.Nodes(NodeKey).LastSibling.key Then
            NodeTemp = Me.treStyle.Nodes(NodeKey).Previous.key
        Else
            NodeTemp = Me.treStyle.Nodes(NodeKey).Next.key
        End If
        
        Me.treStyle.Nodes.Remove NodeKey
        NodeKey = NodeTemp
        Me.treStyle.Nodes(NodeKey).Selected = True
        
        '----移动到下一条记录
        m_OID.id = mID(NodeKey, 2)
        '----设置界面
        SetUI
    Else
        MsgBox "删除没有成功!"
    End If
    
    Set objLockMgr = Nothing
    Set objIRateBI = Nothing
    
    Exit Sub
lblHandle:
    MsgBox Err.Description, vbInformation, g_conSysName
End Sub

Public Sub CancelDo()
    Dim objIRateBI   As New U8FDBso.clsIRateBI
    Dim objLockMgr   As New U8FDMgr.LockManager
    
    If Not m_EditStatus Then
        If MsgBox("真的要取消当前操作吗?", vbQuestion + vbYesNo, g_conSysName) = vbNo Then Exit Sub
    End If
    
    On Error GoTo lblHandle
    '----State 若为 esoEdit, 解锁
    If m_EO.State = U8FDEso.esoEdit Then
        objLockMgr.UnlockIt g_sDataSourceName, m_EO.OID
    End If
    
    '----恢复原实体对象
    If Not m_OldEO Is Nothing Then
        Set m_EO = m_OldEO.Clone(U8FDEso.esoStructureAndData)
    Else
        Set m_EO = objIRateBI.MoveTo(g_sDataSourceName, U8FDEso.esoLast, m_conBIStyle)
    End If
    
    '----设置界面
        SetUI
    
    Exit Sub
lblHandle:
    MsgBox Err.Description, vbInformation, g_conSysName
End Sub

Public Sub View(Optional OID As U8FDEso.OIDObject)
    Dim objIRateBI    As New U8FDBso.clsIRateBI
    On Error GoTo lblHandle
    
    If Not OID Is Nothing Then
        Set m_EO = objIRateBI.MoveTo(g_sDataSourceName, U8FDEso.esoCurrent, m_conBIStyle, OID)
    Else
        Set m_EO = objIRateBI.MoveTo(g_sDataSourceName, U8FDEso.esoFirst, m_conBIStyle)
    End If
    
    SetUI
    
    Exit Sub
lblHandle:
    MsgBox Err.Description, vbInformation, g_conSysName
End Sub

Public Sub RefreshUI(Optional Range As Integer = 0)
    Dim objIRateBI   As New U8FDBso.clsIRateBI
    Dim objEO        As U8FDEso.EntityObject
    Dim objOID       As New U8FDEso.OIDObject
    Dim NodeFlagP    As Boolean '父节点
    Dim NodeFlagC    As Boolean '子节点
    Dim NodeTemp     As String
    Dim MsgStr       As String
    
    If Me.treStyle.Nodes.count > 0 Then
        NodeTemp = Me.treStyle.Nodes("K" & m_OID.id).Parent.key
    End If
    
    MsgStr = Me.txtIRateCode.Text
    If mID(NodeKey, 2, 2) = m_conChildBIStyle Then MsgStr = MsgStr & "(" & Me.txtAdjustDate.Text & ")"
    Me.treStyle.Nodes.clear
    
    Me.treStyle.LineStyle = tvwRootLines
    Me.treStyle.Style = tvwTreelinesPlusMinusPictureText
    Me.treStyle.LabelEdit = tvwManual
    Me.treStyle.Indentation = 300
    
    Dim i As Integer, j As Integer, RecordCount As Long
    
    Set objEO = objIRateBI.MoveTo(g_sDataSourceName, U8FDEso.esoFirst, m_conBIStyle)
    RecordCount = objIRateBI.RecordCount(g_sDataSourceName, objEO)
    
    For i = 1 To RecordCount
        If objEO.EOS.count > 0 Then
            Me.treStyle.Nodes.Add , , "K" & objEO("irate_id"), objEO("irate_code")
            For j = 1 To objEO.EOS.count
                Me.treStyle.Nodes.Add "K" & objEO.EOS(j)("irate_id"), tvwChild, "K" & objEO.EOS(j)("irate_b_id"), objEO.EOS(j)("adjust_date")
                If m_OID.id = objEO.EOS(j)("irate_b_id") Then NodeFlagC = True
            Next
            If NodeTemp = "K" & objEO("irate_id") Then NodeFlagP = True
            objOID = objEO("irate_id")
            Set objEO = objIRateBI.MoveTo(g_sDataSourceName, U8FDEso.esoNext, m_conBIStyle, objOID)
        Else
            objIRateBI.Delete g_sDataSourceName, objEO
        End If
    Next
    
    For i = 1 To treStyle.Nodes.count
        If treStyle.Nodes(i).children > 0 Then
            treStyle.Nodes(i).Image = 1
        Else
            treStyle.Nodes(i).Image = 3
        End If
    Next
    
    If NodeFlagC And mID(NodeKey, 2, 2) = m_conChildBIStyle Then
        Me.treStyle.Nodes(NodeKey).Selected = True
        Me.treStyle.Nodes(NodeKey).Parent.Expanded = True
        Me.treStyle.Nodes(NodeKey).Parent.Image = 2
        objOID = mID(Me.treStyle.Nodes(NodeKey).Parent.key, 2)
        Set EO = objIRateBI.MoveTo(g_sDataSourceName, U8FDEso.esoCurrent, m_conBIStyle, objOID)
        m_OID.id = mID(NodeKey, 2)
    ElseIf NodeFlagP And mID(NodeKey, 2, 2) = m_conBIStyle Then
        Me.treStyle.Nodes(NodeTemp).Selected = True
        Me.treStyle.Nodes(NodeTemp).Expanded = True
        Me.treStyle.Nodes(NodeTemp).Image = 2
        objOID = mID(NodeTemp, 2)
        Set EO = objIRateBI.MoveTo(g_sDataSourceName, U8FDEso.esoCurrent, m_conBIStyle, objOID)
        m_OID.id = mID(Me.treStyle.Nodes(NodeTemp).child.key, 2)
    Else
        If Len(MsgStr) > 0 Then
            MsgBox "【" & MsgStr & "】被删除了!"
        End If
        If Me.treStyle.Nodes.count = 0 Then
            NodeKey = "": m_OID.id = ""
            Set EO = objIRateBI.Init(g_sDataSourceName, m_conBIStyle)
        Else
            If objIRateBI.RecordCount(g_sDataSourceName, EO) > 0 Then
                objOID = mID(NodeTemp, 2)
                Set m_EO = objIRateBI.MoveTo(g_sDataSourceName, U8FDEso.esoNext, m_conBIStyle, objOID)
                m_OID = m_EO.EOS(1)(EO.EOS.EOMetaData.SourceOIDField)
                NodeKey = "k" & m_OID.id
                Set objOID = Nothing
                
                SetUI
                
                Me.treStyle.Nodes("K" & m_OID).Parent.Expanded = True
                Me.treStyle.Nodes("K" & m_OID).Selected = True
            End If
        End If
    End If
    
    Set objIRateBI = Nothing
    Set objOID = Nothing
    Set objEO = Nothing
    
    SetUI
End Sub

Private Sub SetUI()
    Dim objIRateBI  As New U8FDBso.clsIRateBI
    Dim objOID      As New U8FDEso.OIDObject
    Dim objEO       As U8FDEso.EntityObject
    
    '----Set Status
    Select Case EO.State
        Case U8FDEso.esoAddNew
            Me.tlbAction.Buttons("AddNew").Enabled = False
            Me.tlbAction.Buttons("Edit").Enabled = False
            Me.tlbAction.Buttons("Delete").Enabled = False
            Me.tlbAction.Buttons("Save").Enabled = True
            Me.tlbAction.Buttons("Cancel").Enabled = True
            Me.tlbAction.Buttons("Refresh").Enabled = False
            Me.tlbAction.Buttons("AddCol").Enabled = False
            Me.tlbAction.Buttons("DeleteCol").Enabled = False
            Me.picView.Enabled = True
            Me.txtIRateCode.Enabled = True
            Me.ufgIRate.Visible = False
        Case U8FDEso.esoEdit
            Me.tlbAction.Buttons("AddNew").Enabled = False
            Me.tlbAction.Buttons("Edit").Enabled = False
            Me.tlbAction.Buttons("Delete").Enabled = False
            Me.tlbAction.Buttons("Save").Enabled = True
            Me.tlbAction.Buttons("Cancel").Enabled = True
            Me.tlbAction.Buttons("Refresh").Enabled = False
            Me.tlbAction.Buttons("AddCol").Enabled = False
            Me.tlbAction.Buttons("DeleteCol").Enabled = False
            Me.picView.Enabled = True
            If m_EditCol = 0 Then '编辑
                If True Then '未使用
                    Me.txtIRateCode.Enabled = True
                Else
                    Me.txtIRateCode.Enabled = False
                End If
            ElseIf m_EditCol = 1 Then '增列
                Me.txtIRateCode.Enabled = False
            End If
        Case U8FDEso.esoInstance
            Me.tlbAction.Buttons("AddNew").Enabled = True
            If mID(NodeKey, 2) = m_OID.id Then
                Me.tlbAction.Buttons("Edit").Enabled = True
            Else
                Me.tlbAction.Buttons("Edit").Enabled = False
            End If
            If mID(NodeKey, 2, 2) = m_conBIStyle Then
                objOID.id = mID(NodeKey, 2)
            Else
                objOID.id = mID(Me.treStyle.Nodes(NodeKey).Parent.key, 2)
            End If
            If objIRateBI.IsUsed(g_sDataSourceName, objOID.id) Then
                Me.tlbAction.Buttons("Delete").Enabled = False
            Else
                Me.tlbAction.Buttons("Delete").Enabled = True
            End If
            Me.tlbAction.Buttons("Save").Enabled = False
            Me.tlbAction.Buttons("Cancel").Enabled = False
            Me.tlbAction.Buttons("Refresh").Enabled = True
            Me.tlbAction.Buttons("AddCol").Enabled = True
            If mID(NodeKey, 2) = m_OID.id Then
                Me.tlbAction.Buttons("DeleteCol").Enabled = True
            Else
                Me.tlbAction.Buttons("DeleteCol").Enabled = False
            End If
            Me.picView.Enabled = False
            Me.txtIRateCode.Enabled = False
        Case U8FDEso.esoInitialized
            Me.tlbAction.Buttons("AddNew").Enabled = True
            Me.tlbAction.Buttons("Edit").Enabled = False

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -