RADE |
Data Model Customizer for ENOVIA |
DMC for ENOVIA LCACustomizing the ENOVIA Database |
| Technical Article | ||
AbstractThis article describes how to customize the ENOVIA LCA database using the Data Model Customizer in Rational Software Architect.
|
Make sure you have:
The Data Modeler Customizer is an interactive tool integrated to
Rational Software Architect and Rational Software
Modeler (Rsx). You can design new customizations
in UML (Unified Modeling Language) using Rational Software Architect Integrated
Design Environment. Use a dedicated wizard to create a brand new LCA
customization and manage it through the DMC specific
menus embedded within Rational Software Architect interface. With these new
menus, it becomes very easy to define new modeler objects and their attributes,
or to modify them. You will see at all time the logical and graphical view of
your customization content. When your design is correct, you can launch the
metadata generation from RSx. Then, the ".metadata" file is generated in
the CNext/code/dictionary directory of your current active
framework and the model is stored in a UML file suffixed ".mdl".
[Top]
You are going to work in 2 different views, the
Perspective Modeling
View and the Navigator View. To access
both views:
Window menu, select
Open perspective->Other. In the
Select
Perspective dialog box, select
Modeling
(default). Click OK
when done.Window menu, select
Window->Show View->Other. In the
Show View dialog box, select
Navigator. Click
OK when done.Before customizing any model, you must know the names and composition of your model.
On the one hand, some cases are simple because your
customization will be accepted, and names have no consequence on its further
use. The only restriction is the name length which is limited to 12 characters.
But this limitation is applied to all model customizations.
For ECO/ECR, you can either create a model which inherits from ECO or ECR, or
from both, and all names are allowed to customize your model. Actions and Config
follow the same principle.
On the other hand, the customization of some models requires
rigor and knowledge of the composition of the model.
Two examples are presented to attest this fact.
To customize a Product, you MUST create 3 objects which respectively
inherit from VPMPartMaster,
VPMPartVersion and
VPMItemInstance. In this case, names
have a great importance. Indeed, each name of customized object must comply
with the name of the inherited object: The suffix name must be the same as
the one of the inherited parent. Moreover, each prefix name must be
identical for the 3 objects.

