?
Solved

Dirty record auto save

Posted on 2014-01-23
9
Medium Priority
?
1,011 Views
Last Modified: 2014-01-23
Hi,
I have a form with a button that opens a 2nd form.  The 2nd form has related records based on the 1st form's current record.  When adding a record in form 1 and clicking the button which with the record is in the detail section (continuous) I get an error on the 2nd form when adding a record.  I know it's because the 1st form's record has not been saved (referential integrity is on for this relationship)  
My question is:
1.) What is the best way to save a record on the 1st form prior to opening the 2nd?  onlost focus?  Ondeactivate?  
2.) Can I use the Menu Command saverecord in a macro?  What is the best event to attached to?
3.) Info for ondirty says it only saves a record if it has been changed.  Is a new record that has not yet been saved considered a "changed" record?

I can't seem to make saverecord work.

Help is appreciated.
Chrlie
0
Comment
Question by:cwbarrett
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
9 Comments
 
LVL 120

Accepted Solution

by:
Rey Obrero (Capricorn1) earned 1500 total points
ID: 39803866
use

if me.dirty then me.dirty=false

'your command to open the 2nd form goes here
0
 

Author Comment

by:cwbarrett
ID: 39803884
But will that save the record?  I don't see a save command there if it's dirty.
0
 
LVL 120

Assisted Solution

by:Rey Obrero (Capricorn1)
Rey Obrero (Capricorn1) earned 1500 total points
ID: 39803891
me.dirty=false  ' will save the record
0
What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

 

Author Comment

by:cwbarrett
ID: 39803901
Place in which of form #1 event? Onlostfocus?  On deactivate?
0
 
LVL 120

Expert Comment

by:Rey Obrero (Capricorn1)
ID: 39803912
how do you open the 2nd form?
0
 

Author Comment

by:cwbarrett
ID: 39803939
Form #1 is actually a continous subform.  Each record has a button that opens the 2nd form based the record that the button is in.
0
 
LVL 120

Assisted Solution

by:Rey Obrero (Capricorn1)
Rey Obrero (Capricorn1) earned 1500 total points
ID: 39804004
place the codes

if me.dirty then me.dirty=false

in the click event of the button, place it before the command to open the 2nd form
0
 
LVL 38

Assisted Solution

by:PatHartman
PatHartman earned 500 total points
ID: 39804295
Setting Me.Dirty to False is a trick that is supposed to get around a bug in Access and I understand your confusion.  I was completely baffled the first time I saw it used.  In fact, I thought it was cancelling the save and spent hours on the wrong path while debugging an app created by someone else.  So, I suggest that if you use it, you add a comment explaining what it does.

DoCmd.RunCommand acCmdSaveRecord

is the more standard way to save the current record.  I personally have never encountered the bug in my 20 years with Access.  I'm not even sure what the bug is.

Access automatically saves the current record whenever you leave it.  However, opening a new form or report doesn't constitute leaving the current record so you need to force the save any time you open another object.  So to repeat the previous advice, add the save command of your choice immediately in front of the instruction to open the second form/report or recordset.
0
 

Author Comment

by:cwbarrett
ID: 39805259
Worked, thank you, and thank you for the bug info.
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

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

Preparing an email is something we should all take special care with – especially when the email is for somebody you may not know very well. The pressures of everyday working life stacked with a hectic office environment can make this a real challen…
Microsoft Access is a place to store data within tables and represent this stored data using multiple database objects such as in form of macros, forms, reports, etc. After a MS Access database is created there is need to improve the performance and…
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…
Polish reports in Access so they look terrific. Take yourself to another level. Equations, Back Color, Alternate Back Color. Write easy VBA Code. Tighten space to use less pages. Launch report from a menu, considering criteria only when it is filled…
Suggested Courses

770 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