最近在搞毕设,题目是机加工产品的质量追溯系统,追溯流程图如下
       求这个流程图的编程

解决方案 »

  1.   

    赵4老师,帮我看下这个程序,为什么得不到k,l的值
    If rs1.RecordCount > 0 Then
            Do While rs1.EOF = False
                On Error Resume Next
                 If a = rs1.Fields(1) Then
                   b = rs1.Fields(2)
                   j = j + 1
                 End If
                rs1.MoveNext                  '记录下移
            Loop
        End If
      If rs6.RecordCount > 0 Then
            Do While rs6.EOF = False
                On Error Resume Next
                 If b = rs6.Fields(1) Then c = rs6.Fields(2)
                rs6.MoveNext                  '记录下移
            Loop
      End If
      If rs7.RecordCount > 0 Then
            Do While rs7.EOF = False
                On Error Resume Next
                 If c = rs7.Fields(7) Then
                  k = rs7.Fields(8)
                  l = rs7.Fields(4)
                  End If
                rs7.MoveNext                  '记录下移
            Loop
      End if
      

  2.   

    Do While rs1.EOF = False and rs1.BOF = False
    ……
    先注释掉 
    ‘On Error Resume Next
    方便在IDE里面运行出错时弹出对话框,点调试后光标自动定位到出错的语句。
    此时可以在立即窗口中使用
    ? 变量名
    显示当前变量的值辅助调试。
      

  3.   

    就是在Do While rs1.EOF = False后面加and rs1.BOF = False就可以了?为什么我试了还是不行
      

  4.   

    总的程序是这样的,运行结果如下,,后面的值读取不到啊Private Sub Command2_Click()
    a = Text2.Text
    j = 0 With MS2
            .Rows = 7
            .Cols = 3
            '定义MS1表格的列宽和表头信息
            s = Array("600", "1400", "8000")
            y = Array("序号", "数据库", "查询内容")
            For i = 0 To 2
                .ColWidth(i) = s(i)                   '定义表格的列宽
                .TextMatrix(0, i) = y(i)              '定义表头信息
            Next i
            '定义MS1表格的行号
            For i = 1 To 6
                .TextMatrix(i, 0) = i         '为表格第0列赋值
            Next i
        End With
      If rs1.RecordCount > 0 Then
            Do While rs1.EOF = False And rs1.BOF = False
                On Error Resume Next
                 If a = rs1.Fields(1) Then
                   b = rs1.Fields(2)
                   j = j + 1
                 End If
                rs1.MoveNext                  '记录下移
            Loop
        End If
      If rs6.RecordCount > 0 Then
            Do While rs6.EOF = False
                On Error Resume Next
                 If b = rs6.Fields(1) Then c = rs6.Fields(2)
                rs6.MoveNext                  '记录下移
            Loop
      End If
      If rs7.RecordCount > 0 Then
            Do While rs7.EOF = False
                On Error Resume Next
                 If c = rs7.Fields(7) Then
                  k = rs7.Fields(8)
                  l = rs7.Fields(4)
                  End If
                rs7.MoveNext                  '记录下移
            Loop
      End If
      If rs8.RecordCount > 0 Then
            Do While rs8.EOF = False
                On Error Resume Next
                 If c = rs8.Fields(7) Then n = rs8.Fields(8) And p = rs8.Fields(4)
                rs8.MoveNext                  '记录下移
            Loop
      End If
      If rs2.RecordCount > 0 Then
            Do While rs2.EOF = False
                On Error Resume Next
                 If c = rs2.Fields(7) Then m = rs2.Fields(4) And q = rs7.Fields(5) And e = rs2.Fields(8)
                rs2.MoveNext                  '记录下移
            Loop
      End If
      
      If rs3.RecordCount > 0 Then
            Do While rs3.EOF = False
                On Error Resume Next
                 If c = rs3.Fields(7) Then f = rs3.Fields(4) And g = rs3.Fields(5) And h = rs3.Fields(8)
                rs3.MoveNext                  '记录下移
            Loop
      End If
      
      If j = 1 Then
        MS2.TextMatrix(1, 1) = "dgcphxtdglsjk"
        MS2.TextMatrix(1, 2) = "相关联的箱体编码为" & b
         MS2.TextMatrix(2, 1) = "xthddglsjk"
          MS2.TextMatrix(2, 2) = "相关联的垛的编码为" & c
           MS2.TextMatrix(3, 1) = "cgsjk"
            MS2.TextMatrix(3, 2) = "供应商为" & l & "采购单为" & k
             MS2.TextMatrix(4, 1) = "xssjk"
              MS2.TextMatrix(4, 2) = "购买厂家为" & p & "销售单为" & n
               MS2.TextMatrix(5, 1) = "ccglsjk"
                MS2.TextMatrix(5, 2) = "出仓仓库为" & m & ",目的仓库为" & q & ",出库单为" & e
                 MS2.TextMatrix(6, 1) = "rcggsjk"
                  MS2.TextMatrix(6, 2) = "来源仓库为" & f & ",入仓仓库为" & g & ",入库单为" & h
                  MsgBox "该产品为正品", , "提示"
      Else
         MS2.TextMatrix(1, 1) = "dgcphxtdglsjk"
         MS2.TextMatrix(1, 2) = "该码不存在或已被剔除"
          MS2.TextMatrix(2, 1) = ""
          MS2.TextMatrix(2, 2) = ""
           MS2.TextMatrix(3, 1) = ""
            MS2.TextMatrix(3, 2) = ""
             MS2.TextMatrix(4, 1) = ""
              MS2.TextMatrix(4, 2) = ""
               MS2.TextMatrix(5, 1) = ""
                MS2.TextMatrix(5, 2) = ""
                 MS2.TextMatrix(6, 1) = ""
                  MS2.TextMatrix(6, 2) = ""
         MsgBox "该产品为假冒伪劣产品", , "提示"
      End If
      
    End Sub
      

  5.   

    虽然在VB中,变量可以不声明就使用。 但是:变量必须声明才能使用才是编程的好习惯!
       因此,每个模块的代码开头,应该有 Option Explicit
      这个可以在VB6的选项设置中设置,让VB6在创建任意一个新模块时,自动加上这句。
      

  6.   

    虽然在VB中,变量可以不声明就使用。 但是:变量必须声明才能使用才是编程的好习惯!
       因此,每个模块的代码开头,应该有 Option Explicit
      这个可以在VB6的选项设置中设置,让VB6在创建任意一个新模块时,自动加上这句。
    额。。这个我已经申明了谢谢。。我还有个问题,就是,为什么我第一次输入查询的时候,结果是对的。。第二次不改输入内容,再按下command按钮,结果就出错。。怎么解决
      

  7.   

    关于自己是否适合编程的很简单的测试:
    在报纸或杂志上随便找一段约1000字的文章,在Word中输入一遍。输完后再参考下面答案:A里面有10处以上文字或标点错误
    B里面没有文字或标点错误并敢为此跟人打赌
    C里面没有文字或标点错误并且字体和排版完全与原稿一致
    D打印在半透明的纸上和原稿重叠在一起检查一模一样,且自我感觉很有成就感A不适合编程(理由:打字准确度偏低、粗心大意)
    B初级程序员(理由:打字准确度很高、认真细致、自信、理解全角半角概念)
    C高级程序员(理由:在B的基础上理解字体和排版也是电脑打印的重要因素、但相比D还不够偏执、精益求精、结果可验证)
    D软件项目经理(理由:能针对项目给出令人信服的细致到极点的需求说明和典型测试用例。用户几乎挑不出毛病。专业!)如果想从A变成B的话,到我的资源http://download.csdn.net/detail/zhao4zhong1/4084259里面下载“适合程序员的键盘练习”
      

  8.   

    虽然在VB中,变量可以不声明就使用。 但是:变量必须声明才能使用才是编程的好习惯!
       因此,每个模块的代码开头,应该有 Option Explicit
      这个可以在VB6的选项设置中设置,让VB6在创建任意一个新模块时,自动加上这句。
    额。。这个我已经申明了谢谢。。我还有个问题,就是,为什么我第一次输入查询的时候,结果是对的。。第二次不改输入内容,再按下command按钮,结果就出错。。怎么解决
    请确定每次提交查询时,都按照打开数据库连接,打开数据集,提交查询,获取程序结果到记录集,关闭记录集,关闭数据库连接的步骤。
      

  9.   

    关于自己是否适合编程的很简单的测试:
    在报纸或杂志上随便找一段约1000字的文章,在Word中输入一遍。输完后再参考下面答案:A里面有10处以上文字或标点错误
    B里面没有文字或标点错误并敢为此跟人打赌
    C里面没有文字或标点错误并且字体和排版完全与原稿一致
    D打印在半透明的纸上和原稿重叠在一起检查一模一样,且自我感觉很有成就感A不适合编程(理由:打字准确度偏低、粗心大意)
    B初级程序员(理由:打字准确度很高、认真细致、自信、理解全角半角概念)
    C高级程序员(理由:在B的基础上理解字体和排版也是电脑打印的重要因素、但相比D还不够偏执、精益求精、结果可验证)
    D软件项目经理(理由:能针对项目给出令人信服的细致到极点的需求说明和典型测试用例。用户几乎挑不出毛病。专业!)如果想从A变成B的话,到我的资源http://download.csdn.net/detail/zhao4zhong1/4084259里面下载“适合程序员的键盘练习”

    都成D了,我还有救吗?
      

  10.   

    关于自己是否适合编程的很简单的测试:
    在报纸或杂志上随便找一段约1000字的文章,在Word中输入一遍。输完后再参考下面答案:A里面有10处以上文字或标点错误
    B里面没有文字或标点错误并敢为此跟人打赌
    C里面没有文字或标点错误并且字体和排版完全与原稿一致
    D打印在半透明的纸上和原稿重叠在一起检查一模一样,且自我感觉很有成就感A不适合编程(理由:打字准确度偏低、粗心大意)
    B初级程序员(理由:打字准确度很高、认真细致、自信、理解全角半角概念)
    C高级程序员(理由:在B的基础上理解字体和排版也是电脑打印的重要因素、但相比D还不够偏执、精益求精、结果可验证)
    D软件项目经理(理由:能针对项目给出令人信服的细致到极点的需求说明和典型测试用例。用户几乎挑不出毛病。专业!)如果想从A变成B的话,到我的资源http://download.csdn.net/detail/zhao4zhong1/4084259里面下载“适合程序员的键盘练习”

    都成D了,我还有救吗?
    去应聘软件项目经理啊。