Welcome to the { mindfrost82.com } forums.

You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!

If you have any problems with the registration process or your account login, please contact contact us.

Go Back   { mindfrost82.com } > Gadget Corner > Tech Newsgroups > Microsoft > MS Office > Access

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 08-07-2008, 04:40 PM
=?Utf-8?B?TURJIEFubmU=?=
 
Posts: n/a
Autopopulate a form

I have a form with several subforms. The main part of the form is company
data. One of the subforms contains volunteers names & addresses. Many of
the volunteers work for several companies.

What I would like to do is when I start typing in the volunteers' name, and
select one, the address would autopopulate into the rest of the form. Right
now, I have the volunteer table include the "company number", so I can sort
by that number also. I don't think it NEEDS to be there, but I'm afraid if I
wipe it out...I'll have NO volunteers for any companies.

So...2 questions:

If I change primary keys, which means I would have to get rid of the
duplicates, how can I keep the data associated?

How do I autopopulate the rest of the data once I have the name chosen?

Thanks in advance...
Reply With Quote
  #2 (permalink)  
Old 08-07-2008, 05:23 PM
=?Utf-8?B?S2V2IENvbGU=?=
 
Posts: n/a
RE: Autopopulate a form

Hi,

I assume the details of your volunteers are stored in a seperate table ?
--

Regards, Kev



"MDI Anne" wrote:

> I have a form with several subforms. The main part of the form is company
> data. One of the subforms contains volunteers names & addresses. Many of
> the volunteers work for several companies.
>
> What I would like to do is when I start typing in the volunteers' name, and
> select one, the address would autopopulate into the rest of the form. Right
> now, I have the volunteer table include the "company number", so I can sort
> by that number also. I don't think it NEEDS to be there, but I'm afraid if I
> wipe it out...I'll have NO volunteers for any companies.
>
> So...2 questions:
>
> If I change primary keys, which means I would have to get rid of the
> duplicates, how can I keep the data associated?
>
> How do I autopopulate the rest of the data once I have the name chosen?
>
> Thanks in advance...

Reply With Quote
  #3 (permalink)  
Old 08-07-2008, 05:28 PM
=?Utf-8?B?TURJIEFubmU=?=
 
Posts: n/a
RE: Autopopulate a form

Yes. The name, address, city, state and zip are in a different table. AND I
also have a column in this table to "connect" them to the companies they
volunteer for.



"Kev Cole" wrote:

> Hi,
>
> I assume the details of your volunteers are stored in a seperate table ?
> --
>
> Regards, Kev
>
>
>
> "MDI Anne" wrote:
>
> > I have a form with several subforms. The main part of the form is company
> > data. One of the subforms contains volunteers names & addresses. Many of
> > the volunteers work for several companies.
> >
> > What I would like to do is when I start typing in the volunteers' name, and
> > select one, the address would autopopulate into the rest of the form. Right
> > now, I have the volunteer table include the "company number", so I can sort
> > by that number also. I don't think it NEEDS to be there, but I'm afraid if I
> > wipe it out...I'll have NO volunteers for any companies.
> >
> > So...2 questions:
> >
> > If I change primary keys, which means I would have to get rid of the
> > duplicates, how can I keep the data associated?
> >
> > How do I autopopulate the rest of the data once I have the name chosen?
> >
> > Thanks in advance...

Reply With Quote
  #4 (permalink)  
Old 08-07-2008, 06:13 PM
=?Utf-8?B?S2VuIFNoZXJpZGFu?=
 
Posts: n/a
RE: Autopopulate a form

You have a many-to-many relationship type between Companies and Volunteers,
so you need a third table to model this relationship. This table,
CompanyVolunteers say, will have two foreign key columns CompanyID and
VolunteerID referncing the primary keys of Companies and Volunteers.
Volunteers needs no foreign key referencing Companies. CompanyVolunteers
might also have other columns representing the attributes of each volunteer's
connection with the company in question, e.g. the date they started. The
primary key of this table is a composite one of CompanyID and VolunteerID.

