Solved

docmd.OpenForm -- a question about the parameters

Posted on 2011-02-24
9
415 Views
Last Modified: 2012-05-11
Hi,

I'm using the docmd.OpenForm command to open a form when a button is clicked. I'm also trying to pass the form to be opened some information about what data to show when the button is clicked; however, I'm very confused about the following possible paramters I could use. So, for 500 points could someone succinctly summarize the difference between:
FilterName, WhereCondition, OpenArgs

and describe a typical situation when you'd use it?

Are there any corresponding properties that the form to be opened needs to have set for any of these?

[For context, the first form is contains multiple user search parameters, and the second is an unbound Main form (with buttons) with the subform displaying the resultset desired by the user.]
0
Comment
Question by:epuglise
  • 3
  • 3
  • 2
  • +1
9 Comments
 
LVL 119

Assisted Solution

by:Rey Obrero
Rey Obrero earned 167 total points
ID: 34974895
if you want to open the form to show filtered records
* use the WhereCondition
if you want to pass information when opening a form
* use the OpenArgs

i never use FilterName
0
 

Author Comment

by:epuglise
ID: 34974915
Ok that's easy. Thanks. One follow up question if I may. What kinds of information would you pass in OpenArgs... form properties or something?
0
 

Author Comment

by:epuglise
ID: 34974921
I would be interested in hearing from someone who does use the FilterName...
0
 
LVL 30

Accepted Solution

by:
hnasr earned 167 total points
ID: 34975180
FilterName:
Create a query with the required fields to filter. Add the criteria and save it.
This will act as the filterName in the command.
Can be reused in other situations.

WhereCondition:
a simple way for experts, if used with limited nuber of fields.

OpenArgs:
A string that can be carried to the opened form.  You can use it in the load event, for example, like any variable.
0
Backup Your Microsoft Windows Server®

Backup all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.

 
LVL 119

Expert Comment

by:Rey Obrero
ID: 34975307
i never use FilterName, it is erratic...
0
 
LVL 119

Assisted Solution

by:Rey Obrero
Rey Obrero earned 167 total points
ID: 34975317
<What kinds of information would you pass in OpenArgs...> anything relevant to the form that you are opening.
0
 
LVL 84

Assisted Solution

by:Scott McDaniel (Microsoft Access MVP - EE MVE )
Scott McDaniel (Microsoft Access MVP - EE MVE ) earned 166 total points
ID: 34976375
Ditto on the FilterName argument - I don't use it. It used to work in 2003 and below if you inadvertantly entered a WHERE clause for the Filter argument, but that broke for good in 2007, and now if you don't enter the name of a well-formed Filter query you'll either get an error of the form won't filter.

Note also that one form can reference data/values on another, and in some cases that makes more sense than trying to use OpenArgs. For me, OpenArgs is best suited for something like on-the-fly filtering. If you need to move a LOT of data to another form, then it's often best to have FormB refer to FormA:

Me.txtTitle = Forms("FormA").txtTitle

Or use Properties of a form, and set those properties from the "calling" form.
0
 

Author Comment

by:epuglise
ID: 34982570
Thank you all for the input! This was a helpful tutorial!!
0
 
LVL 30

Expert Comment

by:hnasr
ID: 34983638
Welcome!
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

It took me quite some time to sort out all the different properties of combo and list boxes available from Visual Basic at run-time. Not that the documentation is lacking: the help pages are quite thorough and well written. The problem was rather wh…
A simple tool to export all objects of two Access files as text and compare it with Meld, a free diff tool.
Familiarize people with the process of utilizing SQL Server views from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Microsoft Access…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

919 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

Need Help in Real-Time?

Connect with top rated Experts

16 Experts available now in Live!

Get 1:1 Help Now