设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

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

[Access本身] 出错:从窗体添加记录到表

[复制链接]
跳转到指定楼层
1#
发表于 2012-1-6 01:14:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
详细见附件中窗体“input”

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2012-1-6 09:26:59 | 只看该作者
版本太高,打不开!
3#
 楼主| 发表于 2012-1-6 22:14:36 | 只看该作者
啊,access 2007的啊,明天我转成2003的再发下哈。
希望好心人帮忙解决下,为了方便工作做的一个小东西。
4#
 楼主| 发表于 2012-1-7 19:51:56 | 只看该作者
上传的2003版的,有空闲的兄弟姐妹们,帮忙看看哪里出问题了,谢谢

本帖子中包含更多资源

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

x
5#
发表于 2012-1-8 00:04:58 | 只看该作者
lqp971 发表于 2012-1-7 19:51
上传的2003版的,有空闲的兄弟姐妹们,帮忙看看哪里出问题了,谢谢

第一个问题帮你解决了
  1. Private Sub Form_Current()
  2.     Me.Parent.[SaleOrder] = Me.SaleOrder
  3.     Me.Parent.[SMO] = Me.SMO
  4.     Me.Parent.[PN] = Me.PN
  5. End Sub
复制代码
2. 查找出需要修改的SMO后,更改主窗体的Status,点击Update后 子窗体数据更新,然后再Detail表中新生成一条同样的记录。
不明白什么意思

本帖子中包含更多资源

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

x
6#
发表于 2012-1-8 01:10:02 | 只看该作者
不知道是不是这个意思
  1. Private Sub Command19_Click()
  2.     Dim strWhere As String
  3.     If Not IsNull(Me.SMOS) Then
  4.         strWhere = "smo='" & Me.SMOS & "'"
  5.         Me.InputSub.Form.Filter = strWhere
  6.         Me.InputSub.Form.FilterOn = True
  7.     Else
  8.         Me.InputSub.Form.FilterOn = False
  9.     End If
  10. End Sub

  11. Private Sub Update_Click()
  12. '修改Main表中的数据
  13.     Dim sSQL As String
  14.     If IsNull(Me.Status) Then
  15.         MsgBox "请先输入Status!!"
  16.         Exit Sub
  17.     End If
  18.     sSQL = "update [Main] set Status='" & _
  19.            Me.Status & "' where SMO='" & Me.SMO & "'"
  20.     CurrentProject.Connection.Execute sSQL
  21.     Me.InputSub.Requery
  22.     '添加一条数据到Datail表中
  23.     sSQL = "INSERT INTO Detail SELECT Main.* FROM Main where SMO='" & _
  24.            Me.SMO & "'"
  25.     CurrentProject.Connection.Execute sSQL
  26. End Sub
复制代码

不知道你为什么同样的记录要保存两次!!!

本帖子中包含更多资源

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

x
7#
 楼主| 发表于 2012-1-8 21:31:00 | 只看该作者
Henry:
谢谢您的帮忙,好像不是我想要的第二个问题。
可能我没有表达清楚,我说下这个软件的使用思路吧,SMO就是零件维修的合同号,是每个维修过程的跟踪识别号。
Main表中的数据我是用来查询所有维修的现在状态,知道每个零件在哪个站位(status),Datail表中记录的是每个零件的维修过程,所以可能有很多条相同的数据,只是status,user,date几栏有变化。
我这样设计是为了方便后期的查询功能。
您的思路我理解,把表中Main的数据按照SMO直接搬到detail,所以这两个表中的数据是一样的,而且不能重复SMO,所以当零件转到另外一个部门维修时,修改status失效了。
效果如下:

                        Main 表中的数据(SMO唯一)                       
ID        SaleOrder                    SMO                      PN                Status           Date                  User
1        E575606-01        310001234         1234M56P07        Painting        2012/1/4 0:00        FSHA157
2        E123456-01        999999999             335-012-562-0        Machine        2012/1/3 0:00        FSHA999
                                               
                        Detail 表中的数据(SMO不唯一)                       
ID        SaleOrder                    SMO                  PN                Status            Date                  User
1        E575606-01        310001234         1234M56P07        Painting        2012/1/4 0:00        FSHA157
2        E123456-01        999999999         335-012-562-0        Machine        2012/1/3 0:00        FSHA999
3        E575606-01        310001234                1234M56P07        Painting        2012/1/8 0:00        FSHA333
4        E575606-01        310001234           1234M56P07        CLN                2012/1/12 0:00        FSHA444

麻烦了,再帮忙弄弄?{:soso_e151:}

8#
发表于 2012-1-8 23:02:30 | 只看该作者
没感觉跟6楼的有什么两样
9#
 楼主| 发表于 2012-1-9 08:30:56 | 只看该作者

这个SMO不能操作第二次。。。

本帖子中包含更多资源

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

x
10#
 楼主| 发表于 2012-1-9 08:32:04 | 只看该作者
应该不要把ID栏一起插入吧?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-7 07:34 , Processed in 0.108452 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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