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

📄

📁 VB开发的ERP系统
💻
📖 第 1 页 / 共 3 页
字号:
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'***********************************************
'*    模 块 名 称 :系统主操作桌面
'*    功 能 描 述 :
'*    程序员姓名  :张建忠
'*    最后修改人  :张晶石
'*    最后修改时间:2002/01/03
'*    备        注:封版
'***********************************************
Const NAME_COLUMN = 0
Const TYPE_COLUMN = 1
Const SIZE_COLUMN = 2
Const DATE_COLUMN = 3
Private Declare Function OSWinHelp% Lib "user32" Alias "WinHelpA" (ByVal hwnd&, ByVal HelpFile$, ByVal wCommand%, dwData As Any)
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Dim mbMoving As Boolean
Const sglSplitLimit = 1000

Dim nodX As Node
Dim mitem As ListItem
Dim sjgnbmStr As String                      '上级编码

Dim Ztxxrec As New ADODB.Recordset           '帐套信息动态集
Dim Xtgnbrec As New ADODB.Recordset          '系统功能表
Dim Xtqxxzrec As New ADODB.Recordset         '系统权限限制动态集
Dim Tsxx As String                           '系统提示信息
Dim gnsyte As String                         '系统功能项索引
Dim Xtrlrec As New ADODB.Recordset           '系统日历动态集
Dim Ctsfscdr As Boolean                      '窗体是否首次读入

Private Sub lvListView_DblClick()            '点击ListView执行相应功能
    If lvListView.ListItems.Count > 0 Then
        Set Xtgnbrec = Cw_DataEnvi.DataConnect.Execute("SELECT * FROM xt_xtgnb where gnbm='" + Mid(Trim(lvListView.SelectedItem.Key), 2, Len(Trim(lvListView.SelectedItem.Key)) - 1) + "'")
        If Not Xtgnbrec.EOF Then
            If Xtgnbrec.Fields("mjbz") = True Then
                gnsyte = Trim(Xtgnbrec.Fields("gnsy"))
                Call Zxxymk(gnsyte)
            Else
                '---------------
                Dim Ssql As String
                sjgnbmStr = ""
                lvListView.ColumnHeaders.Clear
                lvListView.ListItems.Clear
                Ssql = "SELECT * FROM xt_xtgnb where sjgnbm='" + Xtgnbrec.Fields("gnbm") + "' and MenuList=1 order by gnbm"
                Set Xtgnbrec = Cw_DataEnvi.DataConnect.Execute(Ssql)
                lvListView.ColumnHeaders.Add 1, "rcsw", tvTreeView.SelectedItem.Text, 3000, , "stb"
                Do While Not Xtgnbrec.EOF
                    Set mitem = lvListView.ListItems.Add()
                    mitem.Text = Trim(Xtgnbrec!gnmc)
                    If Xtgnbrec.Fields("mjbz") Then
                        mitem.SmallIcon = "gnqx"
                        mitem.Icon = "y"
                    Else
                        mitem.Icon = "i"
                        mitem.SmallIcon = "stb"
                    End If
                    mitem.Key = "T" & Trim(Xtgnbrec!gnbm)
                    Xtgnbrec.MoveNext
                Loop
                '---------------
            End If
        End If
    End If
End Sub

Private Sub lvListView_KeyPress(KeyAscii As Integer)
    If KeyAscii = vbKeyReturn Then
        Call lvListView_DblClick
    End If
End Sub

Private Sub tvTreeView_NodeClick(ByVal Node As MSComctlLib.Node)
    Dim Ssql As String
    If Node.Tag <> "" Then
        If Node.Tag = False Then
            Ssql = "SELECT * FROM xt_xtgnb where sjgnbm='" + Mid(Trim(tvTreeView.SelectedItem.Key), 2, Len(Trim(tvTreeView.SelectedItem.Key)) - 1) + "' and MenuList=1 order by gnbm"
            If sjgnbmStr = Mid(Trim(tvTreeView.SelectedItem.Key), 2, Len(Trim(tvTreeView.SelectedItem.Key)) - 1) Then
                Exit Sub
            Else
                sjgnbmStr = Mid(Trim(tvTreeView.SelectedItem.Key), 2, Len(Trim(tvTreeView.SelectedItem.Key)) - 1)
            End If
        Else
            Ssql = "SELECT * FROM xt_xtgnb a," _
                    & "(SELECT sjgnbm FROM xt_xtgnb where gnbm='" + Mid(Trim(tvTreeView.SelectedItem.Key), 2, Len(Trim(tvTreeView.SelectedItem.Key)) - 1) + "')b" & " where a.sjgnbm=b.sjgnbm and MenuList=1 order by gnbm"
        End If
        
        Set Xtgnbrec = Cw_DataEnvi.DataConnect.Execute(Ssql)
        If Node.Tag = True Then
            If sjgnbmStr = Trim(Xtgnbrec!sjgnbm) Then
                Exit Sub
            Else
                sjgnbmStr = Trim(Xtgnbrec!sjgnbm)
            End If
        End If
        lvListView.ColumnHeaders.Clear
        lvListView.ListItems.Clear
        lvListView.ColumnHeaders.Add 1, "rcsw", "明细", 3000, , "stb"
        Do While Not Xtgnbrec.EOF
            Set mitem = lvListView.ListItems.Add()
            mitem.Text = Trim(Xtgnbrec!gnmc)
            If Xtgnbrec.Fields("mjbz") Then
                mitem.SmallIcon = "gnqx"
                mitem.Icon = "y"
            Else
                mitem.Icon = "i"
                mitem.SmallIcon = "stb"
            End If
            mitem.Key = "T" & Trim(Xtgnbrec!gnbm)
            Xtgnbrec.MoveNext
        Loop
    End If
