Subject | HELEN - Explaination |
---|---|
Author | Anthony |
Post date | 2001-06-01T12:35:22Z |
This a midas app:
I have got the InsertSQL etc OK on a 'flat' select * from table -
Thanks. But....
At present on my server app:
I have a IBOQry with "SELECT * FROM CUST ORDER BY REFNO" and a
datasetprovide and datasource linked to it. This one is the master.
I have another IBOQry with "SELECT * FROM PREMISES WHERE REFNO
= :REFNO" and I have set its DataSource as the master datasource.
CLIENT APP
I add all fields to the masters (CUST)Clientdataset and I get an
extra field for the relationship.
The details (PREMISES) client dataset has its databasefield set as
the extra field on the master.
That gives me a Master Detail relationship and it works fine.
I am using the dbTreeview(as well as other controls) on the client to
browse through the data.
Now here is where it gets tricky. What I want to be able to do is
use the treeview to both brows by the CUST.SURNAME and the
PREMISES.POSTCODE. I can manipulate the fields of the dbTreeView
easily enough to do so. But I have to alter the SQL in the master
query on the SERVER to join the premises table. That works but all
my detail datasets now do not/do not appear to open.
I have created a little test app and discoverred that if i open the
detail Clientdataset it opens the Master one also, but it is slow.
The bottom line is, that I thought adding the join would simply add
the field to my master datasets and all othere relationships would
remain unchanged.
Have I got it all wrong? It is Friday isn't it? Hope you can help
Ooooh - I have just thought- Could I create a VIEW which is the 2
tables joined as the master and use the INSERTSQL etc to insert into
the actual table??? There is hope - I hope!
REGARDS - Please CC Response to Adcruze@...
I have got the InsertSQL etc OK on a 'flat' select * from table -
Thanks. But....
At present on my server app:
I have a IBOQry with "SELECT * FROM CUST ORDER BY REFNO" and a
datasetprovide and datasource linked to it. This one is the master.
I have another IBOQry with "SELECT * FROM PREMISES WHERE REFNO
= :REFNO" and I have set its DataSource as the master datasource.
CLIENT APP
I add all fields to the masters (CUST)Clientdataset and I get an
extra field for the relationship.
The details (PREMISES) client dataset has its databasefield set as
the extra field on the master.
That gives me a Master Detail relationship and it works fine.
I am using the dbTreeview(as well as other controls) on the client to
browse through the data.
Now here is where it gets tricky. What I want to be able to do is
use the treeview to both brows by the CUST.SURNAME and the
PREMISES.POSTCODE. I can manipulate the fields of the dbTreeView
easily enough to do so. But I have to alter the SQL in the master
query on the SERVER to join the premises table. That works but all
my detail datasets now do not/do not appear to open.
I have created a little test app and discoverred that if i open the
detail Clientdataset it opens the Master one also, but it is slow.
The bottom line is, that I thought adding the join would simply add
the field to my master datasets and all othere relationships would
remain unchanged.
Have I got it all wrong? It is Friday isn't it? Hope you can help
Ooooh - I have just thought- Could I create a VIEW which is the 2
tables joined as the master and use the INSERTSQL etc to insert into
the actual table??? There is hope - I hope!
REGARDS - Please CC Response to Adcruze@...