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

📄 frmcommodity.frm

📁 很好! 很实用! 免费!
💻 FRM
📖 第 1 页 / 共 2 页
字号:
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit

Private Sub CommClass_Click()
    If CommClass.SelectedItem Is Nothing Then Exit Sub
    If CommClass.SelectedItem.Children > 0 Then Exit Sub
    Call GetChildNode(CommClass.SelectedItem.Key)
    CommClass.SelectedItem.Expanded = True
End Sub
Private Sub Form_Load()
'button
    If g_ButtonArrange Then
        topToolbar.TextAlignment = tbrTextAlignBottom
    Else
        topToolbar.TextAlignment = tbrTextAlignRight
    End If
'caption
    Me.Caption = "商品管理 "
    Call GetChildNode("")
End Sub
Private Sub CheckButton()
    If CommClass.SelectedItem Is Nothing Then
        topToolbar.Buttons("InsertClass2").Enabled = False
        topToolbar.Buttons("UpdateClass").Enabled = False
        topToolbar.Buttons("DeleteClass").Enabled = False
        topToolbar.Buttons("PropertyClass").Enabled = False
        topToolbar.Buttons("InsertItem").Enabled = False
        topToolbar.Buttons("UpdateItem").Enabled = False
        topToolbar.Buttons("DeleteItem").Enabled = False
    Else
        topToolbar.Buttons("InsertClass2").Enabled = True
        topToolbar.Buttons("UpdateClass").Enabled = True
        topToolbar.Buttons("DeleteClass").Enabled = True
        topToolbar.Buttons("PropertyClass").Enabled = True
        topToolbar.Buttons("InsertItem").Enabled = True
        If ExcelGrid1.DataRecordset.RecordCount = 0 Then
            topToolbar.Buttons("UpdateItem").Enabled = False
            topToolbar.Buttons("DeleteItem").Enabled = False
        Else
            topToolbar.Buttons("UpdateItem").Enabled = True
            topToolbar.Buttons("DeleteItem").Enabled = True
        End If
    End If
    
End Sub
Private Sub GetChildNode(ByVal sParentID As String)
Dim rs As ADODB.Recordset
Dim sSQL As String
Dim tmpNode As Node
    sSQL = "select ID,Name,No from bcCommodityClass where ParentID "
    If sParentID = "" Then
        sSQL = sSQL + " is null"
    Else
        sSQL = sSQL + "=" + CheckString(sParentID)
    End If
    sSQL = sSQL + " order by No"
    Set rs = g_cn.Execute(sSQL)
    Do While Not rs.EOF
        If sParentID = "" Then
            Set tmpNode = CommClass.Nodes.Add(, , rs.Fields("ID").value, rs.Fields("Name").value)
        Else
            Set tmpNode = CommClass.Nodes.Add(CommClass.Nodes.Item(sParentID).index, 4, rs.Fields("ID").value, rs.Fields("Name").value)
        End If
        tmpNode.Tag = rs.Fields("No").value
    rs.MoveNext
    Loop
    
    Call RefreshData
End Sub
Private Sub Form_Resize()
On Error Resume Next
    CommClass.Left = 10
    ExcelGrid1.Left = CommClass.Left + CommClass.Width + 10
    CommClass.Height = Me.Height - ExcelGrid1.Top - 300
    CommClass.Top = topToolbar.Top + topToolbar.Height + 100
    ExcelGrid1.Width = Me.Width - CommClass.Left - CommClass.Width - 40
    ExcelGrid1.Top = topToolbar.Top + topToolbar.Height + 100
    ExcelGrid1.Height = Me.Height - ExcelGrid1.Top - 300
Err.Clear
    
End Sub

