After some experimenting around, I am starting to think that creating tables to manage attributes and linking them with categories is either 1) doable in implementation but almost impossible to present or 2) presentable but impossible to implement.
The big objective was to make the database self-maintaining even though if the metadata could change so there would be no need for a database programmer to come in and fix it up every time we enter a new fiscal year and have different reporting requirement than before.
Now I'm kicking around a new idea. What if I were to compartmentize the back-end for each respective category of what I want to store. There'd be a "central" back-end that holds all personal information of our clients for any services for any contracts and a front end that acts as a container for each back-end (e.g. copies the forms/reports and links the specific data back to the database).
Whenever a specific person falls under a contract or whatever, the users would select the subform representing the contract, which would add the primary key from contact database to the specific back-end and because the specific back-end can have a 1-1 correlation to the model it represents without any abstraction, I guess the development will be easier.
The only problem with it is it's still a multi-database version of "three-legged" tables which as The_Doc_Man demonstrated, is actually denormalization of data. At this point, I'm more interested in providing a database that is easy to implement and easy to maintain even if I've since left the company which was why I mucked with the idea of abstracting away the incompatible structures of different contracts into generic tables. Seems to me the idea of "pluggable database" is the closest I can get to keep things general without getting bogged down in exotic implementation or bizarre table layouts.
Anybody have a suggestion or leads for me to research?
The big objective was to make the database self-maintaining even though if the metadata could change so there would be no need for a database programmer to come in and fix it up every time we enter a new fiscal year and have different reporting requirement than before.
Now I'm kicking around a new idea. What if I were to compartmentize the back-end for each respective category of what I want to store. There'd be a "central" back-end that holds all personal information of our clients for any services for any contracts and a front end that acts as a container for each back-end (e.g. copies the forms/reports and links the specific data back to the database).
Whenever a specific person falls under a contract or whatever, the users would select the subform representing the contract, which would add the primary key from contact database to the specific back-end and because the specific back-end can have a 1-1 correlation to the model it represents without any abstraction, I guess the development will be easier.
The only problem with it is it's still a multi-database version of "three-legged" tables which as The_Doc_Man demonstrated, is actually denormalization of data. At this point, I'm more interested in providing a database that is easy to implement and easy to maintain even if I've since left the company which was why I mucked with the idea of abstracting away the incompatible structures of different contracts into generic tables. Seems to me the idea of "pluggable database" is the closest I can get to keep things general without getting bogged down in exotic implementation or bizarre table layouts.
Anybody have a suggestion or leads for me to research?
Last edited: