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

📄 bos_qmphybill.cls

📁 金蝶地磅称重插件
💻 CLS
📖 第 1 页 / 共 5 页
字号:
    
        Else
            m_ListInterface.K3Lib.UpdateData "exec BjSp_QmBillBatchCheck " & m_ListInterface.K3Lib.User.UserID & ",0,'" & SelId & "'"
        End If
    End If
End Sub


Private Sub m_ListInterface_MultiCheck(ByVal lCheckMode As Long, ByVal lCheckMaxLevel As Long, ByVal lBusinessLevel As Long, ByVal lCheckLevel As Long, ByVal lCheckStatus As Long, bSendCheckMessage As Boolean, bSendAcceptMessage As Boolean, sMessageTitle As String, sMessage As String, Cancel As Boolean)
    ''多级审核发生时
    On Error GoTo Errhandle
    ''一级审核发生时
    Dim D As Dictionary
    Set D = m_ListInterface.GetCurrentSelRowInfo()
    
    If lCheckMode = 0 And lBusinessLevel = lCheckMaxLevel And lCheckLevel = 1 And lCheckStatus = 0 Then
        
        ''更新物理检验单审核标志
        m_ListInterface.K3Lib.UpdateData "update t_ST_QM_WLD set Fcheckstatus=1 where finterid=" & D.GetValue("FInterID")
    End If
        
    ''二级审核发生时
    If lCheckMode = 0 And lBusinessLevel = lCheckMaxLevel And lCheckLevel = lCheckMaxLevel And lCheckStatus = GetCheckLevel(lCheckMaxLevel - 1) Then
       Set rs = m_ListInterface.K3Lib.GetData("select Fstatus,FBillNo_Hx,FBillNo_yd,FQmstyle,FQuantity from t_ST_QM_WLD where fInterId=" & D.GetValue("FInterID"))
       If rs.RecordCount > 0 Then
          ''如果为其他质检且净重为零,则不允许进行二级审核!
          If rs!Fqmstyle = "9" And rs!FQuantity = 0 Then
             MsgBox "检验类型为其他检斤且净重为零时,不能进行二级审核!", , "金蝶提示"
             Cancel = True
             Exit Sub
          End If
            
          If rs!Fstatus = 1 Then
             MsgBox "该单据已经作废,不允许驳回审核!", , "金蝶提示"
             Cancel = True
             Exit Sub
          End If
          
          If rs!Fstatus = 2 And rs!FBillNo_Hx > 0 Then
             ''更新物理检验单审核标志
             m_ListInterface.K3Lib.UpdateData "update t_ST_QM_WLD set Fcheckstatus=2 where finterid=" & D.GetValue("FInterID")
             
             ''更新化学单FStatus为2
             If rs!Fbillno_yd <> "" Then
                m_ListInterface.K3Lib.UpdateData "update t_ST_QM_Hxd set fstatus=2 where finterid=" & rs!FBillNo_Hx
             End If
          End If
          
          '如果化学检验没有进行,则给出提示(用于其他质检二级审核处理)
          If (rs!Fstatus = 0 And rs!FBillNo_Hx = 0) Or (rs!Fstatus = 2 And rs!FBillNo_Hx = 0) Then
                If MsgBox("对应的化学检验还未完成,是否审核!", vbOKCancel + vbDefaultButton2, "金蝶提示") = vbOK Then
                    m_ListInterface.K3Lib.UpdateData "update t_ST_QM_WLD set fstatus=2 where finterid=" & D.GetValue("FInterID")
                Else
                   Cancel = True
                   Exit Sub
                End If
          End If
          ''在物理单的备注中添加审核意见
            Dim ReValue As String
            ReValue = InputBox("二审意见", "请输入二级审核的意见")
            If Trim(ReValue) <> "" Then
               m_ListInterface.K3Lib.UpdateData "update t_ST_QM_WLD set fnote=fnote+'---" & ReValue & "' where finterid=" & D.GetValue("FInterID")
            End If
       End If
    End If
    Exit Sub
