Enovia collaboration Platform is a Product Lifecycle management tool provided by Dessault Enovia. This tool provides product life cycle management features including the data warehousing, automation, Bill of materials submission etc.
2. 3/5/18 2
Disclaimer
As a regular user of the Enovia platform I developed some skill on the subject
matter, but I do not claim any expertise on it. Therefore, I apologise for any
inaccuracy in this document, as well as any correction from the audience is
highly appreciated.
3. 3/5/18 3
Overview Time Distribution (Approximate)
Product Lifecycle Management
A brief on PLM
• What
• Purpose
• Product lifecycle
2 min
PLM tool 2 min
PLM tool providers 2 min
Enovia
• Brief
• Features
• architecture
5 min
4. 3/5/18 4
Overview Time Distribution (Approximate)
Matrix Query Language (MQL)
What is it & purpose it serves? 3 min
Interaction modes with the system 1 min
MQL Basics
Transaction scopes
• Implicit
• Explicit
2 min
Concepts
Vault, person, user categories, policy,
rule, object, attribute, id, type, name,
revision, relationship, interface, range
etc.
10-15 min
5. 3/5/18 5
Overview
How to Use MQL / Hands On (15 – 20 mins)
1. Creating attributes
2. Creating types
3. Creating policy
4. Creating relationships
5. Creating Business Object
6. Connect Business Object
7. Modify attribute
8. Working with Range
9. Site
10.Disconnect
6. 3/5/18 6
Product Lifecycle Management
Product Lifecycle Management (PLM) is a process of managing the entire lifecycle of a
product. [1]
What purpose does PLM serve?
It integrates people, data, processes, business systems and so on, as well as provides
the product information backbone.[2] Besides, it deals with the resource management,
waste reduction, improved efficiency which optimizes the product manufacturing cost.
What belongs to the lifecycle of a product?
Inception
Engineering process
Manufacturing
ServiceRecycling
7. PLM Tool
A tool or software should allow a manufacturer to execute all the earlier mentioned functionalities. In order
to execute those functionalities PLM software provides [3] :-
•Data warehousing
•Automation
•Data integration with other business processes, such as ERP (Enterprise Resource Planning), and MES
(Manufacturing Execution Systems)
For example, PLM is commonly used for Lean Production Model (Automobiles), where there is a consistent
concern of material usage, just-in-time product delivery, resource management, and cost effectiveness
are involved.[4]
3/5/18 7
9. Dassault Enovia
What is it?
•3DExperience powered collaboration management software
•It’s a SaaS (Software as a Service) solution
•Provides PLM service to both mid-sized and large enterprises
Features it provides to different groups :
•Managers –
• Can handle portfolios and Allows them to compliance to control the cost
•Engineers –
• Allow product changes
• Can work on the autocad drawings
• Can submit the BOM (Bill of Materials)
3/5/18 9
10. Enovia Features
• Bill of material management
• Design management
• Configuration and change management
• Global Product Development
• High-tech design management
• Product planning
• Program management
• IP classification and management
• Quality and compliance
• Strategic customer relationships
• Strategic supplier relationships
• Centralized approach
Content ref. [7]
3/5/18 10
11. Enovia Product Architecture
3/5/18 11
ADK is responsible For manipulating the
Business Objects & relationships
Enovia Business Process Services –
presentation +integration layer
Components with ADK helps to prepare an
application
12. Matrix Query Language
3/5/18 12
Since a typical PLM platform has so many functional processes, therefore, So having many data warehouse
to support those running processes is not uncommon. Each warehouse may have multiple data sources. So
for the IT staff who are working on the platform may find it very difficult to know about all those data
sources all at once, which may become counter productive in the end.
To solve this problem Enovia collaboration platform allows to use MQL which helps to gather data from all
those data sources without knowing about those data sources at all. MQL is similar to SQL.
13. Interaction modes with the system
3/5/18 13
3 ways MQL can be used, they are :
i)Interactive (Provided as the UI)
ii)Terminal based (SQL like terminal)
iii)Tcl based (using the tcl scripting language)
14. MQL Basics
3/5/18 14
Transaction Types
MQL supports two types of transactions.
i) Implicit transaction:
It doesn’t require the explicit commands from the user to commit a data, or abort an operation.
System takes care these events without notifying the user
Ex. add person xyz; command will be committed or aborted based on the accuracy of the data
and validity of the command.
ii) Explicit transaction:
It allows an user to control the outcome of a transaction
Ex. abort transaction [Name];
commit transaction;
print transaction;
start transaction [read];
Etc.
15. Concepts
3/5/18 15
Vault
A vault is a grouping of similar objects within the database, as well as a storage location for metadata
which identifies those objects.
You must be a System Administrator to access vaults.
Vault should have a path and a host
A vault is not like a public directory
Only the privileged users can have access to the path on the host based on the requirement.
Types of Vaults:
i)Business object vaults (can have many)
ii)Administration vault (only one exists)
16. Concepts
3/5/18 16
Person
A person in an instance which can use the Enovia platfrom based on its given privilege.
Ex. A person can be business modeler, system manager etc.
Types of Person:
i)Creator – who has full privilege on MQL
ii)Guest – who has limited privilege on MQL
17. Concepts
3/5/18 17
User Categories
Three administrative objects allow you to identify a set of users (persons) who require the same accesses
based on groups, roles, and association.
Groups : collection of people working on a same project, or share a set of similar functional skills
Roles : A collection of people who have a common job type: Engineer, Supervisor,
Purchasing Agent etc.
18. Concepts
3/5/18 18
Policy
A policy controls many aspects of the objects it governs, including who may access the
objects and what tasks they can perform for each state defined in the policy. There are
three general categories used to define who may access objects in each state. For
Public—Everyone in the database.
Owner—The person, group, role, or association that currently owns the object.
User—A person, group, role, or association that has specific access requirements for
a particular state. When a group, role, or association is assigned access, all the persons
who belong to the group, role, or association will have access.
(Child groups inherit all accesses from the parent group and child
roles inherit all accesses from the parent role.)
19. Concepts
3/5/18 19
Policy
Policy focuses on two different aspects.
i) general behaviour of the objects :
• creation of object, and provides the general information about the policy
• The types of objects the policy will govern.
• The types of formats that are allowed.
• The default format automatically assigned.
• Where and how checked in files are managed.
• How revisions will be labeled.
ii) Lifecycle of an object:
• The current state of the object.
• Who will have access to the object.
• The type of access allowed.
• Whether or not the object can be revised.
• Whether or not files within the object can be revised.
• The conditions required for changing state.
20. Concepts
3/5/18 20
Rules
A rule controls the tasks users can perform on the object. for example read, write etc.
Business Object
A data unit on which transaction queries are performed.
Type Name Revision and Vault are considered as the identifiers of a business object.
Type - Type of the Item (ex. ODI, MANODI etc.)
Name - Name of the Business Object
Revision - helps to distinguish an item with same name and type
Vault - path of the item
object ID - unique identifier of a business object
object id can be used to find the business object instead of Type Name Revision. The combination of Type
Name Revision is unique.
21. Concepts
3/5/18 21
Context
•Context identifies the action an user can perform on the Enovia Collaboration platform.
•Created context get access to the default vault.
Setting up a context
set context user Ted password *** role PRODesigner;
Tables
Tables consist of business object information. Two types of tables are available :
i)user table : user-defined columns on the matrix navigator.
ii)System table : contains built-in data columns provided by the administrator
Relationship
•It is an intermediary through which two business objects are connected.
•Relationships can have type, attributes etc.
•Relationship has a timeline.
•Connection between two business objects exist as long as any of the two connected business objects'
revision is not obsolete
22. Concepts
3/5/18 22
Attribute
An attribute is any characteristic that can be assigned to an object or relationship.
Interface
•An Interface is a group of attributes that can be added to business objects as well as
connections to provide additional classification capabilities to ENOVIA Collaboration
Platform.
•When an Interface is created, it is linked to (previously-defined) attributes that
logically go together.
•Interfaces are defined by the Business Administrator and are added to business object or relationship
instances.
•One must be a Business Administrator to add or modify interfaces.
23. Hands On
3/5/18 23
Adding attribute
add attribute "Student Name"
property Version value "1.0"
property Author value “XYZ"
property AuthorDate value "2018-01-04"
description "Test Purpose "
type "string"
!multiline
!hidden
add attribute "Std Gender"
property Version value "1.0"
property Author value " XYZ "
property AuthorDate value "2018-01-04"
description "Test Purpose "
type "string"
add attribute "Database Type"
property Version value "1.0"
property Author value " XYZ"
property AuthorDate value "2018-01-04"
description "Database type"
type "string"
24. Hands On
3/5/18 24
Adding types
add type "Student"
property Version value "1.0"
property Author value "XYZ"
property AuthorDate value "2018-03-06"
description "Test Purpose "
abstract FALSE
!hidden
attribute "Student Name"
attribute "Std Gender"
add type "Course"
property Version value "1.0"
property Author value “XYZ"
property AuthorDate value "2018-03-06 "
description "Test Purpose "
abstract FALSE
!hidden
attribute "Database Type"
25. Hands On
3/5/18 25
Creating a policy
add policy "Student Course Policy"
notenforce
description "Student Course Parameter -- XYZ"
property Version value "1.0"
property Author value "XYZ"
property AuthorDate value "2018-03-06"
type Student,Course
state Active
version false
revision false
checkouthistory false
promote false
public read,show
owner all
user creator all
user Employee all;
26. Hands On
3/5/18 26
Create some relationships
add relationship "Student Course"
property Version value "1.0"
property Author value “XYZ"
property AuthorDate value "2018-01-04"
description "Student Course Relationship Course By XYZ"
from
type "Student"
cardinality one
revision none
clone none
preventduplicates
!propagatemodify
to
type "Course"
cardinality many
revision none
clone none
!propagatemodify
!hidden;
27. Hands On
3/5/18 27
Creating Business Objects
add bus "Student" "Student" 1
policy "Student Course Policy"
description "this Student object is created by XYZ" vault "eService Administration";
print bus "Student" "Student" 1 select attribute.value;
modify bus "Student" "Student" 1 "Student Name" "A Student Name";
add bus "Course" "Database" 1
policy "Student Course Policy"
description "this Student object is created by XYZ"
vault "eService Administration"
"Course Name" "Database"
"Course ID" "1200"
"Course Type" "Computer";
28. Hands On
3/5/18 28
Connect Business object
connect bus Course Database 1 rel "Student Course" from Student Student 1;
connect bus "Course" "Programming" 1 rel "Student Course" from 18816.47468.57856.8068 <type>
<Name> <revision>;
Creating interface
add interface "STD_NID"
property Version value "1.0"
property Author value "Main Uddin"
property AuthorDate value "2018-01-04"
description "Test Purpose "
attribute "SNID"
type Student;
print bus "Student" "Student" 1 select attribute;
modify bus "Student" "Student" 1 add interface STD_NID;
print bus "Student" "Student" 1 select attribute;
29. Hands On
3/5/18 29
Additional
Range :
modify attribute "Std Gender" default "Male" add range ="Male" add range ="Female";
print attribute "Std Gender";
Site:
A site, which is a set of locations, can be added to a person or group
definition to specify location preferences.
matrix.ini or ematrix.ini file may contain the following setting:
MX_SITE_PREFERENCE = SITENAME
30. 3/5/18 30
References
[1] Kurkin, Ondřej; Januška, Marlin (2010). "Product Life Cycle in Digital factory". Knowledge management and
innovation: a business competitive edge perspective. Cairo: International Business Information Management
Association (IBIMA): 1881–1886. ISBN 9780982148945
[2] https://www.cimdata.com/en/resources/about-plm
[3] http://searcherp.techtarget.com/definition/product-lifecycle-management-PLM
[4] http://searcherp.techtarget.com/definition/lean-production
[5] https://product-lifecycle-management.financesonline.com/
[6][7] https://reviews.financesonline.com/p/dassault-enovia/
Further Reading
https://idatalabs.com/tech/products/dassault-enovia
http://www.3m.com/plmhelp/WebHelp/1Overview/What_is_eMatrix.htm