The subform should be based on the CompanyVolunteers table and linked to the
parent form on CompanyID. It will have a combo box bound to the VolumteerID
column set up with properties like this:

Name: cboVolunteer

ControlSource: VolunteerID

RowSource: SELECT VolunteerID, FirstName & " " & LastName, Address,
City, Zip FROM Volunteers ORDER BY LastName, FirstName;

BoundColum: 1
ColumnCount: 5
ColumnWidths 0cm;8cm;0;0;0;

If your units of measurement are imperial rather than metric Access will
automatically convert the last one. The important thing is that the first
dimension is zero to hide the first column and that the second is at least as
wide as the combo box.

To show the other data for the selected volunteer add three unbound text
boxes, txtAddress, txtCity and txtZip to the subform with ControlSource
properties of:

=cboVolunteer.Column(2)
=cboVolunteer.Column(3)
=cboVolunteer.Column(4)

The Column property is zero-based so Column(2) is the third column and so on.

Ad other controls to the subform for any other columns, e.g. DateStarted
form the CompanyVolunteers table. Don't include a control in the subform for
ComapanyID, however. That column will automatically be given the current
CompanyID via the linking mechanism.

Before you can do this of course you have to create the CompanyVolunteers
table and fill it with the necessary rows. Having set up the table you can
do this very simply with an 'append' query:

INSERT INTO CompanyVolunteers (CompanyID, VolunteerID)
SELECT Companies.CompanyID, Volunteers.VolunteerID
FROM Companies INNER JOIN Volunteers
ON Comaonaies.CompanyID = Volunteers.ComanyID;

Once you have the table filled and the subform set up, and are happy that
its showing the right volunteers per company you can delete the CompanyID
column from the Volunteers table.

You can now insert as few or as many volunteers per company as you wish via
the subform, and each volunteer can be assigned to as few or as many
companies as necessary.

Ken Sheridan
Stafford, England

"MDI Anne" wrote:

> Yes. The name, address, city, state and zip are in a different table. AND I
> also have a column in this table to "connect" them to the companies they
> volunteer for.
>
>
>
> "Kev Cole" wrote:
>
> > Hi,
> >
> > I assume the details of your volunteers are stored in a seperate table ?
> > --
> >
> > Regards, Kev
> >
> >
> >
> > "MDI Anne" wrote:
> >
> > > I have a form with several subforms. The main part of the form is company
> > > data. One of the subforms contains volunteers names & addresses. Many of
> > > the volunteers work for several companies.
> > >
> > > What I would like to do is when I start typing in the volunteers' name, and
> > > select one, the address would autopopulate into the rest of the form. Right
> > > now, I have the volunteer table include the "company number", so I can sort
> > > by that number also. I don't think it NEEDS to be there, but I'm afraid if I
> > > wipe it out...I'll have NO volunteers for any companies.
> > >
> > > So...2 questions:
> > >
> > > If I change primary keys, which means I would have to get rid of the
> > > duplicates, how can I keep the data associated?
> > >
> > > How do I autopopulate the rest of the data once I have the name chosen?
> > >
> > > Thanks in advance...


Reply With Quote
  #5 (permalink)  
Old 08-07-2008, 06:23 PM
=?Utf-8?B?TURJIEFubmU=?=
 
Posts: n/a
RE: Autopopulate a form

Ok...so hang with me while I give this a try... :)

"Ken Sheridan" wrote:

