📄 +
字号:
'----解除锁定
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 + -