设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[窗体] 如何避免出现重复输入

[复制链接]
跳转到指定楼层
1#
发表于 2009-1-1 09:01:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
工厂固定生产一些产品,每个月统计一次每个产品的产量,要避免出现同一个月内某一个产品重复输入的情况,该怎么办?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2009-1-1 09:02:21 | 只看该作者
更新前进行判断
3#
 楼主| 发表于 2009-1-1 09:10:29 | 只看该作者
我猜是在afterupdate过程里面吧?是不是要在窗体的后台表里查询同样月份的记录里面产品名称字段有没有同样的值?
4#
发表于 2009-1-1 09:11:13 | 只看该作者
你把你的例子传上来。
5#
 楼主| 发表于 2009-1-1 09:17:10 | 只看该作者
请看

本帖子中包含更多资源

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

x
6#
发表于 2009-1-1 10:20:39 | 只看该作者
原帖由 linda2181 于 2009-1-1 09:17 发表
请看

几个问题说一下
1. 每个表应该有个主键
2. 日期最好有个默认值方便输入(建议而已)
3. 同样的数据不要重复保存,比如生产资料表中除了产品id,其他与产品相关的资料不要再次保存。
以上几点均已帮你处理了

请将你原来的代码删除掉,更换为下面的代码
  1. Private Sub 产品ID_BeforeUpdate(Cancel As Integer)
  2.     Dim Criteria As String
  3.     Dim intCount As Integer
  4.     Criteria = "产品ID=" & Me.产品ID & " And Format(统计期间,'yyyymm')='" & Format(统计期间, _
  5.                                                                            "yyyymm") & "'"
  6.     intCount = DCount("*", "生产情况表", Criteria)
  7.     If intCount > 0 Then
  8.         MsgBox "本统计期间,该产品(" & Me.产品ID & ")已存在"
  9.         Cancel = True
  10.         Me.产品ID.Undo
  11.     End If
  12. End Sub
复制代码

本帖子中包含更多资源

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

x
7#
 楼主| 发表于 2009-1-1 10:34:15 | 只看该作者
文件先下来学习,几点意见很好,很感谢斑竹的热心与细心,谢谢
8#
发表于 2009-2-18 20:43:25 | 只看该作者
学习
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-6 11:43 , Processed in 0.150432 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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