设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[模块/函数] 关于update时间后 不会自动更新

[复制链接]

点击这里给我发消息

跳转到指定楼层
1#
发表于 2017-3-9 14:37:05 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 1768061209 于 2017-3-9 15:19 编辑

我做了两个数据库,imp 和 exp. imp[td]
ID列出价格标准成本
A111
B222
C333


EXP
exp[td]
ID列出价格标准成本
A¥0.00
¥0.0
希望在EXP里面输入ID列A后,会引用数据库imp的数据自动跳出列出价格:1,标准成本:11B后,会引用数据库imp的数据自动跳出列出价格:2,标准成本:22
可是最后却没有实现。请问问题在哪?

代码如下
Option Compare Database


Private Sub ID_AfterUpdate()
    '每次产品更改的列出价格和标准成本
    If Not IsNull(Me![ID]) Then
        Me![列出价格] = GetListPrice(Me![ID])
       Me![标准成本] = GetStandardCost(Me![ID])



    '空产品订单表示用户要删除项目
    Else
        eh.TryToRunCommand acCmdDeleteRecord
    End If
End Sub

Function GetStandardCost(lID As Short) As Currency
    GetStandardCost = DLookup("[标准成本]", "imp", "[ID]=" & lID)
End Function


Function GetListPrice(lID As Short) As Currency
    GetListPrice = DLookup("[列出价格]", "imp", "[ID] = " & lID)
End Function




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2017-3-9 14:51:10 | 只看该作者
本帖最后由 LeeTien 于 2017-3-9 14:53 编辑

系统无法判断你对表的哪一列赋值,所以建议你如下处理:1,输入后数据保存到exp;
3,然后根据ID查询对应价格更新exp数据;
2,刷新窗体


点击这里给我发消息

3#
 楼主| 发表于 2017-3-9 15:20:53 | 只看该作者
LeeTien 发表于 2017-3-9 14:51
系统无法判断你对表的哪一列赋值,所以建议你如下处理:1,输入后数据保存到exp;
3,然后根据ID查询对应 ...

我刚刚把数据库给传上来了,实在不知道哪里有问题

点击这里给我发消息

4#
 楼主| 发表于 2017-3-9 15:44:46 | 只看该作者
LeeTien 发表于 2017-3-9 14:51
系统无法判断你对表的哪一列赋值,所以建议你如下处理:1,输入后数据保存到exp;
3,然后根据ID查询对应 ...

如果要手动输入,还要这个程序干嘛,

点击这里给我发消息

5#
发表于 2017-3-9 15:56:06 | 只看该作者
1. access 没有 short 数据类型,要使用long
2. 你的 ID是文字 ,要定义为String, 不能定义为long ,且 条件前后要加单引号

修改后的正确代码为:


Private Sub ID_AfterUpdate()
    '每次产品更改的初始价格和折扣
    If Not IsNull(Me![ID]) Then
        Me![列出价格] = GetListPrice(Me![ID])
       Me![标准成本] = GetStandardCost(Me![ID])
   
        
        
    '空产品订单表示用户要删除项目
    Else
        eh.TryToRunCommand acCmdDeleteRecord
    End If
End Sub

Function GetStandardCost(lID As String) As Currency
    GetStandardCost = DLookup("[标准成本]", "imp", "[ID]='" & lID & "'")
End Function


Function GetListPrice(lID As String) As Currency
    GetListPrice = DLookup("[列出价格]", "imp", "[ID]='" & lID & "'")
End Function

点击这里给我发消息

6#
 楼主| 发表于 2017-3-9 16:04:41 | 只看该作者
站长威武霸气,非常感谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-4-29 21:42 , Processed in 0.097390 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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