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

📄 clslistpurchase.cls

📁 金算盘软件代码
💻 CLS
📖 第 1 页 / 共 2 页
字号:
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "clsListPurchase"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False

Private intFormType As Integer
Private WithEvents mfrmPurchase As frmAListTemplate '模版窗体
Attribute mfrmPurchase.VB_VarHelpID = -1
Private mclsPurchase As clsPurchase                 '接口类
Private frmEdit As FrmStockBill                     '接口窗体
Private blnIsVoid    As Boolean                     '是否已作废
Private blnIsInvoice As Boolean                     '开票标志
'Private blnIsVouchered As Boolean                  '是否已生成凭证
'Private blnEdit As Boolean                         '编辑权限
Private blnChange As Boolean                        '只能编辑和删除自己制作的单据
Private mblnFinish As Boolean
Private clsListType As String
Public Function SetListType(ByVal strList As String)
    mfrmPurchase.strListType = strList
    clsListType = strList
End Function
Private Sub cMsgBox(strMsg As String, Optional strTitle As String)
    If Trim(strTitle) = "" Then
        strTitle = "提示信息"
    End If

    ShowMsg mfrmPurchase.hwnd, strMsg, MB_OK + MB_ICONEXCLAMATION + MB_SYSTEMMODAL, strTitle
End Sub

