Duane,
Thanks for taking the time
and replying to my posts
Our principle table is called "Volunteers" . And In that table, each
record
includes the following usual fields; ID, FName,LName,telephone...(etc.)..
plus the following NUMBER fields;
[VolunteerRoleClerical]
[VolunteerRoleCreativePlay]
[VolunteerRoleClothingRoom]
[VolunteerRoleDriver]
[VolunteerRoleFamilySupport]
[VolunteerRoleTutor]
[VolunteerRoleOlderBrother]
[VolunteerRoleOlderSister]
[VolunteerRoleGraphicDesigner]
[VolunteerRoleProgramAnimation]
[VolunteerRoleOther]
For each field/role above the volunteer ranks his/her preference for that
role by entering a number (1 to 11) in that Numberfield. For example, a
volunteer might enter a "1" in the [VolunteerRoleDriver] numberfield
meaning
that their first choice for a role would be a Driver. Then the same
person
might enter a "2" in the [VolunteerRoleOlderSister] field indicating her
second choice would be an OlderSister role...etc etc. This also allows for
duplicate rankings say, if she wanted to be a Tutor just as much as an
OlderSister and ProgramAnimator.. then shed rank them all as "1". Or if
she
just wanted to be a Driver, then shed put a "1" in the driver field and
leave
all the other fields null.
Having said that, I would like to search for people who ranked OlderSister
(for example) as a role they might like, then sort those peolpe by the
ranking they gave. Then go down the list, calling people who put older
sister
as their first choice, then calling those who put older sister as their
second choice.. etc. make sense right?
However, even before getting to that, we group volunteers into 8 more
important categories.. (which we saved as queries for easy access)...
Volunteers_Inquiry
Volunteers_Applying
Volunteers_WaitingToBeAssigned
Volunteers_Assigned
Volunteers_onVacation
Volunteers_Retired
Volunteers_MIA
Volunteers_DoNotPlace
Each query above has several long calculated fields pulling information
from
relationships with 5 other tables so we can generate nice looking reports
and
graphs :-DDDDDDDD
So, id like to be able to call up all the Volunteers who ranked
OlderSister
as a role theyd like.. within the "Applying" AND "WaitingToBeAssigned"
categories...yet, id still like the option of looking thru the "Retired"
group of volunteers for an OlderSister.. keep in mind we get over 100 NEW
volunteers every year which is why we created those 8 catagories/queries.
"Duane Hookom"
I believe your problem is un-normalized tables. Do you have fields in a
table like [VolunteerRoleClerical] [VolunteerRoleCreativePlay] ..etc? If
so,
how do you start tracking new roles? You shouldn't have to create new
fields
and modify code, union queries, forms, reports,...
We do not add new roles.
They have remained the same 11 roles
since we started thirty years ago.
A better system creates a record for each role for each person.
Yes, i like that idea.
But subforms on forms look aweful,
and im thinking the sql might not be any easier
to write.
Thanks again Duane for taking the time to read this!!!!!!!
Cheers,
WebDude.
ps: if you know of a way to abbreviate this query, id appreciate it;
SELECT * FROM Volunteers_Inquiry
WHERE [VolunteerRoleClerical] Is Not Null
UNION ALL SELECT * FROM Volunteers_Applying
WHERE [VolunteerRoleClerical] Is Not Null
UNION ALL SELECT * FROM Volunteers_WaitingToBeAssigned
WHERE [VolunteerRoleClerical] Is Not Null
UNION ALL SELECT * FROM Volunteers_Assigned
WHERE [VolunteerRoleClerical] Is Not Null
UNION ALL SELECT * FROM Volunteers_onVacation
WHERE [VolunteerRoleClerical] Is Not Null
UNION ALL SELECT * FROM Volunteers_Retired
WHERE [VolunteerRoleClerical] Is Not Null
UNION ALL SELECT * FROM Volunteers_MIA
WHERE [VolunteerRoleClerical] Is Not Null