I have been breaking my head since one week to come up with a novel solution for the following problem:
Lets take a typical database schema. It contains number of tables, of which ,
... some have primary key/foreign key relation ship,
... there can be one or more tables which mediate to form a relation between two tables.
User has a requirement like this:
He should be given UI such that he will have the option to select some from a series of business attributes .These attributes which will map to database columns.
He can select attributes in such a fashion that
... some of the attributes may be columns of two tables which has primary/foreign key relationship
... some of the attributes from disjoint tables which will be linked indirectly through one or more tables
Taking all these into consideration,
if user submits the Search , we have to form a query based on above and give the user resultant records.
We have to avoid resulting cartesian product (It results when there is no join or filter)
How do you look at such kind of system ??
We proposed user to use Crystal Reports. But user doesnt want to get exposed/fall in the risk of understanding the database structure. He just wants a system where in he can select business fields (with out applying his domain knowledge as to whether these fields logically relate or not) and he wants to get results.
Any help/views are appreciated.