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

📄 bos_edition.cls

📁 金蝶地磅称重插件
💻 CLS
字号:
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "BOS_Edition"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = True
Attribute VB_Description = "This is BillEvent Interface Class, made by K3BOSPLUGINSWIZAED"
'''''''''''''''''''''''''''''''''''''''''''''''
''结算标准
''建立日期:2005-08-15
''建立人:倪树祥
'''''''''''''''''''''''''''''''''''''''''''''''''
'定义 BillEvent 接口. 必须具有的声明, 以此来获得事件
Private WithEvents m_BillInterface  As BillEvent
Attribute m_BillInterface.VB_VarHelpID = -1
'定义 ListEvents 接口. 必须具有的声明, 以此来获得事件
Private WithEvents m_ListInterface  As ListEvents
Attribute m_ListInterface.VB_VarHelpID = -1
 
Public Sub Show(ByVal oBosInterface As Object)
 
    'BillEvent 接口实现
    '注意: 此方法必须存在, 请勿修改
   'BillEvent 接口实现
    '注意: 此方法必须存在, 请勿修改
    Select Case VBA.TypeName(oBosInterface)
    Case "BillEvent"
        Set m_BillInterface = oBosInterface
    Case "ListEvents"
        Set m_ListInterface = oBosInterface
    End Select
End Sub

Private Sub Class_Terminate()
 
    '释放接口对象
    '注意: 此方法必须存在, 请勿修改
    Set m_BillInterface = Nothing
    Set m_ListInterface = Nothing

End Sub

Private Sub m_BillInterface_beforesave(bCancel As Boolean)
'如果输入了关联结算版本,判断是否存在以及是否已经作废
    Dim sFInvVolume As String
    Dim rsRec As New Recordset
    
    sFInvVolume = Trim(m_BillInterface.GetFieldValue("FInvVolume"))
    If sFInvVolume = "" Then
        bCancel = False
        Exit Sub
    End If
    Set rsRec = m_BillInterface.K3Lib.GetData(" select 1 from t_EP_PB_Edition where FVolume = '" & sFInvVolume & "' and FIsDisused = 0 ")
    
    If rsRec.EOF Then
        MsgBox "输入的关联结算版本不存在或者已经作废!", vbOKOnly + vbCritical, "金蝶提示"
        bCancel = True
        Exit Sub
    End If
End Sub

Private Sub m_BillInterface_MenuBarClick(ByVal BOSTool As K3ClassEvents.BOSTool, Cancel As Boolean)

    Select Case BOSTool.ToolName
    Case "mnuZF"
            '此处添加处理 mnuZF 菜单对象的 Click 事件
       '这里首先判断单据是否已经作废
       'MsgBox m_BillInterface.GetFieldValue("FInteger", , 1)
       If m_BillInterface.GetFieldValue("FIsDisused", , 1) = 1 Then
            MsgBox "当前单据已经作废,不需再执行此操作!", vbOKOnly + vbInformation, "金蝶提示"
            Exit Sub
        Else
             UserID = IIf(m_BillInterface.GetFieldValue("FUser", , 1) = "", 0, m_BillInterface.GetFieldValue("FUser", , 1))
             If UserID > 0 Then
                  m_BillInterface.SetFieldValue "FIsDisused", 1
                  m_BillInterface.K3Lib.UpdateData "update  t_EP_PB_Edition set  FIsDisused = 1 where FID=" & m_BillInterface.CurBillID
                  MsgBox "当前单据已成功作废!", vbInformation + vbOKOnly, "金蝶提示"
                  Exit Sub
             Else
                 m_BillInterface.SetFieldValue "FIsDisused", 0
                 MsgBox "当前单据没有审核或已经作废,不能进行作废操作!", vbOKOnly + vbInformation, "金蝶提示"
                 Exit Sub
            End If
        End If
    Case "mnuFZF"
        If m_BillInterface.GetFieldValue("FIsDisused") <> 1 Then
            MsgBox "当前单据没有作废,不能进行反作废操作!", vbOKOnly + vbInformation, "金蝶提示"
            Exit Sub
        Else
            m_BillInterface.SetFieldValue "FIsDisused", 0
            m_BillInterface.K3Lib.UpdateData "update  t_EP_PB_Edition set  FIsDisused = 0 where FID=" & m_BillInterface.CurBillID
            MsgBox "当前单据已成功进行了反作废操作!", vbOKOnly + vbInformation, "金蝶提示"
         End If
    Case Else
    End Select
    
End Sub

Private Sub m_BillInterface_MenuBarInitialize(ByVal oMenuBar As K3ClassEvents.MenuBar)
 
    Dim oTool   As K3ClassEvents.BOSTool
    Dim oBand   As K3ClassEvents.BOSBand
    Dim oband1, oband2 As K3ClassEvents.BOSBand
'*************** 开始新增 BOS 菜单 ***************
 
    '新增 mnuZF 菜单对象,并设置属性
    Set oTool = oMenuBar.BOSTools.Add("mnuZF")
    With oTool
        .Caption = "作废"
        .ToolTipText = "作废"
        .Description = "作废"
        .ShortcutKey = 3
        .Visible = True
        .Enabled = True
        .BeginGroup = False
        .ToolPicture = App.Path & "\未命名.bmp"
        .SetPicture 0, vbButtonFace
        .Alignment = Enu_TACenterBottom
        .CaptionPosition = Enu_TCPStandard
        
    End With
 
    Set oBand = oMenuBar.BOSBands("BandToolBar")
    oBand.BOSTools.InsertAfter "mnuCaculate", oTool '将菜单对象插入指定工具栏
    Set oband1 = oMenuBar.BOSBands("mnuEdit")
    oband1.BOSTools.InsertAfter "mnubatchfillfield", oTool '将菜单对象插入指定下一级菜单
    '新增 mnuFZF 菜单对象,并设置属性
    Set oTool = oMenuBar.BOSTools.Add("mnuFZF")
    With oTool
        .Caption = "恢复"
        .ToolTipText = "恢复"
        .Description = "恢复"
        .ShortcutKey = 2
        .Visible = True
        .Enabled = True
        .BeginGroup = False
        .ToolPicture = App.Path & "\未命名.bmp"
        .SetPicture 0, vbButtonFace
    End With
 
    Set oBand = oMenuBar.BOSBands("BandToolBar")
    oBand.BOSTools.InsertAfter "mnuCaculate", oTool '将菜单对象插入指定工具栏
    Set oband2 = oMenuBar.BOSBands("mnuEdit")
    oband2.BOSTools.InsertAfter "mnuZF", oTool
'
'*************** 结束新增 BOS 菜单 ***************
 

End Sub




Private Sub m_ListInterface_AfterSelList(ByVal RsId As ADODB.Recordset, VectList As KFO.IVector)

   '得到当前行的内码和分录内码,在下游单据中使用
   lngFID = m_ListInterface.GetCurrentSelRowInfo().GetValue("FID")
   lngFEntryID = m_ListInterface.GetCurrentSelRowInfo().GetValue("FEntryID")
End Sub

Private Sub m_ListInterface_MenuBarClick(ByVal BOSTool As K3ClassEvents.BOSTool, Cancel As Boolean)

 Select Case BOSTool.ToolName
    Case "mnuZF"
       If m_ListInterface.GetCurrentSelRowInfo("FIsDisused") = 1 Then
            MsgBox "这张单据已经作废,不需再执行此操作!", vbOKOnly + vbInformation, "金蝶提示"
            Exit Sub
        Else
             UserID = IIf(m_ListInterface.GetCurrentSelRowInfo("FUser") = "", 0, m_ListInterface.GetCurrentSelRowInfo("FUser"))
             If UserID > 0 And m_ListInterface.GetCurrentSelRowInfo("FIsDisused") <> 1 Then
                  m_ListInterface.K3Lib.UpdateData "update  t_EP_PB_Edition set  FIsDisused = 1 where FID=" & m_ListInterface.GetCurrentSelRowInfo("FID")
                  MsgBox "当前单据已成功作废!", vbInformation + vbOKOnly, "金蝶提示"
                  Exit Sub
             Else
                 MsgBox "当前单据还没有审核或已经作废,不能进行作废操作!", vbOKOnly + vbInformation, "金蝶提示"
                 Exit Sub
            End If
        End If
    Case "mnuFZF"
        If m_ListInterface.GetCurrentSelRowInfo("FIsDisused") <> 1 Then
            MsgBox "当前单据没有作废,不能执行反作废操作!", vbOKOnly + vbInformation, "金蝶提示"
            Exit Sub
        Else
            m_ListInterface.K3Lib.UpdateData "update  t_EP_PB_Edition set  FIsDisused = 0 where FID=" & m_BillInterface.CurBillID
            MsgBox "当前单据已成功进行了反作废操作!", vbOKOnly + vbInformation, "金蝶提示"
         End If
    Case Else
    End Select
    
End Sub

Private Sub m_ListInterface_MenuBarInitialize(ByVal oMenuBar As K3ClassEvents.MenuBar)
 
    If m_ListInterface.List.ShowMode = 2 Then Exit Sub '如果是选单,则不创建新的菜单对象
    
    Dim oTool   As K3ClassEvents.BOSTool
    Dim oBand   As K3ClassEvents.BOSBand
 
'*************** 开始新增 BOS 菜单 ***************
 
    '新增 mnuZF 菜单对象,并设置属性
    Set oTool = oMenuBar.BOSTools.Add("mnuZF")
    With oTool
        .Caption = "作废"
        .ToolTipText = "作废"
        .Description = "作废"
        .ShortcutKey = 0
        .Visible = True
        .Enabled = True
        .BeginGroup = False
        .ToolPicture = App.Path & "\未命名.bmp"
        .SetPicture 0, vbButtonFace
    End With
 
    Set oBand = oMenuBar.BOSBands("BandToolBar")
    oBand.BOSTools.InsertBefore "mnuCaculate", oTool    '将菜单对象插入指定工具栏
 
    '新增 mnuFZF 菜单对象,并设置属性
    Set oTool = oMenuBar.BOSTools.Add("mnuFZF")
    With oTool
        .Caption = "恢复"
        .ToolTipText = "恢复"
        .Description = "恢复"
        .ShortcutKey = 0
        .Visible = True
        .Enabled = True
        .BeginGroup = False
        .ToolPicture = App.Path & "\未命名.bmp"
        .SetPicture 0, vbButtonFace
    End With
 
    Set oBand = oMenuBar.BOSBands("BandToolBar")
    oBand.BOSTools.InsertAfter "mnuCaculate", oTool '将菜单对象插入指定工具栏
 
 
'*************** 结束新增 BOS 菜单 ***************
 

End Sub


⌨️ 快捷键说明

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