📄 clslistcompose.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 = "clsListCompose"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Private WithEvents mfrmCompose As frmAListTemplate '模版窗体
Attribute mfrmCompose.VB_VarHelpID = -1
'Private mclsPurchase As clsPurchase
Private frmEdit As Form '接口窗体
Private mblnFinish As Boolean
Private mIsShowEdit As Boolean
Private blnIsVouchered As Boolean '是否已生成凭证
Private blnIsVoid As Boolean '是否已作废
Private lngActivityTypeID As Long
Private blnEdit As Boolean '编辑权限
Private blnChange As Boolean '只能编辑和删除自己制作的单据
Private clsListType As String
Public Function SetListType(ByVal strList As String)
mfrmCompose.strListType = strList
clsListType = strList
End Function
Private Sub cMsgBox(strMsg As String, Optional strTitle As String)
If Trim(strTitle) = "" Then
strTitle = "提示信息"
End If
ShowMsg mfrmCompose.hWnd, strMsg, MB_OK + MB_ICONEXCLAMATION + MB_SYSTEMMODAL, strTitle
End Sub
Private Sub Class_Initialize()
Set mfrmCompose = New frmAListTemplate
mfrmCompose.blnReceptionList = True
mfrmCompose.mTitle = "商品拆卸组装单列表"
mfrmCompose.mHelpID = 50017
mfrmCompose.Tabs = 1
mfrmCompose.SpViewID(0) = 142
mfrmCompose.blnEditByRight(0) = IsCanDo(frmRightsID.frmListComposeID, gclsBase.OperatorID)
mfrmCompose.SpSelect(0) = "ItemActivity.lngActivityID, decode(ItemActivity.blnIsVoid,1,'√',' ') AS ""作废"""
If IsCanDo(274, gclsBase.OperatorID) Then
mfrmCompose.SpWhere(0) = " ItemActivity.lngActivityTypeID In (30,33)"
Else
mfrmCompose.SpWhere(0) = " ItemActivity.lngActivityTypeID In (30,33) and ItemActivity.lngOperatorID=" & gclsBase.OperatorID
End If
mfrmCompose.ShowAll(0) = "ItemActivity.blnIsVoid=0"
mfrmCompose.SpPrintID(0) = 43
mfrmCompose.SpPrintTitle(0) = "商品拆卸组装单列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
mfrmCompose.MenuEnbaleOnPage(0) = 1
mfrmCompose.MenuEnbaleOnPage(1) = 1
mfrmCompose.MenuEnbaleOnPage(2) = 1
mfrmCompose.MenuEnbaleOnPage(3) = 1
mfrmCompose.MenuEnbaleOnPage(4) = 1
mfrmCompose.MenuEnbaleOnPage(5) = 1
mfrmCompose.MenuEnbaleOnPage(6) = 1
mfrmCompose.MenuEnbaleOnPage(7) = 1
End Sub
Public Function Showlist()
mfrmCompose.Show
mfrmCompose.ZOrder 0
Set mclsPurchase = New clsPurchase
mclsPurchase.SethWnd mfrmCompose.hWnd
Set frmEdit = frmStripRigOut
End Function
Private Sub mfrmCompose_ListChildActive()
Dim vntMessage As Variant
For Each vntMessage In mfrmCompose.mclsMainControl.Messages
If vntMessage = Message.msgReceipt30 Or vntMessage = Message.msgReceipt31 Then
mfrmCompose.ToolRefresh
mfrmCompose.mclsMainControl.Messages.Remove CStr(vntMessage) '清除消息
End If
Next
mfrmCompose.mclsMainControl.Messages.Clear
End Sub
Private Sub mfrmCompose_ListDel()
Dim lngActivityID As Long
lngActivityID = mfrmCompose.ListID
If lngActivityID = 0 Then Exit Sub
If mIsShowEdit Then
If lngActivityID = frmEdit.getID Then
cMsgBox "不能删除当前编辑的单据!"
Exit Sub
End If
End If
'If Not DeleteCompose(lngActivityID) Then Exit Sub
Dim clsLst As clsCompose
Set clsLst = New clsCompose
clsLst.hWnd = mfrmCompose.hWnd
If Not clsLst.DeleteCompose(lngActivityID, False) Then Exit Sub
Set clsLst = Nothing
mfrmCompose.ToolRefresh
End Sub
Private Sub mfrmCompose_ListEdite()
Dim lngActivityID As Long
mfrmCompose.Enabled = False
mblnFinish = True
lngActivityID = mfrmCompose.ListID
If mIsShowEdit Then
frmEdit.ShowAOldBill (lngActivityID) '调用接口
Else
mIsShowEdit = True
frmEdit.ShowAOldBill (lngActivityID) '调用接口
End If
mblnFinish = False
mfrmCompose.Enabled = True
End Sub
Private Sub mfrmCompose_oListInActive()
' Dim lngActivityID As Long
'
'On Error GoTo TheErr
' lngActivityID = mfrmCompose.ListID
' If lngActivityID = 0 Then Exit Sub
' If mfrmCompose.IsInActive Then Exit Sub
' If Not DeleteCompose(lngActivityID, True) Then Exit Sub
' mfrmCompose.ToolRefresh
' Exit Sub
'TheErr:
' cMsgBox "操作失败!"
End Sub
Private Sub mfrmCompose_ListInActive(blnLevel As Boolean, blnSuceess As Boolean)
Dim lngActivityID As Long
On Error GoTo TheErr
blnLevel = False
blnSuceess = False
lngActivityID = mfrmCompose.ListID
If lngActivityID = 0 Then Exit Sub
If mfrmCompose.IsInActive Then Exit Sub
'If Not DeleteCompose(lngActivityID, True) Then Exit Sub
'mfrmCompose.ToolRefresh
Dim clsLst As clsCompose
Set clsLst = New clsCompose
clsLst.hWnd = mfrmCompose.hWnd
If Not clsLst.DeleteCompose(lngActivityID, True) Then Exit Sub
Set clsLst = Nothing
blnSuceess = True
Exit Sub
TheErr:
cMsgBox "操作失败!"
End Sub
Private Sub mfrmCompose_ListNew()
mblnFinish = True
If mIsShowEdit Then
frmEdit.ShowANewBill
Else
frmEdit.ShowANewBill
mIsShowEdit = True
End If
mblnFinish = False
End Sub
Private Sub mfrmCompose_ListPrintReceipt()
frmPrintReceipt.ShowfrmPrintReceipt 32
End Sub
Private Sub mfrmCompose_ListShowAll()
With mfrmCompose
If .chkShowall = 0 Then
.ShowAll(0) = "ItemActivity.blnIsVoid=0"
Else
.ShowAll(0) = ""
End If
.ToolRefresh
End With
End Sub
Private Function GetItemStatus(lngActivityID As Long) As Boolean
Dim strSql As String
Dim recTemp As rdoResultset
strSql = "SELECT ItemActivity.lngVoucherID, ItemActivity.lngOperatorID, ItemActivity.blnIsVoid, ItemActivity.lngActivityTypeID From ItemActivity WHERE (ItemActivity.lngActivityID)=" & lngActivityID
Set recTemp = gclsBase.BaseDB.OpenResultset(strSql, rdOpenForwardOnly)
If recTemp.BOF And recTemp.EOF Then
cMsgBox "列表的数据已被修改,请重新刷新后再进行操作!"
Exit Function
End If
If recTemp(0) > 0 Then
blnIsVouchered = True
Else
blnIsVouchered = False
End If
If gclsBase.OperatorID = recTemp(1) Then
blnChange = True
Else
blnChange = False
End If
blnIsVoid = IIf(recTemp(2) = 1, True, False)
lngActivityTypeID = recTemp(3)
Set recTemp = Nothing
GetItemStatus = True
End Function
'告诉列表:编辑窗口已关闭
Public Sub IAmCLosed()
mIsShowEdit = False
End Sub
'////////////////////////////////////////////////////////////////////////////////////////
'
' 功能代码实现
'
'////////////////////////////////////////////////////////////////////////////////////////
'删除《拆卸组装表》
'注意:拆卸组装单一次对应两对记录
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -