MS Access - me.recordset 没有传递给 sub
MS Access - me.recordset not passing to sub
我有一个加载单条记录的表单。用户在表单上执行他们需要执行的操作...在这种情况下,他们输入一个日期,然后可以单击一个按钮将记录推进到流程中的下一步。
我有一个 public 函数,它将 activity 记录到 tblActivity,并设置记录的新状态和位置。这个函数有 3 个变量,直到今天都运行良好。
'I'm calling the function with this line from the button's Click event
LogActivity 15, Screen.ActiveForm, Me.Recordset
Public Function LogActivity(ByVal lSID As Long, Optional fForm As Form, Optional ByRef fRS As Recordset)
With fRS
Do Until .EOF
Debug.Print .Fields(5)
.MoveNext
Loop
End With
...
End Function
这应该打印表单的状态值,但传入的 fRS 没有任何值。表单的记录集在传递之前具有值,因为表单具有数据。一些它是如何在通行证中迷路的。这工作正常,我有 5 个不同形式的多个按钮,它们都调用相同的函数。突然今天,其中 none 个可以通过记录集。我想不出任何会影响这一点的改变。最近的大部分更改涉及锁定字段和在正确的时间出现按钮...与记录集无关。
当然,这个数据库应该在星期一上线。
找到问题了。
我有一个昨天的备份,工作正常。
我逐一检查了昨天记录的更改,发现通过将一些字段更改为 .enabled = False 和 .locked = True 就是这样做的。显然这足以在通过时清除所有值。
保持字段启用,只是锁定它们并正确传递所有值。
尽管这对我来说是一个失败,但我会保留它以防其他人犯同样的错误。
**** 更新 ****
我还发现如果我做了
fRS.movelast
fRS.movefirst
首先,它找到了数据。不知道它为什么开始发生,但是这两件事似乎已经完全解决了它。
我有一个加载单条记录的表单。用户在表单上执行他们需要执行的操作...在这种情况下,他们输入一个日期,然后可以单击一个按钮将记录推进到流程中的下一步。
我有一个 public 函数,它将 activity 记录到 tblActivity,并设置记录的新状态和位置。这个函数有 3 个变量,直到今天都运行良好。
'I'm calling the function with this line from the button's Click event
LogActivity 15, Screen.ActiveForm, Me.Recordset
Public Function LogActivity(ByVal lSID As Long, Optional fForm As Form, Optional ByRef fRS As Recordset)
With fRS
Do Until .EOF
Debug.Print .Fields(5)
.MoveNext
Loop
End With
...
End Function
这应该打印表单的状态值,但传入的 fRS 没有任何值。表单的记录集在传递之前具有值,因为表单具有数据。一些它是如何在通行证中迷路的。这工作正常,我有 5 个不同形式的多个按钮,它们都调用相同的函数。突然今天,其中 none 个可以通过记录集。我想不出任何会影响这一点的改变。最近的大部分更改涉及锁定字段和在正确的时间出现按钮...与记录集无关。
当然,这个数据库应该在星期一上线。
找到问题了。
我有一个昨天的备份,工作正常。
我逐一检查了昨天记录的更改,发现通过将一些字段更改为 .enabled = False 和 .locked = True 就是这样做的。显然这足以在通过时清除所有值。
保持字段启用,只是锁定它们并正确传递所有值。
尽管这对我来说是一个失败,但我会保留它以防其他人犯同样的错误。
**** 更新 ****
我还发现如果我做了
fRS.movelast
fRS.movefirst
首先,它找到了数据。不知道它为什么开始发生,但是这两件事似乎已经完全解决了它。