设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 6708|回复: 6
打印 上一主题 下一主题

ADP 中用什么代替CurrentDb.OpenRecordset语名?

[复制链接]
跳转到指定楼层
1#
发表于 2011-4-20 11:20:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
MDB中用CurrentDb.OpenRecordset语名,请问ADP中用不上,用什么代替?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅

点击这里给我发消息

2#
发表于 2011-4-20 15:40:46 | 只看该作者
CurrentDb.OpenRecordset是DAO的对象方法,ADP中要用ADO了,具体使用请查看ADO的帮助
3#
 楼主| 发表于 2011-4-20 16:29:51 | 只看该作者
Private Sub Form_Load() '加载树内容
    Dim objNode As Node
    Dim rst As DAO.Recordset
    Dim MaxLevel As Integer '最大级别
    Dim i As Integer

    Set objTree = Me.TreeView0.Object
    objTree.Nodes.Clear '这句不可少

    Set objNode = objTree.Nodes.Add(, , "NO.1", "存货档案", "K1", "K2") ' 设置最顶层
        MaxLevel = CurrentDb.OpenRecordset("SELECT DBO_存货分类.层数 FROM DBO_存货分类 order by DBO_存货分类.层数 desc;")(0).Value

    For i = 1 To MaxLevel

    Set rst = CurrentDb.OpenRecordset("SELECT DBO_存货分类.层数,DBO_存货分类.存货分类编码,DBO_存货分类.存货分类名称 FROM DBO_存货分类 where  DBO_存货分类.层数=" & i & ";")

    Do Until rst.EOF

            If rst!层数 = 1 Then   '顶层菜单
                Set objNode = objTree.Nodes.Add("NO.1", 4, "NO." & Trim(rst!存货分类编码), Trim(rst!存货分类名称), "K1", "K2")
            Else
                Set objNode = objTree.Nodes.Add("NO." & Left(rst!存货分类编码, (rst!层数 - 1) * perSectionLong), 4, "NO." & Trim(rst!存货分类编码), Trim(rst!存货分类名称), "K1", "K2")
            End If
            rst.MoveNext
        Loop
    Next
    Me.TreeView0.Nodes(1).Expanded = True
    Call TreeView0_NodeClick(objTree.Nodes(1))
End Sub
以上代码是mdb加载树节点的,我想转到ADP中不知怎样改?

点击这里给我发消息

4#
发表于 2011-4-21 22:41:47 | 只看该作者
回复 zhaozhuonayes 的帖子

Private Sub Form_Load() '加载树内容
    Dim objNode As Node
    Dim rst As ADODB.Recordset
    Dim MaxLevel As Integer '最大级别
    Dim i As Integer

    Set objTree = Me.TreeView0.Object
    objTree.Nodes.Clear '这句不可少

    Set objNode = objTree.Nodes.Add(, , "NO.1", "存货档案", "K1", "K2") ' 设置最顶层
        MaxLevel = CurrentProject.Connection.Execute("SELECT DBO_存货分类.层数 FROM DBO_存货分类 order by DBO_存货分类.层数 desc;")(0).Value

    For i = 1 To MaxLevel

    Set rst = CurrentProject.Connection.Execute("SELECT DBO_存货分类.层数,DBO_存货分类.存货分类编码,DBO_存货分类.存货分类名称 FROM DBO_存货分类 where  DBO_存货分类.层数=" & i & ";")

    Do Until rst.EOF

            If rst!层数 = 1 Then   '顶层菜单
                Set objNode = objTree.Nodes.Add("NO.1", 4, "NO." & Trim(rst!存货分类编码), Trim(rst!存货分类名称), "K1", "K2")
            Else
                Set objNode = objTree.Nodes.Add("NO." & Left(rst!存货分类编码, (rst!层数 - 1) * perSectionLong), 4, "NO." & Trim(rst!存货分类编码), Trim(rst!存货分类名称), "K1", "K2")
            End If
            rst.MoveNext
        Loop
    Next
    Me.TreeView0.Nodes(1).Expanded = True
    Call TreeView0_NodeClick(objTree.Nodes(1))
End Sub
5#
 楼主| 发表于 2011-4-23 08:08:10 | 只看该作者
谢谢老师!
6#
 楼主| 发表于 2011-4-23 08:13:57 | 只看该作者
本帖最后由 zhaozhuonayes 于 2011-4-23 08:18 编辑

原来用这个代替!我明白了!
7#
 楼主| 发表于 2011-4-23 08:17:42 | 只看该作者
本帖最后由 zhaozhuonayes 于 2011-4-23 08:18 编辑

我知道了,我会改了,谢谢老师指导!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-12-1 20:39 , Processed in 0.099660 second(s), 31 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表