Ok I feel like there has to be an easier way to do this and maybe I'm just not capable of thinking of it. I tried building queries, I have an earlier post where i tried using a Dlookup but then tried to ConcatRelated and nothing is working for me.
Here's the breakdown: Desired Result:
I want 1 form whereby I can pull all of a person's Personal information, Membership information, and Family information. I need this form to be in 2 forms, 1 that's searchable by name and modifiable to edit member information when needed and 2nd available as a New form for a new record. Problem:
Because I have several tables involved I am unable to find a way to create this form with the view I desire. I have created the database in such a way where it uses IDs versus the name however I want the form to show the names, and when it updates, update it by the IDs if that makes sense. Secondly I want the family information to show for each person profile with their family info displayed only once, not repeated for each record.
For Example:
I would like to have 1 person highlighted on the form with all their personal details, then another section with family details such spouse, dependants, etc. and then their service details such what ministry they belong to, what service they attend, year joined, etc. Will attach a sample of expected view for better visual. Tables in Database: tblPerson
PersonID (PK)
F_Name
L_Name
DOB
MobileNo
Sex
MaritalStatus
Nationality
Email
FamilyID (FK)
Type
ServiceID (FK) tblFamily
FamilyID (PK)
StreetAddress
City
State
Zip
HomePhone tblFamilyRelationship
FamilyID (PK) also (FK)
PersonID (PK) also(FK)
RelationshipType tblService
ServiceID (PK)
ServiceName tblMember
MPersonID (PK)
Status
YearJoined
ShepherdID tblMinistry_Assignment
MA_PersonID (PK)
MA_MinistryID (PK)
Is this even possible to somehow join everything into like 1 master profile per person? Or am I trying to do to much and should have separate forms? Please provide any help or guidance you can.
** I am new to MS Access and Databases in general. I do however understand the concepts of databases so I made several tables to re-frame from having a lot of null values and data redundancy.**
Thank You
OK - here is the disconnect: ignore the stuff ont he bottom of the design view. Follow these instructions explicitly. - Open tblPeople in design view
- Set your cursor to create a new Field
- Name: FMemberType
- Data Type: Select Lookup Wizard...
- Check "I want the lookup field to get the values from another table or query"
- Click Next
- Click the Tables Button
- Click the Table tblFMemberTypes
- Click Next
- Add both FMemberID and FMemberType
- Click Next
- Sort by FMemberType
- Click Next
- Check the "Hide Key" box
- Click Next
- Check "Enable Data Integrity" and ensure that "Restrict Delete" is checked
- Click Finish
- It should ask you to save the Table
- Open your table in datasheet view
- Select the FMemberType for several people
- Violas, Violins and Violoncellos! Now you see the FMemberType and not the number!!!!!
Is that what you have been doing? The KEY is to always use the Primary Key in these transactions.
21 1469
I PM'ed you. Let me know your thoughts.
Bri,
I'm going to take a look a this. Just sending a note to bump it up so I don't lose sight of it.
I need this form to be in 2 forms, 1 that's searchable by name and modifiable to edit member information when needed and 2nd available as a New form for a new record.
Try not to bind the conscience of the DB. It is good to have a vision of what you want to do. However, in most cases, your display form can also serve as an edit/new record form.
I have created the database in such a way where it uses IDs versus the name however I want the form to show the names, and when it updates, update it by the IDs if that makes sense.
1) Don't apologize for designing a database using proper methodology. All the experts here should be aware of such a design and would encourage it.
2) I think you are simply less familiar with how to create joins and display the dat you want. We can work with that.
Secondly I want the family information to show for each person profile with their family info displayed only once, not repeated for each record.
Very, very easy to do. We will work on this.
===========================
Now, to the brass tacks:
First, think hierarchically for a moment. What is the higher level: person or family? It should be family, because a family can have many members. So, I would encourage you to look at families first, because this is how you want to group people (usually) in a church.
So, your main viewing form should be based on families. You should still be able to search for a person, but when you find that person, you filter the form by the person's family.
When you view a family, you have a separate subform with people. You filter this subform by FamilyID. I see no need for tblFamilyRelationship, because I would create tblFamilyMemberType (Husband, Wife, Son, Daughter, etc.) which would then be a FK in tblPerson.
In this subform, if you click on a person, you should be able to view/edit the person's details. At the same time, you should be able to add a new person.
Additionally, I would recommend eliminating tblMember, and incorporating that data into tblPerson. The reason being that all this information applies to every person. For example, the person would be one of the following: Member, Visitor, Regular Attender, Communing Member, Non-Communing Member, Deceased, Dropped from Rolls, etc. This also allows you to maintain tblPerson for historical purposes.
Ministry assignment could also be a subform on the person's details. A person could be a member of multiple ministry areas, so you would want that flexibility.
This is all talking vision and design. No detailed solutions here, as that's typically not what we can provide here. This should get you on the right track. We can work thorugh significant challenges and road blocks as they come up.
Oh no rush. I been thinking about it over the weekend. I think I normalized the data too much and can denormalize parts of it to make this easier.... So I made a copy of my database in its current state and going to play around with the copy to see if I can get somewhere with it.
Just seeing post above. Thanks for the guidance. I will get started on it and see where it takes me.
Ok i took the route you explained above and I think I'm almost there. Here's where I'm stuck.
Right now i added my tblMember table to my tblPerson table.
However, when I made my main form based on Family and created a subform on tblPerson, the subform (frmPersonSub) has become 1 long form, whereby I have to scroll pretty far to view all the details. I want to design it in such a way that for 1 person in the family their details are grouped kind of then a line beneath or colored row with another person's details below, versus 1 long row for each person.
I hope this makes since
I hope this makes since
No. It does not.
Screenshots always hepp!
I think I answered my own question. Do I remove my header and just arrange everything in the detail section?
Ummmmmmmmmmmmmmm......
Screenshots always hepp!
Nevermind on that question lol. I tried to delete but couldn't find how to.
Here's my issue. My FamilyID field is Autonumber in my tblFamily table. This ID however is a fk in my tblPerson Table.
If I add new person on my form, how can I have the FamilyID field copy or update the tblPerson table once the form is saved. I will add a screenshot.
Update: I added an attachment. THE FamilyID number generates at the main form form level which is tblFamily but I would like to have it update the tblPerson Table when a new member is added to the family, as FamilyID is a FK in my tblPerson Table.
If you have your form for Families and have a Command Button for "Add New Person to Family", you click the button and have a new form pop up, with record source tblPerson. It is filtered by FamilyID--but have it set to Data Entry Mode. This will take you to a new record. Any record added at that point should be assigned to that same family. When you are done with the Add New Person Form, refresh the family form and they should show up.
You may have to post your DB (remove real people's names) for us to work through this. Like I said when I PM'ed you. This has already been done by hundreds of vendors and saves all these headaches.
This can be done. We will just have to work through the steps.
I got it to work by "Allow Additions" on my frmPersonSub. this adds a new record to the end of the sub form and when I tested saving it, it updated the tblPerson table with the familyID. However that only worked for existing families.
I had to create a new form and set it to Data Entry so it opens on new, as well as opens the sub form as new.
Now I have 2 forms:
1. A form to edit existing families or to add to an existing family
2. A form to add a new family entirely.
This may not be the most efficient way of going about it but it works for me now. Not sure if it will cause me problems later.
My last thing to do now is just figure out how to show the name versus the ID number for some fields
for example: Display Ministry Name which is Media vs the MinistryID which is 1. Yet if someone changes or updates the record to lets say Transportation, table should update with 3 and not the description.
I got it to work by "Allow Additions" on my frmPersonSub.
This should default to "Yes" and should always be truned on unless there is a specific reason you don't want to add any records.
However that only worked for existing families.
We'll talk about this in a bit.
Now I have 2 forms:
1. A form to edit existing families or to add to an existing family
2. A form to add a new family entirely.
Why would you need two forms for this? If you have a form that views Families, You just go to a new record and add a family. It's not so much about efficiency, it's about necessity. A form can modify existing records or it can add new ones.
My last thing to do now is just figure out how to show the name versus the ID number for some fields
for example: Display Ministry Name which is Media vs the MinistryID which is 1. Yet if someone changes or updates the record to lets say Transportation, table should update with 3 and not the description.
This is all done with basic JOINs. Your subforms (for ministries, for example) should be built upon the table. The Subform has as its record source the MinistryID and the MiniistryName. The ID does not need to be displayed ont he form. But the subform has a Master/Child relationship on the parent form with the MinstryID of the Person. It is only just barely slightly more complicated than this.
However, again, screenshoots help. Posting the queries you use for your record sources helps.
Additionally, I think you are overlooking the inherent complexity of a "simple" church database.
Also, for the purposes of this forum (and for my sanity), let's try to stick to ONE THING, so we can work through it one piece at a time. When nothing works properly, you can't fix it all at one time. This is a basic troubleshooting principle.
Ok Sorry. So I didnt base any of my forms for this profile creation on queries. All are built off the tables. If I can post an empty DB I will attach it otherwise Ill try and create screenshots of what I have. You're confusing me a bit when you say "Your subforms (for ministries, for example) should be built upon the table." but then say "Posting the queries you use for your record sources helps". Should they be based on queries?
I can't upload a copy of the blank DB. States a security token is missing. error message.
You're confusing me a bit when you say "Your subforms (for ministries, for example) should be built upon the table." but then say "Posting the queries you use for your record sources helps". Should they be based on queries?
The only way that you can see the numerical value of these things is if you are not using a query to join the tables. Then all you will get is numbers (unless, of course you have Combo boxes set up to reflect the values associated with htose numbers).
BUT--if you have your tables created properly, whenever you drag and drop a field onto your form, if there is a "value behind a value" it will already create the combo box for you with the appropriate display.
Example: You build your Families Table. You Build your People Table. As you build your people table, you have a field called Family. Use your Lookup Wizard to choose the FamilyID and FamilyName. BAM - Your relationships are made. Every time you use that field for a person the family name will show up.
This might hepp.
This is my setup of the db. are you suggesting I use the lookup field in the table design. I always read that you shouldn't use it there.
If you use Lookup Fields properly, you will never have any issues. You always use lookups that use the index and not the value. If you do this, you are fine. Trust me, I've gone in circles with the experts here who say, "DO NOT EVER USE THEM!" but then when I describe how I use them, they're "Oh--that's fine."
I just prefer to see a person's name, not a number. A number is meaningless to me, visually, even though I know it refers to other data.
Exactly! thats exactly what I want to do. So maybe I'm using it wrong now. I have for example of 2 tables:
tblPerson and tblFamilyRelationshipTypes
FMemberTypeID is the PK in the tblFamilyRelationshipTypes table but the FK in the tblPerson table. - tblFamilyRelationshipTypes
-
FMemberTypeID (1,2,3,4)
-
FMemberType (Head of House, Spouse, Son Daughter)
I went to the tblPerson table on this field and chose lookup --> Combo Box --> Table/Query--> then selected the FMemberType field as the values to display. I got an error when I ran my form that data type was incorrect.
The FMememberID field is a Number, but as you mentioned I don't want to display a number.
OK - here is the disconnect: ignore the stuff ont he bottom of the design view. Follow these instructions explicitly. - Open tblPeople in design view
- Set your cursor to create a new Field
- Name: FMemberType
- Data Type: Select Lookup Wizard...
- Check "I want the lookup field to get the values from another table or query"
- Click Next
- Click the Tables Button
- Click the Table tblFMemberTypes
- Click Next
- Add both FMemberID and FMemberType
- Click Next
- Sort by FMemberType
- Click Next
- Check the "Hide Key" box
- Click Next
- Check "Enable Data Integrity" and ensure that "Restrict Delete" is checked
- Click Finish
- It should ask you to save the Table
- Open your table in datasheet view
- Select the FMemberType for several people
- Violas, Violins and Violoncellos! Now you see the FMemberType and not the number!!!!!
Is that what you have been doing? The KEY is to always use the Primary Key in these transactions.
Ok. I'll give it a try. btw zipping the db worked. I attached it above.
Sign in to post your reply or Sign up for a free account.
Similar topics
by: Job Lot |
last post by:
I have requirement where client has to call us to get a key to access a
particular form. Secondly, I want the code to be valid for a day. Can some
guide me in right direction to implement this...
|
by: Steve Strik |
last post by:
My Problem:
I have created a database here at work that is exhibiting some very
strange behaviour.
Essentially the database is structured in a manner where one table is
a master record table...
|
by: John Michael |
last post by:
I have created some password routines to protect certain forms from access
without a password.
This allows me to create some security for apps that will be used on diff
machines for users that...
|
by: Dman |
last post by:
MS Access 2002 - query form control returns funny symbols like
I am running an append query on a form. Access is having trouble with
the calculated fields and comboboxes. Example – referring...
|
by: abhishekjethwani |
last post by:
How to write a query to access tree structure form multi table. I m having five tables from them first table give me a data which act as the parameter for query for the second table and the two...
|
by: crystalgal |
last post by:
Hello. I am tring to create a form that multi people use perhaps at the same time to enter daily counts for their production output.
Scenario:
There is 10 offices. I created 10 tables named after...
|
by: mwh2385 |
last post by:
I just cannot see clearly now...or I am just stupid, but I need a little help to getting the file ready in Access for the form that awaits it in Word.
Now I think the correct procedure is that I...
|
by: Palaniappan |
last post by:
how to add an item into the textbox by using command button in ms access in the form from the table?
|
by: KurtBergman |
last post by:
The Access 2010 Navigation form has very little documentation. One issue is moving to a different Tab (subform) in data AddMode.
The assumed method is
DoCmd.BrowseTo...
|
by: Charles Arthur |
last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
|
by: ryjfgjl |
last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
|
by: nemocccc |
last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
|
by: Sonnysonu |
last post by:
This is the data of csv file
1 2 3
1 2 3
1 2 3
1 2 3
2 3
2 3
3
the lengths should be different i have to store the data by column-wise with in the specific length.
suppose the i have to...
|
by: Hystou |
last post by:
There are some requirements for setting up RAID:
1. The motherboard and BIOS support RAID configuration.
2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
|
by: Hystou |
last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
|
by: Oralloy |
last post by:
Hello folks,
I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>".
The problem is that using the GNU compilers,...
|
by: jinu1996 |
last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
|
by: agi2029 |
last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
| |