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

📄 结算方案参数.frm

📁 适合于中小型企业管理
💻 FRM
📖 第 1 页 / 共 4 页
字号:
         ItmX.SubItems(7) = Jlbrec!二级品价
         ItmX.SubItems(8) = Jlbrec!料质价
         ItmX.SubItems(9) = Jlbrec!原材料价
         ItmX.SubItems(10) = Jlbrec!成品率
         ItmX.SubItems(11) = Jlbrec!一废品率
         ItmX.SubItems(12) = Jlbrec!二废品率
        
        Jlbrec.MoveNext
    Loop

    '以上为自定义部分<<]
  
    '将网格刷新动作解冻
     lstContracts.Refresh
End Sub

Private Sub Command7_Click()
    On Error GoTo errs
        Dim Rs As ADODB.Recordset
        Dim ExcelApp As Excel.Application
        Dim ExcelBook As Excel.Workbook
        Dim ExcelSheet As Excel.Worksheet
    
        Set ExcelApp = New Excel.Application
        ExcelApp.Visible = False
        Set ExcelBook = ExcelApp.Workbooks.Add
        Set ExcelSheet = ExcelBook.Worksheets.Item(1)
        
        Set Rs = New ADODB.Recordset
         
        Rs.Open "select * from Gz_基础数据 order by 工序名称,图号", Cw_DataEnvi.DataConnect, , adLockReadOnly, adCmdText
        RecordsetToExcel Rs, ExcelSheet
        If OutTxt.Text = "" Then
          MsgBox "请指定输出文件位置和文件名!", 16, "严重错误"
          Exit Sub
        End If
        On Error GoTo ErrSave
         ExcelBook.Close True, OutTxt.Text
         MsgBox "输出成功!文件位于" & OutTxt.Text
         Rs.Close
    
    Exit Sub
errs:
        MsgBox "Select 语句错误!", 16, "严重错误"
        ExcelBook.Close False
         Exit Sub
ErrSave:
        MsgBox "输出错误!", 16, "严重错误"
End Sub

Private Sub Command8_Click()
    Cdlg.DialogTitle = "另存为Excel文件:"
    Cdlg.Filter = "Excel文件|*.Xls|所有文件|*.*"
    Cdlg.ShowSave
    If Cdlg.FileName = "" Then Exit Sub
         OutTxt.Text = Cdlg.FileName
End Sub

Private Sub Form_Load()
    '调入网格设置信息
    lstContracts.ColumnHeaders.Clear
    lstContracts.ColumnHeaders.Add , , " ID", 500
    lstContracts.ColumnHeaders.Add , , "工序", 600
    lstContracts.ColumnHeaders.Add , , " 图号", 1000
    lstContracts.ColumnHeaders.Add , , " 品名", 1000
    lstContracts.ColumnHeaders.Add , , " 规格", 1000
    lstContracts.ColumnHeaders.Add , , " 硝材", 800
    lstContracts.ColumnHeaders.Add , , "一级品价", 900
    lstContracts.ColumnHeaders.Add , , "二级品价", 900
    lstContracts.ColumnHeaders.Add , , "料质价", 750
    lstContracts.ColumnHeaders.Add , , "原材料", 750
    lstContracts.ColumnHeaders.Add , , "成品率", 750
    lstContracts.ColumnHeaders.Add , , "一废品率", 900
    lstContracts.ColumnHeaders.Add , , "二废品率", 900
    
    
    Set CmdExe = New ADODB.Command
    CmdExe.ActiveConnection = Cw_DataEnvi.DataConnect
    
 '添加品名列表
    Dim topNode As Node
    Dim RsPm As ADODB.Recordset
    Set RsPm = New ADODB.Recordset
    RsPm.Open "select 图号,品名,规格 from Bs_产品图号 order by 图号", Cw_DataEnvi.DataConnect, adOpenForwardOnly, adLockReadOnly, adCmdText
    CmbTH.Clear
    CmbPM.Clear
    TV.Nodes.Clear
    Do While Not RsPm.EOF
        CmbTH.AddItem RsPm!图号
        CmbPM.AddItem RsPm!品名
        RsPm.MoveNext
    Loop
    RsPm.Close

    '添加工序列表
    Dim RsPZ As ADODB.Recordset
    Set RsPZ = New ADODB.Recordset
    RsPZ.Open "select 工序名称 from Bs_生产流程 order by 工序名称", Cw_DataEnvi.DataConnect, adOpenForwardOnly, adLockReadOnly, adCmdText
    Do While Not RsPZ.EOF
        Set topNode = TV.Nodes.Add(, , "A" & CStr(RsPZ!工序名称), RsPZ!工序名称, "Root")
        CmbGx.AddItem RsPZ!工序名称
        topNode.Tag = RsPZ!工序名称
        LoadChild (RsPZ!工序名称)
        
        RsPZ.MoveNext
    Loop
    RsPZ.Close