Errhandle:
    MsgBox err.Description, vbCritical, "金蝶提示"
End Sub

Private Sub m_ListInterface_UnMultiCheck(ByVal lCheckMode As Long, ByVal lCheckMaxLevel As Long, ByVal lBusinessLevel As Long, ByVal lCheckStatus As Long, ByVal lLastCheckFrom As Long, ByVal lLastCheckTo As Long, bSendMessage As Boolean, Cancel As Boolean)
    ''驳回审核时触发
    On Error GoTo Errhandle
    Dim D As Dictionary
    Set D = m_ListInterface.GetCurrentSelRowInfo()
    ''一级审核驳回时
    If lCheckMode = 0 And lBusinessLevel = lCheckMaxLevel And lCheckStatus = 1 Then
       Set rs = m_ListInterface.K3Lib.GetData("select Fstatus,FBmBillerId,FBillNo_yd from t_ST_QM_WLD where fInterId=" & D.GetValue("FInterID"))
       If rs.RecordCount > 0 Then
       
          If rs!Fstatus = 0 Then
             ''更新物理检验单审核标志
             m_ListInterface.K3Lib.UpdateData "update t_ST_QM_WLD set Fcheckstatus=0 where finterid=" & D.GetValue("FInterID")
          End If
          
          If rs!Fstatus = 1 Then
             MsgBox "该单据已经作废,不允许驳回审核!", , "金蝶提示"
             Cancel = True
             Exit Sub
          End If
          
          If rs!Fstatus = 2 And rs!FBmBillerId > 0 Then
             MsgBox "该单据已经被保密单引用,不允许驳回审核!", , "金蝶提示"
             Cancel = True
             Exit Sub
          End If
       End If
    End If
    
    ''二级审核驳回时
    If lCheckMode = 0 And lBusinessLevel = lCheckMaxLevel And lCheckStatus = GetCheckLevel(lCheckMaxLevel) Then
       Set rs = m_ListInterface.K3Lib.GetData("select t1.Fstatus,t1.FBillNo_Hx,t1.fbillno_yd,t2.fname Fitemid_icname from t_ST_QM_WLD t1 inner join t_icitem t2 on t1.fitemid_ic=t2.fitemid where fInterId=" & D.GetValue("FInterID"))
       If rs.RecordCount > 0 Then
          
          If rs!Fstatus = 1 Then
             MsgBox "该单据已经作废,不允许驳回审核!", , "金蝶提示"
             Cancel = True
             Exit Sub
          End If
          
          ''如果对检斤单被其他业务单据引用,则不允许进行处理
'        If rs.Fields("Fitemid_icname") = "外购生铁" Then
'            Set Rs1 = m_ListInterface.K3Lib.GetData("select t2.FInstockClosed,t2.FIsCompClosed,t2.FMergedFlag  from t_ST_SC_BalanceBill t1 left join t_ST_SC_BalanceBillentry t2 on t1.Fid=t2.fid where t1.fid=" & rs.Fields("Fbillno_yd"))
'        Else
'            Set Rs1 = m_ListInterface.K3Lib.GetData("select t2.FInstockClosed,t2.FIsCompClosed,t2.FMergedFlag  from t_ST_SC_BalanceBill t1 left join t_ST_SC_BalanceBillentry t2 on t1.Fid=t2.fid where t1.fStatus_Wl=" & D.GetValue("FInterID"))
'        End If
        
         If Not Rs1.EOF Then
           If Rs1!FInstockClosed > 0 Then
              MsgBox "对应检斤单已经入库,不允许驳回审核!", , "金蝶提示"        '已经生成入库单
              Cancel = True
              Exit Sub
           End If
           
           If Rs1!FIsCompClosed > 0 Then
              MsgBox "对应检斤单已经结算,不允许驳回审核!", , "金蝶提示"        '已经生成入库单
              Cancel = True
              Exit Sub
           End If
           
           If Rs1!FMergedFlag > 0 Then
              MsgBox "对应检斤单已经合并,不允许驳回审核!", , "金蝶提示"        '已经生成入库单
              Cancel = True
              Exit Sub
           End If
        End If
        
          If rs!Fstatus = 2 And rs!FBillNo_Hx > 0 Then
             
             ''更新物理检验单审核标志
             m_ListInterface.K3Lib.UpdateData "update t_ST_QM_WLD set Fcheckstatus=1 where finterid=" & D.GetValue("FInterID")
             
             ''将化学检验单恢复到审核前的状态
             m_ListInterface.K3Lib.UpdateData "update t_ST_QM_Hxd set fstatus=0 where finterid=" & rs!FBillNo_Hx
             
             ''如果上游单据是检斤单,则执行下面代码,更新检斤单入库数量为审核前状态
             If rs!Fbillno_yd <> "" Then
                m_ListInterface.K3Lib.UpdateData "update t_ST_SC_BalanceBillentry set finstockweight=fnetweight/1000-fdeductweight where fid in(" & rs!Fbillno_yd & ")"
             End If
          End If
        
       End If
    End If
    Exit Sub
