A Microsoft Office (Excel, Word) forum. OfficeFrustration

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » OfficeFrustration forum » Microsoft Access » New Users
Site Map Home Register Authors List Search Today's Posts Mark Forums Read  

Relationships set up



 
 
Thread Tools Display Modes
  #1  
Old February 19th, 2006, 07:16 PM posted to microsoft.public.access.gettingstarted
external usenet poster
 
Posts: n/a
Default Relationships set up

The following is a view of my database:

Table Relationships (which are questionably setup)

Liturgies(1) to LitEvents(many) and Cycles(1) to LitEvents(many)
Assign1() to LitEvents() and Assign2() to LitEvents()

There are 11 tables containing data each unique to one of 11 parts,
all having the same type link to the Assign tables,
5 to Assign1 and 6 to Assign2, each being (1) to the Assign(many)

Looks Like:
Legend: ()=Link w/o Referential Integrity, (1)=One, (M)=Many, (T)=Table

Litugies(T) LitEvent(T)
LitName
LitID(1) (M)LitID

Cycles(T)
CycleName
CyclesID(1) (M)CycleID


Assign1(T)
Assign2(T)
Assign1ID Assign2ID
LitEventID() ()LitEventID() ()LitEventID

PrepID(M) (1)PrepID

PrepHymn PrepHymn

PrepHymn# PrepHymn#

(above PREPs is example of

11 PARTs tables)

I have a main form with two subforms.
Main form linked to LitEvents Table
Subform linked to Assign1
Subform linked to Assign2