End Sub

Private Sub LoadChild(Lbj As String)
        Dim child As Node

        Set RsGg = New ADODB.Recordset
    
        RsGg.Open "select * from Gz_基础数据 where 工序名称 = '" & Lbj & "' ", Cw_DataEnvi.DataConnect, adOpenStatic, adLockPessimistic, adCmdText
        Do While Not RsGg.EOF
            Set child = TV.Nodes.Add("A" & Lbj, tvwChild, "B" & Lbj & CStr(RsGg!图号), RsGg!图号, "Child")
                child.Tag = RsGg!图号
            RsGg.MoveNext
        Loop
End Sub

Private Sub Toolbjzt()                                   'Toolbar状态(编辑状态)
        Text1.Enabled = True
        Text2.Enabled = True
        Text3.Enabled = True
        Text4.Enabled = True
        Text5.Enabled = True
        Text6.Enabled = True
        Text7.Enabled = True
        
        CmbGx.Enabled = True
        CmbTH.Enabled = True
        CmbPM.Enabled = True
        
        TV.Enabled = False
        lstContracts.Enabled = False
        
        Command1.Enabled = False
        Command2.Enabled = False
        Command3.Enabled = False
        Command4.Enabled = True
        Command5.Enabled = True
        
End Sub

Private Sub ToolList()                                    '列表刷新
    
    '添加工序列表
    TV.Nodes.Clear
    Set RsPZ = New ADODB.Recordset
    RsPZ.Open "select 工序名称 from Bs_生产流程 order by 工序名称", Cw_DataEnvi.DataConnect, adOpenForwardOnly, adLockReadOnly, adCmdText
    Do While Not RsPZ.EOF
        Set topNode = TV.Nodes.Add(, , "A" & CStr(RsPZ!工序名称), RsPZ!工序名称, "Root")
        topNode.Tag = RsPZ!工序名称
        LoadChild (RsPZ!工序名称)
        
        RsPZ.MoveNext
    Loop
    RsPZ.Close
    lstContracts.ListItems.Clear
End Sub

Private Sub Toolfbjzt()                                    'Toolbar状态(非编辑状态)
        Text1.Enabled = False
        Text2.Enabled = False
        Text3.Enabled = False
        Text4.Enabled = False
        Text5.Enabled = False
        Text6.Enabled = False
        Text7.Enabled = False

        CmbGx.Enabled = False
        CmbTH.Enabled = False
        CmbPM.Enabled = False
        
        TV.Enabled = True
        lstContracts.Enabled = True
        
        Command1.Enabled = True
        Command2.Enabled = False
        Command3.Enabled = False
        Command4.Enabled = False
        Command5.Enabled = False
End Sub

'纪录导出到Execl
Public Sub RecordsetToExcel(Rs As ADODB.Recordset, excel_sheet As Excel.Worksheet)
    Dim i As Long, j As Long
    Dim excel_range As Excel.Range
    Dim col_count As Long

    If Rs.RecordCount = 0 Then
        Exit Sub
    End If

    Set excel_range = excel_sheet.Cells
    col_count = Rs.Fields.Count
                
    For i = 0 To col_count - 1
        excel_sheet.Cells(1, i + 1).Value = Rs.Fields(i).Name
    Next
    excel_sheet.Range(excel_sheet.Cells(1, 1), _
                      excel_sheet.Cells(1, col_count)).Font.Bold = True
        
    excel_sheet.Range("A2").CopyFromRecordset Rs
            
End Sub

'修改、删除权限管理
Private Function RsQx() As Boolean
        Set RsJcqx = New ADODB.Recordset
        RsJcqx.Open "select 创建者 from Gz_基础数据 where (ID=" & Lablsh.Caption & ")", Cw_DataEnvi.DataConnect, adOpenKeyset, adLockOptimistic
        If RsJcqx!创建者 <> Xtczy Then
            RsQx = False
           MsgBox "创建者:" & RsJcqx!创建者 & "。", vbExclamation, "请联系管理员!"
           Exit Function
        Else
            RsQx = True
        End If
End Function

Private Sub lstContracts_ItemClick(ByVal Item As MSComctlLib.ListItem)
    '[>>查询连接串
    Sqlstr = "SELECT Gz_基础数据.id,工序名称,Gz_基础数据.图号,品名,规格,硝材,一级品价,二级品价,料质价,原材料价,成品率,一废品率,二废品率 FROM Gz_基础数据,BS_产品图号 where Gz_基础数据.图号=BS_产品图号.图号 and Gz_基础数据.ID=" & lstContracts.SelectedItem.Text
    '<<]
    Set RsGg = Cw_DataEnvi.DataConnect.Execute(Sqlstr)

    With RsGg
        If Trim(lstContracts.SelectedItem.Text) <> "" Then

            CmbGx.Text = !工序名称
            CmbTH.Text = !图号
            CmbPM.Text = !品名
            TxtGG.Text = !规格
            TxtXc.Text = !硝材
            Text1.Text = !一级品价
            Text2.Text = !二级品价
            Text3.Text = !料质价
            Text4.Text = !原材料价
            Text5.Text = !成品率
            Text6.Text = !一废品率
            Text7.Text = !二废品率

            Lablsh.Caption = !Id
            
            Command2.Enabled = True
            Command3.Enabled = True
        End If
    End With