Private Sub Class_Initialize()
    Dim mblnCheckOther As Boolean
    Set mfrmPurchase = New frmAListTemplate
    mfrmPurchase.blnReceptionList = True
    intFormType = GetListType
    mfrmPurchase.Tabs = 1
    Select Case intFormType
        Case 1
            #If Conversion = 16 Then
                mfrmPurchase.mTitle = "采购发票列表"
                mfrmPurchase.mHelpID = 40027
            #Else
                 mfrmPurchase.mTitle = "商品采购列表"
                mfrmPurchase.mHelpID = 40005
            #End If
            mfrmPurchase.SpViewID(0) = 75
            mfrmPurchase.blnEditByRight(0) = IsCanDo(frmRightsID.frmListPurchaseID_1, gclsBase.OperatorID)
            mblnCheckOther = IsCanDo(257, gclsBase.OperatorID)
            mfrmPurchase.blnIsHavingReport = True
            mfrmPurchase.ReportCount = 2
            mfrmPurchase.ReportName(0) = "采购汇总表"
            mfrmPurchase.ReportName(1) = "采购明细表"
            mfrmPurchase.SpPrintTitle(0) = "商品采购列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
        Case 2
            mfrmPurchase.mTitle = "直运采购单列表"
            mfrmPurchase.mHelpID = 40009
            mfrmPurchase.SpViewID(0) = 334
            mfrmPurchase.blnEditByRight(0) = IsCanDo(frmRightsID.frmListPurchaseID_2, gclsBase.OperatorID)
            mblnCheckOther = IsCanDo(258, gclsBase.OperatorID)
            mfrmPurchase.blnIsHavingReport = True
            mfrmPurchase.ReportCount = 2
            mfrmPurchase.ReportName(0) = "直运采购汇总表"
            mfrmPurchase.ReportName(1) = "直运采购明细表"
            mfrmPurchase.SpPrintTitle(0) = "直运采购单列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
        Case 3
            mfrmPurchase.mTitle = "受托入库单列表"
            mfrmPurchase.mHelpID = 40013
            mfrmPurchase.SpViewID(0) = 335
            mfrmPurchase.blnEditByRight(0) = IsCanDo(frmRightsID.frmListPurchaseID_3, gclsBase.OperatorID)
            mblnCheckOther = IsCanDo(259, gclsBase.OperatorID)
            mfrmPurchase.blnIsHavingReport = True
            mfrmPurchase.ReportCount = 2
            mfrmPurchase.ReportName(0) = "受托入库汇总表"
            mfrmPurchase.ReportName(1) = "受托入库明细表"
            mfrmPurchase.SpPrintTitle(0) = "受托入库单列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
        Case 4
            mfrmPurchase.mTitle = "受托结算单列表"
            mfrmPurchase.mHelpID = 40015
            mfrmPurchase.SpViewID(0) = 336
            mfrmPurchase.blnEditByRight(0) = IsCanDo(frmRightsID.frmListPurchaseID_4, gclsBase.OperatorID)
            mblnCheckOther = IsCanDo(260, gclsBase.OperatorID)
            mfrmPurchase.blnIsHavingReport = True
            mfrmPurchase.ReportCount = 2
            mfrmPurchase.ReportName(0) = "受托结算汇总表"
            mfrmPurchase.ReportName(1) = "受托结算明细表"
            mfrmPurchase.SpPrintTitle(0) = "受托结算单列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
        Case 5
            mfrmPurchase.mTitle = "加工入库单列表"
            mfrmPurchase.mHelpID = 10246
            mfrmPurchase.blnEditByRight(0) = IsCanDo(frmRightsID.frmListPurchaseID_5, gclsBase.OperatorID)
            mblnCheckOther = IsCanDo(284, gclsBase.OperatorID)
            mfrmPurchase.SpViewID(0) = 337
            mfrmPurchase.blnIsHavingReport = True
            mfrmPurchase.ReportCount = 2
            mfrmPurchase.ReportName(0) = "委托加工入库商品汇总表"
            mfrmPurchase.ReportName(1) = "委托加工入库商品明细表"
            mfrmPurchase.SpPrintTitle(0) = "加工入库单列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
        Case 6
            mfrmPurchase.mTitle = "加工费用单列表"
            mfrmPurchase.mHelpID = 10528
            mfrmPurchase.SpViewID(0) = 338
            mfrmPurchase.blnEditByRight(0) = IsCanDo(frmRightsID.frmListPurchaseID_6, gclsBase.OperatorID)
            mblnCheckOther = IsCanDo(285, gclsBase.OperatorID)
            mfrmPurchase.blnIsHavingReport = True
            mfrmPurchase.ReportCount = 2
            mfrmPurchase.ReportName(0) = "委托加工费用汇总表"
            mfrmPurchase.ReportName(1) = "委托加工费用明细表"
            mfrmPurchase.SpPrintTitle(0) = "加工费用单列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
        Case 7
            mfrmPurchase.mTitle = "采购发票列表"
            mfrmPurchase.mHelpID = 40027
            mfrmPurchase.SpViewID(0) = 339
            mfrmPurchase.blnEditByRight(0) = IsCanDo(frmRightsID.frmListPurchaseID_7, gclsBase.OperatorID)
            mblnCheckOther = IsCanDo(261, gclsBase.OperatorID)
            mfrmPurchase.blnIsHavingReport = True
            mfrmPurchase.ReportCount = 3
            mfrmPurchase.ReportName(0) = "采购发票一览表"
            mfrmPurchase.ReportName(1) = "采购发票汇总表"
            mfrmPurchase.ReportName(2) = "采购发票明细表"
            mfrmPurchase.SpPrintTitle(0) = "采购发票列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
        Case 8
            mfrmPurchase.mTitle = "自制入库单列表"
             mfrmPurchase.mHelpID = 50001
            mfrmPurchase.SpViewID(0) = 340
            mfrmPurchase.blnEditByRight(0) = IsCanDo(frmRightsID.frmListPurchaseID_8, gclsBase.OperatorID)
            mblnCheckOther = IsCanDo(275, gclsBase.OperatorID)
            mfrmPurchase.blnIsHavingReport = True
            mfrmPurchase.ReportCount = 2
            mfrmPurchase.ReportName(0) = "自制入库商品汇总表"
            mfrmPurchase.ReportName(1) = "自制入库商品明细表"
            mfrmPurchase.SpPrintTitle(0) = "自制入库单列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
        Case 9
            mfrmPurchase.mTitle = "盘盈入库单列表"
            mfrmPurchase.mHelpID = 50011
            mfrmPurchase.SpViewID(0) = 341
            mfrmPurchase.blnEditByRight(0) = IsCanDo(frmRightsID.frmListPurchaseID_9, gclsBase.OperatorID)
            mblnCheckOther = IsCanDo(281, gclsBase.OperatorID)
            mfrmPurchase.SpPrintTitle(0) = "盘盈入库单列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
        Case 10
            mfrmPurchase.mTitle = "其它入库单列表"
            mfrmPurchase.mHelpID = 50005
            mfrmPurchase.SpViewID(0) = 342
            mfrmPurchase.blnEditByRight(0) = IsCanDo(frmRightsID.frmListPurchaseID_10, gclsBase.OperatorID)
            mblnCheckOther = IsCanDo(276, gclsBase.OperatorID)
            mfrmPurchase.SpPrintTitle(0) = "其它入库单列表" & Chr(1) & gclsBase.BaseName & Chr(1) & gclsBase.OperatorName
    End Select
    mfrmPurchase.SpSelect(0) = "ItemActivity.lngActivityID, min(decode(ItemActivity.blnIsVoid,1,'√',' ')) AS ""作废"""
    mfrmPurchase.ShowAll(0) = " ItemActivity.blnIsVoid=0"
    If intFormType = 7 Then
        If mblnCheckOther Then
            mfrmPurchase.SpWhere(0) = "((ItemActivity.lngReceiptTypeID<12 and ItemActivity.blnIsInvoice=1) OR ItemActivity.lngActivityTypeID = " & intFormType & ")"
        Else
            mfrmPurchase.SpWhere(0) = "((ItemActivity.lngReceiptTypeID<12 and ItemActivity.blnIsInvoice=1) OR ItemActivity.lngActivityTypeID = " & intFormType & ")" & " And ItemActivity.lngOperatorID=" & gclsBase.OperatorID
        End If
    Else
        If mblnCheckOther Then
            mfrmPurchase.SpWhere(0) = "ItemActivity.lngActivityTypeID = " & intFormType
        Else
            mfrmPurchase.SpWhere(0) = "ItemActivity.lngActivityTypeID = " & intFormType & " And ItemActivity.lngOperatorID=" & gclsBase.OperatorID
        End If
    End If
    mfrmPurchase.SpGoupBy(0) = "ItemActivity.lngActivityID"
    mfrmPurchase.SpHaving(0) = " min(ItemActivity.lngActivityTypeID)<11"
    mfrmPurchase.SpPrintID(0) = 36
    
    
    If intFormType = 9 Then
        mfrmPurchase.blnIsReceptionWriteoff = False
    Else
        mfrmPurchase.blnIsReceptionWriteoff = True
    End If
    
    mfrmPurchase.MenuEnbaleOnPage(0) = 3
    mfrmPurchase.MenuEnbaleOnPage(1) = 3
    mfrmPurchase.MenuEnbaleOnPage(2) = 3
    mfrmPurchase.MenuEnbaleOnPage(3) = 3
    mfrmPurchase.MenuEnbaleOnPage(4) = 3
    mfrmPurchase.MenuEnbaleOnPage(5) = 3
    mfrmPurchase.MenuEnbaleOnPage(6) = 3
    mfrmPurchase.MenuEnbaleOnPage(7) = 3
