So you are looking for advice on the structure?
If you think about a database every table should have it's own primary key field *first* so keep that in mind as you go forward. If you're just starting out use the autonumber data type. Having a primary key that can not be changed by the user will help you organize.
Now, for each piece of data on your form, if it is a field that you want to be able to pick from a list, each one of those items you will want a supporting table. So for instance on your first page where you have COMPANY/ORGANIZATION, there would be a supporting table like:
Code:
Comp_ID Comp_Name Comp_Contact Comp_Address Comp_State ---> other company related information
1 Company A John Doe 1 First St FL
2 Company B Jane Doe 2 Last St WI
Your page 2 would be a little trickier if those 'options' are a static list but you want to require certain ones for certain choices that would all have to be set up within your table structure or within your code running your forms. If those options change (i.e. if this were not a civil project) depending on the project type you would have to account for that in your table structure as well, but without knowing more about that I can't be more specific so let's take a generic example. Let's say you have 2 project types (CIVIL and HAULING CABLE) each of these project types has a number of required 'tasks', if the tasks overlap then you'd have to have 3 tables, a table for the project type, a table for the tasks and a junction table that connects the project to the task. Personally I would do it this way no matter what just in case, in the future, you do have tasks that overlap on different project types.
In practical terms your table would be something like:
Code:
tblProjType
PT_ID PT_Desc ----> other project type related information
1 Civil
2 Hauling Cable
tblTaskType
TT_ID TT_Desc
1 WHS Act 2011
2 WHS Regulation 2011
3 Environmental Protection Act 1994
4 Environmental Protection Regulation 2008
tblProjTaskXref
PTX_ID PT_ID TT_ID -----> other project task related information
1 1 3
2 1 2
3 1 4
4 2 3
5 2 1
In this example a CIVIL project type would have required tasks 2, 3 and 4, where a HAULING CABLE project type would have required tasks 1 and 3.
Setting up like this allows you to require certain fields (if done properly), you could for instance have a 'required' field in your tblProjTaskXref table, if the required field is set to yes then the item must be checked, if not it just appears as an option on your data entry screens.
Page 7 to 24 seem to be free form but I don't know your business it might be that the left most column is a static item as are all the options that you can choose under that item. If that's the case you would do a similar setup to the project type/task type where you relate options to a specific parent item so they user's allowable selections are limited when they choose an item.
Just keep in mind, depending on how this is set up (again I don't know your business) but this may not fit on a single report unless you design a few subreports and fit them on to a 'main' report, access is limited to 22 inches in width in the report designer and, I think 22 inches in depth.