Fixes are available
APAR status
Closed as program error.
Error description
221177 Issue whereby the #include path in model is in full path notation thus: #include?FolderA\FolderB\ClassE.h? but when using Derived configuration, such as with the Testing Profile the path becomes: #include?classE.h? or maybe even absent entirely classE.h is external code GenerateDirectoryPerModelComponent property is over-ridden in both components but still #include is short Simple test scenario: 1 - create new project and create a class (local) 2 - reverse engineer some simple code as external 3 - create a dependency ??Usage?? from your class to the external code 4 - generate code, and verify the #include is generated correctly with the long path 5 - switch the configuration to derived 6 - regenerate code, #include is absent 7 - switch the configuration to explicit again 8 - create Test Architecture for the local class 9 - generating code will reveal #include in shortened notation. This means the code is not found 10 - also while creating test architecture, the Include Path of the test component does not contain the path to the external source code
Local fix
Preliminary tests for Rhapsody 7.5 appears to show that it correctly generates the full paths for the #include in derived configuration
Problem summary
**************************************************************** * USERS AFFECTED: * **************************************************************** * PROBLEM DESCRIPTION: * **************************************************************** * RECOMMENDATION: * **************************************************************** When using Derived configuration, #include directive does not contain full path.
Problem conclusion
There are two issues here: 1) Generating #includes to external elements - this issue was fixed in version 8.0. Note, however, that a property was included to provide backward compatibility for code generation of older models (CG::Class::GenerateDependencyToExternals). Remove this property to get the new code generation behavior. 2) Generating full path. In this model, you are using the deprecated property CG::Configuration::GenerateDirectoryPerModelComponent. To get the behavior that you want, use the property CPP_CG::Package::GenerateDirectory instead.
Temporary fix
Comments
APAR Information
APAR number
PK80056
Reported component name
TLOGIC RHAPSODY
Reported component ID
5724V74RP
Reported release
740
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2009-02-05
Closed date
2012-09-26
Last modified date
2012-09-26
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
TLOGIC RHAPSODY
Fixed component ID
5724V74RP
Applicable component levels
R740 PSN
UP
[{"Business Unit":{"code":"BU059","label":"IBM Software w\/o TPS"},"Product":{"code":"SS7P9W","label":"Rational Rhapsody"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.4","Line of Business":{"code":"LOB59","label":"Sustainability Software"}}]
Document Information
Modified date:
24 October 2021