End Sub

Private Sub tv_NodeClick(ByVal Node As MSComctlLib.Node)
   On Error Resume Next
   Dim txtSQLBJ As String
    If Left(Node.Key, 1) = "B" Then
        CBJ = Right(Node.Parent.Key, Len(Node.Parent.Key) - 1)
        CmbGx.Text = Node.Parent.Tag
        CJMC = Node.Parent.Tag
        YGXM = Node.Tag
        '[>>查询连接串
        Sqlstr = "SELECT Gz_基础数据.id,工序名称,Gz_基础数据.图号,品名,规格,硝材,一级品价,二级品价,料质价,原材料价,成品率,一废品率,二废品率 FROM Gz_基础数据,BS_产品图号 where Gz_基础数据.图号=BS_产品图号.图号 and Gz_基础数据.图号='" & YGXM & "' and 工序名称='" & CJMC & "'"
        '<<]
        Set RsGg = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
    
        With RsGg
            If Trim(lstContracts.SelectedItem.Text) <> "" Then
                CmbGx.Text = !工序名称
                CmbTH.Text = !图号
                CmbPM.Text = !品名
                TxtGG.Text = !规格
                TxtXc.Text = !硝材
                Text1.Text = !一级品价
                Text2.Text = !二级品价
                Text3.Text = !料质价
                Text4.Text = !原材料价
                Text5.Text = !成品率
                Text6.Text = !一废品率
                Text7.Text = !二废品率
    
                Lablsh.Caption = !Id
                
                Command2.Enabled = True
                Command3.Enabled = True
            End If
        End With
    ElseIf Left(Node.Key, 1) = "A" Then
        CBJ = Right(Node.Key, Len(Node.Key) - 1)
        CmbGx.Text = Node.Tag
        CJMC = Node.Tag
        CmbTH.Text = ""
        CmbPM.Text = ""
        TxtGG.Text = ""
        TxtXc.Text = ""
        Text1.Text = ""
        Text2.Text = ""
        Text3.Text = ""
        Text4.Text = ""
        Text5.Text = ""
        Text6.Text = ""
        Text7.Text = ""
        Lablsh.Caption = ""
         Call Cxnrtcwg(CJMC)
         Call Toolfbjzt
    End If

End Sub

Private Sub Cxnrtcwg(StrBM As String)                                 '查询内容填充网格(刷新)
    Dim Sqlstr As String              '查询连接串
    Dim jsqte As Long                '查询临时使用变量
  
    '为加快显示速度,将网格刷新动作冻结


    '[>>查询连接串
    Sqlstr = "SELECT Gz_基础数据.id,工序名称,Gz_基础数据.图号,品名,规格,硝材,一级品价,二级品价,料质价,原材料价,成品率,一废品率,二废品率 FROM Gz_基础数据,BS_产品图号 where Gz_基础数据.图号=BS_产品图号.图号 and 工序名称='" & StrBM & "' order by Gz_基础数据.图号"
    '<<]
    Set Jlbrec = Cw_DataEnvi.DataConnect.Execute(Sqlstr)
    

    '[>>以下为自定义部分
    Dim ItmX As ListItem

    lstContracts.ListItems.Clear
    Do While Not Jlbrec.EOF
        Set ItmX = lstContracts.ListItems.Add(, , Jlbrec!Id)
         ItmX.SubItems(1) = Jlbrec!工序名称
         ItmX.SubItems(2) = Jlbrec!图号
         ItmX.SubItems(3) = Jlbrec!品名
         ItmX.SubItems(4) = Jlbrec!规格
         ItmX.SubItems(5) = Jlbrec!硝材
         ItmX.SubItems(6) = Jlbrec!一级品价
         ItmX.SubItems(7) = Jlbrec!二级品价
         ItmX.SubItems(8) = Jlbrec!料质价
         ItmX.SubItems(9) = Jlbrec!原材料价
         ItmX.SubItems(10) = Jlbrec!成品率
         ItmX.SubItems(11) = Jlbrec!一废品率
         ItmX.SubItems(12) = Jlbrec!二废品率
        
        Jlbrec.MoveNext
    Loop

    '以上为自定义部分<<]
  
    '将网格刷新动作解冻
     lstContracts.Refresh
    
End Sub

⌨️ 快捷键说明

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