G
Guest
Thanks for taking the time to read my question
I have a form with a bunch of checkboxes on it. The user can check and
uncheck what they want. I would like to have an option where the user can
reset the values to the original (default) settings.
To do this, I have a table with the default settings that shares a name with
the table that the form is based on. I have an update query that updates the
values in the table equal to the default table values. It works. When I
look at the table the data changes.
I can't seem to get the change to reflect on the form.
Not sure what I am doing wrong. Here is my code.
Private Sub cmdReset_Click()
Dim TheRecNum As Integer
Dim dbs As DAO.Database, rst As DAO.Recordset
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset("tblReportShowHideChecklist") 'Table where data
changes
rst.MoveFirst
TheRecNum = 1
'This is to find out what record number I'm on as the form is sorted by
ShowHideID
Do Until rst!ShowHideID = Me.ShowHideID 'Me.ShowHideID is the ID on the
form, rst!ShowHideID is the Recordset
Debug.Print Me.ShowHideID
Debug.Print TheRecNum
TheRecNum = TheRecNum + 1
rst.MoveNext
Loop
'The Update Query
DoCmd.RunSQL "Update tblReportShowHideChecklist_Defaults " & _
"INNER JOIN tblReportShowHideChecklist ON
tblReportShowHideChecklist_Defaults.INDMProgNameListID =
tblReportShowHideChecklist.INDMProgNameListID " & _
"SET tblReportShowHideChecklist.DryMatter =
[tblReportShowHideChecklist_Defaults]![DryMatter],
tblReportShowHideChecklist.CrudeProtein =
[tblReportShowHideChecklist_Defaults]![CrudeProtein],
tblReportShowHideChecklist.ADP = [tblReportShowHideChecklist_Defaults]![ADP],
tblReportShowHideChecklist.ADF = [tblReportShowHideChecklist_Defaults]![ADF],
tblReportShowHideChecklist.NDF = [tblReportShowHideChecklist_Defaults]![NDF],
tblReportShowHideChecklist.IFp = [tblReportShowHideChecklist_Defaults]![IFp],
tblReportShowHideChecklist.PD = [tblReportShowHideChecklist_Defaults]![PD],
tblReportShowHideChecklist.Fat = [tblReportShowHideChecklist_Defaults]![Fat],
tblReportShowHideChecklist.CrudeFiber =
[tblReportShowHideChecklist_Defaults]![CrudeFiber],
tblReportShowHideChecklist.Ash = [tblReportShowHideChecklist_Defaults]![Ash],
tblReportShowHideChecklist.Ca = [tblReportShowHideChecklist_Defaults]![Ca] "
& _
", tblReportShowHideChecklist.Mg =
[tblReportShowHideChecklist_Defaults]![Mg], tblReportShowHideChecklist.P =
[tblReportShowHideChecklist_Defaults]![P], tblReportShowHideChecklist.K =
[tblReportShowHideChecklist_Defaults]![K],
tblReportShowHideChecklist.Moisture =
[tblReportShowHideChecklist_Defaults]![Moisture],
tblReportShowHideChecklist.AvailProtein =
[tblReportShowHideChecklist_Defaults]![AvailProtein],
tblReportShowHideChecklist.SolProtein =
[tblReportShowHideChecklist_Defaults]![SolProtein],
tblReportShowHideChecklist.DegProtein =
[tblReportShowHideChecklist_Defaults]![DegProtein],
tblReportShowHideChecklist.UnDegProtein =
[tblReportShowHideChecklist_Defaults]![UnDegProtein],
tblReportShowHideChecklist.RFV = [tblReportShowHideChecklist_Defaults]![RFV],
tblReportShowHideChecklist.NSC = [tblReportShowHideChecklist_Defaults]![NSC],
tblReportShowHideChecklist.TDN = [tblReportShowHideChecklist_Defaults]![TDN]
" & _
", tblReportShowHideChecklist.NEL =
[tblReportShowHideChecklist_Defaults]![NEL] " & _
"WHERE
(((tblReportShowHideChecklist.ShowHideID)=[Forms]![frmtblReportShowHideChecklist]![ShowHideID]));"
'Requery the form to pick up the updates
'Upon requery, the form moves to the first record
Me.Requery
'Move to the record the user was on when they started this code
DoCmd.GoToRecord acDataForm, "frmtblReportShowHideChecklist", acGoTo,
TheRecNum
'Notify user that updates were made
MsgBox "Default settings for this Program Name have been applied."
End Sub
I have a form with a bunch of checkboxes on it. The user can check and
uncheck what they want. I would like to have an option where the user can
reset the values to the original (default) settings.
To do this, I have a table with the default settings that shares a name with
the table that the form is based on. I have an update query that updates the
values in the table equal to the default table values. It works. When I
look at the table the data changes.
I can't seem to get the change to reflect on the form.
Not sure what I am doing wrong. Here is my code.
Private Sub cmdReset_Click()
Dim TheRecNum As Integer
Dim dbs As DAO.Database, rst As DAO.Recordset
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset("tblReportShowHideChecklist") 'Table where data
changes
rst.MoveFirst
TheRecNum = 1
'This is to find out what record number I'm on as the form is sorted by
ShowHideID
Do Until rst!ShowHideID = Me.ShowHideID 'Me.ShowHideID is the ID on the
form, rst!ShowHideID is the Recordset
Debug.Print Me.ShowHideID
Debug.Print TheRecNum
TheRecNum = TheRecNum + 1
rst.MoveNext
Loop
'The Update Query
DoCmd.RunSQL "Update tblReportShowHideChecklist_Defaults " & _
"INNER JOIN tblReportShowHideChecklist ON
tblReportShowHideChecklist_Defaults.INDMProgNameListID =
tblReportShowHideChecklist.INDMProgNameListID " & _
"SET tblReportShowHideChecklist.DryMatter =
[tblReportShowHideChecklist_Defaults]![DryMatter],
tblReportShowHideChecklist.CrudeProtein =
[tblReportShowHideChecklist_Defaults]![CrudeProtein],
tblReportShowHideChecklist.ADP = [tblReportShowHideChecklist_Defaults]![ADP],
tblReportShowHideChecklist.ADF = [tblReportShowHideChecklist_Defaults]![ADF],
tblReportShowHideChecklist.NDF = [tblReportShowHideChecklist_Defaults]![NDF],
tblReportShowHideChecklist.IFp = [tblReportShowHideChecklist_Defaults]![IFp],
tblReportShowHideChecklist.PD = [tblReportShowHideChecklist_Defaults]![PD],
tblReportShowHideChecklist.Fat = [tblReportShowHideChecklist_Defaults]![Fat],
tblReportShowHideChecklist.CrudeFiber =
[tblReportShowHideChecklist_Defaults]![CrudeFiber],
tblReportShowHideChecklist.Ash = [tblReportShowHideChecklist_Defaults]![Ash],
tblReportShowHideChecklist.Ca = [tblReportShowHideChecklist_Defaults]![Ca] "
& _
", tblReportShowHideChecklist.Mg =
[tblReportShowHideChecklist_Defaults]![Mg], tblReportShowHideChecklist.P =
[tblReportShowHideChecklist_Defaults]![P], tblReportShowHideChecklist.K =
[tblReportShowHideChecklist_Defaults]![K],
tblReportShowHideChecklist.Moisture =
[tblReportShowHideChecklist_Defaults]![Moisture],
tblReportShowHideChecklist.AvailProtein =
[tblReportShowHideChecklist_Defaults]![AvailProtein],
tblReportShowHideChecklist.SolProtein =
[tblReportShowHideChecklist_Defaults]![SolProtein],
tblReportShowHideChecklist.DegProtein =
[tblReportShowHideChecklist_Defaults]![DegProtein],
tblReportShowHideChecklist.UnDegProtein =
[tblReportShowHideChecklist_Defaults]![UnDegProtein],
tblReportShowHideChecklist.RFV = [tblReportShowHideChecklist_Defaults]![RFV],
tblReportShowHideChecklist.NSC = [tblReportShowHideChecklist_Defaults]![NSC],
tblReportShowHideChecklist.TDN = [tblReportShowHideChecklist_Defaults]![TDN]
" & _
", tblReportShowHideChecklist.NEL =
[tblReportShowHideChecklist_Defaults]![NEL] " & _
"WHERE
(((tblReportShowHideChecklist.ShowHideID)=[Forms]![frmtblReportShowHideChecklist]![ShowHideID]));"
'Requery the form to pick up the updates
'Upon requery, the form moves to the first record
Me.Requery
'Move to the record the user was on when they started this code
DoCmd.GoToRecord acDataForm, "frmtblReportShowHideChecklist", acGoTo,
TheRecNum
'Notify user that updates were made
MsgBox "Default settings for this Program Name have been applied."
End Sub