End Sub
Public Sub Cshgns()                                                    '初始化系统功能树
  
    Set Xtgnbrec = Cw_DataEnvi.DataConnect.Execute("SELECT * FROM xt_xtgnb where gnbm like '15%' and MenuList=1 order by gnbm")
    tvTreeView.Nodes.Add , 4, "T", "百利/ERP5.0", "xttb"
    With Xtgnbrec
        Do While Not .EOF
            If .Fields("mjbz") Then
                Set nodX = tvTreeView.Nodes.Add("T" + Trim(.Fields("sjgnbm")), 4, "T" + Trim(.Fields("gnbm")), Trim(.Fields("gnmc")), "gnqx")
            Else
                If Trim(.Fields("sjgnbm")) = "" Then
                    Set nodX = tvTreeView.Nodes.Add("T" + Trim(.Fields("sjgnbm")), 4, "T" + Trim(.Fields("gnbm")), Trim(.Fields("gnmc")), "kpgl")
                Else
                    Set nodX = tvTreeView.Nodes.Add("T" + Trim(.Fields("sjgnbm")), 4, "T" + Trim(.Fields("gnbm")), Trim(.Fields("gnmc")), "stb")
                End If
            End If
            nodX.Tag = Xtgnbrec!mjbz
            If Len(Trim(.Fields("sjgnbm"))) <= 2 Then
                nodX.EnsureVisible
            End If
            .MoveNext
        Loop
    End With

End Sub

'系统功能树操作
Private Sub tvTreeView_BeforeLabelEdit(Cancel As Integer)                     '屏蔽编辑
  Cancel = 1
End Sub

Private Sub tvTreeView_Collapse(ByVal Node As MSComctlLib.Node)               '功能树收缩
    
    If Node.Index <> 1 And Node.Key <> "T15" Then
        Node.Image = "stb"
    End If
 
End Sub

Private Sub tvTreeView_Expand(ByVal Node As MSComctlLib.Node)                 '功能树展开
    
    If Node.Index <> 1 And Node.Key <> "T15" Then
        Node.Image = "szk"
    End If

End Sub

Private Sub tvTreeView_KeyPress(KeyAscii As Integer)                          '用户按回车键执行相应功能
    
    If KeyAscii = vbKeyReturn Then
        Call tvTreeView_DblClick
    End If

End Sub

Private Sub tvTreeView_DblClick()                                             '选择功能
    
    If tvTreeView.SelectedItem.Children = 0 Then
        Set Xtgnbrec = Cw_DataEnvi.DataConnect.Execute("SELECT * FROM xt_xtgnb where gnbm='" + Mid(Trim(tvTreeView.SelectedItem.Key), 2, Len(Trim(tvTreeView.SelectedItem.Key)) - 1) + "'")
        If Not Xtgnbrec.EOF Then
            gnsyte = Trim(Xtgnbrec.Fields("gnsy"))
            Call Zxxymk(gnsyte)
        End If
    End If

End Sub

