Synchronizing Databases When Comparing Record Definitions
The Upgrade Copy process synchronizes databases when performing an upgrade compare and copy for record definitions. During the upgrade copy (CopyProp only) of a table, subrecord, or temporary table, the system reorders the indexes (_, 0 through 9) to follow the source index order. The target order matches the source order after the copy.
For example, suppose that the source record, Z, is a table with fields B, A, C, G, H and the target record, Z, is a table with fields A, B, F, G, C, H where all of these conditions are true:
-
F is a customization and a Key field.
-
A and B are exactly the same except for field order, and both are keys.
-
C, G, H are exactly the same except for field order, and they are nonkey fields.
In this example, the upgrade compare produces project items for this record:
| Record Name | Field Name | Source | Target | Action | Upgrade |
|---|---|---|---|---|---|
|
Z |
Not applicable (NA) |
Changed |
UnChanged |
CopyProp |
Y |
|
Z |
F |
Absent |
*Changed |
Delete |
N |
* Unless the F record field is deleted, an upgrade copy and compare always shows this project item.
The result of an upgrade copy on this record changes record fields A, B, F, G, C, and H in the target database to B, F, A, G, C, and H, without moving the nonkey fields. Another upgrade compare would produce the same project items.
Likewise, during an upgrade copy of a view or dynamic view, the target order is reordered to match the source when a record field project item is copied and the source order does not match the target order.
For example, suppose that the source record, Z, is a view with fields B, A, C, and the target record, Z, is a view with fields A, B, F, C where all of these conditions are true:
-
F is a customization.
-
A and B are exactly the same except for field order.
In this example, the upgrade compare produces project items for these record fields:
| Record Name | Field Name | Source | Target | Action | Upgrade |
|---|---|---|---|---|---|
|
Z |
A |
Changed |
UnChanged |
Copy |
Y |
|
Z |
B |
Changed |
UnChanged |
Copy |
Y |
|
Z |
C |
-- |
-- |
Copy |
Y |
|
Z |
F |
Absent |
*Changed |
Delete |
N |
* Unless record field F is deleted, an upgrade copy and compare always shows this project item.
The result of an upgrade copy changes A, B, F, C in the target database to B, F, A, C.
Another project compare would produce these project items:
| Record Name | Field Name | Source | Target | Action | Upgrade |
|---|---|---|---|---|---|
|
Z |
A |
Changed |
UnChanged |
Copy |
Y |
|
Z |
C |
-- |
-- |
Copy |
Y |
|
Z |
F |
Absent |
*Changed |
Delete |
N |
* Unless F is deleted, an upgrade copy and compare always shows this project item.