I have a universe with a table x which I want to rebuild with table y instead. About 80% of the objects will be the same except their name will be y.field1 instead of x.field1. Most of the directly joined tables are the same but again the join properties will need editing.
Is there a quick way to do this.
I have just upgraded to BO 5 and Oracle 8.
Jonathan Bliss, Product Consultant
McKessonHBOC Computer Centre, Harold Wood Hospital site, Gubbins Lane, Romford, RM3 0NE
mobile:0498 668084, tel 01708 336135 (direct line with voicemail), fax 01708 376270
I have a universe with a table x which I want to rebuild with table y instead. About 80% of the objects will be the same except their name will be y.field1 instead of x.field1. Most of the directly joined tables are the same but again the join properties will need editing.
I’m version 4.1 but here’s how I did that a few weeks ago.
Insert the new table into the universe. (y) Edit the join(s) between the old table(x) and each other table it is joined to (z). Change the join from x.field=z.field to y.field=z.field. Do a view associated objects on table x to easily repoint the objects to table y. This prevents errors due to internal BO object numbers being jumbled if you create new table y objects. Create any new objects you need from table y and edit any object descriptions as necessary.
Remove table x from the universe.
This does work but Steve Kerr had the faster way using the table rename function in designer. That will make all of the changes in links and objects for you. The only thing I have found it doesn’t handle are objects that have complex sql like decode.
I actually did this just yesterday and the only objects I had to manually adjust were those object with complex sql.
The rename can save you tons of time in universes with MANY joins!
Mike McErlain
At 11:22 AM 1/20/2000 -0500, you wrote:
I have a universe with a table x which I want to rebuild with table y instead. About 80% of the objects will be the same except their name will be y.field1 instead of x.field1. Most of the directly joined tables are the same but again the join properties will need editing.
I’m version 4.1 but here’s how I did that a few weeks ago.
Insert the new table into the universe. (y) Edit the join(s) between the old table(x) and each other table it is joined to (z). Change the join from x.field=z.field to y.field=z.field. Do a view associated objects on table x to easily repoint the objects to table y. This prevents errors due to internal BO object numbers being jumbled if you create new table y objects. Create any new objects you need from table y and edit any object descriptions as necessary.
Remove table x from the universe.
Steve wrote: In designer simply right mouse on the table, rename table, type in the new name (case sensitive).
Thanks for the quick reply. This seems to work when all the field names in the new table are the same as the old. If I have a new table with some fields added and some removed designer does not seem to make the changes. Verify will give me a report of the faults but how do I correct them?
Jonathan Bliss, Product Consultant
McKessonHBOC Computer Centre, Harold Wood Hospital site, Gubbins Lane, Romford, RM3 0NE
mobile:0498 668084, tel 01708 336135 (direct line with voicemail), fax 01708 376270
Steve wrote: In designer simply right mouse on the table, rename table, type in the new name (case sensitive).
Thanks for the quick reply. This seems to work when all the field names in the new table are the same as the old. If I have a new table with some fields added and some removed designer does not seem to make the changes. Verify will give me a report of the faults but how do I correct them?
It’s all down hill from here, I’m afraid. What you need to do is rename the table then refresh the structure (View / Refresh Structure). When prompted “Do you want to remove the joins from outdated columns?” answer “No”.
Then Tools / Check Integrity and Parse Joins.
This will bring up a list of “invalid” joins. You must edit each join manually - simply double click each in the list in turn.
Sorry, this is a bit painful, but how else would BO know what had to join to what?
This will bring up a list of “invalid” joins. You must edit each join manually - simply double click each in the list in turn.
That’s what made it a bit easier for me to just add the new table to the universe and manually change the joins. In the end I think time wise it was probably about the same. My tables were different by many many fields and I was changing the logic of the join itself using an index hint to speed up my queries.