Public Sub Zxxymk(gnsy As String)                                            '根据用户选择执行相应程序
  
    Dim Rectemp As New ADODB.Recordset     '临时使用动态集
    Dim Sqlstr As String                   '临时查询字符串
  
    If Len(Trim(gnsy)) = 0 Then
        Exit Sub
    End If
    
    On Error GoTo Cwcl:
    Select Case gnsy
        
        '******************************* 文  件 *********************************
        
        Case "QC_Register"                               '用户重新注册
           XT_login.Show 1
        Case "QC_Quit"                                   '退出系统
           Unload XT_Main
        
        '******************************* 基础设置 *******************************
        
        Case "QC_CheckParaSet"                           '检验管理
            FrmJcsz_CheckParaSet.HelpContextID = 1502001
            FrmJcsz_CheckParaSet.Show 1
        Case "QC_CheckItem"                              '检验项目
            FrmJcsz_CheckItem.HelpContextID = 1502002
            FrmJcsz_CheckItem.Show 1
        Case "QC_CheckSort"                              '检验类别
            FrmJcsz_CheckSort.HelpContextID = 1502003
            FrmJcsz_CheckSort.Show 1
        Case "QC_Grade"                                  '质量等级
            FrmJcsz_Grade.HelpContextID = 1502004
            FrmJcsz_Grade.Show 1
        Case "QC_MaterialSort"                           '物料大类
            FrmJcsz_MaterialSort.HelpContextID = 1502005
            FrmJcsz_MaterialSort.Show 1
        Case "QC_Material"                               '物料编码
            FrmJcsz_Material.HelpContextID = 1502006
            FrmJcsz_Material.Show 1
        Case "QC_StoMaterArea"                           '物料产地
            FrmJcsz_Wlcd.HelpContextID = 150200701
            FrmJcsz_Wlcd.Show 1
        Case "QC_StockMaterial"                          '进料物料编码
            FrmJcsz_StockMaterial.HelpContextID = 150200702
            FrmJcsz_StockMaterial.Show 1
        Case "QC_StoCheckStand"                          '进料检验标准
            
            '判断用户是否有此功能执行权限,如有则写上机日志(进入)
            If Not Security_Log("QC_StoCheckStand_edit", Xtczybm, 1) Then
                Exit Sub
            End If
            
            Xtcdcs = "1"
            FrmJcsz_StoCheckStand.HelpContextID = 150200703
            FrmJcsz_StoCheckStand.Show 1
            
            Security_Log gnsy, Xtczybm, 2, False         '用户退出时写上机日志
        
        Case "QC_ProductMaterial"                        '成品物料编码
            FrmJcsz_ProductMaterial.HelpContextID = 150200801
            FrmJcsz_ProductMaterial.Show 1
        Case "QC_ProCheckStand"                          '成品检验标准
            
            '判断用户是否有此功能执行权限,如有则写上机日志(进入)
            If Not Security_Log("QC_ProCheckStand_edit", Xtczybm, 1) Then
                Exit Sub
            End If
            
            Xtcdcs = "1"
            FrmJcsz_ProCheckStand.HelpContextID = 150200802
            FrmJcsz_ProCheckStand.Show 1
            
            Security_Log gnsy, Xtczybm, 2, False         '用户退出时写上机日志
        
        Case "Qc_ProductLine"                            '生产线
            FrmJcsz_ProductLine.HelpContextID = 150200901
            FrmJcsz_ProductLine.Show 1
        Case "Qc_MidMaterial"                            '中控物料编码
            FrmJcsz_MidMaterial.HelpContextID = 150200902
            FrmJcsz_MidMaterial.Show 1
        Case "Qc_SamplingSite"                           '取样点
            FrmJcsz_SamplingSite.HelpContextID = 150200903
            FrmJcsz_SamplingSite.Show 1
        Case "QC_MidCheckStand"                          '中控检验标准
            
            '判断用户是否有此功能执行权限,如有则写上机日志(进入)
            If Not Security_Log("QC_MidCheckStand_edit", Xtczybm, 1) Then
                Exit Sub
            End If
            
            Xtcdcs = "1"
            FrmJcsz_MidCheckStand.HelpContextID = 150200904
            FrmJcsz_MidCheckStand.Show 1
             
            Security_Log gnsy, Xtczybm, 2, False         '用户退出时写上机日志
        
       Case "Qc_WorkEnvirItem"                           '工作环境采样点
            FrmJcsz_WorkEnvirItem.HelpContextID = 1502010
            FrmJcsz_WorkEnvirItem.Show 1


        '******************************* 进料检验 *******************************
        
        Case "QC_StockCheck"                             '进料检验分析单
            
            '判断用户是否有此功能执行权限,如有则写上机日志(进入)
            If Not Security_Log("QC_StockCheck_edit", Xtczybm, 1) Then
                Exit Sub
            End If
            
            Xtcdcs = "1"
            If GBln_IfLinkStock = True Then
               FrmJljy_StockCheckCg.HelpContextID = 1503001
                FrmJljy_StockCheckCg.Show 1
            Else
               FrmJljy_StockCheck.HelpContextID = 1503001
                FrmJljy_StockCheck.Show 1
            End If
            
            Security_Log gnsy, Xtczybm, 2, False         '用户退出时写上机日志
        
        Case "QC_StockCheckQuery"                        '产成品检验单列表
            If GBln_IfLinkStock = True Then
                FrmJljy_StockCheckListCg.HelpContextID = 1503002
                FrmJljy_StockCheckListCg.Show
                FrmJljy_StockCheckListQueryCg.Show 1
            Else
                FrmJljy_StockCheckList.HelpContextID = 1503002
                FrmJljy_StockCheckList.Show
                FrmJljy_StockCheckListQuery.Show 1
            End If
        Case "Qc_StoDemotion"                            '降等使用报告单
            
            '判断用户是否有此功能执行权限,如有则写上机日志(进入)
            If Not Security_Log("Qc_StoDemotion_edit", Xtczybm, 1) Then
                Exit Sub
            End If
            
            Xtcdcs = "1"
            If GBln_IfLinkStock = True Then
                FrmJljy_SDemotionListCg.HelpContextID = 1503003
                FrmJljy_SDemotionListCg.Show
            Else

⌨️ 快捷键说明

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