Vehicle Waiver Database

R

Ron A.

I need help in creating a solid table structure for tracking vehicle waivers.
I posted this before, but I cannot find the related post. I will try to give
as much detail as possible.

Scenario: A vehicle maintenance shop needs to keep track of all items
on a vehicle that will not be repaired due to cost effectiveness, non safety
related or cosmetic items (minor dents and scratches, cracks in the dash,
non-essential light inop and so on). These items that will not be repaired
are waivered on a form that is kept in the vehicle. It is also the
maintenance shops responsibility to send a report quarterly to each vehicle
control officer of all waivered items for their vehicles.

Details: Vehicles are assigned to a unit and each unit is designated by
a master code. Each unit can have offices assigned and they are designated by
a sub-code. In addition, the master code can also be used as a sub-code (i.e.
Civil Engineering is master and shop within, like, A/C, water, roads and
grounds are subs).

Each unit has a vehicle control officer assigned to it who will receive
the quarterly waiver report for their unit.

Each vehicle is assigned a unique registration number and waivered
items are strictly unique to each vehicle.

Here is what I have so far:


tblOrgs:
MasterID (PK)
MasterOrgCode
OrgName
Address
UserCode1
UserCode2
UserCode3
UserCode4
UserCode6
UserCode7
UserCode8

tblUsers:
UserID (PK)
UserCode
MasterID (FK) from tblOrgs
UserName
VCOID (FK) from tblVCO

tblVCO:
VCOID (PK)
MasterID (FK) from tblOrgs
VCOName
Phone
Email

tblVehicle:
VehicleID (PK)
RegNumber
MGMTCode
UserID (FK) from tblUsers

tblWaiver:
WaiverID (PK)
VehID (FK) from tblVehicle
WaiverDate
ItemWaived
Initials (FK) from tblInitials

tblInitials:
InitialID (PK)
NameLast
NameFirst
ManNO
Initials

I hope I gave enough info and thanks for taking the time to dredge
through this.
 
B

BruceM via AccessMonster.com

Is an Org the same as a Unit?

UserCode1, etc. should not be in the table. I assume those are the waived
items, but whatever they are, they should be stored in a related table.

I assume the word is supposed to be "officers" in "Each unit can have offices
assigned." There should be an Officers table, as each entity should be
stored in its own table. If an officer may be assigned to more than one unit,
there needs to be a junction table between tblUnit and tblOfficer (the unit
and officer tables).

tblUnit
UnitID
UnitName
etc.

tblOfficer
OfficerID
FirstName
etc.

tblUnitOfficer
UnitID
OfficerID
Other fields for data about a specific officer assigned to a specific unit

tblVehicle
VehicleID (PK)
UnitID
RegNumber

tblWaivedItem
WaivedID
VehicleID
ItemDescription

Each Unit (or Org?) may have several vehicles, each of which may have several
waived items. Each Unit may have several Officers, but is there a direct
connection between Officers and Vehicles?

These are some very general thoughts. The meaning of master code, sub-code,
and some other fields is not always clear.
 
K

KARL DEWEY

I do not know how you use the UserCode so I would not include it.
Users do not have a VCO so I would remove it from the tblUsers.
Vehicles have VCO so I would add it to tblVehicle.
I would not use Initals but would have InitialID in tblWaiver.
I would add EstEndDate and EndDate in tblWaiver.
I do not know how you use the ManNO so I would not include it nor Initials.
 
R

Ron A.

Let me try and shed more light. Units may be misleading, so let's call them
orginizations. An orginization (Org) is assigned a master org code and all of
the different offices inside of the orginization is assigned a user code.
These code just define who owns the vehicle and what office is actually using
it day to day.

Where I am finding it difficult, is the org can also be the user. That means
that I may have to use the same code as the org and the user.

Each org has a vehicle control officer that I want the quarterly report to
go to and I only need vehicle waivers on the report for vehicles that VCO is
responsible for. In addition, the initials come from the inspectors in
vehicle mainteance that are authorized and are the one to waiver the item.

Hope this helps
 
R

Ron A.

I forgot to say that the usercode 1 thru 8 in the tblOrg are foreign Keys
from tblUsers/UserID. I did this becaue 1 Orginization can have many users
within it.
 
B

BruceM via AccessMonster.com

If there are a variable number of users there needs to be a related Users
table. Eight separate fields is a poor design, even if you never have nine
users and need to redesign the database.

The structure is not clear. Are there offices and officers? Are the users
offices or officers?

Whatever they are, an Organization may have several of them, so there is a
one-to-many relationship between Organization and Users, which means there
needs to be a related Users table. Its foreign key is linked to the primary
key of the Organization table.

If an organization has several users, how can an organization be a user? The
business logic eludes me.

Please note Karl's response for more thoughts.

I forgot to say that the usercode 1 thru 8 in the tblOrg are foreign Keys
from tblUsers/UserID. I did this becaue 1 Orginization can have many users
within it.
Let me try and shed more light. Units may be misleading, so let's call them
orginizations. An orginization (Org) is assigned a master org code and all of
[quoted text clipped - 130 lines]
 
K

KARL DEWEY

how can an organization be a user?
The headshed can have an element that is a user but not itself be a user,
therefore that element needs to be listed under the organization.

--
Build a little, test a little.


BruceM via AccessMonster.com said:
If there are a variable number of users there needs to be a related Users
table. Eight separate fields is a poor design, even if you never have nine
users and need to redesign the database.

The structure is not clear. Are there offices and officers? Are the users
offices or officers?

Whatever they are, an Organization may have several of them, so there is a
one-to-many relationship between Organization and Users, which means there
needs to be a related Users table. Its foreign key is linked to the primary
key of the Organization table.

If an organization has several users, how can an organization be a user? The
business logic eludes me.

Please note Karl's response for more thoughts.

I forgot to say that the usercode 1 thru 8 in the tblOrg are foreign Keys
from tblUsers/UserID. I did this becaue 1 Orginization can have many users
within it.
Let me try and shed more light. Units may be misleading, so let's call them
orginizations. An orginization (Org) is assigned a master org code and all of
[quoted text clipped - 130 lines]
I hope I gave enough info and thanks for taking the time to dredge
through this.

--



.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Top