When working with a model, if you experience any problems and think it is model related, the following process will help in both, creating a ‘clean’ new model and also help in identifying the problematic areas:
1. Complete Compare the new blank model with the other model using the following options:
- In the ‘Type Selection’ select Logical and Physical if comparing a LP model (rather than Database level). If it is a PO model, then select Physical (not Database) level.
- Select everything in the ‘Type Selection’ by clicking in the check box at the top level until all selections have a black check mark (not gray).
- In the ‘Advanced Options’ section deselect all check boxes –
These selections will make sure that nothing is filtered out.
2. In Complete Compare Resolve Differences (CCRD) screen, click on (-) at Model (top row) to collapse everything on one line. Then click on (+) to expand which will expand it at the class level showing only a few rows. You can either import all at the top (Model) row to import everything. This will create a new model with everything except the parts that may be causing the problem. The blank model will be populated going through the internal semantic checks and will be a ‘clean model’. See if you can use this model.
3. To diagnose the problem, follow the steps 1 and 2 but import it at a class level one by one making sure that the global classes like Domain, Validation, Defaults, Themes, Drawing Objects, Tablespaces, Schemas, Databases, Stored Procedures, etc. are imported before importing the Subject Areas, ER Diagrams, Tables and Views. This is to ensure that the dependencies are in place before the objects are brought in, e.g. Column Data types may be related to Domains and if those are not there the Data types may not be brought in correctly. So, the hierarchy of import is crucial in this process.
4. Once import is done, whatever is clean will import without a problem and that row of class will disappear from CCRD. Whatever is still remaining, expand those to see the differences as seen in the view area in the bottom half. If it is something like Relationship bend points, or font and color related, you can ignore them for now. The areas of concern are any missing objects, e.g. Entities, Columns, Relationships, Indexes etc. If you choose, you can also create a report of what was imported, fixed or omitted. That report can also be a good starting point to diagnose the problem(s) in the original model. At this point you can use the report to see if the reported problems can be fixed in the original model.
WARNING: If the first import does not remove the row from CCRD (CC Resolve Differences) screen, that means there are differences that could not be imported (or exported) in the first pass. Do not try another import as that could force the problematic areas to come into the new model. Instead, at that point, expand the section and examine the properties to see what could not be imported. If it is unimportant, things like fonts, colors, default constraint usage, etc., ignore it. However, if there are significant differences like Null, Relationships non-identifying vs. identifying, Data Types, etc., then make a note of that by creating a report (Show Report) and saving that for your reference. Click Finish to create your new model. First, see if the newly created model resolves the issue. If so, see if that can be used going forward. If you do not want to use the new model, manually check the two models (eyeball old and new) to diagnose it further. If there is more to it, please do contact Technical Support.