The Main form is data entry for defining the Liturgy and its Cycle.
The two subforms are data entry for the 11 parts(Hymn and Humn#).
Together the Main and both Subforms datas combine to define one record.

My problem is when I enter data into the 3 forms they are not linked as one
record.
I got here thru posting advice and am now very confused.
Any suggestions or questions appreciated.

  #2  
Old February 19th, 2006, 08:46 PM posted to microsoft.public.access.gettingstarted
external usenet poster
 
Posts: n/a
Default Relationships set up

i'm not sure what the Assign tables are doing, but let's put that aside for
a moment. i'm more concerned about "There are 11 tables containing data each
unique to one of 11 parts, all having the same type link to the Assign
tables"

that sounds suspiciously like a non-normalized design. please post the table
and field names of these tables in the following format:

Table1Name
FieldName (primary key, data type)
NextFieldName (data type)
NextFieldName (data type)
(etc)

if the purpose of the field is not readily apparent from its' name, please
explain it.

hth


"linronamy" wrote in message
...
The following is a view of my database:

Table Relationships (which are questionably setup)

Liturgies(1) to LitEvents(many) and Cycles(1) to LitEvents(many)
Assign1() to LitEvents() and Assign2() to LitEvents()

There are 11 tables containing data each unique to one of 11 parts,
all having the same type link to the Assign tables,
5 to Assign1 and 6 to Assign2, each being (1) to the Assign(many)

Looks Like:
Legend: ()=Link w/o Referential Integrity, (1)=One, (M)=Many, (T)=Table

Litugies(T) LitEvent(T)
LitName
LitID(1) (M)LitID

Cycles(T)
CycleName
CyclesID(1) (M)CycleID


Assign1(T)
Assign2(T)
Assign1ID

Assign2ID
LitEventID() ()LitEventID()

()LitEventID

PrepID(M) (1)PrepID

PrepHymn PrepHymn

PrepHymn# PrepHymn#

(above PREPs is example of

11 PARTs tables)

I have a main form with two subforms.
Main form linked to LitEvents Table
Subform linked to Assign1
Subform linked to Assign2

The Main form is data entry for defining the Liturgy and its Cycle.
The two subforms are data entry for the 11 parts(Hymn and Humn#).
Together the Main and both Subforms datas combine to define one record.

My problem is when I enter data into the 3 forms they are not linked as

one
record.
I got here thru posting advice and am now very confused.
Any suggestions or questions appreciated.



  #3  
Old February 20th, 2006, 01:39 AM posted to microsoft.public.access.gettingstarted
external usenet poster
 
Posts: n/a
Default Relationships set up

Legend: ()=Link w/o Referential Integrity,
(1)=One, (M)=Many

LITURGIES
LitID(PK, AutoNum)(1)
LitName(Text)

CYCLES
CycleID(PK, AutoNum)(1)
CycleName(Text)

LITEVENTS
LitEventID(PK, AutoNum)
LitID(Number)(M)
CycleID(Number)(M)

ASSIGN1
Assign1ID(PK, AutoNum)
LitEvent1ID(Number)()
PrepID(Number)(M)
PrComID(Number)(M)
Com1ID(Number)(M)
Com2ID(Number)(M)
ClID(Number)(M)
InPostID(Number)(M)

ASSIGN2
Assign2ID(PK, AutoNum)
LitEvent2ID(Number)()
PrlID(Number)(M)
InProcID(Number)(M)
GathID(Number)(M)
RPsID(Number)(M)
GAlID(Number)(M)

Each of 11 Tables that follow, link to corresponding fields(names)
in Assign1 or Assign2 tables. Each xxxxID field is a PK with AutoNum types
and are the (1) side of the relationship to the Assign1 or Assign2 Tables.
Data is input to these tables.

PREPARATION
PrepID(PK, AutoNum)(1)
PrepHymn(Text)
PrepHymn#(Text)

PRECOMMINSTR
PreComID(PK,AutoNum)(1)
PreComHymn(Text)
PreComHymn#(Text

Etc., Etc. thru 11 tables


"tina" wrote:

i'm not sure what the Assign tables are doing, but let's put that aside for
a moment. i'm more concerned about "There are 11 tables containing data each
unique to one of 11 parts, all having the same type link to the Assign
tables"

that sounds suspiciously like a non-normalized design. please post the table
and field names of these tables in the following format:

Table1Name
FieldName (primary key, data type)
NextFieldName (data type)
NextFieldName (data type)
(etc)

if the purpose of the field is not readily apparent from its' name, please
explain it.

hth


"linronamy" wrote in message
...
The following is a view of my database:

Table Relationships (which are questionably setup)

Liturgies(1) to LitEvents(many) and Cycles(1) to LitEvents(many)
Assign1() to LitEvents() and Assign2() to LitEvents()

There are 11 tables containing data each unique to one of 11 parts,
all having the same type link to the Assign tables,
5 to Assign1 and 6 to Assign2, each being (1) to the Assign(many)

Looks Like:
Legend: ()=Link w/o Referential Integrity, (1)=One, (M)=Many, (T)=Table

Litugies(T) LitEvent(T)
LitName
LitID(1) (M)LitID

Cycles(T)
CycleName
CyclesID(1) (M)CycleID


Assign1(T)
Assign2(T)
Assign1ID

Assign2ID
LitEventID() ()LitEventID()

()LitEventID

PrepID(M) (1)PrepID

PrepHymn PrepHymn

PrepHymn# PrepHymn#

(above PREPs is example of

11 PARTs tables)

I have a main form with two subforms.
Main form linked to LitEvents Table
Subform linked to Assign1
Subform linked to Assign2

The Main form is data entry for defining the Liturgy and its Cycle.
The two subforms are data entry for the 11 parts(Hymn and Humn#).
Together the Main and both Subforms datas combine to define one record.

My problem is when I enter data into the 3 forms they are not linked as

one
record.
I got here thru posting advice and am now very confused.
Any suggestions or questions appreciated.




  #4  
Old February 20th, 2006, 04:17 AM posted to microsoft.public.access.gettingstarted
external usenet poster
 
Posts: n/a
Default Relationships set up

okay, as i thought, the section of your structure made up of those 11 tables
is non-normalized; any time you put data (preparation, precomminstr) into
table or field names, you're violating data normalization principles.
suggest that you put all the hymns into one table, with a field to designate
what category each one belongs to (preparation, precomminstr, etc), as

tblHymns
HymnNumber (recommend you do *not* use the # sign in a field name)
HymnName
Category

now, can you explain to me what the "ASSIGN1" and "ASSIGN2" data is about,
and how it relates to LITEVENTS? don't use database terms; explain it in
plain English as though you were telling a new church member how things are
done at your church. to get started: "we have x liturgies, and each liturgy
has x cycles. each cycle of each liturgy has x events, and..."

hth


"linronamy" wrote in message
...
Legend: ()=Link w/o Referential Integrity,
(1)=One, (M)=Many

LITURGIES
LitID(PK, AutoNum)(1)
LitName(Text)

CYCLES
CycleID(PK, AutoNum)(1)
CycleName(Text)

LITEVENTS
LitEventID(PK, AutoNum)
LitID(Number)(M)
CycleID(Number)(M)

ASSIGN1
Assign1ID(PK, AutoNum)
LitEvent1ID(Number)()
PrepID(Number)(M)
PrComID(Number)(M)
Com1ID(Number)(M)
Com2ID(Number)(M)
ClID(Number)(M)
InPostID(Number)(M)

ASSIGN2
Assign2ID(PK, AutoNum)
LitEvent2ID(Number)()
PrlID(Number)(M)
InProcID(Number)(M)
GathID(Number)(M)
RPsID(Number)(M)
GAlID(Number)(M)

Each of 11 Tables that follow, link to corresponding fields(names)
in Assign1 or Assign2 tables. Each xxxxID field is a PK with AutoNum types
and are the (1) side of the relationship to the Assign1 or Assign2 Tables.
Data is input to these tables.

PREPARATION
PrepID(PK, AutoNum)(1)
PrepHymn(Text)
PrepHymn#(Text)

PRECOMMINSTR
PreComID(PK,AutoNum)(1)
PreComHymn(Text)
PreComHymn#(Text

Etc., Etc. thru 11 tables


"tina" wrote:

i'm not sure what the Assign tables are doing, but let's put that aside

for
a moment. i'm more concerned about "There are 11 tables containing data

each
unique to one of 11 parts, all having the same type link to the Assign
tables"

that sounds suspiciously like a non-normalized design. please post the

table
and field names of these tables in the following format:

Table1Name
FieldName (primary key, data type)
NextFieldName (data type)
NextFieldName (data type)
(etc)

if the purpose of the field is not readily apparent from its' name,

please
explain it.

hth


"linronamy" wrote in message
...
The following is a view of my database:

Table Relationships (which are questionably setup)

Liturgies(1) to LitEvents(many) and Cycles(1) to LitEvents(many)
Assign1() to LitEvents() and Assign2() to LitEvents()

There are 11 tables containing data each unique to one of 11 parts,
all having the same type link to the Assign tables,
5 to Assign1 and 6 to Assign2, each being (1) to the Assign(many)

Looks Like:
Legend: ()=Link w/o Referential Integrity, (1)=One, (M)=Many,

(T)=Table

Litugies(T) LitEvent(T)
LitName
LitID(1) (M)LitID

Cycles(T)
CycleName
CyclesID(1) (M)CycleID


Assign1(T)
Assign2(T)
Assign1ID

Assign2ID
LitEventID() ()LitEventID()

()LitEventID

PrepID(M) (1)PrepID

PrepHymn PrepHymn

PrepHymn# PrepHymn#

(above PREPs is example of

11 PARTs tables)

I have a main form with two subforms.
Main form linked to LitEvents Table
Subform linked to Assign1
Subform linked to Assign2

The Main form is data entry for defining the Liturgy and its Cycle.
The two subforms are data entry for the 11 parts(Hymn and Humn#).
Together the Main and both Subforms datas combine to define one

record.

My problem is when I enter data into the 3 forms they are not linked

as
one
record.
I got here thru posting advice and am now very confused.
Any suggestions or questions appreciated.






  #5  
Old February 20th, 2006, 04:36 PM posted to microsoft.public.access.gettingstarted
external usenet poster
 
Posts: n/a
Default Relationships set up

Explanation:
There are three Liturgical Cycles(A, B, C) each lasting 1 year with the
complete duration being 3 years.

There are 52 litugies each year or Cycle. The readings and hymns are
different for each liturgy of each Cycle (week 1 of cycle A is different from
week 1 of Cycles B and C).

The liturgy and its Cycle is an event (in my database).

There are 11 parts for each Liturgy where there is a Hymn played in each
part and they are titled by the following Liturgy order:

TABLE ASSIGN1 (Liturgy of the Word)
Prelude (Prl)
Instrumental Procession (InProc)
Gathering (Gath)
Responsorial Psalm (RPs)
Gospel Acclamation (GA)

TABLE ASSIGN2 (Liturgy of the Eucharist)
Preparation
Pre Communion Instrumental (PrCom)
Communion1 (Com1)
Communion2 (Com2)
Closing (Cl)
Instrumental Postlude (InPost)

I separated the Parts into two tables (Assign1 and Assign2) because Access
2003 wouldn't allow more than 8 fields with referential integrity links in a
table(??? I think!!! - read it somewhere)

A complete record in the database would contain a Liturgy Name and its
corresponding Cycle along with 11 Hymns and Hymn numbers.

I have 6 years of history, one liturgy record per sheet.

The goal is to review the history to assemble a new liturgy record for an
upcoming Liturgy by selecting each Hymn/Hymn Number from past records.

(Sample Query: Liturgy 43, Cycle B, Preparation - Hymns and Hymn Numbers
should show all Preparation hymns played during that Liturgy/Cycle to be used
to select from, to enter data for the new record. Sorry, I hope that is clear.

A Question in All Caps:

"tina" wrote:

okay, as i thought, the section of your structure made up of those 11 tables
is non-normalized; any time you put data (preparation, precomminstr) into
table or field names, you're violating data normalization principles.

I DON'T UNDERSTAND. I THOUGHT SEGREGATING HYMNS AND THEIR HYMN NUMBER INTO A
TABLE UNIQUE TO THE PART OF THE LITURGY WOULD MAKE IT EASIER TO QUERY LATER.
WHERE AM I GOING ASTRAY? WILL FOLLOW YOUR LEAD WITH ENTHUSIASM.
suggest that you put all the hymns into one table, with a field to designate
what category each one belongs to (preparation, precomminstr, etc), as

tblHymns
HymnNumber (recommend you do *not* use the # sign in a field name)
HymnName
Category

now, can you explain to me what the "ASSIGN1" and "ASSIGN2" data is about,
and how it relates to LITEVENTS? don't use database terms; explain it in
plain English as though you were telling a new church member how things are
done at your church. to get started: "we have x liturgies, and each liturgy
has x cycles. each cycle of each liturgy has x events, and..."

hth


"linronamy" wrote in message
...
Legend: ()=Link w/o Referential Integrity,
(1)=One, (M)=Many

LITURGIES
LitID(PK, AutoNum)(1)
LitName(Text)

CYCLES
CycleID(PK, AutoNum)(1)
CycleName(Text)

LITEVENTS
LitEventID(PK, AutoNum)
LitID(Number)(M)
CycleID(Number)(M)

ASSIGN1
Assign1ID(PK, AutoNum)
LitEvent1ID(Number)()
PrepID(Number)(M)
PrComID(Number)(M)
Com1ID(Number)(M)
Com2ID(Number)(M)
ClID(Number)(M)
InPostID(Number)(M)

ASSIGN2
Assign2ID(PK, AutoNum)
LitEvent2ID(Number)()
PrlID(Number)(M)
InProcID(Number)(M)
GathID(Number)(M)
RPsID(Number)(M)
GAlID(Number)(M)

Each of 11 Tables that follow, link to corresponding fields(names)
in Assign1 or Assign2 tables. Each xxxxID field is a PK with AutoNum types
and are the (1) side of the relationship to the Assign1 or Assign2 Tables.
Data is input to these tables.

PREPARATION
PrepID(PK, AutoNum)(1)
PrepHymn(Text)
PrepHymn#(Text)

PRECOMMINSTR
PreComID(PK,AutoNum)(1)
PreComHymn(Text)
PreComHymn#(Text

Etc., Etc. thru 11 tables


"tina" wrote:

i'm not sure what the Assign tables are doing, but let's put that aside

for
a moment. i'm more concerned about "There are 11 tables containing data

each
unique to one of 11 parts, all having the same type link to the Assign
tables"

that sounds suspiciously like a non-normalized design. please post the

table
and field names of these tables in the following format:

Table1Name
FieldName (primary key, data type)
NextFieldName (data type)
NextFieldName (data type)
(etc)

if the purpose of the field is not readily apparent from its' name,

please
explain it.

hth


"linronamy" wrote in message
...
The following is a view of my database:

Table Relationships (which are questionably setup)

Liturgies(1) to LitEvents(many) and Cycles(1) to LitEvents(many)
Assign1() to LitEvents() and Assign2() to LitEvents()

There are 11 tables containing data each unique to one of 11 parts,
all having the same type link to the Assign tables,
5 to Assign1 and 6 to Assign2, each being (1) to the Assign(many)

Looks Like:
Legend: ()=Link w/o Referential Integrity, (1)=One, (M)=Many,

(T)=Table

Litugies(T) LitEvent(T)
LitName
LitID(1) (M)LitID

Cycles(T)
CycleName
CyclesID(1) (M)CycleID


Assign1(T)
Assign2(T)
Assign1ID
Assign2ID
LitEventID() ()LitEventID()
()LitEventID

PrepID(M) (1)PrepID

PrepHymn PrepHymn

PrepHymn# PrepHymn#

(above PREPs is example of

11 PARTs tables)

I have a main form with two subforms.
Main form linked to LitEvents Table
Subform linked to Assign1
Subform linked to Assign2

The Main form is data entry for defining the Liturgy and its Cycle.
The two subforms are data entry for the 11 parts(Hymn and Humn#).
Together the Main and both Subforms datas combine to define one

record.

My problem is when I enter data into the 3 forms they are not linked

as
one
record.
I got here thru posting advice and am now very confused.
Any suggestions or questions appreciated.







  #6  
Old February 20th, 2006, 06:41 PM posted to microsoft.public.access.gettingstarted
external usenet poster
 
Posts: n/a
Default Relationships set up

overall, your explanation was good, and helped me understand what you're
doing. there is one part that i'm not sure of:

The goal is to review the history to assemble a new liturgy record for an
upcoming Liturgy by selecting each Hymn/Hymn Number from past records.

(Sample Query: Liturgy 43, Cycle B, Preparation - Hymns and Hymn Numbers
should show all Preparation hymns played during that Liturgy/Cycle to be

used
to select from, to enter data for the new record. Sorry, I hope that is

clear.

from this, it sounds like the liturgy is a 3-year repeating cycle, but each
time a specific liturgy (church service?) in a specific cycle is
"delivered", different hymns may be used in each of the 11 parts of the
liturgy. in other words, you don't have an iron-clad schedule of "liturgy
43, cycle B, preparation, 'How Great Thou Art' hymn #117".

so over a six year period, liturgy 43 of cycle B would have been "delivered"
twice, with possibly a different preparation hymn sung on each occasion.

assuming that the above is correct, here are the tables i suggest. (a few
are the same as the tables you posted; but, as with the 11 "parts" tables
setup, you were again violating normalization principles by putting data
into field names, in your ASSIGN1 and ASSIGN2 tables.)

tblLiturgies
LitID (primary key, Number, field size Byte)
LitName (Text)
you *can* use an Autonumber for the primary key if you prefer, but since
you only have 52 liturgies, Byte is plenty big enough - since it accepts
numeric values from 0-255

tblCycles
CycleID (pk, Number, field size Byte)
CycleName (Text)
ditto the above per the primary key field's data type, since you only have
3 cycles.

tblLiturgyParts
PartID (pk, Number, field size Byte)
PartCode (Text; entries in this field would be "Prl", "InProc", "Gath", etc)
PartName (Text; entries in this field would be "Prelude", "Instrumental
Procession", "Gathering", etc)
ditto the above per the primary key field's data type, since you only have
11 parts.

tblLiturgyEvents
LitEventID (pk, Autonumber)
LitID (foreign key from tblLiturgies)
CycleID (fk from tblCycles)
EventDate (the particular date that this particular liturgy was delivered)

tblEventDetails
DetailID (pk, Autonumber)
LitEventID (fk from tblLiturgyEvents)
PartID (fk from tblLiturgyParts)
HymnID (fk from tblHymns)

the relationships would be
tblLiturgies.LitID 1:n tblLiturgyEvents.LitID
tblCycles.CycleID 1:n tblLiturgyEvents.CycleID
tblLiturgyEvents.LitEventID 1:n tblEventDetails.LitEventID
tblLiturgyParts.PartID 1:n tblEventDetails.PartID
tblHymns.HymnID 1:n tblEventDetails.HymnID

note that "1:n" is a common way of indicating "one-to-many".

hth


"linronamy" wrote in message
...
Explanation:
There are three Liturgical Cycles(A, B, C) each lasting 1 year with the
complete duration being 3 years.

There are 52 litugies each year or Cycle. The readings and hymns are
different for each liturgy of each Cycle (week 1 of cycle A is different

from
week 1 of Cycles B and C).

The liturgy and its Cycle is an event (in my database).

There are 11 parts for each Liturgy where there is a Hymn played in each
part and they are titled by the following Liturgy order:

TABLE ASSIGN1 (Liturgy of the Word)
Prelude (Prl)
Instrumental Procession (InProc)
Gathering (Gath)
Responsorial Psalm (RPs)
Gospel Acclamation (GA)

TABLE ASSIGN2 (Liturgy of the Eucharist)
Preparation
Pre Communion Instrumental (PrCom)
Communion1 (Com1)
Communion2 (Com2)
Closing (Cl)
Instrumental Postlude (InPost)

I separated the Parts into two tables (Assign1 and Assign2) because Access
2003 wouldn't allow more than 8 fields with referential integrity links in

a
table(??? I think!!! - read it somewhere)

A complete record in the database would contain a Liturgy Name and its
corresponding Cycle along with 11 Hymns and Hymn numbers.

I have 6 years of history, one liturgy record per sheet.

The goal is to review the history to assemble a new liturgy record for an
upcoming Liturgy by selecting each Hymn/Hymn Number from past records.

(Sample Query: Liturgy 43, Cycle B, Preparation - Hymns and Hymn Numbers
should show all Preparation hymns played during that Liturgy/Cycle to be

used
to select from, to enter data for the new record. Sorry, I hope that is

clear.

A Question in All Caps:

"tina" wrote:

okay, as i thought, the section of your structure made up of those 11

tables
is non-normalized; any time you put data (preparation, precomminstr)

into
table or field names, you're violating data normalization principles.

I DON'T UNDERSTAND. I THOUGHT SEGREGATING HYMNS AND THEIR HYMN NUMBER INTO

A
TABLE UNIQUE TO THE PART OF THE LITURGY WOULD MAKE IT EASIER TO QUERY

LATER.
WHERE AM I GOING ASTRAY? WILL FOLLOW YOUR LEAD WITH ENTHUSIASM.
suggest that you put all the hymns into one table, with a field to

designate
what category each one belongs to (preparation, precomminstr, etc), as

tblHymns
HymnNumber (recommend you do *not* use the # sign in a field name)
HymnName
Category

now, can you explain to me what the "ASSIGN1" and "ASSIGN2" data is

about,
and how it relates to LITEVENTS? don't use database terms; explain it in
plain English as though you were telling a new church member how things

are
done at your church. to get started: "we have x liturgies, and each

liturgy
has x cycles. each cycle of each liturgy has x events, and..."

hth


"linronamy" wrote in message
...
Legend: ()=Link w/o Referential Integrity,
(1)=One, (M)=Many

LITURGIES
LitID(PK, AutoNum)(1)
LitName(Text)

CYCLES
CycleID(PK, AutoNum)(1)
CycleName(Text)

LITEVENTS
LitEventID(PK, AutoNum)
LitID(Number)(M)
CycleID(Number)(M)

ASSIGN1
Assign1ID(PK, AutoNum)
LitEvent1ID(Number)()
PrepID(Number)(M)
PrComID(Number)(M)
Com1ID(Number)(M)
Com2ID(Number)(M)
ClID(Number)(M)
InPostID(Number)(M)

ASSIGN2
Assign2ID(PK, AutoNum)
LitEvent2ID(Number)()
PrlID(Number)(M)
InProcID(Number)(M)
GathID(Number)(M)
RPsID(Number)(M)
GAlID(Number)(M)

Each of 11 Tables that follow, link to corresponding fields(names)
in Assign1 or Assign2 tables. Each xxxxID field is a PK with AutoNum

types
and are the (1) side of the relationship to the Assign1 or Assign2

Tables.
Data is input to these tables.

PREPARATION
PrepID(PK, AutoNum)(1)
PrepHymn(Text)
PrepHymn#(Text)

PRECOMMINSTR
PreComID(PK,AutoNum)(1)
PreComHymn(Text)
PreComHymn#(Text

Etc., Etc. thru 11 tables


"tina" wrote:

i'm not sure what the Assign tables are doing, but let's put that

aside
for
a moment. i'm more concerned about "There are 11 tables containing

data
each
unique to one of 11 parts, all having the same type link to the

Assign
tables"

that sounds suspiciously like a non-normalized design. please post

the
table
and field names of these tables in the following format:

Table1Name
FieldName (primary key, data type)
NextFieldName (data type)
NextFieldName (data type)
(etc)

if the purpose of the field is not readily apparent from its' name,

please
explain it.

hth


"linronamy" wrote in message
...
The following is a view of my database:

Table Relationships (which are questionably setup)

Liturgies(1) to LitEvents(many) and Cycles(1) to LitEvents(many)
Assign1() to LitEvents() and Assign2() to LitEvents()

There are 11 tables containing data each unique to one of 11

parts,
all having the same type link to the Assign tables,
5 to Assign1 and 6 to Assign2, each being (1) to the Assign(many)

Looks Like:
Legend: ()=Link w/o Referential Integrity, (1)=One, (M)=Many,

(T)=Table

Litugies(T) LitEvent(T)
LitName
LitID(1) (M)LitID

Cycles(T)
CycleName
CyclesID(1) (M)CycleID


Assign1(T)
Assign2(T)
Assign1ID
Assign2ID
LitEventID() ()LitEventID()
()LitEventID

PrepID(M) (1)PrepID

PrepHymn PrepHymn

PrepHymn# PrepHymn#

(above PREPs is example of

11 PARTs tables)

I have a main form with two subforms.
Main form linked to LitEvents Table
Subform linked to Assign1
Subform linked to Assign2

The Main form is data entry for defining the Liturgy and its

Cycle.
The two subforms are data entry for the 11 parts(Hymn and Humn#).
Together the Main and both Subforms datas combine to define one

record.

My problem is when I enter data into the 3 forms they are not

linked
as
one
record.
I got here thru posting advice and am now very confused.
Any suggestions or questions appreciated.









  #7  
Old February 20th, 2006, 08:46 PM posted to microsoft.public.access.gettingstarted
external usenet poster
 
Posts: n/a
Default Relationships set up

Awesome. I've recreated all tables per your post, and it appears to make
sense to me, i guess what i am saying is that for the first time i feel good
that i don't have to wonder about the Table structures. I would now like to
work on data entry forms. The key word is I. I really appreciate your help
but I want to try to learn this stuff. i feel comfortable with design layout
and using a switchboard menu to make the forms user friendly. I'm not sure
about selecting the tables/fields main forms vs. subforms and how that all
works. Any short tips on they fit with each other would be greatly appreciated

THANX Tina

"tina" wrote:

overall, your explanation was good, and helped me understand what you're
doing. there is one part that i'm not sure of:

The goal is to review the history to assemble a new liturgy record for an
upcoming Liturgy by selecting each Hymn/Hymn Number from past records.

(Sample Query: Liturgy 43, Cycle B, Preparation - Hymns and Hymn Numbers
should show all Preparation hymns played during that Liturgy/Cycle to be

used
to select from, to enter data for the new record. Sorry, I hope that is

clear.

from this, it sounds like the liturgy is a 3-year repeating cycle, but each
time a specific liturgy (church service?) in a specific cycle is
"delivered", different hymns may be used in each of the 11 parts of the
liturgy. in other words, you don't have an iron-clad schedule of "liturgy
43, cycle B, preparation, 'How Great Thou Art' hymn #117".

so over a six year period, liturgy 43 of cycle B would have been "delivered"
twice, with possibly a different preparation hymn sung on each occasion.

assuming that the above is correct, here are the tables i suggest. (a few
are the same as the tables you posted; but, as with the 11 "parts" tables
setup, you were again violating normalization principles by putting data
into field names, in your ASSIGN1 and ASSIGN2 tables.)

tblLiturgies
LitID (primary key, Number, field size Byte)
LitName (Text)
you *can* use an Autonumber for the primary key if you prefer, but since
you only have 52 liturgies, Byte is plenty big enough - since it accepts
numeric values from 0-255

tblCycles
CycleID (pk, Number, field size Byte)
CycleName (Text)
ditto the above per the primary key field's data type, since you only have
3 cycles.

tblLiturgyParts
PartID (pk, Number, field size Byte)
PartCode (Text; entries in this field would be "Prl", "InProc", "Gath", etc)
PartName (Text; entries in this field would be "Prelude", "Instrumental
Procession", "Gathering", etc)
ditto the above per the primary key field's data type, since you only have
11 parts.

tblLiturgyEvents
LitEventID (pk, Autonumber)
LitID (foreign key from tblLiturgies)
CycleID (fk from tblCycles)
EventDate (the particular date that this particular liturgy was delivered)

tblEventDetails
DetailID (pk, Autonumber)
LitEventID (fk from tblLiturgyEvents)
PartID (fk from tblLiturgyParts)
HymnID (fk from tblHymns)

the relationships would be
tblLiturgies.LitID 1:n tblLiturgyEvents.LitID
tblCycles.CycleID 1:n tblLiturgyEvents.CycleID
tblLiturgyEvents.LitEventID 1:n tblEventDetails.LitEventID
tblLiturgyParts.PartID 1:n tblEventDetails.PartID
tblHymns.HymnID 1:n tblEventDetails.HymnID

note that "1:n" is a common way of indicating "one-to-many".

hth


"linronamy" wrote in message
...
Explanation:
There are three Liturgical Cycles(A, B, C) each lasting 1 year with the
complete duration being 3 years.

There are 52 litugies each year or Cycle. The readings and hymns are
different for each liturgy of each Cycle (week 1 of cycle A is different

from
week 1 of Cycles B and C).

The liturgy and its Cycle is an event (in my database).

There are 11 parts for each Liturgy where there is a Hymn played in each
part and they are titled by the following Liturgy order:

TABLE ASSIGN1 (Liturgy of the Word)
Prelude (Prl)
Instrumental Procession (InProc)
Gathering (Gath)
Responsorial Psalm (RPs)
Gospel Acclamation (GA)

TABLE ASSIGN2 (Liturgy of the Eucharist)
Preparation
Pre Communion Instrumental (PrCom)
Communion1 (Com1)
Communion2 (Com2)
Closing (Cl)
Instrumental Postlude (InPost)

I separated the Parts into two tables (Assign1 and Assign2) because Access
2003 wouldn't allow more than 8 fields with referential integrity links in

a
table(??? I think!!! - read it somewhere)

A complete record in the database would contain a Liturgy Name and its
corresponding Cycle along with 11 Hymns and Hymn numbers.

I have 6 years of history, one liturgy record per sheet.

The goal is to review the history to assemble a new liturgy record for an
upcoming Liturgy by selecting each Hymn/Hymn Number from past records.

(Sample Query: Liturgy 43, Cycle B, Preparation - Hymns and Hymn Numbers
should show all Preparation hymns played during that Liturgy/Cycle to be

used
to select from, to enter data for the new record. Sorry, I hope that is

clear.

A Question in All Caps:

"tina" wrote:

okay, as i thought, the section of your structure made up of those 11

tables
is non-normalized; any time you put data (preparation, precomminstr)

into
table or field names, you're violating data normalization principles.

I DON'T UNDERSTAND. I THOUGHT SEGREGATING HYMNS AND THEIR HYMN NUMBER INTO

A
TABLE UNIQUE TO THE PART OF THE LITURGY WOULD MAKE IT EASIER TO QUERY

LATER.
WHERE AM I GOING ASTRAY? WILL FOLLOW YOUR LEAD WITH ENTHUSIASM.
suggest that you put all the hymns into one table, with a field to

designate
what category each one belongs to (preparation, precomminstr, etc), as

tblHymns
HymnNumber (recommend you do *not* use the # sign in a field name)
HymnName
Category

now, can you explain to me what the "ASSIGN1" and "ASSIGN2" data is

about,
and how it relates to LITEVENTS? don't use database terms; explain it in
plain English as though you were telling a new church member how things

are
done at your church. to get started: "we have x liturgies, and each

liturgy
has x cycles. each cycle of each liturgy has x events, and..."

hth


"linronamy" wrote in message
...
Legend: ()=Link w/o Referential Integrity,
(1)=One, (M)=Many

LITURGIES
LitID(PK, AutoNum)(1)
LitName(Text)

CYCLES
CycleID(PK, AutoNum)(1)
CycleName(Text)

LITEVENTS
LitEventID(PK, AutoNum)
LitID(Number)(M)
CycleID(Number)(M)

ASSIGN1
Assign1ID(PK, AutoNum)
LitEvent1ID(Number)()
PrepID(Number)(M)
PrComID(Number)(M)
Com1ID(Number)(M)
Com2ID(Number)(M)
ClID(Number)(M)
InPostID(Number)(M)

ASSIGN2
Assign2ID(PK, AutoNum)
LitEvent2ID(Number)()
PrlID(Number)(M)
InProcID(Number)(M)
GathID(Number)(M)
RPsID(Number)(M)
GAlID(Number)(M)

Each of 11 Tables that follow, link to corresponding fields(names)
in Assign1 or Assign2 tables. Each xxxxID field is a PK with AutoNum

types
and are the (1) side of the relationship to the Assign1 or Assign2

Tables.
Data is input to these tables.

PREPARATION
PrepID(PK, AutoNum)(1)
PrepHymn(Text)
PrepHymn#(Text)

PRECOMMINSTR
PreComID(PK,AutoNum)(1)
PreComHymn(Text)
PreComHymn#(Text

Etc., Etc. thru 11 tables


"tina" wrote:

i'm not sure what the Assign tables are doing, but let's put that

aside
for
a moment. i'm more concerned about "There are 11 tables containing

data
each
unique to one of 11 parts, all having the same type link to the

Assign
tables"

that sounds suspiciously like a non-normalized design. please post

the
table
and field names of these tables in the following format:

Table1Name
FieldName (primary key, data type)
NextFieldName (data type)
NextFieldName (data type)
(etc)

if the purpose of the field is not readily apparent from its' name,
please
explain it.

hth


"linronamy" wrote in message
...
The following is a view of my database:

Table Relationships (which are questionably setup)

Liturgies(1) to LitEvents(many) and Cycles(1) to LitEvents(many)
Assign1() to LitEvents() and Assign2() to LitEvents()

There are 11 tables containing data each unique to one of 11

parts,
all having the same type link to the Assign tables,
5 to Assign1 and 6 to Assign2, each being (1) to the Assign(many)

Looks Like:
Legend: ()=Link w/o Referential Integrity, (1)=One, (M)=Many,
(T)=Table

Litugies(T) LitEvent(T)
LitName
LitID(1) (M)LitID

Cycles(T)
CycleName
CyclesID(1) (M)CycleID


Assign1(T)
Assign2(T)
Assign1ID
Assign2ID
LitEventID() ()LitEventID()
()LitEventID

PrepID(M) (1)PrepID

PrepHymn PrepHymn

PrepHymn# PrepHymn#

(above PREPs is example of

11 PARTs tables)

I have a main form with two subforms.
Main form linked to LitEvents Table
Subform linked to Assign1
Subform linked to Assign2

The Main form is data entry for defining the Liturgy and its

Cycle.
The two subforms are data entry for the 11 parts(Hymn and Humn#).
Together the Main and both Subforms datas combine to define one
record.

My problem is when I enter data into the 3 forms they are not

linked

  #8  
Old February 20th, 2006, 10:45 PM posted to microsoft.public.access.gettingstarted
external usenet poster
 
Posts: n/a
Default Relationships set up

your main data tables are tblLiturgyEvents and tblEventDetails. suggest you
use a standard mainform/subform setup for data entry. the other tables are
what i call "supporting" tables; they basically provide the "choices" that
the user will select from when entering data in the main data tables. within
the mainform/subform setup, use combobox controls, bound to the foreign key
fields, with RowSources based on the tables that the foreign key fields are
linked to. that way the user can choose from "droplists" to fill in the
those fields in the main data tables. this is also a standard setup.

your original post was about problems with a data entry form, i know. but
when those problems are caused by poor table design, the best thing to do is
to fix that, and then start fresh on the forms; usually form design flows
pretty naturally from a proper table structure. the alternative to
suggesting a specific table structure was to simply recommend that you learn
the basic principles of data modeling, so you'll know how to do it yourself.
actually, i do recommend that you learn those principles anyway; you'll need
to understand *why* the suggested table structure is correct, so you can set
up your next database correctly or expand this one in the future. data
modeling, or normalization, is not a trivial subject, so be prepared to put
some elbow grease into it. see
http://home.att.net/~california.db/tips.html#aTip1 for more information
(suggest you review the rest of the tips too, to avoid some common
pitfalls).

hth


"linronamy" wrote in message
...
Awesome. I've recreated all tables per your post, and it appears to make
sense to me, i guess what i am saying is that for the first time i feel

good
that i don't have to wonder about the Table structures. I would now like

to
work on data entry forms. The key word is I. I really appreciate your help
but I want to try to learn this stuff. i feel comfortable with design

layout
and using a switchboard menu to make the forms user friendly. I'm not sure
about selecting the tables/fields main forms vs. subforms and how that all
works. Any short tips on they fit with each other would be greatly

appreciated

THANX Tina

"tina" wrote:

overall, your explanation was good, and helped me understand what you're
doing. there is one part that i'm not sure of:

The goal is to review the history to assemble a new liturgy record for

an
upcoming Liturgy by selecting each Hymn/Hymn Number from past records.

(Sample Query: Liturgy 43, Cycle B, Preparation - Hymns and Hymn

Numbers
should show all Preparation hymns played during that Liturgy/Cycle to

be
used
to select from, to enter data for the new record. Sorry, I hope that

is
clear.

from this, it sounds like the liturgy is a 3-year repeating cycle, but

each
time a specific liturgy (church service?) in a specific cycle is
"delivered", different hymns may be used in each of the 11 parts of the
liturgy. in other words, you don't have an iron-clad schedule of

"liturgy
43, cycle B, preparation, 'How Great Thou Art' hymn #117".

so over a six year period, liturgy 43 of cycle B would have been

"delivered"
twice, with possibly a different preparation hymn sung on each occasion.

assuming that the above is correct, here are the tables i suggest. (a

few
are the same as the tables you posted; but, as with the 11 "parts"

tables
setup, you were again violating normalization principles by putting data
into field names, in your ASSIGN1 and ASSIGN2 tables.)

tblLiturgies
LitID (primary key, Number, field size Byte)
LitName (Text)
you *can* use an Autonumber for the primary key if you prefer, but

since
you only have 52 liturgies, Byte is plenty big enough - since it accepts
numeric values from 0-255

tblCycles
CycleID (pk, Number, field size Byte)
CycleName (Text)
ditto the above per the primary key field's data type, since you only

have
3 cycles.

tblLiturgyParts
PartID (pk, Number, field size Byte)
PartCode (Text; entries in this field would be "Prl", "InProc", "Gath",

etc)
PartName (Text; entries in this field would be "Prelude", "Instrumental
Procession", "Gathering", etc)
ditto the above per the primary key field's data type, since you only

have
11 parts.

tblLiturgyEvents
LitEventID (pk, Autonumber)
LitID (foreign key from tblLiturgies)
CycleID (fk from tblCycles)
EventDate (the particular date that this particular liturgy was

delivered)

tblEventDetails
DetailID (pk, Autonumber)
LitEventID (fk from tblLiturgyEvents)
PartID (fk from tblLiturgyParts)
HymnID (fk from tblHymns)

the relationships would be
tblLiturgies.LitID 1:n tblLiturgyEvents.LitID
tblCycles.CycleID 1:n tblLiturgyEvents.CycleID
tblLiturgyEvents.LitEventID 1:n tblEventDetails.LitEventID
tblLiturgyParts.PartID 1:n tblEventDetails.PartID
tblHymns.HymnID 1:n tblEventDetails.HymnID

note that "1:n" is a common way of indicating "one-to-many".

hth


"linronamy" wrote in message
...
Explanation:
There are three Liturgical Cycles(A, B, C) each lasting 1 year with

the
complete duration being 3 years.

There are 52 litugies each year or Cycle. The readings and hymns are
different for each liturgy of each Cycle (week 1 of cycle A is

different
from
week 1 of Cycles B and C).

The liturgy and its Cycle is an event (in my database).

There are 11 parts for each Liturgy where there is a Hymn played in

each
part and they are titled by the following Liturgy order:

TABLE ASSIGN1 (Liturgy of the Word)
Prelude (Prl)
Instrumental Procession (InProc)
Gathering (Gath)
Responsorial Psalm (RPs)
Gospel Acclamation (GA)

TABLE ASSIGN2 (Liturgy of the Eucharist)
Preparation
Pre Communion Instrumental (PrCom)
Communion1 (Com1)
Communion2 (Com2)
Closing (Cl)
Instrumental Postlude (InPost)

I separated the Parts into two tables (Assign1 and Assign2) because

Access
2003 wouldn't allow more than 8 fields with referential integrity

links in
a
table(??? I think!!! - read it somewhere)

A complete record in the database would contain a Liturgy Name and its
corresponding Cycle along with 11 Hymns and Hymn numbers.

I have 6 years of history, one liturgy record per sheet.

The goal is to review the history to assemble a new liturgy record for

an
upcoming Liturgy by selecting each Hymn/Hymn Number from past records.

(Sample Query: Liturgy 43, Cycle B, Preparation - Hymns and Hymn

Numbers
should show all Preparation hymns played during that Liturgy/Cycle to

be
used
to select from, to enter data for the new record. Sorry, I hope that

is
clear.

A Question in All Caps:

"tina" wrote:

okay, as i thought, the section of your structure made up of those

11
tables
is non-normalized; any time you put data (preparation, precomminstr)

into
table or field names, you're violating data normalization

principles.
I DON'T UNDERSTAND. I THOUGHT SEGREGATING HYMNS AND THEIR HYMN NUMBER

INTO
A
TABLE UNIQUE TO THE PART OF THE LITURGY WOULD MAKE IT EASIER TO QUERY

LATER.
WHERE AM I GOING ASTRAY? WILL FOLLOW YOUR LEAD WITH ENTHUSIASM.
suggest that you put all the hymns into one table, with a field to

designate
what category each one belongs to (preparation, precomminstr, etc),

as

tblHymns
HymnNumber (recommend you do *not* use the # sign in a field name)
HymnName
Category

now, can you explain to me what the "ASSIGN1" and "ASSIGN2" data is

about,
and how it relates to LITEVENTS? don't use database terms; explain

it in
plain English as though you were telling a new church member how

things
are
done at your church. to get started: "we have x liturgies, and each

liturgy
has x cycles. each cycle of each liturgy has x events, and..."

hth


"linronamy" wrote in message
...
Legend: ()=Link w/o Referential Integrity,
(1)=One, (M)=Many

LITURGIES
LitID(PK, AutoNum)(1)
LitName(Text)

CYCLES
CycleID(PK, AutoNum)(1)
CycleName(Text)

LITEVENTS
LitEventID(PK, AutoNum)
LitID(Number)(M)
CycleID(Number)(M)

ASSIGN1
Assign1ID(PK, AutoNum)
LitEvent1ID(Number)()
PrepID(Number)(M)
PrComID(Number)(M)
Com1ID(Number)(M)
Com2ID(Number)(M)
ClID(Number)(M)
InPostID(Number)(M)

ASSIGN2
Assign2ID(PK, AutoNum)
LitEvent2ID(Number)()
PrlID(Number)(M)
InProcID(Number)(M)
GathID(Number)(M)
RPsID(Number)(M)
GAlID(Number)(M)

Each of 11 Tables that follow, link to corresponding fields(names)
in Assign1 or Assign2 tables. Each xxxxID field is a PK with

AutoNum
types
and are the (1) side of the relationship to the Assign1 or Assign2

Tables.
Data is input to these tables.

PREPARATION
PrepID(PK, AutoNum)(1)
PrepHymn(Text)
PrepHymn#(Text)

PRECOMMINSTR
PreComID(PK,AutoNum)(1)
PreComHymn(Text)
PreComHymn#(Text

Etc., Etc. thru 11 tables


"tina" wrote:

i'm not sure what the Assign tables are doing, but let's put

that
aside
for
a moment. i'm more concerned about "There are 11 tables

containing
data
each
unique to one of 11 parts, all having the same type link to the

Assign
tables"

that sounds suspiciously like a non-normalized design. please

post
the
table
and field names of these tables in the following format:

Table1Name
FieldName (primary key, data type)
NextFieldName (data type)
NextFieldName (data type)
(etc)

if the purpose of the field is not readily apparent from its'

name,
please
explain it.

hth


"linronamy" wrote in

message
...
The following is a view of my database:

Table Relationships (which are questionably setup)

Liturgies(1) to LitEvents(many) and Cycles(1) to

LitEvents(many)
Assign1() to LitEvents() and Assign2() to LitEvents()

There are 11 tables containing data each unique to one of 11

parts,
all having the same type link to the Assign tables,
5 to Assign1 and 6 to Assign2, each being (1) to the

Assign(many)

Looks Like:
Legend: ()=Link w/o Referential Integrity, (1)=One, (M)=Many,
(T)=Table

Litugies(T) LitEvent(T)
LitName
LitID(1) (M)LitID

Cycles(T)
CycleName
CyclesID(1) (M)CycleID


Assign1(T)
Assign2(T)
Assign1ID
Assign2ID
LitEventID() ()LitEventID()
()LitEventID

PrepID(M) (1)PrepID

PrepHymn PrepHymn

PrepHymn# PrepHymn#

(above PREPs is example of

11 PARTs tables)

I have a main form with two subforms.
Main form linked to LitEvents Table
Subform linked to Assign1
Subform linked to Assign2

The Main form is data entry for defining the Liturgy and its

Cycle.
The two subforms are data entry for the 11 parts(Hymn and

Humn#).
Together the Main and both Subforms datas combine to define

one
record.

My problem is when I enter data into the 3 forms they are not

linked



 




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Moving Relationships Between Databases kh Running & Setting Up Queries 4 February 23rd, 2006 05:46 PM
Using Relationships window [email protected] Database Design 11 October 2nd, 2005 06:44 PM
Confused about one-to-many or many-to-many relationships CAD Fiend Database Design 4 July 7th, 2005 03:38 PM
Importing Tables/Missing Relationships Elena Running & Setting Up Queries 1 May 20th, 2005 12:43 AM
Mixed up with Relationships..help! KrazyRed New Users 3 January 26th, 2005 05:03 AM


All times are GMT +1. The time now is 07:19 AM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 OfficeFrustration.
The comments are property of their posters.