> You have a many-to-many relationship type between Companies and Volunteers,
> so you need a third table to model this relationship. This table,
> CompanyVolunteers say, will have two foreign key columns CompanyID and
> VolunteerID referncing the primary keys of Companies and Volunteers.
> Volunteers needs no foreign key referencing Companies. CompanyVolunteers
> might also have other columns representing the attributes of each volunteer's
> connection with the company in question, e.g. the date they started. The
> primary key of this table is a composite one of CompanyID and VolunteerID.
>
> The subform should be based on the CompanyVolunteers table and linked to the
> parent form on CompanyID. It will have a combo box bound to the VolumteerID
> column set up with properties like this:
>
> Name: cboVolunteer
>
> ControlSource: VolunteerID
>
> RowSource: SELECT VolunteerID, FirstName & " " & LastName, Address,
> City, Zip FROM Volunteers ORDER BY LastName, FirstName;
>
> BoundColum: 1
> ColumnCount: 5
> ColumnWidths 0cm;8cm;0;0;0;
>
> If your units of measurement are imperial rather than metric Access will
> automatically convert the last one. The important thing is that the first
> dimension is zero to hide the first column and that the second is at least as
> wide as the combo box.
>
> To show the other data for the selected volunteer add three unbound text
> boxes, txtAddress, txtCity and txtZip to the subform with ControlSource
> properties of:
>
> =cboVolunteer.Column(2)
> =cboVolunteer.Column(3)
> =cboVolunteer.Column(4)
>
> The Column property is zero-based so Column(2) is the third column and so on.
>
> Ad other controls to the subform for any other columns, e.g. DateStarted
> form the CompanyVolunteers table. Don't include a control in the subform for
> ComapanyID, however. That column will automatically be given the current
> CompanyID via the linking mechanism.
>
> Before you can do this of course you have to create the CompanyVolunteers
> table and fill it with the necessary rows. Having set up the table you can
> do this very simply with an 'append' query:
>
> INSERT INTO CompanyVolunteers (CompanyID, VolunteerID)
> SELECT Companies.CompanyID, Volunteers.VolunteerID
> FROM Companies INNER JOIN Volunteers
> ON Comaonaies.CompanyID = Volunteers.ComanyID;
>
> Once you have the table filled and the subform set up, and are happy that
> its showing the right volunteers per company you can delete the CompanyID
> column from the Volunteers table.
>
> You can now insert as few or as many volunteers per company as you wish via
> the subform, and each volunteer can be assigned to as few or as many
> companies as necessary.
>
> Ken Sheridan
> Stafford, England
>
> "MDI Anne" wrote:
>
> > Yes. The name, address, city, state and zip are in a different table. AND I
> > also have a column in this table to "connect" them to the companies they
> > volunteer for.
> >
> >
> >
> > "Kev Cole" wrote:
> >
> > > Hi,
> > >
> > > I assume the details of your volunteers are stored in a seperate table ?
> > > --
> > >
> > > Regards, Kev
> > >
> > >
> > >
> > > "MDI Anne" wrote:
> > >
> > > > I have a form with several subforms. The main part of the form is company
> > > > data. One of the subforms contains volunteers names & addresses. Many of
> > > > the volunteers work for several companies.
> > > >
> > > > What I would like to do is when I start typing in the volunteers' name, and
> > > > select one, the address would autopopulate into the rest of the form. Right
> > > > now, I have the volunteer table include the "company number", so I can sort
> > > > by that number also. I don't think it NEEDS to be there, but I'm afraid if I
> > > > wipe it out...I'll have NO volunteers for any companies.
> > > >
> > > > So...2 questions:
> > > >
> > > > If I change primary keys, which means I would have to get rid of the
> > > > duplicates, how can I keep the data associated?
> > > >
> > > > How do I autopopulate the rest of the data once I have the name chosen?
> > > >
> > > > Thanks in advance...

>

Reply With Quote
  #6 (permalink)  
Old 08-07-2008, 07:10 PM
=?Utf-8?B?TURJIEFubmU=?=
 
Posts: n/a
RE: Autopopulate a form

Well...you would think I'd have a "many to many" relationship between the 2
tables...but I don't. It's a one to many...and I have tried to get it many
to many...but can't figure it out. I guess my quest is bigger than I
thought, or that I'm able to comprehend...

Wanna hold my hand thru it??

"Ken Sheridan" wrote:

> You have a many-to-many relationship type between Companies and Volunteers,
> so you need a third table to model this relationship. This table,
> CompanyVolunteers say, will have two foreign key columns CompanyID and
> VolunteerID referncing the primary keys of Companies and Volunteers.
> Volunteers needs no foreign key referencing Companies. CompanyVolunteers
> might also have other columns representing the attributes of each volunteer's
> connection with the company in question, e.g. the date they started. The
> primary key of this table is a composite one of CompanyID and VolunteerID.
>
> The subform should be based on the CompanyVolunteers table and linked to the
> parent form on CompanyID. It will have a combo box bound to the VolumteerID
> column set up with properties like this:
>
> Name: cboVolunteer
>
> ControlSource: VolunteerID
>
> RowSource: SELECT VolunteerID, FirstName & " " & LastName, Address,
> City, Zip FROM Volunteers ORDER BY LastName, FirstName;
>
> BoundColum: 1
> ColumnCount: 5
> ColumnWidths 0cm;8cm;0;0;0;
>
> If your units of measurement are imperial rather than metric Access will
> automatically convert the last one. The important thing is that the first
> dimension is zero to hide the first column and that the second is at least as
> wide as the combo box.
>
> To show the other data for the selected volunteer add three unbound text
> boxes, txtAddress, txtCity and txtZip to the subform with ControlSource
> properties of:
>
> =cboVolunteer.Column(2)
> =cboVolunteer.Column(3)
> =cboVolunteer.Column(4)
>
> The Column property is zero-based so Column(2) is the third column and so on.
>
> Ad other controls to the subform for any other columns, e.g. DateStarted
> form the CompanyVolunteers table. Don't include a control in the subform for
> ComapanyID, however. That column will automatically be given the current
> CompanyID via the linking mechanism.
>
> Before you can do this of course you have to create the CompanyVolunteers
> table and fill it with the necessary rows. Having set up the table you can
> do this very simply with an 'append' query:
>
> INSERT INTO CompanyVolunteers (CompanyID, VolunteerID)
> SELECT Companies.CompanyID, Volunteers.VolunteerID
> FROM Companies INNER JOIN Volunteers
> ON Comaonaies.CompanyID = Volunteers.ComanyID;
>
> Once you have the table filled and the subform set up, and are happy that
> its showing the right volunteers per company you can delete the CompanyID
> column from the Volunteers table.
>
> You can now insert as few or as many volunteers per company as you wish via
> the subform, and each volunteer can be assigned to as few or as many
> companies as necessary.
>
> Ken Sheridan
> Stafford, England
>
> "MDI Anne" wrote:
>
> > Yes. The name, address, city, state and zip are in a different table. AND I
> > also have a column in this table to "connect" them to the companies they
> > volunteer for.
> >
> >
> >
> > "Kev Cole" wrote:
> >
> > > Hi,
> > >
> > > I assume the details of your volunteers are stored in a seperate table ?
> > > --
> > >
> > > Regards, Kev
> > >
> > >
> > >
> > > "MDI Anne" wrote:
> > >
> > > > I have a form with several subforms. The main part of the form is company
> > > > data. One of the subforms contains volunteers names & addresses. Many of
> > > > the volunteers work for several companies.
> > > >
> > > > What I would like to do is when I start typing in the volunteers' name, and
> > > > select one, the address would autopopulate into the rest of the form. Right
> > > > now, I have the volunteer table include the "company number", so I can sort
> > > > by that number also. I don't think it NEEDS to be there, but I'm afraid if I
> > > > wipe it out...I'll have NO volunteers for any companies.
> > > >
> > > > So...2 questions:
> > > >
> > > > If I change primary keys, which means I would have to get rid of the
> > > > duplicates, how can I keep the data associated?
> > > >
> > > > How do I autopopulate the rest of the data once I have the name chosen?
> > > >
> > > > Thanks in advance...

>

Reply With Quote
  #7 (permalink)  
Old 08-07-2008, 08:01 PM
=?Utf-8?B?TURJIEFubmU=?=
 
Posts: n/a
RE: Autopopulate a form