Errhandle:
    MsgBox err.Description, vbCritical, "金蝶提示"
End Sub

Private Sub m_ListInterface_MenuBarInitialize(ByVal oMenuBar As K3ClassEvents.MenuBar)
    
    '菜单和工具栏按钮初始化时触发
    On Error GoTo Errhandle
    
    Dim oTool   As K3ClassEvents.BOSTool
    Dim oBand   As K3ClassEvents.BOSBand

    If m_ListInterface.List.ShowMode = 0 Then
        '*************** 新增调整按钮 ***************
        Set oTool = oMenuBar.BOSTools.Add("mnuAdr")
        With oTool
           .Caption = "调整"
           .ToolTipText = "调整"
           .Description = "调整"
    
           .ShortcutKey = 3
           .Visible = True
           .Enabled = True
           .BeginGroup = False
           .ToolPicture = App.Path & "\get.ico"
           .SetPicture 0, vbButtonFace
        End With
    
        Set oBand = oMenuBar.BOSBands("BandToolBar")
         '将菜单对象插入指定工具栏(计算器)后面
        oBand.BOSTools.InsertAfter "mnuCaculate", oTool
        '********************************************
    
    
        '*************** 新增批量反审核按钮 ***************
'        Set oTool = oMenuBar.BOSTools.Add("mnuUnAllCheck")
'        With oTool
'           .Caption = "批反"
'           .ToolTipText = "批反"
'           .Description = "批反"
'
'           .ShortcutKey = 3
'           .Visible = True
'           .Enabled = True
'           .BeginGroup = False
'           .ToolPicture = App.Path & "\red.ico"
'           .SetPicture 0, vbButtonFace
'        End With
'
'        Set oBand = oMenuBar.BOSBands("BandToolBar")
'         '将菜单对象插入指定工具栏(计算器)后面
'        oBand.BOSTools.InsertAfter "mnuCaculate", oTool
        '********************************************
        
        
        
        '*************** 新增批量审核按钮 ***************
'        Set oTool = oMenuBar.BOSTools.Add("mnuAllCheck")
'        With oTool
'           .Caption = "批审"
'           .ToolTipText = "批审"
'           .Description = "批审"
'
'           .ShortcutKey = 3
'           .Visible = True
'           .Enabled = True
'           .BeginGroup = False
'           .ToolPicture = App.Path & "\white.ico"
'           .SetPicture 0, vbButtonFace
'        End With
'
'        Set oBand = oMenuBar.BOSBands("BandToolBar")
'         '将菜单对象插入指定工具栏(计算器)后面
'        oBand.BOSTools.InsertAfter "mnuCaculate", oTool
        '********************************************
 
    
        '*************** 新增反关按钮 ***************
        Set oTool = oMenuBar.BOSTools.Add("mnuUnC")
        With oTool
           .Caption = "反关"
           .ToolTipText = "反关"
           .Description = "反关"
    
           .ShortcutKey = 3

⌨️ 快捷键说明

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