设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 2194|回复: 17
打印 上一主题 下一主题

[其它] 求助andymark及各位大虾

[复制链接]
跳转到指定楼层
1#
发表于 2007-5-11 22:01:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
编制程序如下, 运行结果都显示正常, 可查询"入库记录"和"仓库信息"两个数据库, 并没有更新数据, 求教问题在哪里, 非常感谢!

Private Sub 商品入库_Click()
Dim sql As String
Dim rst As ADODB.Recordset
Dim number As Integer
sql = "Select * from 商品 where 商品编号 = '" & Me.商品编号 & "'"
Set rst = New ADODB.Recordset
rst.ActiveConnection = CurrentProject.Connection
rst.CursorType = adOpenDynamic
rst.LockType = adLockOptimistic
rst.Open sql
    If Not (rst.EOF) Then
        '添加入库记录
        sql = "select * from 入库记录"
        'rst.Close
        Set rst = Nothing
        Set rst = New ADODB.Recordset
        rst.ActiveConnection = CurrentProject.Connection
        rst.CursorType = adOpenKeyset
        rst.LockType = adLockBatchOptimistic
        rst.Open sql
            With rst
            .AddNew
            !编号 = Me![编号]
            !仓库编号 = Me![仓库编号]
            !入库日期 = Me![入库日期]
            !经手人 = Me![经手人]
            !商品编号 = Me![商品编号]
            !数量 = Me![数量]
            !采购价格 = Me![采购价格]
            !供应商编号 = Me![供应商编号]
            !备注 = Me![备注]
            End With
        rst.Close
        Set rst = Nothing
        '添加或者修改库存信息
        sql = "select * from 仓库信息 where 仓库编号 = " & Me![仓库编号] & " And 商品编号 = '" & Me![商品编号] & "'"
        Set rst = New ADODB.Recordset
        rst.ActiveConnection = CurrentProject.Connection
        rst.CursorType = adOpenDynamic
        rst.LockType = adLockOptimistic
        rst.Open sql
        If Not (rst.EOF) Then
            number = rst!当前库存数量
            number = number + Me![数量]
            rst!当前库存数量 = number
            rst.Close
            Set rst = Nothing
            sql = "当前库存数量为: " & number
            MsgBox sql
            Exit Sub
        Else
            With rst
                .AddNew
                !仓库编号 = Me![仓库编号]
                !商品编号 = Me![商品编号]
                !当前库存数量 = Me![数量]
            End With
            Exit Sub
            Me.Visible = False
        End If
    Else
        rst.Close
        Set rst = Nothing
        MsgBox "系统中没有该商品的信息, 请先添加商品详细信息"
        Exit Sub
        Me.Visible = False
    End If
End Sub
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2007-5-12 07:17:00 | 只看该作者
最好把具体文件发上来,光看代码我头晕
3#
发表于 2007-5-12 07:19:00 | 只看该作者
忘记更新了update
4#
 楼主| 发表于 2007-5-12 18:09:00 | 只看该作者


With rst
            .AddNew
            !编号 = Me![编号]
            !仓库编号 = Me![仓库编号]
            !入库日期 = Me![入库日期]
            !经手人 = Me![经手人]
            !商品编号 = Me![商品编号]
            !数量 = Me![数量]
            !采购价格 = Me![采购价格]
            !供应商编号 = Me![供应商编号]
            !备注 = Me![备注]
            End With
后加了 .Update, 还是不行。 在调试状态下, 看到With模块这里显示“对象变量或With块变量未设置”

不知是什么问题?
5#
发表于 2007-5-12 18:26:00 | 只看该作者
把Set rst = Nothing改成rst.Close
6#
 楼主| 发表于 2007-5-15 23:03:00 | 只看该作者
也不行, 郁闷!
7#
发表于 2007-5-15 23:22:00 | 只看该作者
            .AddNew
            !编号 = Me![编号]
            !仓库编号 = Me![仓库编号]
            !入库日期 = Me![入库日期]
            !经手人 = Me![经手人]
            !商品编号 = Me![商品编号]
            !数量 = Me![数量]
            !采购价格 = Me![采购价格]
            !供应商编号 = Me![供应商编号]
            !备注 = Me![备注]

            .update           

而End With应该在其后,不然..可以rst.update
8#
发表于 2007-5-16 00:21:00 | 只看该作者
update放在end with 前面,另建议用2个Recordset分开处理
9#
 楼主| 发表于 2007-5-16 02:15:00 | 只看该作者
感谢两位兄弟的帮助, 试了一下,还是不行。想把程序发给两位帮忙看一下,可以吗?
10#
发表于 2007-5-16 03:06:00 | 只看该作者
精简压缩后发到论坛就可以了~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-10-6 04:07 , Processed in 0.088006 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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