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

📄

📁 VB开发的ERP系统
💻
📖 第 1 页 / 共 5 页
字号:
            If .LrText <> "" Then
                Str_QueryCondi = Str_QueryCondi & " and billdate <= '" & Trim(.LrText.Text) & "'"
            End If
        End With
    End If
     
    SqlStr = "SELECT * FROM Chhs_V_InOut a " & _
             Trim(Str_QueryCondi) & " and chhschecker<>'' Order By a.whcode,a.BillDate,a.InOutFlag desc,a.InoutMainId,a.InOutSubId"
    Set Rec_Query = Cw_DataEnvi.DataConnect.Execute(SqlStr)
    With Rec_Query
        CxbbGrid.Rows = CxbbGrid.FixedRows
        Jsqte = CxbbGrid.FixedRows
        Do While Not .EOF
    
            CxbbGrid.AddItem ""
            '[>>自定义填充内容
            CxbbGrid.TextMatrix(Jsqte, 0) = .Fields("InoutMainId")                                            'ID(主要用来查询定位用)
            CxbbGrid.TextMatrix(Jsqte, 1) = .Fields("BillCode")                                                    '单据编码
            CxbbGrid.TextMatrix(Jsqte, Sydz("001", GridStr(), Szzls)) = Trim(.Fields("BillNum") & "")              '单据号
            CxbbGrid.TextMatrix(Jsqte, Sydz("002", GridStr(), Szzls)) = Trim(.Fields("WhName") & "")               '仓库名称
            CxbbGrid.TextMatrix(Jsqte, Sydz("003", GridStr(), Szzls)) = Format(.Fields("BillDate"), "yyyy-mm-dd")  '入库日期
            If Trim(.Fields("SupplierName") & "") <> "" Then
                CxbbGrid.TextMatrix(Jsqte, Sydz("004", GridStr(), Szzls)) = Trim(.Fields("SupplierName") & "")         '供应商
            End If
            If Trim(.Fields("Cusname") & "") <> "" Then
                CxbbGrid.TextMatrix(Jsqte, Sydz("004", GridStr(), Szzls)) = Trim(.Fields("Cusname") & "")              '客户
            End If
            CxbbGrid.TextMatrix(Jsqte, Sydz("005", GridStr(), Szzls)) = Trim(.Fields("Deptname") & "")             '部门
            CxbbGrid.TextMatrix(Jsqte, Sydz("006", GridStr(), Szzls)) = Trim(.Fields("InoutClassName") & "")       '收发类别
            CxbbGrid.TextMatrix(Jsqte, Sydz("007", GridStr(), Szzls)) = Trim(.Fields("PersonName") & "")           '业务员
            CxbbGrid.TextMatrix(Jsqte, Sydz("008", GridStr(), Szzls)) = Trim(.Fields("Maker") & "")                '制单人
            CxbbGrid.TextMatrix(Jsqte, Sydz("009", GridStr(), Szzls)) = Trim(.Fields("ChhsChecker") & "")              '审核人
            CxbbGrid.TextMatrix(Jsqte, Sydz("010", GridStr(), Szzls)) = Trim(.Fields("ChalkitupMan") & "")         '记帐人
            CxbbGrid.TextMatrix(Jsqte, Sydz("019", GridStr(), Szzls)) = Trim(.Fields("Mnumber") & "")              '存货编码
            CxbbGrid.TextMatrix(Jsqte, Sydz("011", GridStr(), Szzls)) = Trim(.Fields("MName") & "")                '存货名称
            CxbbGrid.TextMatrix(Jsqte, Sydz("012", GridStr(), Szzls)) = Trim(.Fields("Model") & "")                '规格型号
            CxbbGrid.TextMatrix(Jsqte, Sydz("013", GridStr(), Szzls)) = Trim(.Fields("PrimaryUnitName") & "")      '主计量单位
            CxbbGrid.TextMatrix(Jsqte, Sydz("020", GridStr(), Szzls)) = Trim(.Fields("kjyear") & "")               '年度
            CxbbGrid.TextMatrix(Jsqte, Sydz("021", GridStr(), Szzls)) = Trim(.Fields("period") & "")               '月份
            CxbbGrid.TextMatrix(Jsqte, Sydz("025", GridStr(), Szzls)) = Trim(.Fields("billname") & "")               '备注
            CxbbGrid.TextMatrix(Jsqte, Sydz("026", GridStr(), Szzls)) = Trim(.Fields("remark") & "")               '备注
            If .Fields("inoutFlag") Then
                If .Fields("FactReceiptQuan") <> 0 Then                                                                           '数量
                    CxbbGrid.TextMatrix(Jsqte, Sydz("014", GridStr(), Szzls)) = .Fields("FactReceiptQuan")
                End If
                If Trim(.Fields("pricemode")) = "计划价法" Then
                    If .Fields("PlanPrice") <> 0 Then                                                                      '计划单价
                        CxbbGrid.TextMatrix(Jsqte, Sydz("015", GridStr(), Szzls)) = .Fields("PlanPrice")
                    End If
                    If .Fields("PlanMoney") <> 0 Then                                                                      '计划金额
                        CxbbGrid.TextMatrix(Jsqte, Sydz("016", GridStr(), Szzls)) = .Fields("PlanMoney")
                    End If
                End If
                If .Fields("Price") <> 0 Then                                                                          '实际单价
                    CxbbGrid.TextMatrix(Jsqte, Sydz("017", GridStr(), Szzls)) = .Fields("Price")
                End If
                If .Fields("Emoney") <> 0 Then                                                                         '实际金额
                    CxbbGrid.TextMatrix(Jsqte, Sydz("018", GridStr(), Szzls)) = .Fields("EMoney")
                Else
                    CxbbGrid.Cell(flexcpBackColor, Jsqte, Qslz, Jsqte, CxbbGrid.Cols - 1) = &HFFFFC0
                End If
            Else
                If .Fields("FactIssueQuan") <> 0 Then                                                                           '数量
                    CxbbGrid.TextMatrix(Jsqte, Sydz("022", GridStr(), Szzls)) = .Fields("FactIssueQuan")
                    
                    If .Fields("FactIssueQuan") < 0 And .Fields("IssueMoney") = 0 Then
                        CxbbGrid.Cell(flexcpBackColor, Jsqte, Qslz, Jsqte, CxbbGrid.Cols - 1) = &HFFFFC0
                    End If
                End If
                If .Fields("Price") <> 0 Then                                                                          '实际单价
                    CxbbGrid.TextMatrix(Jsqte, Sydz("023", GridStr(), Szzls)) = .Fields("Price")
                End If
                If .Fields("IssueMoney") <> 0 Then                                                                         '实际金额
                    CxbbGrid.TextMatrix(Jsqte, Sydz("024", GridStr(), Szzls)) = .Fields("IssueMoney")
                End If
            End If
            
            If .Fields("redblueflag") And (Trim(.Fields("pricemode")) = "先进先出法" Or Trim(.Fields("pricemode")) = "后进先出法") Then
                CxbbGrid.Cell(flexcpBackColor, Jsqte, Qslz, Jsqte, CxbbGrid.Cols - 1) = &HFFFFC0
            End If
            
            '<<]
            '设置数据行高度(Fixed)
            CxbbGrid.RowHeight(Jsqte) = Sjhgd
     
            '动态集指针加1,同时将计数器加1(Fixed)
            .MoveNext
            Jsqte = Jsqte + 1
        Loop
    End With
    
    
    '输入合计
    With CxbbGrid
        If CL_BillChalkitupCond.Chk_Sum.Value <> 0 Then
           .SubtotalPosition = flexSTBelow
           For Jsqte = Qslz To .Cols - 1
                If GridBoolean(Jsqte, 4) Then
                     .Subtotal flexSTSum, 0, Jsqte, , &HF7F3EC, , , , , True
                End If
           Next
           
           For Jsqte = .FixedRows To .Rows - 1
                If .IsSubtotal(Jsqte) Then
                    For Coljsq = Qslz To .Cols - 1
                        If Val(.TextMatrix(Jsqte, Coljsq)) = 0 And GridBoolean(Coljsq, 4) Then
                            .TextMatrix(Jsqte, Coljsq) = ""
                        End If
                    Next
                    .TextMatrix(Jsqte, 0) = .TextMatrix(Jsqte - 1, 0)
                    .TextMatrix(Jsqte, 1) = .TextMatrix(Jsqte - 1, 1)
                    .TextMatrix(Jsqte, Sydz("002", GridStr(), Szzls)) = "    合计 "
                    .RowHeight(Jsqte) = Sjhgd
                End If
           Next
        End If
    End With
    
    ']以上为用户自定义部分
    
    Set Rec_Query = Nothing

