Sure, I'll try my best to explain.
It's a cost estimate database. Each job that comes in gets logged in with a
estimate of how much it will cost. (This also happens to fit nicely onto one
page.)
Stop right there.
The design of your tables should NOT be influenced AT ALL by the size of a
page or by data presentation.
The design of your tables should be completely controlled by the logical
relationships of the Entities - real-life persons, things, or events - that
the database represents. Create a logical, normalized relationship between the
tables, and *then* start working on ways to present that information to the
user!
So there are tasks that need to be performed on each job. currently we can
only reasonably get 40 tasks on a page so we just stopped there.
Could you accept a design which would allow *any desired number* of tasks for
a job - one job might have three, another thirty, another (building a venue
for the Winter Olympics say) three thousand? Perfectly straightforward with
proper relational design.
One job may
only need 3 tasks performed, others maybe need 30. But all 40 lines are
available to be filled out. Each task has to be broken out into 4 columns of
data. These columns are quantity and 3 different costs. Then at the bottom
everything is totaled a specific way.
Again... you're confusing data STORAGE with data PRESENTATION.
So the "Records" are the jobs that come in. This is also my primary key.
There's other info like your name, customer name, date, etc. that is also
stored for each record.
So my field names are task 1 - thru - task 40, cost 1 - thru cost 40, etc.
plus all the other basic stuff like date and name and other info. So as it is
now, 1 record needs all those fields. It was a nightmare to set up (probably
because I'm a newbie) but now that I already have it set up the form just
looks like the regular piece of paper that everyone is used to. It was just a
cosmetic issue for the merge.
The proper design for this involves *several tables*, none with as many as ten
fields:
Clients
ClientID <primary key>
LastName
FirstName
<other info about the client/customer>
Projects
ProjectID <primary key>
Description
ClientID <who is this project for>
StartDate
<other fields about the project itself>
Tasks
TaskID <primary key>
TaskDescription <e.g. "grade and level site">
<any other info about the task itself independent of any project>
ProjectTasks
ProjectID <link to Projects>
TaskID <link to Tasks, this task is needed for this project>
TaskCost
<info pertaining to THIS task for THIS project, e.g. date started, date
completed, ID of the person or team doing the task, etc.>
"Fields are expensive, records are cheap". If a project has many tasks, you
would enter many records into the ProjectTasks table, one for each task, each
with its cost; a Totals query (or a total on a Form or Report) can sum the
costs. *RECORDS*, not fields!
So I'm basically just trying to do it right for the 2010 database so that's
why i was asking if there was a better way to go. I'm also enthralled by the
vast amount of capabilities that Access has to offer but I'm sure it will be
harder to implement them if you don't even start off on the right track lol.
Hopefully this was clear and thanks a lot for the hekp.
Just try not to get hung up on modeling your database on a paper form. The
project isn't a paper form! The paper form is a good tool to manage the
information about your project - *if the only tool you have is a sheet of
paper*. You're not stuck with just using a sheet of paper; you have a powerful
computer and a powerful logical framework ("Normalized Database Design") that
is much more capable and much more flexible than an 8.5 x 11 inch sheet of
paper!