In the same way, to customize a Document, you MUST create 5 objects which
inherit from VPMSecuredFile,
VPMDocumentIteration,
VPMdocumentIterationFormat,
VPMDocumentRevision,
VPMTPdocumentMaster, with the same
specifications as for Product.
There are multiple ways to customize the data model:
Whichever way is chosen, all these cases are handled in the same way: Creating a new modeler object. For example, if you add attributes to an existing LCA object, create a new modeler object that "extends" the LCA object using inheritance and let LCA use this extended object rather than the original one.
Note that whenever you customize an LCA application, you create a new UML model, as well as a new ".metadata" file. All modeler objects you create are stored in this new model, and are kept separate from the LCA original models (or somebody else's customization). It is always very important to keep your customized data schemas separate from the original LCA data schema, to allow you to upgrade the LCA release without destroying or losing your work.
As far as the CAA file tree is concerned, an Enovia Application corresponds to a framework. This framework contains:
[Top]
File menu, select
New->Project.New Project window,
select UML Project and click
Next>.Project
name field click Next>
and Finish.Navigator view, right-click your project and select Open
as a DMC project...|
|
|
Open a DMC Project
window, select the tool level, V5R21_B21
in this example and click Next>
Build on UNIX checkbox and enter
associated UNIX Host, UNIX Login and UNIX image directory in order to access to
the remote UNIX machine and manage a copy of the WINDOWS customization workspace
to UNIX side.
[Top]
In the second panel of Open as a DMC command:
Cancel.Add to select the
prerequisites frameworks and select your prerequisites directories in the right order.Finish. Warning: if the ENOVIA server is installed on a UNIX machine, you need to define prerequisites on WINDOWS side doing the following way:
Create ENOVIA V5 VPM prerequisites on NT
ENOVIA Installation directory on UNIX enter full path of ENOVIA CAA installation on UNIX side.ENOVIA target Workspace NT enter full path of a directory where prerequisites are going to be copied from UNIX to the WINDOWS local machine.Unix Password enter the password for the UNIX login ID used to access the UNIX machine indicated above in the panel.On UNIXOrigin for prerequisites Frameworks group box, click Add... button.Finish Note that once your prerequisites are defined using the Open as a DMC command, you can still modify them at any time using the
DMC Project->Define Prerequisites for DMC command.
Warning: if you get some error message during Prerequisites computation saying that a Framework is not found, please check:
[Top]
File menu, select
New->Other.DMC elements node,
select New LCA Customization
and click Next>. The
Create New ENOVIA PLM Customization
window opens.
Application name
field.... to select the
Super Class, click
Next> and
Finish.
![]() |
|
|
If you want to derive a customization from another customization, do not forget to set the CAA derivable option to Yes when creating a new modeler object. This way, the customization will be available in the Super class list of the New Modeler Object window. |
|
|
When creating a new modeler, the super classes
available in the Create a Modeler
window depend on the Super Class
you have chosen in the New LCA
Customization window (see graphic above). The table
below details the modeler classes available for each customization
class.
|
[Top]
File menu, select
Other->DMC elements->New Modeler Object.
Click Next>. The
New Modeler Object window opens.Class name
field, CustoDesignAction in this example.Super Class in the
list (Action_Design in this
example). Click Next>.Insert in the
Attributes field to add attributes.Insert in the
Index field to add attributes. The
object will be created in a package corresponding to his access.OK to confirm the object
modeler creation. The wizard generates a new framework containing a new UML model importing the modeler objects defined in the original parent application.
The wizard generates also a file .ENOVApp which contains the application name, the application which is customized (as the parent application) and the list of the prerequisite frameworks and their dictionary file names.
[Top]
New Modeler Object
window, click Insert in the
Attributes field.Name
field.OK when done.
![]() |
|
|
|
When you select a type in Type list when creating a new attribute, the basic types are available. If you have already created classes, their names are displayed in this list. To create an attribute based on such a class, select the class in the Type list.
You can add a Relationship type attribute to an existing object:
Add UML->Attribute.
Properties
view.General tab, modify the Visibility,
Mandatory,
... properties.Stereotypes tab, click
Add Stereotypes
and check RADE_AttributeRelation.
![]() |
[Top]
Main view of the class
diagram, click the attribute that you want to edit.
![]() |
Properties tab
|
[Top]
Only relationship type attributes can be overloaded. The attribute to overload must:
![]() |
[Top]
New Modeler Object
window, click Insert in the
Index field.Name
field.OK when done.
![]() |
[Top]
Main view of the class
diagram, click the class that you want to edit.
![]() |
Properties tab.
|
You cannot modify the name or the Super Class of the modeler object.
[Top]
You can modify the attributes of a modeler on condition that this attribute is of String type and you want to increase its size.
Create a workspace migrating an existing workspace to a
subsequent version. The generated data is located in the following
directory:
Workspace_name/framework_name/CNext/code/dictionary/module.DMCRules.
Open the generate file in a text editor and perform the modification.
![]() |
|
Publish the changes.
[Top]
Open as a DMC project...
Next>. Click
Close in the Initializing window. Click
Add to select the prerequisites
frameworks, select your prerequisites and click
Finish.
|
|
|
If you do not have access to the Properties view, select
Window->Show View->Other, then select Basic section->Properties.
Then in this properties view you can set the visibility in the General section,
and all other RADE_Attributes values in the Advanced section.
File->Other->DMC elements->New Modeler Object.[Top]
DMC Project menu,
select Generate VPM
Dictionary file.
The following window is displayed.

The wizard creates MyAction.metadata under the directory MyAction/CNext/code/dictionary.
[Top]
DMC Project menu,
select Import VPM Dictionary file.
The following window is displayed. This command is designed to ensure
coherence between the UML model and the dictionary file.
![]() |
[Top]
DMC Project->Publish VPM Dictionary
file in Database. Click OK.
The data are published. Check if the settings are correctly valuated and
click OK to launch the Publish
command to finish the scenario.
![]() |
Setting |
Explanation |
CATSettingPath |
The path of the CATSettings directory of your ENOVIA LCA installation |
ENOVDataBaseAliasName |
The name of your database |
ENOVDataBaseType |
The type of your database: db2 and oracle is supported |
ENOVDB2_HOME |
If you have a db2 database type: the HOME directory of the db2 user |
ENOVDBAID |
The ENOVIA LCA administrator |
ENOVDBAPSSD |
The password of the ENOVIA LCA administrator |
ENOVIALevel |
The release level of ENOVIA LCA: must be V5Rn, where n
is the release number |
ENOVORACLE_HOME |
If you have a oracle database type: the oracle installation |
ENOVOutputDirectory |
At the end of the publish, RADE copy some required files in this directory. This directory can be use to deploy the customization on a another database. |
ENOVSimulate |
If you inform YES: RADE build the library and generate the database script but don't update the database. If you inform NO: the database is updated. |
ENOVTableSpace |
The name of your tablespace |
TNS_ADMIN |
If you have a oracle database type, it's the name of you TNSADMIN. |
The publish update your test or production server runtime with your customization.
|
|
When publishing your customization, *.metadata.off files are generated. Do not delete them, they will be used at the next publication. |
[Top]

[Top]
The deployment process will
STEP 1: Make a customization with RADE tools. Publish the customization and check in ENOVIA LCA that the customization is available.
STEP 2: Check prerequisites for deployment
|
|
|
STEP 3:
- ~/aix_a/code/command
- ~/solaris_a/code/command
- ~/hpux_b/code/commandf
under the directory where you installed the product.
./DeployRadeCusto.sh ...
-DBVendor |
ORACLE or DB2 |
-DBName |
The name of your database |
-DBAdmHome |
The home directory of Oracle Id or the DB2 instance ID |
-TbsName |
The tablespace name used by ENOVIA LCA for its database tables |
-IdxTbsName |
The tablespace name used by ENOVIA LCA for its indexes |
-TableOwner |
The ID that is creator/owner of database tables |
-AdmUsr |
The ENOVIA LCA administrative user ID ( often the same as TableOwner ) |
-AdmPwd |
The AdmUser password |
-DBAID |
The database administrator ID |
-DBAPwd |
The database administrator password |
-EnvDir |
The full directory path to the CATEnv directory |
-EnvName |
The name of the "ENOVIA_LCA~" file in CATEnv directory without the ".sh" |
-InitRADECustoDir |
The ENOVOutput directory of the publish |
-RADECustoDir |
The directory where you want to deploy the customization |
For command line help with this script, simple type:
DeployRadeCusto.sh <return>
from the UNIX command line and it will return some help text.
Here are two sample executable files, one for Oracle and one for DB2
DB2:
./DeployRadeCusto.sh -DBVendor DB2 -DBName ENOVRADE -DBAID db2adm7 -DBAPwd
db2adm7 -DBAdmHome /home/data/db2adm7 -TbsName TBS1_8K -IdxTbsName TBS1_8K
-TableOwner EV5ADM -AdmUsr ev5adm -AdmPwd EV5ADM -EnvDir /CATEnv
-EnvName ENOVIA_LCA.V5R11.B11 -InitRADECustoDir
/home/data/ev5adm/MSDEV/CustoOutput -RADECustoDir /home/data/vpm5adm/RADECusto
ORACLE:
./DeployRadeCusto.sh -DBVendor ORACLE -DBName ORARADE -DBAID ora7
-DBAPwd ora7 -DBAdmHome /home/oracle/8.1.7 -TbsName TBS1_8K -IdxTbsName TBS1_8K
-TableOwner EV5ADM -AdmUsr ev5adm -AdmPwd EV5ADM -EnvDir /CATEnv
-EnvName ENOVIA_LCA.V5R11.B11 -InitRADECustoDir
/home/data/ev5adm/MSDEV/CustoOutput -RADECustoDir /home/data/vpm5adm/RADECusto
4 - Run the file script from the Unix command line. Information status messages appears. Some steps will take several minutes, during which no additional messages will appear.
5 - Run ./enoviastart -env ENOVIA_LCA.V5R11.B11 -direnv /CATEnv -object "-senv WorkspaceEnv -sdirenv /home/data/vpm5adm/RADECusto/CATEnv" to test your deployment.
[Top]
| [1] | Customizing Microsoft Visual Studio .Net |
| [2] | Working with Microsoft Visual Studio .Net |
| [3] | Installing RSx |
| [Top] | |
| Version: 1 [May 2001] | Document created |
| Version: 2 [January 2007] | Document updated |
| [Top] | |
Copyright © 2007, Dassault Systèmes. All rights reserved.