Private Sub topToolbar_ButtonClick(ByVal Button As MSComctlLib.Button)
Dim sSQL As String
Dim objClass As New clsCommodityClass
Dim objItem As New clsCommodity
Dim tmpNode As Node

    Select Case Button.Key
        Case "InsertClass1"
            With frmCommodityClassModify
                .Show vbModal
                If .lSaved Then
                    objClass.m_ID = newGUID
                    objClass.m_Name = .sName
                    objClass.m_No = .sNo
                    objClass.m_Terminally = .sTerminally
                    If Not CommClass.SelectedItem Is Nothing Then
                        objClass.m_ParentID = CommClass.SelectedItem.Key
                    End If

                    If objClass.Insert() Then
                        If CommClass.SelectedItem Is Nothing Then
                            Set tmpNode = CommClass.Nodes.Add(, , objClass.m_ID, objClass.m_Name)
                        Else
                            Set tmpNode = CommClass.Nodes.Add(CommClass.SelectedItem.index, 4, objClass.m_ID, objClass.m_Name)
                        End If
                        tmpNode.Tag = objClass.m_No
                        If Not CommClass.SelectedItem Is Nothing Then CommClass.SelectedItem.Expanded = True
                    End If
                End If
             End With
        Case "InsertClass2"
            With frmCommodityClassModify
                .Show vbModal
                If .lSaved Then
                    objClass.m_ID = newGUID
                    objClass.m_Name = .sName
                    objClass.m_No = .sNo
                    objClass.m_Terminally = .sTerminally
                    objClass.m_ParentID = CommClass.SelectedItem.Parent.Key

                    If objClass.Insert() Then
                       Set tmpNode = CommClass.Nodes.Add(CommClass.SelectedItem.index, 2, objClass.m_ID, objClass.m_Name)
                        tmpNode.Tag = objClass.m_No
                        CommClass.SelectedItem.Parent.Expanded = True
                    End If
                End If
             End With
        Case "UpdateClass"
            objClass.FillByID CommClass.SelectedItem.Key
            With frmCommodityClassModify
                .txtName.Text = objClass.m_Name
                .txtNo.Text = objClass.m_No
                If objClass.m_Terminally = .opTerminally0.Caption Then
                    .opTerminally0.value = True
                Else
                    .opTerminally1.value = True
                End If
                .Show vbModal
                If .lSaved Then
                    objClass.m_Name = .sName
                    objClass.m_No = .sNo
                    objClass.m_Terminally = .sTerminally

                    If objClass.Update() Then
                        CommClass.SelectedItem.Text = objClass.m_Name
                        CommClass.SelectedItem.Tag = objClass.m_No
                    End If
                End If
             End With
        Case "DeleteClass"
            objClass.m_ID = CommClass.SelectedItem.Key
            If objClass.Delete() Then
                CommClass.Nodes.Remove CommClass.SelectedItem.index
            End If
        Case "PropertyClass"
            With frmCommodityClassProperty
                .sClassID = CommClass.SelectedItem.Key
                .Show vbModal
            End With
        Case "InsertItem"
            With frmCommodityInsert
                .sClassID = CommClass.SelectedItem.Key
                .sClassNo = CommClass.SelectedItem.Tag
                .txtClass.Text = CommClass.SelectedItem.Text
                .Show vbModal
            End With
        Case "UpdateItem"
            With frmCommodityUpdate
                .sClassID = CommClass.SelectedItem.Key
                .sItemID = ExcelGrid1.DataRecordset("ID").value
                .sClassNo = CommClass.SelectedItem.Tag
                .txtClass.Text = CommClass.SelectedItem.Text
                .Show vbModal
            End With
        Case "DeleteItem"
            With objItem
                .m_ID = ExcelGrid1.DataRecordset("ID").value
                If .Delete() Then
                    Call RefreshData
                Else
                    MsgBox "Delete Error!"
                End If
            End With
        Case "Exit"
            Unload Me
    End Select
    Set objClass = Nothing
    Set objItem = Nothing
End Sub

Public Sub RefreshData()
Dim rsTemp As New ADODB.Recordset
Dim sSQL As String
    If CommClass.SelectedItem Is Nothing Then
        sSQL = "select * from bcCommodity where ID=0x0 order by Code"
    Else
        sSQL = "select * from bcCommodity where ClassID=" + CheckString(CommClass.SelectedItem.Key) + " order by Code"
    End If
    rsTemp.Open sSQL, g_cn, adOpenDynamic, adLockReadOnly
    
    Dim rsPro As New ADODB.Recordset
    Dim strField As String
    Dim strCaption As String
    If CommClass.SelectedItem Is Nothing Then
        sSQL = "select  [Name], [FieldName] from bcCommodityClassProperty where ClassID=0x0 "
    Else
        sSQL = "select  [Name], [FieldName] from bcCommodityClassProperty where ClassID=" + CheckString(CommClass.SelectedItem.Key) + " order by FieldName"
    End If
    Set rsPro = g_cn.Execute(sSQL)
    Do While Not rsPro.EOF
        strField = strField + rsPro.Fields("FieldName").value
        strCaption = strCaption + rsPro.Fields("Name").value
        rsPro.MoveNext
        If Not rsPro.EOF Then
            strField = strField + ","
            strCaption = strCaption + ","
        End If
    Loop
    
    ExcelGrid1.RelativeGrid rsTemp, "ClassNo,Status,New,Manufacture,Item,PArea,Inventory,PurchaseBatch,SaleBatch,PurchaseTax,SaleTax,Package,Unit,Weight,WeightUnit,Cubage,CubageUnit,Description,PurchasePrice,SalePrice" + IIf(strField > "", "," + strField, ""), "类编号,产品状态,新品,制造商,型号,产地,库存,采购批量,销售批量,进项税,销项税,包装,单位,重量,重量单位,体积,体积单位,商品描述,采购价,销售价" + IIf(strCaption > "", "," + strCaption, "")
        
    Call CheckButton

End Sub

⌨️ 快捷键说明

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