高分,求高人帮忙解决VB问题

来源:百度知道 编辑:UC知道 时间:2024/07/02 20:44:44
本人非计算机专业,在编程的过程中遇到一点困难,需要用VB编一部分程序,希望各位大侠帮忙解决问题。
流程和算法我已经有了,需要各位帮忙用程序实现一下。呵呵~,我的问题对各位来说小菜一碟,用不了编多少代码。但我搞了好几天也没弄成。
我想实现两个功能:1、生成产品结构树
2、生成物料清单
下面是具体的流程和算法,和产品结构树和物料清单概念的解释。
本人已经拿出了本人所有的 所有分数,希望各位高手不吝赐教。
现在才发现在这儿发贴有字数限制,不清楚的地方我在本贴下面的回复贴里补充。

数据表的设计原理:
在构造零部件装配层次信息表时,第一张表名称设置为产品的项目代号,表中记录根部件的所有下属零部件的信息,其中通过设置有无子节点字段来判断其是部件还是零件:若布尔型字段值是 1,则为部件,以此部件项目代号为表的名称,建立其下属所有零部件的信息表;若字段值是 0,则为零件,无下级子节点。以此类推,直至将所有零部件信息创建完成,在创建表过程中,将项目代号字段设置为主键,这样就为后续访问表制定了有序的访问规则。

生成结构树算法原理如下:
① 准备好基础数据库,通过产品项目代号查找产品数据库表。
② 打开表,获取数据库表的记录条数,指针自动指向数据表的第一条记录。
③ 访问第一条记录,查看有无下级零部件,如有下级零部件,则进入该部件的零部件数据库表,返回②;如果没有下级零部件,提取该零件数据插入树节点。
④返回上一级数据库表,指针指向下一条记录,返回③,直至访问完所有的记录及记录中的数据。

模块
Private conn As New ADODB.Connection

Public Sub OpenConn()
With conn
If .State = adStateClosed Then
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _
App.Path & "/test.mdb" & _
";Persist Security Info=False"
.Open
End If
End With
End Sub

Public Function OpenRecordset(ByVal strSql As String) As ADODB.Recordset
Dim rs As New ADODB.Recordset
With rs
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.Open strSql, conn, , , adCmdText
End With
Set OpenRecordset = rs
End Function

Public Function RunTrans(ByVal tranSql As String)
With conn
.BeginTrans
.Execute tranSql
.CommitTrans
End With
End Func