• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 374
  • Last Modified:

ADO Recordset command .AddNew use with form


I am developing an Access Project front-end and SQL Server back-end application.  

First I need to display a form which is ready for data entry, so I need to somehow move the recordset to display a new (empty) row.  

Is the following code the best way to display a blank row in a form and then insert a new record?
Private Sub Command3_Click()

    Dim cnn As ADODB.Connection
    Dim rcd As ADODB.Recordset
    Set rcd = New ADODB.Recordset
    Set cnn = CurrentProject.Connection
rcd.Open "Select * from Requests", cnn, adOpenKeyset, adLockOptimistic, adCmdText

    DoCmd.GoToRecord , , acNewRec
    With rcd
        !Case_Patient_Num = txtCase_Patient_Num
    End With

End Sub

1 Solution
Pretty good way, and safe as well.
The only suggestion I would make is to put the code that moves to the record and populates the field in the forms On_Load Event:
First you will have to Dim a Global Variable:
Global strPatientNum As String
Then, in your command button click event set it to rcd!Case_Patient_Num :
strPatientNum = rcd!Case_Patient_Num

Form On_Load()
DoCmd.GoToRecord , , acNewRec
txtCase_Patient_Num.Value = strPatientNum

I dont know if this way is better or safer, its just my preferred method.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Easily Design & Build Your Next Website

Squarespace’s all-in-one platform gives you everything you need to express yourself creatively online, whether it is with a domain, website, or online store. Get started with your free trial today, and when ready, take 10% off your first purchase with offer code 'EXPERTS'.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now