End Sub

Public Function Showlist()
    mfrmPurchase.Show
    mfrmPurchase.ZOrder 0
    Set mclsPurchase = New clsPurchase
    mclsPurchase.SethWnd mfrmPurchase.hwnd
    If intFormType <> 7 Then
        If frmStockSales(intFormType + 1) Is Nothing Then
            Set frmEdit = New FrmStockBill
        Else
            Set frmEdit = frmStockSales(intFormType + 1)
        End If
    End If
End Function

Private Sub mfrmPurchase_ListChildActive()
    Dim vntMessage As Variant
    For Each vntMessage In mfrmPurchase.mclsMainControl.Messages
        If vntMessage = 31 + intFormType Then
            mfrmPurchase.ToolRefresh
            mfrmPurchase.mclsMainControl.Messages.Remove CStr(vntMessage) '清除消息
        End If
    Next
    mfrmPurchase.mclsMainControl.Messages.Clear
End Sub

Private Sub mfrmPurchase_ListDel()
    Dim lngActivityID As Long
    Dim lngActivityTypeID As Long
    Dim blnPushOut As Boolean
    lngActivityID = mfrmPurchase.ListID
    If lngActivityID = 0 Then Exit Sub
    lngActivityTypeID = GetlngActivityTypeID(lngActivityID)
    If Not GetItemStatus(lngActivityID) Then Exit Sub
    If intFormType = 7 Then
        Set frmEdit = Nothing
        If frmStockSales(lngActivityTypeID + 1) Is Nothing Then
            Set frmEdit = New FrmStockBill
        Else
            Set frmEdit = frmStockSales(lngActivityTypeID + 1)
        End If
    End If
    If lngFormHwnd(intFormType + 1) > 0 Then
        If lngActivityID = frmEdit.getID Then
            cMsgBox "不能删除当前编辑的单据!"
            Exit Sub
        End If
    End If
    If Not blnChange Then
        cMsgBox "不能删除由他人制作的单据!"
        Exit Sub
    End If
    If Not mclsPurchase.DeletePurchase(lngActivityID, , , blnPushOut) Then Exit Sub
        If blnIsInvoice Then
            If intFormType = 7 And lngActivityTypeID <> 7 Then '在采购发票列表中
                gclsSys.SendMessage CStr(mfrmPurchase.hwnd), 31 + lngActivityTypeID
             ElseIf intFormType = 1 Or intFormType = 2 Or intFormType = 4 _
                      Or intFormType = 7 Then '在其他单据中并且也是一张发票
                 gclsSys.SendMessage CStr(mfrmPurchase.hwnd), 38
             End If
        End If
        If blnPushOut Then
            mfrmPurchase.ToolRefresh
            Exit Sub
        End If
    

⌨️ 快捷键说明

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