Bound and determined (using the awesome instructions you've given me!!) I
think I'm getting somewhere.

I truly appreciate your help on this!!



"Ken Sheridan" wrote:

> You have a many-to-many relationship type between Companies and Volunteers,
> so you need a third table to model this relationship. This table,
> CompanyVolunteers say, will have two foreign key columns CompanyID and
> VolunteerID referncing the primary keys of Companies and Volunteers.
> Volunteers needs no foreign key referencing Companies. CompanyVolunteers
> might also have other columns representing the attributes of each volunteer's
> connection with the company in question, e.g. the date they started. The
> primary key of this table is a composite one of CompanyID and VolunteerID.
>
> The subform should be based on the CompanyVolunteers table and linked to the
> parent form on CompanyID. It will have a combo box bound to the VolumteerID
> column set up with properties like this:
>
> Name: cboVolunteer
>
> ControlSource: VolunteerID
>
> RowSource: SELECT VolunteerID, FirstName & " " & LastName, Address,
> City, Zip FROM Volunteers ORDER BY LastName, FirstName;
>
> BoundColum: 1
> ColumnCount: 5
> ColumnWidths 0cm;8cm;0;0;0;
>
> If your units of measurement are imperial rather than metric Access will
> automatically convert the last one. The important thing is that the first
> dimension is zero to hide the first column and that the second is at least as
> wide as the combo box.
>
> To show the other data for the selected volunteer add three unbound text
> boxes, txtAddress, txtCity and txtZip to the subform with ControlSource
> properties of:
>
> =cboVolunteer.Column(2)
> =cboVolunteer.Column(3)
> =cboVolunteer.Column(4)
>
> The Column property is zero-based so Column(2) is the third column and so on.
>
> Ad other controls to the subform for any other columns, e.g. DateStarted
> form the CompanyVolunteers table. Don't include a control in the subform for
> ComapanyID, however. That column will automatically be given the current
> CompanyID via the linking mechanism.
>
> Before you can do this of course you have to create the CompanyVolunteers
> table and fill it with the necessary rows. Having set up the table you can
> do this very simply with an 'append' query:
>
> INSERT INTO CompanyVolunteers (CompanyID, VolunteerID)
> SELECT Companies.CompanyID, Volunteers.VolunteerID
> FROM Companies INNER JOIN Volunteers
> ON Comaonaies.CompanyID = Volunteers.ComanyID;
>
> Once you have the table filled and the subform set up, and are happy that
> its showing the right volunteers per company you can delete the CompanyID
> column from the Volunteers table.
>
> You can now insert as few or as many volunteers per company as you wish via
> the subform, and each volunteer can be assigned to as few or as many
> companies as necessary.
>
> Ken Sheridan
> Stafford, England
>
> "MDI Anne" wrote:
>
> > Yes. The name, address, city, state and zip are in a different table. AND I
> > also have a column in this table to "connect" them to the companies they
> > volunteer for.
> >
> >
> >
> > "Kev Cole" wrote:
> >
> > > Hi,
> > >
> > > I assume the details of your volunteers are stored in a seperate table ?
> > > --
> > >
> > > Regards, Kev
> > >
> > >
> > >
> > > "MDI Anne" wrote:
> > >
> > > > I have a form with several subforms. The main part of the form is company
> > > > data. One of the subforms contains volunteers names & addresses. Many of
> > > > the volunteers work for several companies.
> > > >
> > > > What I would like to do is when I start typing in the volunteers' name, and
> > > > select one, the address would autopopulate into the rest of the form. Right
> > > > now, I have the volunteer table include the "company number", so I can sort
> > > > by that number also. I don't think it NEEDS to be there, but I'm afraid if I
> > > > wipe it out...I'll have NO volunteers for any companies.
> > > >
> > > > So...2 questions:
> > > >
> > > > If I change primary keys, which means I would have to get rid of the
> > > > duplicates, how can I keep the data associated?
> > > >
> > > > How do I autopopulate the rest of the data once I have the name chosen?
> > > >
> > > > Thanks in advance...

>

Reply With Quote
  #8 (permalink)  
Old 08-08-2008, 05:49 PM
=?Utf-8?B?TURJIEFubmU=?=
 
Posts: n/a
RE: Autopopulate a form

Excellent!! Thank you for your help and kindness!

"Ken Sheridan" wrote:

> You have a many-to-many relationship type between Companies and Volunteers,
> so you need a third table to model this relationship. This table,
> CompanyVolunteers say, will have two foreign key columns CompanyID and
> VolunteerID referncing the primary keys of Companies and Volunteers.
> Volunteers needs no foreign key referencing Companies. CompanyVolunteers
> might also have other columns representing the attributes of each volunteer's
> connection with the company in question, e.g. the date they started. The
> primary key of this table is a composite one of CompanyID and VolunteerID.
>
> The subform should be based on the CompanyVolunteers table and linked to the
> parent form on CompanyID. It will have a combo box bound to the VolumteerID
> column set up with properties like this:
>
> Name: cboVolunteer
>
> ControlSource: VolunteerID
>
> RowSource: SELECT VolunteerID, FirstName & " " & LastName, Address,
> City, Zip FROM Volunteers ORDER BY LastName, FirstName;
>
> BoundColum: 1
> ColumnCount: 5
> ColumnWidths 0cm;8cm;0;0;0;
>
> If your units of measurement are imperial rather than metric Access will
> automatically convert the last one. The important thing is that the first
> dimension is zero to hide the first column and that the second is at least as
> wide as the combo box.
>
> To show the other data for the selected volunteer add three unbound text
> boxes, txtAddress, txtCity and txtZip to the subform with ControlSource
> properties of:
>
> =cboVolunteer.Column(2)
> =cboVolunteer.Column(3)
> =cboVolunteer.Column(4)
>
> The Column property is zero-based so Column(2) is the third column and so on.
>
> Ad other controls to the subform for any other columns, e.g. DateStarted
> form the CompanyVolunteers table. Don't include a control in the subform for
> ComapanyID, however. That column will automatically be given the current
> CompanyID via the linking mechanism.
>
> Before you can do this of course you have to create the CompanyVolunteers
> table and fill it with the necessary rows. Having set up the table you can
> do this very simply with an 'append' query:
>
> INSERT INTO CompanyVolunteers (CompanyID, VolunteerID)
> SELECT Companies.CompanyID, Volunteers.VolunteerID
> FROM Companies INNER JOIN Volunteers
> ON Comaonaies.CompanyID = Volunteers.ComanyID;
>
> Once you have the table filled and the subform set up, and are happy that
> its showing the right volunteers per company you can delete the CompanyID
> column from the Volunteers table.
>
> You can now insert as few or as many volunteers per company as you wish via
> the subform, and each volunteer can be assigned to as few or as many
> companies as necessary.
>
> Ken Sheridan
> Stafford, England
>
> "MDI Anne" wrote:
>
> > Yes. The name, address, city, state and zip are in a different table. AND I
> > also have a column in this table to "connect" them to the companies they
> > volunteer for.
> >
> >
> >
> > "Kev Cole" wrote:
> >
> > > Hi,
> > >
> > > I assume the details of your volunteers are stored in a seperate table ?
> > > --
> > >
> > > Regards, Kev
> > >
> > >
> > >
> > > "MDI Anne" wrote:
> > >
> > > > I have a form with several subforms. The main part of the form is company
> > > > data. One of the subforms contains volunteers names & addresses. Many of
> > > > the volunteers work for several companies.
> > > >
> > > > What I would like to do is when I start typing in the volunteers' name, and
> > > > select one, the address would autopopulate into the rest of the form. Right
> > > > now, I have the volunteer table include the "company number", so I can sort
> > > > by that number also. I don't think it NEEDS to be there, but I'm afraid if I
> > > > wipe it out...I'll have NO volunteers for any companies.
> > > >
> > > > So...2 questions:
> > > >
> > > > If I change primary keys, which means I would have to get rid of the
> > > > duplicates, how can I keep the data associated?
> > > >
> > > > How do I autopopulate the rest of the data once I have the name chosen?
> > > >
> > > > Thanks in advance...

>

Reply With Quote
Reply

  { mindfrost82.com } > Gadget Corner > Tech Newsgroups > Microsoft > MS Office > Access


Thread Tools Search this Thread
Search this Thread:

Advanced Search
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 Off
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT. The time now is 05:00 PM.


Powered by vBulletin, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.
© 1999-2008 mindfrost82.com v11.0


Sponsors:
Mississippi Flags | Share Prices | Credit Cards | Ringtone | Online Loans



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114