Solved

Multivalued Field Functionality in Access 2003

Posted on 2010-11-18
17
948 Views
Last Modified: 2012-05-10
I would like to replicate the multivalued field functionaility from Access 2007 in Access 2003.
I found a similar question on the internet: http://www.accessmonster.com/Uwe/Forum.aspx/access-forms/47260/Multivalued-Field-Functionality-in-Access-2003    

However, i do not know how to implement the answer "Add a boolean field to the table and use a continuous form (showing the boolean field) as a subform, rather than listbox."

To which table do I add the boolean field? How do I link the tables? Can somebody run me through the steps, or upload a template file?
0
Comment
Question by:kittenwhisky
  • 5
  • 5
  • 4
  • +1
17 Comments
 
LVL 75

Expert Comment

by:DatabaseMX (Joe Anderson - Access MVP)
Comment Utility
Just an FYI ... the general recommendation here on EE is to avoid Multi-Valued Fields

See this:

http://allenbrowne.com/Access2007.html#Bugs

Search that page for Multi-valued

Also see this:

http://support.microsoft.com/kb/926701

mx
0
 
LVL 4

Author Comment

by:kittenwhisky
Comment Utility
Thanks for your advice about MV fields, DatabaseMX. Let me be more precise: I have alredy normalized my tables in my database by creating a junction table using the primary keys of 2 different tables. But I know want to display that information in a form, where I don't mind having MV fields.

I want the form to handle the information "like Access 2007 does with multi-valued fields", because the Access 2007 method seems very user-friendly with the drowpdown and the checkbox, as seen here http://www.databasedev.co.uk/image/choose_multiple_values.gif

The thread I found about this seems to give the answer, but I don't know how to implement it exactly. Would appreciate any further help.
0
 
LVL 75

Expert Comment

by:DatabaseMX (Joe Anderson - Access MVP)
Comment Utility
Well ... I haven't use MVF's ... so, I'm probably not the person who can help you with this.

Someone may be along who can.

Sorry ...

mx
0
 
LVL 119

Accepted Solution

by:
Rey Obrero earned 500 total points
Comment Utility


kittenwhisky,


add the boolean field in the table that you will display in the continuous form.

just take note that you will be adding the records to the junction table using codes,
after the selecting (checking ) the items displayed in the continuous form together with the id (PK) displayed in the main form..


post back if you encounter a problem..


0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
Comment Utility
If I am reading your post correctly, this can be done quite easily without MVF's
(The same way it has been done for decades before MVF's came along)

;-)
0
 
LVL 119

Expert Comment

by:Rey Obrero
Comment Utility
and, sorry forgot to mentioned,
after adding the records in the junction table,
you have to run an update query to reset all the selected items (boolean field) to No.
0
 
LVL 4

Author Comment

by:kittenwhisky
Comment Utility
thanks for your responses, it's pretty late here, but will come back tomorrow evening.
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
Comment Utility
1. Did you read the link MX posted?
This feature has a "Bug" that is not yet resolved...
Still want to proceed with this...?

2. See here as well:
http://allenbrowne.com/Access2007.html#Mixed
http://www.theregister.co.uk/2006/07/18/multivalued_datatypes_access/
Quote: Ted Codd (the originator of the relational model) forbad their use....
Still want to proceed with this...?
;-)

As you will see that this "user-friendly" interface comes at a price....

3. Remember these fields were created with MS SharePoint in mind.
(Are you using SharePoint?)

4. This datatype is not backward compatible.
So if you ever need this to be accessible to anyone who has Access 2003 or older, you are out of luck.

Finally note that the dearth of simple-to-follow tutorials on this is another red flag.
(Yes, I have read some good ones, but on the whole they are a bit overwhelming for someone just starting out in MS Access.)

I leave the decision to use these fields up to you...

;-)

JeffCoachman
0
IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 
LVL 119

Expert Comment

by:Rey Obrero
Comment Utility
;-)
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
Comment Utility
kittenwhisky,

Here is a *very* basic example of simply using a junction table.
While not as ascetically pleasing as the MVF's it does not have all of the associated "issues".

Any Expert her can view this and understand what was done.
Any Expert here can modify it in their own way to make it more user friendly (more compact, Concatenate the values, ...etc)

Jeff
Access-EEQ26625842DisplayJunctio.mdb
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
Comment Utility
0
 
LVL 4

Author Comment

by:kittenwhisky
Comment Utility
hi boag2000

I am very sorry I could not award you points on this question, but I think your answers, even though elaborate, were missing the point. I was probably not expressing myself clearly, so let me try to explain again:

We have the same idea: I am using a table1 , table2 and junction table with PK1 & PK2 as a design source for my form.

My question relates to the customisation technique to make the form more user-friendly (basically copying the Access 2007 MVF display, such as the check boxes & concatenation). The underlying data will NOT be stored as an MVF in any table, it will only be displayed as an MVF on the form.

The link I provided in my question does not advocate storing the data in MVF's. The user suggests as well to use a junction table, and then briefly explains how to achieve a customisation whichncludes check boxes. I was looking for a more elaborate explanation on these customisation steps.
0
 
LVL 4

Author Closing Comment

by:kittenwhisky
Comment Utility
I have encountered an issue when writing the code, I will be opening a new question for this tomorrow, would be great if you could help out on that one , too!
0
 
LVL 4

Author Comment

by:kittenwhisky
Comment Utility
just to be clear: I validated the wrong comment as a solution, i meant to validate capricorn's answer #34169871, not his smiley answer.
0
 
LVL 119

Expert Comment

by:Rey Obrero
Comment Utility
sure...
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
Comment Utility
No problem here, as long as your issue is resolved...
0

Featured Post

What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

Join & Write a Comment

Today's users almost expect this to happen in all search boxes. After all, if their favourite search engine juggles with tens of thousand keywords while they type, and suggests matching phrases on the fly, why shouldn't they expect the same from you…
Introduction The Visual Basic for Applications (VBA) language is at the heart of every application that you write. It is your key to taking Access beyond the world of wizards into a world where anything is possible. This article introduces you to…
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…
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …

728 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

14 Experts available now in Live!

Get 1:1 Help Now