End Sub
Private Sub Sub_QueryJz(Int_QueryType As Integer)                            '生成查询结果(Define)  已记帐单据
    
    '过程参数:Int_QueryType 0-"点确定按钮"查询  1-"刷新"查询

    Dim Rec_Query As Recordset                  '查询结果动态集
    Dim Coljsq As Long                          '网格列计数器
    Dim Jsqte As Long                        '临时动态计数器
    Dim Str1 As String
    
    '以下为自定义部分[
 
    If Int_QueryType = 0 Then   '0-"点确定按钮"查询
        With CL_BillChalkitupCond
         
            '生成查询条件
            Str_QueryCondi = " where a.kjyear=" & PGKjYear & " and a.period=" & PGNowmon & " and " & .WhCode & " and a.Billcode in('1202','1203','1204','1205','1206','1212','1301','1302','1303')"
            
            If .LrText <> "" Then
                Str_QueryCondi = Str_QueryCondi & " and billdate >='" & Trim(.LrText.Text) & "'"
            End If
        End With
    End If
     
    SqlStr = "SELECT * FROM Chhs_V_List a " & Trim(Str_QueryCondi) & _
             "and StartFlag=0  Order By a.whcode,a.BillDate,a.InOutFlag desc,a.InoutMainId,a.InOutSubId"
    Set Rec_Query = Cw_DataEnvi.DataConnect.Execute(SqlStr)
    With Rec_Query
        CxbbGrid.Rows = CxbbGrid.FixedRows
        Jsqte = CxbbGrid.FixedRows
        Do While Not .EOF
    
            CxbbGrid.AddItem ""
            '[>>自定义填充内容
            If .Fields("inoutmainid") <> 0 Then
                CxbbGrid.TextMatrix(Jsqte, 0) = .Fields("InoutMainId")                                            'ID(主要用来查询定位用)
            Else
                CxbbGrid.TextMatrix(Jsqte, 0) = .Fields("InOutAdjustMainId")                                            'ID(主要用来查询定位用)
            End If
            CxbbGrid.TextMatrix(Jsqte, 1) = Trim(.Fields("BillCode"))                                                    '单据编码
            CxbbGrid.TextMatrix(Jsqte, Sydz("001", GridStr(), Szzls)) = Trim(.Fields("BillNum") & "")              '单据号
            CxbbGrid.TextMatrix(Jsqte, Sydz("002", GridStr(), Szzls)) = Trim(.Fields("WhName") & "")               '仓库名称
            CxbbGrid.TextMatrix(Jsqte, Sydz("003", GridStr(), Szzls)) = Format(.Fields("BillDate"), "yyyy-mm-dd")  '入库日期
            If Trim(.Fields("SupplierName") & "") <> "" Then
                CxbbGrid.TextMatrix(Jsqte, Sydz("004", GridStr(), Szzls)) = Trim(.Fields("SupplierName") & "")         '供应商
            End If
            If Trim(.Fields("Cusname") & "") <> "" Then
                CxbbGrid.TextMatrix(Jsqte, Sydz("004", GridStr(), Szzls)) = Trim(.Fields("Cusname") & "")              '客户
            End If
            CxbbGrid.TextMatrix(Jsqte, Sydz("005", GridStr(), Szzls)) = Trim(.Fields("Deptname") & "")             '部门
            CxbbGrid.TextMatrix(Jsqte, Sydz("006", GridStr(), Szzls)) = Trim(.Fields("InoutClassName") & "")       '收发类别
            CxbbGrid.TextMatrix(Jsqte, Sydz("007", GridStr(), Szzls)) = Trim(.Fields("PersonName") & "")           '业务员
            CxbbGrid.TextMatrix(Jsqte, Sydz("008", GridStr(), Szzls)) = Trim(.Fields("Maker") & "")                '制单人
            CxbbGrid.TextMatrix(Jsqte, Sydz("009", GridStr(), Szzls)) = Trim(.Fields("Checker") & "")              '审核人
            CxbbGrid.TextMatrix(Jsqte, Sydz("010", GridStr(), Szzls)) = Trim(.Fields("ChalkitupMan") & "")         '记帐人
            CxbbGrid.TextMatrix(Jsqte, Sydz("019", GridStr(), Szzls)) = Trim(.Fields("Mnumber") & "")              '存货编码
            CxbbGrid.TextMatrix(Jsqte, Sydz("011", GridStr(), Szzls)) = Trim(.Fields("MName") & "")                '存货名称
            CxbbGrid.TextMatrix(Jsqte, Sydz("012", GridStr(), Szzls)) = Trim(.Fields("Model") & "")                '规格型号
            CxbbGrid.TextMatrix(Jsqte, Sydz("013", GridStr(), Szzls)) = Trim(.Fields("PrimaryUnitName") & "")      '主计量单位
            CxbbGrid.TextMatrix(Jsqte, Sydz("020", GridStr(), Szzls)) = Trim(.Fields("kjyear") & "")               '年度
            CxbbGrid.TextMatrix(Jsqte, Sydz("021", GridStr(), Szzls)) = Trim(.Fields("period") & "")               '月份
            CxbbGrid.TextMatrix(Jsqte, Sydz("025", GridStr(), Szzls)) = Trim(.Fields("billname") & "")               '备注
            CxbbGrid.TextMatrix(Jsqte, Sydz("026", GridStr(), Szzls)) = Trim(.Fields("remark") & "")               '备注
            If .Fields("inoutFlag") Then
                If .Fields("InQuan") <> 0 Then                                                                           '数量
                    CxbbGrid.TextMatrix(Jsqte, Sydz("014", GridStr(), Szzls)) = .Fields("InQuan")
                End If
                If Trim(.Fields("pricemode")) = "计划价法" Then
                    If .Fields("InPrice") <> 0 Then                                                                      '计划单价
                        CxbbGrid.TextMatrix(Jsqte, Sydz("015", GridStr(), Szzls)) = .Fields("InPrice")
                    End If
                    If .Fields("InMoney") <> 0 Then                                                                      '计划金额
                        CxbbGrid.TextMatrix(Jsqte, Sydz("016", GridStr(), Szzls)) = .Fields("InMoney")
                    End If
                    If .Fields("InQuan") <> 0 Then                                                                        '实际单价
                        CxbbGrid.TextMatrix(Jsqte, Sydz("017", GridStr(), Szzls)) = (.Fields("InMoney") + .Fields("JfDiff") - .Fields("DfDiff")) / .Fields("InQuan")
                    End If
                    If (.Fields("InMoney") + .Fields("JfDiff") - .Fields("DfDiff")) <> 0 Then                                '实际金额
                        CxbbGrid.TextMatrix(Jsqte, Sydz("018", GridStr(), Szzls)) = .Fields("InMoney") + .Fields("JfDiff") - .Fields("DfDiff")
                    End If
                Else
                    If .Fields("InPrice") <> 0 Then                                                                      '计划单价
                        CxbbGrid.TextMatrix(Jsqte, Sydz("017", GridStr(), Szzls)) = .Fields("InPrice")
                    End If
                    If .Fields("InMoney") <> 0 Then                                                                      '计划金额
                        CxbbGrid.TextMatrix(Jsqte, Sydz("018", GridStr(), Szzls)) = .Fields("InMoney")
                    End If
                End If
            Else
                If .Fields("OutQuan") <> 0 Then                                                                           '数量
                    CxbbGrid.TextMatrix(Jsqte, Sydz("022", GridStr(), Szzls)) = .Fields("OutQuan")
                End If
                If .Fields("OutPrice") <> 0 Then                                                                          '实际单价
                    CxbbGrid.TextMatrix(Jsqte, Sydz("023", GridStr(), Szzls)) = .Fields("OutPrice")
                End If
                If .Fields("OutMoney") <> 0 Then                                                                         '实际金额
                    CxbbGrid.TextMatrix(Jsqte, Sydz("024", GridStr(), Szzls)) = .Fields("OutMoney")
                End If
            End If
            
            '<<]
            '设置数据行高度(Fixed)
            CxbbGrid.RowHeight(Jsqte) = Sjhgd
     
            '动态集指针加1,同时将计数器加1(Fixed)
            .MoveNext
            Jsqte = Jsqte + 1
        Loop
    End With
    
    
    '输入合计
    With CxbbGrid
        If CL_BillChalkitupCond.Chk_Sum.Value <> 0 Then
           .SubtotalPosition = flexSTBelow
           For Jsqte = Qslz To .Cols - 1
                If GridBoolean(Jsqte, 4) Then
                     .Subtotal flexSTSum, 0, Jsqte, , &HF7F3EC, , , , , True
                End If
           Next
           
           For Jsqte = .FixedRows To .Rows - 1
                If .IsSubtotal(Jsqte) Then
                    For Coljsq = Qslz To .Cols - 1
                        If Val(.TextMatrix(Jsqte, Coljsq)) = 0 And GridBoolean(Coljsq, 4) Then
                            .TextMatrix(Jsqte, Coljsq) = ""
                        End If
                    Next
                    .TextMatrix(Jsqte, 0) = .TextMatrix(Jsqte - 1, 0)
                    .TextMatrix(Jsqte, 1) = .TextMatrix(Jsqte - 1, 1)
                    .TextMatrix(Jsqte, Sydz("002", GridStr(), Szzls)) = "    合计 "
                    .RowHeight(Jsqte) = Sjhgd
                End If
           Next
        End If
    End With
    
    ']以上为用户自定义部分
    
    Set Rec_Query = Nothing

End Sub
Private Sub Sub_QueryHz(Int_QueryType As Integer)                                     '生成查询结果(Define)
    
    '过程参数:Int_QueryType 0-"点确定按钮"查询  1-"刷新"查询

    Dim Rec_Query As New ADODB.Recordset        '查询结果动态集
    Dim Coljsq As Long                          '网格列计数器
    Dim Jsqte As Long                        '临时动态计数器
    Dim Str As String
    Dim FindRow As Integer
    
    '以下为自定义部分[
     

⌨️ 快捷键说明

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