?
Solved

Access - New Record on Subform (Docmd or RunCommand) from that form's Tabbed Form

Posted on 2012-12-20
9
Medium Priority
?
564 Views
Last Modified: 2012-12-21
Hello all!

I have a Main form on that main form I have

1 subform (with it's own subform) AND also
1 Tabbed Form with the tabs of the Tabbed Form having Subform's on them.

I am attempting to transfer info
FROM:
One of the Tabbed Form's Subform
TO
The other Subform of the Main Form

When I click a command button on one of the Tabbed Forms Sub it is transferring the data to the other MainForm's Sub but I can not get it to go to a new record on that form.  

When i use Docmd
I get an error
Run-Time error 2498
An Expression you entered is the wrong data type for one of the arguments.

        DoCmd.GoToRecord , Forms![frm_Inv]![frm_ctl_MiscInv].Form![sfrm_dta_MiscInvDetails], acNewRec

If I put quotations around the Form name I get the object. xxxxxxxx isn't open.

If I put Open/Close parenthesis around it (no quotations) I get the same "wrong argument" error.

How can I correct it?
0
Comment
Question by:wlwebb
  • 5
  • 4
9 Comments
 
LVL 40

Expert Comment

by:als315
ID: 38710403
Records should be added to tables, so you can create append query and run it.
Try this syntax if you like follow your idea:
docmd.GoToRecord  acDataForm, Forms![frm_Inv]![frm_ctl_MiscInv].Form![sfrm_dta_MiscInvDetails], acNewRec
I hope form [frm_Inv] is opened
0
 

Author Comment

by:wlwebb
ID: 38710444
Thanks for replying Als315

Made that fix.  Still get "Run-Time error 2498
An expression you entered is the wrong data type for one of the arguments."

Just to Reiterate, this Main form has 1 subform Plus 1 Tabbed form with Subforms.  I'm trying to get it to move data from the Tabbed Form's Sub to the Main Form's Other Subform.

When the Main form opens, the Subform (not the Tabbed form's sub) opens with "New" in the Record.  The command button on the Tabbed Form's Sub does work to transfer the first line of data into the Main Form's Subform but when it hits the dcmd....acnewRec is where it is erroring.


Since that SubForm is on the Main Form and both the Main form, the Tabbed Form and the SubForm are all open, isn't the SubForm therefore open?
0
 
LVL 40

Expert Comment

by:als315
ID: 38711966
Will be good if you upload sample DB with this form and related table.
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 

Author Comment

by:wlwebb
ID: 38712048
Here you go....

when you open it the form is
frm_EstimWorkup

Click on a Process on the Main form which will eventually make the Tab Form Sub visible (left all visible for now) input whatever numbers in the textbox and click save.  Should transfer into over to the Mainform's Sub (the right side of the form with blue heading)
TestForm-MainTabSub-MainFormSub.accdb
0
 
LVL 40

Accepted Solution

by:
als315 earned 2000 total points
ID: 38712185
Try this (without newrecord). Only Process01 (Page2)
TestForm-MainTabSub-MainFormSub.accdb
0
 

Author Comment

by:wlwebb
ID: 38712898
Als315
I get a Run-Time Error '2455'
You entered an expression that has an invalid reference to the property Dirty.

Happens when I input numbers on the Page2 Tabbed form Subform sfrm_WkSh01

Stops on If Me.Dirty Then Me.Dirty=False

Private Sub cmdSave_Click()
Dim i As Integer, J As Integer
Dim rs As DAO.Recordset
J = Me.cboInv.ListCount
Set rs = CurrentDb.OpenRecordset("dta_EstimDtail")
        Forms![frm_EstimWorkup]![frm_ctl_Inv].Form![WkShiftID].SetFocus
        If Me.Dirty Then Me.Dirty = False
    For i = 1 To J
        rs.AddNew
0
 
LVL 40

Expert Comment

by:als315
ID: 38713229
Problem is new record on from frm_ctl_Inv. You should save new InvCtlID to table Ctl_Inv before you start add records to table dta_EstimDtail. This new record is added when you press Process01 button on Page1.
When you got an error do you have value in InvCtlID field?
But I have no this error. Check for InvCtlID was added
TestForm-MainTabSub-MainFormSub.accdb
0
 

Author Comment

by:wlwebb
ID: 38713272
Just fixed it.......

There was a Value in the field InvCtlID....

Problem was I had to use the Whole name instead of Me.

Once I changed that it worked......

I googled the error and MSDN came up with an Unbound Form error Knowledgebase Article...  discussed about Setting Focus etc.... that lead me to the answer....

Thanks Als.....
0
 

Author Closing Comment

by:wlwebb
ID: 38713275
Thanks you for your help Als!!!!
0

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article shows how to get a list of available printers for display in a drop-down list, and then to use the selected printer to print an Access report or a Word document filled with Access data, using different syntax as needed for working with …
In a use case, a user needs to close an opened report by simply pressing the Escape (Esc) key. This can be done by adding macro code in Report_KeyPress or Report_KeyDown event.
In Microsoft Access, learn different ways of passing a string value within a string argument. Also learn what a “Type Mis-match” error is about.
With Microsoft Access, learn how to specify relationships between tables and set various options on the relationship. Add the tables: Create the relationship: Decide if you’re going to set referential integrity: Decide if you want cascade upda…
Suggested Courses
Course of the Month16 days, 17 hours left to enroll

864 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question