解决 Ms Access 连续表格?
Posted
技术标签:
【中文标题】解决 Ms Access 连续表格?【英文标题】:Work around Ms Access continuous form? 【发布时间】:2014-03-14 01:41:52 【问题描述】:问题
下面的表格我想完成两件事
勾选后复选框即,当post = true时,查询应仅运行仅针对当前记录并将其与客户表中的余额字段中的金额进行减去。
UPDATE Customer INNER JOIN [Loan Payment] ON Customer.CUSID = [Loan Payment].CUSID SET Customer.CUSBalance = [Customer]![CUSBalance]-[Forms]![Loan Payment]![Amount] WHERE (((Customer.CUSID)=[Forms]![Loan Payment]![CUSID]));
但是,当查询在 LP6 上执行而不是 [BALANCE]-20 时,它执行 BALANCE-110,即查询在所有字段上运行
当查询已运行且 post 已更改为 true 时,应禁用当前记录的 post 复选框,以便查询不会运行两次或更多次我发现条件格式不能应用于文本框
要求
-
我想知道我是否可以实现我想要的以及如何实现?
我目前尝试实现的任何解决方法或替代解决方案。
【问题讨论】:
是的,我使用的是连续形式! 您是否使用了未绑定的复选框?如果是这样,这可能会有所帮助Collection for unbound checkboxes 不,这些是绑定复选框,将 Post 字段存储在名为 load payment 的表中 【参考方案1】:首先,我使用了错误的 SQL。
UPDATE Customer SET Customer.CUSBalance = [Customer]![CUSBalance]-[Forms]![Loan Payment]![Amount]
WHERE (((Customer.CUSID)=[Forms]![Loan Payment]![CUSID]));
其次,我发现条件格式不能应用于复选框,所以我不得不找到一种解决方法,我找到了三个。
解决 1
我锁定了Post
复选框并引入了一个按钮,如果Post = false
将运行查询并生成Post = True
我现在的表格
代码我在帖子按钮上使用[点击过程]
Private Sub Command19_Click()
If Me.Post = False Then
DoCmd.SetWarnings False
DoCmd.OpenQuery "updateCustomerLoan"
DoCmd.SetWarnings True
Me.Post = True
MsgBox ("Record has been Posted")
ElseIf Me.Post = True Then
MsgBox ("Record has already been posted")
End If
End Sub
解决方法 2
我在post_update()
上应用了以下代码,其中我编写了两个查询,一个执行查询(更新)和一个撤消查询(更新)
Private Sub Post_AfterUpdate()
If Me.Post = True Then
DoCmd.SetWarnings False
DoCmd.OpenQuery "payLoanONpost"
DoCmd.SetWarnings True
MsgBox ("The record has been posted")
ElseIf Me.Post = False Then
DoCmd.SetWarnings False
DoCmd.OpenQuery "unpayLoanONunpost"
DoCmd.SetWarnings True
MsgBox ("Record has been unposted")
End If
End Sub
在 3 左右工作(目前为止最好的,并且完成了我最初打算做的事情
这里我只使用了一个更新查询
Private Sub Post_AfterUpdate()
If Me.Post = True Then
DoCmd.SetWarnings False
DoCmd.OpenQuery "payLoanONpost"
DoCmd.SetWarnings True
MsgBox ("The record has been posted")
ElseIf Me.Post = False Then
MsgBox ("The record cannot unposted")
Me.Post = True
End If
End Sub
【讨论】:
以上是关于解决 Ms Access 连续表格?的主要内容,如果未能解决你的问题,请参考以下文章