📄 bos_billevent_plugins.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_BillEvent_PlugIns"
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"
Attribute VB_Ext_KEY = "SavedWithClassBuilder6" ,"Yes"
Attribute VB_Ext_KEY = "Top_Level" ,"Yes"
'建议采购单价字段:FEntrySelfP0125
'建议采购含税单价字段:FEntrySelf0126
'定义 BillEvent 接口. 必须具有的声明, 以此来获得事件
Private WithEvents m_BillInterface As BillEvent
Attribute m_BillInterface.VB_VarHelpID = -1
Private mblnSave As Boolean
Public Sub Show(ByVal oBillInterface As Object)
'BillEvent 接口实现
'注意: 此方法必须存在, 请勿修改
Set m_BillInterface = oBillInterface
'注意: 此方法必须存在,请勿修改,引用系统设置的模块名称,版权所有者名称,详见InitForm代码
End Sub
Private Sub Class_Terminate()
'释放接口对象
'注意: 此方法必须存在, 请勿修改
Set m_BillInterface = Nothing
End Sub
Private Sub m_BillInterface_AddNewRow(ByVal Index As Integer, ByVal NewRow As Long)
'TODO: 请在此处添加代码响应事件 AddNewRow
End Sub
Private Sub m_BillInterface_AfterBusinessCheck(ByVal Success As Boolean)
'TODO: 请在此处添加代码响应事件 AfterBusinessCheck
End Sub
Private Sub m_BillInterface_AfterCopyBill()
'TODO: 请在此处添加代码响应事件 AfterCopyBill
End Sub
Private Sub m_BillInterface_AfterDeleteRow(ByVal Index As Long, ByVal lRow As Long)
'TODO: 请在此处添加代码响应事件 AfterDeleteRow
End Sub
Private Sub m_BillInterface_AfterDoAction(ByVal dct As KFO.IDictionary, ByVal dctFld As KFO.IDictionary, ByVal ItemObj As Object, ByVal ActionTypeName As String, ByVal ActionName As String, ByVal Paremeters As String)
'TODO: 请在此处添加代码响应事件 AfterDoAction
End Sub
Private Sub m_BillInterface_AfterFillRow(ByVal lRow As Long, ByVal dctPage As KFO.IDictionary, ByVal dctEntryData As KFO.IDictionary, ByVal dctLink As KFO.IDictionary)
'TODO: 请在此处添加代码响应事件 AfterFillRow
End Sub
Private Sub m_BillInterface_AfterFirstNewBill()
'TODO: 请在此处添加代码响应事件 AfterFirstNewBill
End Sub
Private Sub m_BillInterface_AfterInputBillSetSumData(ByVal dct As KFO.IDictionary, dbResult As Double)
'TODO: 请在此处添加代码响应事件 AfterInputBillSetSumData
End Sub
Private Sub m_BillInterface_AfterLoadBill()
'TODO: 请在此处添加代码响应事件 AfterLoadBill
If m_BillInterface.BillStatus = Enu_BillStatusExt_Modify Then
mblnSave = False
m_BillInterface.MenuBar.BOSTools("mnuEditChange").Enabled = False
End If
If m_BillInterface.BillStatus = Enu_BillStatusExt_View Then
mblnSave = False
m_BillInterface.MenuBar.BOSTools("mnuEditChange").Enabled = False
m_BillInterface.MenuBar.BOSTools("mnuEditChange").Visible = False
End If
End Sub
Private Sub m_BillInterface_AfterLoadBillSetSumData(ByVal dct As KFO.IDictionary, dbResult As Double)
'TODO: 请在此处添加代码响应事件 AfterLoadBillSetSumData
End Sub
Private Sub m_BillInterface_AfterMultiCheck(ByVal lCheckMode As Long, ByVal lCheckMaxLevel As Long, ByVal lBusinessLevel As Long, ByVal lCheckLevel As Long, ByVal lCheckStatus As Long, ByVal Success As Boolean)
'TODO: 请在此处添加代码响应事件 AfterMultiCheck
End Sub
Private Sub m_BillInterface_AfterNewBill()
'TODO: 请在此处添加代码响应事件 AfterNewBill
'当前用户没有保存数据
mblnSave = False
'合同变更按钮失效
m_BillInterface.MenuBar.BOSTools("mnuEditChange").Enabled = False
End Sub
Private Sub m_BillInterface_AfterNewEmptyData()
'TODO: 请在此处添加代码响应事件 AfterNewEmptyData
End Sub
Private Sub m_BillInterface_AfterSave(bCancel As Boolean)
mblnSave = True
m_BillInterface.MenuBar.BOSTools("mnuEditChange").Enabled = True
m_BillInterface.MenuBar.Refresh
End Sub
Private Sub m_BillInterface_AfterSelBill(ByVal lSelBillType As Long)
'TODO: 请在此处添加代码响应事件 AfterSelBill
'选单之后触发此事件
Dim FSourceFID As Long
With m_BillInterface
On Error GoTo ErrHandle
FSourceFID = .GetFieldValue("FID_SRC", 1)
'FSourceFID = .BillEntrys(2).BOSFields("FID_SRC").Value
'If FSourceFID = "" Or FSourceFID = Null Then Exit Sub
'刷新收款计划
Call RefreshData(FSourceFID)
'通知用户需要保存数据
mblnSave = False
'合同变更按钮失效
.MenuBar.BOSTools("mnuEditChange").Enabled = False
.MenuBar.Refresh
Exit Sub
End With
ErrHandle:
Msg Err.Description, vbInformation
End Sub
Private Sub m_BillInterface_AfterSelBillBeforeFillData(ByVal dcData As KFO.IDictionary, ByVal dctLink As KFO.IDictionary)
'TODO: 请在此处添加代码响应事件 AfterSelBillBeforeFillData
End Sub
Private Sub m_BillInterface_AfterUnBusinessCheck(ByVal Success As Boolean)
'TODO: 请在此处添加代码响应事件 AfterUnBusinessCheck
End Sub
Private Sub m_BillInterface_AfterUnMultiCheck(ByVal lCheckMode As Long, ByVal lCheckMaxLevel As Long, ByVal lBusinessLevel As Long, ByVal lCheckLevel As Long, ByVal lCheckStatus As Long, ByVal Success As Boolean)
'TODO: 请在此处添加代码响应事件 AfterUnMultiCheck
End Sub
Private Sub m_BillInterface_BeforeDoAction(ByVal dct As KFO.IDictionary, ByVal dctFld As KFO.IDictionary, ByVal ItemObj As Object, ByVal ActionTypeName As String, ByVal ActionName As String, ByVal Paremeters As String, bCancel As Boolean)
'TODO: 请在此处添加代码响应事件 BeforeDoAction
End Sub
Private Sub m_BillInterface_BeforeLoadBill(bCancel As Boolean)
'TODO: 请在此处添加代码响应事件 BeforeLoadBill
End Sub
Private Sub m_BillInterface_BeforeMultiCheck(ByVal lCheckMode As Long, ByVal lCheckMaxLevel As Long, ByVal lBusinessLevel As Long, lCheckLevel As Long, ByVal lCheckStatus As Long, ByVal lLastCheckFrom As Long, ByVal lLastCheckTo As Long, Cancel As Boolean)
'TODO: 请在此处添加代码响应事件 BeforeMultiCheck
End Sub
Private Sub m_BillInterface_BeforeSave(bCancel As Boolean)
'TODO: 请在此处添加代码响应事件 BeforeSave
Dim lngCount As Long
Dim lngGridRows As Long
Dim lngFID_SRC As Long
Dim LngEntryFID_SRC As Long
With m_BillInterface
'得到产品分录的最大行数
lngGridRows = CLng(.Data("Page3").UBound)
'如果没有产品分录,则不允许保存数据
If lngGridRows <= 0 Then
Msg "请设置产品分录!", vbInformation
bCancel = True
Exit Sub
End If
'检查是否有源单进行关联,如果没有源单进行关联则不允许生成保存单据
For lngCount = lngGridRows To .Data("Page3").LBound Step -1
lngFID_SRC = Val(.GetFieldValue("FID_SRC", lngCount)) '源单内码
LngEntryFID_SRC = Val(.GetFieldValue("FEntryID_SRC", lngCount)) '源单分录内码
If lngFID_SRC <= 0 Then
Msg "请选择源单类型进行单据关联操作,没有源单合同不可以变更!" & vbCrLf & vbCrLf & "请删除[" & CStr(lngCount) & "]行数据!", vbCritical
bCancel = True
Exit Sub
End If
Next
End With
End Sub
Private Sub m_BillInterface_BeforeSelBills(ByVal lSelBillType As Long, ByVal oDataSrv As Object, ByVal dctLink As Object, sFilter As String, dctParam As Object)
'TODO: 请在此处添加代码响应事件 BeforeSelBills
End Sub
Private Sub m_BillInterface_BeforeSelBillShowFilter(dct As KFO.IDictionary)
'TODO: 请在此处添加代码响应事件 BeforeSelBillShowFilter
End Sub
Private Sub m_BillInterface_BeforeSendMessage(ByVal ActionCode As String, dctMessage As KFO.IDictionary, Cancel As Boolean)
'TODO: 请在此处添加代码响应事件 BeforeSendMessage
End Sub
Private Sub m_BillInterface_BeforeVerify(bCancel As Boolean)
'TODO: 请在此处添加代码响应事件 BeforeVerify
End Sub
Private Sub m_BillInterface_BeforLoadBillFillData()
'TODO: 请在此处添加代码响应事件 BeforLoadBillFillData
End Sub
Private Sub m_BillInterface_BeginEdit(ByVal dct As KFO.IDictionary, ByVal Col As Long, ByVal Row As Long)
'TODO: 请在此处添加代码响应事件 BeginEdit
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -