I am trying a proof of concept using the new feature modules that is available for OPM 10.3 and 10.4.
I created two projects and trying to build a module for one of them to use in another project. I used doco "Create rules that can be shared with another project".
I am getting an error I cannot export my entity because its containment relationship cannot be exported. I confirmed the following conditions are met.
"For a relationship to be exported, both ends must have a public name, and both the source and target entities must also be exported. This applies to both containment and reference relationships."
Any other ideas on what to look for would be great. The developers manual did not provide further direction.
Edited by: 941611 on Jun 19, 2012 7:44 AM
You mention 10.3 and 10.4 - You are using only 10.4 - correct?
Double check all relationships and entities that you wish to export have public names and top level attributes (goals) that are to be exported for those entities have public names. In addition, the base level attributes supporting those goals (based on your rules) should have public names and any identifying attribute for an exported entity must have a public name and be exported. Also check that no additional entities or attributes have public names (i.e. you aren't receiving the error on an "extra" entity that you did not intend to export). If those checks don't uncover the issue, more details on the exact model and rules that replicate the warning will be required.
I am using version 10.4. I am actually only getting warning. The only other warning are because the enity to which the attribute belongs was not exported. That is due to the entity I cannot export because it containment relationship cannot be exported. All the attribute have public names. I am aware of the items you mentioned that I found in the help. I am new to OPM and perhaps the relationship text is the cause. I do have a source and target for the relationship between global and the oen entity I defined.
The only time I have seen that warning is when the containment relationship does not have any public names defined ... An additional warning appears if a public name is defined for one direction but not the other.
Try the following ...
1. Create new Project “ModuleTest”
2. Add properties file to project – “ModuleTest_Properties”
3. Open Properties File
4. Add new entity – “TestEntity” using all defaults
5. Edit TestEntity to set public name to “TE”
6. Edit the automatically created attribute of TE to set the public name to “TE_ID”
7. Select Build->Module from menu ... you should see the warning: “… cannot be exported because its containment relationship …” and another warning ...
8. Double click on the containment warning message and it should take you to the relationship edit dialog for the automatically created (containment) relationship between global and TestEntity
9. Specify a public name “TE_Containment” AND the reverse (public name) “TE_Containment_Reverse” and click OK
10. Select Build->Module from menu again and no warnings should appear
If this works as expected and your policy model is producing warnings, then click on each warning to determine the source of the warning.
I posted that I realized I needed a reverse public name. The warning didn't state that the public name was only defined for one direction when I built the module.
Thank you for the additional detail on testing Matt.