Академический Документы
Профессиональный Документы
Культура Документы
Student Guide
Version 11
Page 1
Configuring Solutions
Copyright © 2015 by Aras Corporation. This material may be distributed only subject to the terms
and conditions set forth in the Open Publication License, V1.0 or later (the latest version is presently
available at http://www.opencontent.org/openpub/).
Distribution of substantively modified versions of this document is prohibited without the explicit
permission of the copyright holder.
Distribution of the work or derivative of the work in any standard (paper) book form for a
commercial purpose is prohibited unless prior permission is obtained from the copyright holder.
Aras Innovator, Aras, and the Aras Corp "A" logo are registered trademarks of Aras Corporation in
the United States and other countries.
All other trademarks referenced herein are the property of their respective owners.
Microsoft, Office, SQL Server, IIS and Windows are either registered trademarks or trademarks of
Microsoft Corporation in the United States and/or other countries.
Notice of Liability
The information contained in this document is distributed on an "As Is" basis, without warranty of
any kind, express or implied, including, but not limited to, the implied warranties of merchantability
and fitness for a particular purpose or a warranty of non-infringement. Aras shall have no liability to
any person or entity with respect to any loss or damage caused or alleged to be caused directly or
indirectly by the information contained in this document or by the software or hardware products
described herein.
Page 2
Table of Contents
Introduction .................................................................................................................. 5
Page 3
Configuring Solutions
Page 4
Introduction
Overview: In this 5-day course you will learn the fundamental concepts and skills needed
to configure, manage and extend the Aras Innovator environment. Through
hands-on exercises and class projects you will gain an understanding of how
Aras Innovator can be used to create a variety of business solutions.
Goals: Navigate through the Aras Innovator application and create reusable
queries on the database.
Design and develop a solution that incorporates a life cycle, supports
versioning and uses a workflow.
Create a user interface that allows operators to interact with the solution.
Support file checkin/checkout as well as file replication.
Generate email correspondence automatically.
Assign appropriate security policies to a solution.
Use and configure Secure Social Visual Collaboration.
Localize a solution to a user’s native language.
Page 5
Configuring Solutions
Introductions
Tell us about yourself:
▫ Name, title, company, background
▫ Previous experience with Aras Innovator
▫ What you hope to accomplish with Aras Innovator
Remember:
▫ Ask questions!
▫ Feedback is encouraged
Page 6
Introduction
Who is Aras?
500+ Customers Innovations
Community led by customers, partners & Technology: Model-based SOA
Who is Aras?
Aras is a global company with over 500 customers that’s providing a new approach to enterprise
Product Lifecycle Management software.
We focus on markets with complex products & processes in Automotive, Industrial, Aerospace &
Defense, High Tech, Consumer Goods, Life Sciences and Energy.
We offer a full suite of solutions for PLM and PDM
Aras has innovated both in the business model and the technology with a subscription business
model that eliminates PLM license fees.
Aras defines a platform technology that’s more scalable, flexible and extensible…
Page 7
Configuring Solutions
Aras Customers
Aras Customers
Customers span across industries and range from global companies to small and midsized
enterprises.
Aras enterprise serves companies of all sizes from Fortune 500 enterprises to midsized businesses
looking to get an edge on the competition. Companies achieve better customer alignment, greater
profit margins, and shorter development cycles with Aras Innovator enterprise solutions.
Page 8
Introduction
Aras is different
At Aras we’ve taken a different approach
▫ Technology: Model-based SOA
▫ Business: SaaS subscription model
We’ve built a better PLM solution: one that
▫ Adapts to your business, not the other way around
▫ Removes unnecessary barriers to collaboration
▫ Changes the economics of PLM in your favor
That delivers greater benefits sooner and a lower TCO
Aras Difference
At Aras we’re committed to helping you bring innovative products to market quickly and supporting
them through the lifecycle. But we recognize that traditional approaches to PLM are failing so we
have taken a different approach.
Our unique architecture is designed to be resilient and maximize collaboration and our SaaS
subscription model reduces cost and risks.
This allows us to deliver greater benefits sooner and a lower TCO to our customers.
Page 9
Configuring Solutions
Unique Architecture
Aras PLM is built according to a unique architecture that works better for your business and
minimizes the workload of your IT team.
It’s an architecture that can be customized quickly to your way of working, upgraded and updated
easily, performs and scales well, and is secure.
The same software can be deployed in your data center or in the cloud.
Page 10
Introduction
Course Goals
When you have completed this course you should be
able to:
▫ Navigate through the Aras Innovator application and create reusable
queries on the database.
▫ Design and develop a solution that incorporates a life cycle, supports
versioning and uses a workflow.
▫ Create a user interface that allows operators to interact with the
solution.
▫ Support file checkin/checkout as well as file replication.
▫ Assign appropriate security policies to a solution.
▫ Automatically generate email correspondence.
▫ Use and configure the Aras Office Connector
▫ Localize a solution to a user’s native language.
Page 11
Configuring Solutions
Agenda
Day 1
▫ Overview
▫ Navigating in Aras Innovator
▫ Exploring ItemTypes
▫ Creating Properties
▫ Creating a User Interface
Day 2
▫ Creating Aras Datatype Properties
▫ Assigning Security
▫ Creating Item Relationships
Page 12
Introduction
Agenda
Day 3
▫ Defining Life Cycles and Versioning
▫ Exploring Workflows
▫ Creating a New Workflow Map
▫ Enhancing a Workflow
Day 4
▫ Working with Files and Vaults
▫ Replicating Files
▫ Sending User Notifications
▫ Sending E-mail Notifications
▫ Class Project
Copyright © 2014 Aras All Rights Reserved. aras.com
Page 13
Configuring Solutions
Agenda
Day 5
▫ Using Secure Social Visual Collaboration
▫ Enabling Secure Social Visual Collaboration
▫ Creating Multilingual Solutions
▫ Packaging a Solution
Page 14
Unit 1 Overview
Overview: In this unit you will learn what is required to run the Aras Innovator
environment. You will also review what is contained in the Core Aras
Framework as well several pre-packaged solutions that are available.
Page 15
Configuring Solutions
Objectives
Defining system requirements
Understanding the basic architecture
Reviewing the “Core” system
Defining the components of a solution
Reviewing the pre-packaged solutions:
▫ Program Management
▫ Product Engineering
Using on-line help
Copyright © 2014 Aras All Rights Reserved. aras.com
Page 16
Unit 1 - Overview
Innovator Requirements:
Aras Innovator runs in either the Microsoft Internet Explorer or Mozilla Firefox browser.
See the installation and release notes for more specific information about platform support.
NOTE
Additional resources and tools are available with an Aras Innovator subscription.
Page 17
Configuring Solutions
Basic Architecture
Client
Database
Aras Innovator is an Internet application framework based on the Microsoft .NET platform.
Client
Aras Innovator uses a web-based browser interface requires very few client resources. Aras
Innovator currently supports the Microsoft Internet Explorer or Mozilla Firefox browser.
Innovator Server
Running as a Microsoft .NET application on Microsoft IIS 7 or higher requires the Microsoft Windows
Server platform.
Database
All configuration rules and code, as well as solution business objects are stored in the Microsoft SQL
Server database.
Vault Server
A separate server application maintains information about files that are linked to objects in the SQL
Server database.
Vault(s)
A file directory location made known to the vault server to store physical files.
Page 18
Unit 1 - Overview
Administration Templates
The Aras Framework consists of a set of base templates that allow you build solutions to solve
business problems. Using form-based web pages, you can quickly configure a new solution. The
framework is completely configurable and extensible allowing you to make any modifications
necessary to support your particular business case.
Page 19
Configuring Solutions
Program Product
Management Engineering
Built on the Aras Core Framework - two open source (free of charge) applications provide turnkey
solutions in the following areas:
Program Management
A solution which addresses the issues of Project Integration, Scope Management, Time
Management, Resource Management and Communication Management
Product Engineering
A solution based on CMII principles for product definition and engineering change management.
Page 20
Unit 1 - Overview
Program Management
PMI Principles
Project Planning
▫ Activities, Milestones,
Deliverables
▫ Forward / Backward
Scheduling
▫ Templating
Project Execution
▫ Real Time Project Status
▫ Status Rollups / Dashboard
Views
▫ Deliverable Attachment
GANTT Charts
Copyright © 2015 Aras All Rights Reserved.
Program Management
Aras Program Management enables you to manage new product development and engineer-to-
order processes for complex projects that require global collaboration.
With Aras Program Management, you get the visibility and coordination your company needs to
deliver projects on time, on budget and on spec.
In Aras Program Management we embedded the PMI PMBOK principles in a full-featured, out of the
box application that is easy to tailor to your business needs.
With Aras Innovator 11, Program Management underwent several updates including improved
project tree editing, project and template cloning, deliverables in template and editable
customizable Gantt charts.
Page 21
Configuring Solutions
Product Engineering
Parts and Bills of Material Specification
CAD Model
Sourcing Assembly
Schematic
▫ Manufacturer Parts Layout
Product Engineering
Aras Product Engineering enables you to define and manage product information across the
lifecycle, for products from complicated electro-mechanical systems to SKU-based products with flat
parts lists.
With Aras Product Engineering, your company can improve the management of BOMs, parts and
engineering change processes to develop better products faster while reducing costs due to scrap
and rework.
In Aras Product Engineering we embedded industry best practices in a full-featured, out of the box
application that is easy to tailor to your business needs.
Page 22
Unit 1 - Overview
Visual Collaboration
With Visual Collaboration in Aras Innovator 11 people can easily view content, add markups and
make comments in the context of PLM items. Marked-up viewable "snapshots" are linked with text
comments into discussion threads visible to other users with the proper permissions.
Requirements Management
Aras Requirements Management enables you to identify, associate and trace different types of
requirements - including physical, functional, logical and performance requirements - and validate
that the system or product satisfies the original intent.
Component Engineering
Advanced tools are available to support the Management of Standard Components in your
organization. These include access to outside Datasheets, Parametric Data, Compliance, Alternates,
End-of-life, Hazardous Material, EOL, and PCN Notifications.
Page 23
Configuring Solutions
CAD Connectors
A full suite of CAD Connectors are available for many MCAD and ECAD tools to allow direct CAD
integration into the Aras environment. MCAD connectors include access to CATIA V5, SolidWorks,
NX, Solid Edge, Creo, Pro/ENGINEER, AutoCAD, Inventor, and CADRA. ECAD connector include
access to Allegro, OrCAD, DxDesigner / DxDatabook, PADS, Zuken CADSTAR, CR5000/3000 and
AutoCAD Electrical.
Page 24
Unit 1 - Overview
ItemType RelationshipType
Method Form
Field
ItemType
An ItemType is a template that defines the structure of a business object in the database. You
create ItemTypes in Aras Innovator which define how data will be stored the database and how
objects created from this type will behave. Each ItemType has a corresponding table in the
database that stores Items of that type.
For example, a Part is a standard ItemType in the database that defines different kinds of assemblies
that can be modeled and created.
Property
A Property is a piece of information tracked about an Item. Each Property has a name, a label, a
data type, and a number of other settings to define its behavior. A Property corresponds to a
column in the ItemType's table.
Relationship Type
RelationshipTypes define which ItemTypes are related to one another, and the behaviors of the
relationship. RelationshipTypes have a Source ItemType (the parent), an optional Related ItemType
(the child) and a Relationship ItemType.
Form
A Form allows a user to interface with an Item and is often used to view and edit instances of a
particular ItemType. Forms are configured using a drag and drop utility, stored in the database, and
rendered dynamically.
Page 25
Configuring Solutions
Field
A Field is a user interface primitive used to display information on a Form. Fields may be, but are
not required to be bound to a Property.
Method
A method is an Innovator ItemType containing executable .NET language code, C#, VB, JavaScript.
Actions and Events trigger the execution of Methods. Methods determine the behavior of an Item.
Page 26
Unit 1 - Overview
ItemType ItemType
RelationshipType
Item
An instance of an ItemType is an Item. Each Item has distinct property values and can contain a life
cycle and also be controlled by a workflow.
As a developer, you will define ItemTypes that allow your end users to create Items of that type.
For example, Aras Innovator contains a Part ItemType that allows users to create unique Part
instances in the database.
Relationship
You will often link ItemTypes together to form relationships. The template for a relationship is the
RelationshipType. When an end user connects two Items together, a Relation Item is also created in
the database for that connection.
For example, a Part can be linked to a Document which contains a checked in File. There is a
RelationshipType in the database that defines this relationship.
Page 27
Configuring Solutions
Identities
Identities
Users
Aras Innovator contains a rich, highly configurable security model that allows you to control who has
access to the system and what they are allowed to do.
Identities
Identities form the basis for the Innovator security model. Identities are hierarchical, and may
represent a user, a group, a group of groups, and so on.
Users
To access Aras Innovator, a User must be defined in the system with credentials (user name,
password). Users belong to one or more Identities defined above. You will learn more about
security later in this course.
Page 28
Unit 1 - Overview
Summary
In this unit you learned about the basic requirements necessary to run Aras Innovator. You also
learned some basic terminology used throughout the product.
Page 29
Configuring Solutions
Review Questions
What is the difference between an ItemType and an Item?
Page 30
Unit 2 Navigating in Aras Innovator
Overview: In this unit you will learn how to log on and perform basic operations in Aras
Innovator. You will learn how to use the basic features of the tool to search for
objects as well as open and edit items in the database.
Page 31
Configuring Solutions
Logging On
User ID
Password
Database
Troubleshooting a Login
1. Make sure pop-us are allowed for server site.
2. For Microsoft clients, make sure .NET security has been configured correctly. For Firefox
clients make sure the Aras Extension has been installed. See the Client Configuration
instructions on the CD Image or the ARAS website for installation details.
Page 32
Unit 2 - Navigation
Main Toolbar
Workspace Pane
TOC
Pane
Status Bar
Main Window
The Main Window appears after you first log on.
The Main Window contains two panes, the Main Menu and the Main Toolbar.
The contents of the window are configurable and may appear different to each user.
TOC Pane
The Table of Contents uses a tree control to allow you to quickly see the contents of the database.
You can expand and contract each category to view templates and ItemTypes stored in the
database.
Workspace Pane
When you click on a template or ItemType in the TOC Pane the workspace displays content based on
the selected object. This is known as the “TOC View”.
Status Bar
The bottom status bar displays your current User Name, Server and Database.
Page 33
Configuring Solutions
Main Menu
Main Menu
The main menu displays all the functionality available in Aras Innovator. Certain menu items may
not appear active to a user based on their security profile and what operation they are currently
performing.
Page 34
Unit 2 - Navigation
Tools Menu
Tools Menu
The Tools Menu contains administrative operations as well as user preferences settings. Individual
Users may choose how each ItemType is displayed in the standard user interface. The preferences
are stored in the database on log out and are loaded when a User logs in again.
User Preferences
Change Working Directory
Allows a user to change the local location for files that are retrieved from the system (Check out).
Page 35
Configuring Solutions
View
Versions
Main Toolbar
The Main Toolbar contains a subset of the features available from the Main Menu and allows for
quick access to the most common operations. Buttons that are disabled are shown in gray.
Page 36
Unit 2 - Navigation
Click to Select
The TOC contains several subcategories under the Administration category to make it easier for an
administrator to navigate to the appropriate selection. For example, management of email and
internal notification messages is defined in the Notification subcategory.
Page 37
Configuring Solutions
Show
Contents
Show
Properties
Page 38
Unit 2 - Navigation
Search Bar
Simple Search
A Simple Search allows you to view objects based on the category template you have selected from
the TOC Pane. You have the ability to customize the search grid as well as export the contents to a
Microsoft Word or Excel document.
Page 39
Configuring Solutions
Search for Items by their keyed-name, for example ‘Adm*’ finds the Identity named
Administrators.
2. Press the Search button to execute the search.
Tip!
Press the Clear Search button before attempting a new search to remove any previous criteria.
Append Results
You can also choose to not clear existing search results in a search grid by using selecting Search -
>Append Results from the main menu.
When this setting is applied, any search results that currently exist in the grid are retained and new
results are appended to the list.
This can effectively be used as an "OR" condition between two or more searches.
Remember to disable this option when you no longer need this behavior.
Page 40
Unit 2 - Navigation
To Hide/Show a Column
1. Press the right mouse button over a column heading and select Hide to remove a column
from view.
2. Insert Column allows you to add columns to the grid. Only columns that have been marked
as not hidden by an administrator can be added to the grid.
To Rearrange a Column
Drag and drop the column heading to a new position in the grid.
Changes to grid displays are saved to the database and available when the user logs on to the
system the next time.
Page 41
Configuring Solutions
Remove
Criteria
Lookup (F2)
Advanced Searches
Allow you to search on properties not shown in the simple search grid (hidden properties).
Include things like the date an item was created, the user that modified it last, etc.
You can apply Operations such as ‘greater than’ or ‘not equal to’, or like (to use wildcards)
You can add as many criteria rows as necessary
You can search for items with relationships; you can also search by those relationships. This
will discussed later in the course.
Page 42
Unit 2 - Navigation
Page 43
Configuring Solutions
Saving a Search
From an executed search select Save Search… on the
main Search menu
Saved Searches
The Saved Search ItemType enables users to retrieve previously created searches. They can be used
in several ways:
When a user makes a Search the Search Mode and search terms are saved automatically.
When a user returns to an item the last search is restored automatically.
After a user performs a Search it may be saved by giving it a name, so that it can be
retrieved and re-used in the future, with or without modification.
Each user can execute Saved Searches they have made plus any shared by other users.
A user can optionally share their Saved Search with other users by selecting an Identity in
the Share With field.
A Shared Search can be set to 'No UI' by and administrator to hide text details in the UI. This
is convenient for enabling users to use a Saved Search without viewing complex AML
structure. If an end user will not understand AML it is best to Hide Search Criteria.
To Save a Search
1. While in the search grid, select Search > Save Search… from the Main Menu.
2. Enter a Label for the Search. If you would like the saved search to appear under a TOC
category select the Show on TOC option.
3. Press Save to capture the search.
4. Once saved, you can execute the search from the TOC (if TOC option selected) or select it
from the Saved Searches drop down list in the search bar.
Page 44
Unit 2 - Navigation
Search Center
Search Center is a centralized location for all saved and shared searches. The page also includes
web and component search capabilities as well.
Page 45
Configuring Solutions
Editing an Item
Main Menu Edit
Right Click
Menu
Toolbar
Edit
To Edit an Item
You can edit an Item by:
Page 46
Unit 2 - Navigation
Item Locking
An Item must be locked
to be edited
Locked items are
displayed in search grid
Others can view Item
(read only)
Item Locking
By default, when you open an Item for edit it is locked. Locked items can only be edited by you –
others can view the Item (read only) but not make any changes to it.
You can search for locked Items in the search grid. By default, the first column is reserved for
locking criteria. When you click in the search bar of the first column, a menu is displayed. You can
choose to look for Items locked by you only, by others or both.
When you first edit an Item without saving it a gold lock indicator appears in the Lock column to
remind you that changes have not been saved.
When you edit an Item the system automatically locks that Item. Before you unlock the Item you
should save any changes, otherwise you will be prompted to save or discard changes when you
attempt to unlock the Item.
Page 47
Configuring Solutions
Locking/Unlocking an Item
Edit
Menu
Item Properties
Copyright © 2014 Aras All Rights Reserved. aras.com
Note
If an Item is locked, you can see who is holding the lock in the Item Properties for that Item.
Page 48
Unit 2 - Navigation
Menu Bar
Toolbar
Form Frame
Mimimize/Maximize
Tabs
Relationships
Tabs
Relationships
Grid
Add Relationships
Relationship Toolbar
Copyright © 2014 Aras All Rights Reserved. aras.com
Tear Off Windows are used for data entry and viewing detailed information beyond what is on main
search grid. The form and tabs shown will vary by ItemType since they are highly customizable.
Different forms may be displayed for different users and/or different functions (add, edit, etc.).
Toolbar
The Toolbar contains many of the same menu items as the Main Menu but these features only apply
to this Item.
Form Frame
The Form Frame contains data entry fields for providing information to the system for this Item.
Each ItemType can have one or more Views of any Item that have been created with Forms.
Page 49
Configuring Solutions
Relationships Tab
The Relationships Tab allows you to link other Items to this Item and to provide more information
about the current Item.
Page 50
Unit 2 - Navigation
Right Click
The item tear off window will appear to allow data entry. Save, Unlock and Close the Item to save
the record to the database.
Page 51
Configuring Solutions
Page 52
Unit 2 - Navigation
Logging Off
When you attempt to log off of Aras Innovator, the system checks to see if you have any unsaved
Items pending in your session. If any unsaved Items are found, the Unsaved Items dialog appears.
To Return or Refresh
You can also return to Aras Innovator or Refresh the view using the corresponding buttons.
Note
If you close the window all unsaved changes are lost.
Page 53
Configuring Solutions
Note
Because the Delete key is also used to delete text, the Delete key will prompt you to confirm a
deletion when you attempt to delete a relationship row. You will not be prompted if you use the
mouse and choose the delete relationship icon from the toolbar.
Page 54
Unit 2 - Navigation
On-line Help
Just Ask Innovator
An on-line help system is available in the system and can be accessed from the help menu or
The on-line help system contains an indexed table of contents as well as search capabilities.
Aras also supports an on-line forum with a large set of resources including questions and answers as
well as community solutions. For more information see: http://www.aras.com/community/forums/
Page 55
Configuring Solutions
Help About
Help About
For more information about additional resources available to your press Help > About from the
Main Menu.
The About dialog also displays the current release and build number of the installed product.
Page 56
Unit 2 - Navigation
Summary
In this unit you learned how to operate the basic functions of Aras Innovator including viewing,
editing, locking and searching for Items.
Page 57
Configuring Solutions
Review Questions
How would I find all ItemTypes that begin with the letter “A”?
How can I prevent someone from making changes to an Item until I am finished working on it?
Page 58
Unit 2 - Navigation
Lab Exercise
Goal:
Be able to navigate and query for items using Aras Innovator.
Scenario:
In this exercise, you will log on to Innovator as the administrator and perform a series of queries
against the database using the current data model.
Steps:
1. Log on to Innovator using the User Name admin and the password of innovator. (Make sure
the Solutions database is selected.)
2. Aras Support often requires the Version and Build Number of the product you are using. Locate
the Version and Build Number of Innovator.
_________________________________________
3. A developer on your team would like to know how many Methods are part of the Core product
in the current database and are labeled Version 2. What is the answer? _________ How many
total Methods are there in the system? ____________
4. How many RelationshipTypes contain the words “Life Cycle” in the name? _________
5. How many system Variables were created by the Innovator Admin? _______
6. A developer on your team will only be working with JavaScript Methods. Create a Saved Search
named “PE Methods” that locates all non-core JavaScript Methods that begin with the name
“PE_”. Display this search on the TOC. Test the search to make it sure it works appropriately.
7. Open the Life Cycle Map named NonReleased for edit. Add the following to the Description
field – “Non Released Life Cycle”. Save your changes and close the window. What appears in
the first column of the Search Grid for this item?________________
Why?______________________________________________________________________.
8. Log off of Innovator and log on as the User Name root with the password innovator. Are you
allowed to edit the NonReleased Life Cycle Map? __________ Why?
___________________________________________________________________________.
9. Log off of Innovator and log on as the User Name admin again. Adjust the Life Cycle Map so
that other developers can edit the map.
10. Add the NonReleased Life Cycle Map to your “My Desktop” for easy access later.
11. Open the Calendar Item named 2014 for edit. Add June 1 as a Company Holiday and then save,
unlock and close the Item.
Page 59
Configuring Solutions
Page 60
Unit 3 Exploring ItemTypes
Overview: In this unit you will review the main configuration settings in an ItemType and
how to create new ItemTypes. You will also review several reports related to
ItemType definitions.
Page 61
Configuring Solutions
ItemType Overview
Property
LifeCycle
Permissions
ItemType RelationshipType
Workflow
Method Form
ItemType Overview
Almost everything in Aras Innovator is defined through an ItemType. ItemTypes define properties,
forms or views available for this item, lifecycle, workflows associated with the item, permissions,
relationships, server and client methods and events that occur on the item, and much more.
ItemTypes are the templates that define what kind of Items a user will create in a solution.
Page 62
Unit 3 - Exploring ItemTypes
What is an ItemType?
PR
Defining an ItemType
An ItemType is the template, or a definition of Items that will be created in the system. An Item is a
business object created by your end users and managed by Aras Innovator
An ItemType defines data structure and behavior, analogous to a class in the object-oriented
systems.
ItemTypes are created via a simple user interface and stored in the database.
Each ItemType has a corresponding table in the database.
ItemType instances are called Items.
ItemTypes are the basis for what makes Innovator self-describing.
Most ItemTypes have corresponding tables in the database.
Each Item that is created from an ItemType is assigned a unique 32 character identifier that is
guaranteed to be unique for the enterprise (id property). This is commonly referred to as the GUID
(Globally Unique IDentifier).
Page 63
Configuring Solutions
4 5
Name
ItemType Names may contain letters, numbers, spaces and underscores. Since the ItemType
name is stored as a Table in SQL Server, ItemType names can be just about anything, but
plain-language names are encouraged. A SQL Table name is created with all caps and spaces
converted to underscores. In the above example, the table name will be PR.
Singular Label
Labels are displayed throughout the system and come in two forms: Singular and Plural.
Plural Label
The system chooses and displays the appropriate label.
Small Icon
Small icon is displayed next to Item within the TOC and the Structure Browser.
Large Icon
The ‘Large’ icon is displayed in the Form Layout if the ItemType form is displayed.
There are many standard icons provided. To select a provided Icon click the “Select an
Image…” link and the Image Browser will appear.
Notes
Aras Innovator supports the Scalable Vector Graphic (SVG) format which allows an image to
be scaled to any size.
Page 64
Unit 3 - Exploring ItemTypes
Scalable Vector Graphic (SVG) files can be created and modified using many graphic editing
tools including the open source Inkscape utility (www.inkscape.org).
Best Practice
All SVG images provided by the Aras Innovator software are located in a single directory named:
<Root>\Innovator\Client\images\
If you choose to create your own images, the Aras Innovator server contains a reserved directory
named "customer":
<Root>\Innovator\Client\customer\
Any images stored in this location are then displayed in the “Customer” folder of the Image Browser.
Placing the images here also keeps them grouped together for easy migration if a system upgrade is
performed.
Page 65
Configuring Solutions
2
1
Auto Search
The client browser will automatically perform a search when the ItemType is selected on the
TOC. Setting this checkbox to ‘true’ can slow the ItemType loading since it assumes a full
query search. This setting should be used mostly on ItemTypes expected to have few
instances (less than 100 would be a good rule of thumb), but setting a Max Records and a
Default Page Size to a low value can produce quicker results.
Default Page Size
You can specify the default page size, which defines how many items will appear on the
search grid. Typically this number is set to 25. If left blank, the page size equals the Max
Records field. Note that a user can override the page size setting when they perform a
search.
Max Records
You can specify the default Max Records size. This limits the size of the returned data set
which can improve performance. A user can override the Max Records size when they
perform a search.
Page 66
Unit 3 - Exploring ItemTypes
Life cycles and versions are discusses in greater detail in a later unit.
Revisions
Revisions defines a sequence object which dictates how each revision will be labeled (A,B, C…
1,2, 3…)
Versionable
When selected as an automatic process, the Generation of an item is incremented each time
the item is changed (i.e., locked, edited and unlocked). The lifecycle for the item is
automatically set back to the lifecycle start state on the first edit after the “Released” state..
Discipline
Automatic versioning increments the generation of an Item each time it is edited.
When manual versioning is selected, the item is only incremented upon explicit request by a
user (right click on an Item in the search grid and select Version from the menu). The
Generation will not increment until a user chooses to manually version the Item.
Page 67
Configuring Solutions
Viewing Properties
Properties hold pieces of information that are associated with an ItemType. Each new Item that is
created from an ItemType in the system holds information relative to that “instance” of the Item.
(For example: created_on holds the date and time an Item was created.)
You will learn more about Properties and how to create them in a later unit.
Page 68
Unit 3 - Exploring ItemTypes
Tracking History
History Template defines events to be logged
History Template
History Templates are used to define a set of pre-defined Actions triggering the system to log a
change. Innovator provides a Default History Template that can be used as a reference for
configuring history of an ItemType. Alternatively, you can create custom Templates.
Page 69
Configuring Solutions
Class Structure
Classification allows you to share properties among subclasses. If you define a property at a parent
level class, all subclasses will inherit those properties.
In the examples above, both the Document and Part ItemType have a defined class structure. A
Document may be represented as a Drawing, CAD Model, etc. A Part can be represented as a
Component, Assembly, etc. Because each of the subclasses share common attributes it can be more
efficient to use class structure versus creating entirely new ItemTypes.
Additional specific properties (in addition to the properties defined by the parent ItemType)
Life Cycle
User Interface (View)
“Can Add” capability
Note
A class structure can be many levels deep and wide depending on the complexity required.
Page 70
Unit 3 - Exploring ItemTypes
Expand/Contract
Displays or hides all of the subclasses in a multiple level hierarchy.
Search Filter
Displays only the subclasses containing the characters typed into the filter box. In the
example above the filter is set to only show subclasses that contain the characters "Pr". The
filter is not case sensitive.
Page 71
Configuring Solutions
Selecting a Classification
Selecting a Classification
A user is then able to select a classification by clicking on a configured form field. When the field is
selected the Class Structure dialog appears. The user can use the filter, expand/contract and
layout features (if necessary) to locate a specific class. Clicking the Return selected icon sets the
classification for the current Item.
In this example, a new Document Item is created. The Document form contains a Type field that
allows a user to select a classification for the Document Item.
Note that the form display may change based on the selected classification.
Page 72
Unit 3 - Exploring ItemTypes
Page 73
Configuring Solutions
Page 74
Unit 3 - Exploring ItemTypes
ItemType Name
This identifies the type of Item to the user (e.g. Part, Document, etc.). The system also creates a
unique internal id for the Item in the database to ensure exclusivity.
Default Permission
You will need to assign a default Permission to the ItemType to indicate what access one or more
users have to the new Item. Note that this is separate from the Can Add Identity. You will learn
more about applying security in a later unit.
Page 75
Configuring Solutions
Later in the course, you will learn how to apply an automatic sequence number that can be used as
part of the Keyed Name Order.
Page 76
Unit 3 - Exploring ItemTypes
Demo Scenario
New Design Request
▫ Allows end user to issue a new Design Request
▫ Is associated with a Customer Item
▫ Is related to one or more Documents
For the purposes of demonstration in class, we will be working with a simple example scenario to
illustrate various features in Aras Innovator.
A large company that sells consumer electronics would like to track New Design Requests made by
both Customers as well as internal Employees of the company. Submitted requests will then be
reviewed by appropriate staff members to either approve or reject the Design Request.
The Design Request should have a relationship to supporting Documents as well as the Customer
that made the request.
Can you identify the three ItemTypes we will need to accomplish this solution?
Page 77
Configuring Solutions
Page 78
Unit 3 - Exploring ItemTypes
Allowing Access
TOC Access
Can Add
Default Permission
Provide the following values by clicking on each Relationship Tab and adding a new row:
Note
You can assign an ItemType to a TOC Category in the TOC tree. You can also add new categories to
the TOC by editing the List Item named Categories. You will learn about TOC Categories later in this
course.
Page 79
Configuring Solutions
Properties created_on 10
Page 80
Unit 3 - Exploring ItemTypes
Never – never show the Parameters tab on Items of this ItemType.
When Populated – only show the Parameters tab on Items of this ItemType when
there classified properties available.
Always – always show the Parameters tab on Items of this ItemType.
6. Save the ItemType.
Internal
Customer
Page 81
Configuring Solutions
Note
You won’t be able to do much with the Item at this point. What do we need to add to make it more
useful?
Page 82
Unit 3 - Exploring ItemTypes
Summary
In this unit you learned about how ItemTypes are configured and how to build new ItemTypes.
Page 83
Configuring Solutions
Review Questions
What is the difference between an Item and an ItemType?
What are the 4 requirements you should consider when creating an ItemType?
An administrator creates an ItemType but the end users cannot see it in the TOC Pane – why?
Page 84
Unit 3 - Exploring ItemTypes
Lab Exercise
Product Change Request – Solution Requirements
Each unit of this course contains an additional exercise so you can practice what you have learned.
As a working example, you will build a basic change management system that allows a company to
record and process product change requests made by customers about existing goods that they sell.
You will classify the requests as either defects or enhancements and define an appropriate lifecycle
and workflow for the solution.
Collect information about the product issue including a description, reason, and cost.
Establish a required connection to a Customer and one or more Product Items
Log one or more review notes made by the change coordinator for tracking progress.
Follow a prescribed life cycle - and once closed force the request to remain read only.
Support a workflow that issues assignments with specific tasks to various parties to either
approve or reject the request as efficiently as possible.
Each unit of the course will allow you to add new functionality to support these requirements.
In order to allow a user to create a Change Request, what is the first thing you will need to do?
________________________________________________________________________
Page 85
Configuring Solutions
Lab Exercise
Goal:
Allow end users to create an Item of type Change Request.
Scenario:
You will use Aras Innovator to create a basic change management system that allows request items
to follow a prescribed life cycle. In this lab, you will first need to define and configure the Change
Request ItemType so that users are allowed to create one or more Change Request Items.
Steps:
1. Make sure you are logged on to the InnovatorSolutions database with the User Name of admin
and the password of innovator.
2. Create a new ItemType. What are two ways you can accomplish this?
__________________________________________________________________________
4. Select a small and large icon to represent the ItemType in the user interface.
6. Can you now create a new Item of type Change Request? ___________ What is missing?
___________________________________________________________________________
8. You need to allow users to be able to add new Items of type Change Request to the database.
For initial testing, we will allow everyone in the system (World) to add new Change Requests.
Later in the course we will fine tune the security of this ItemType to a select set of users.
To allow access, configure the following for this ItemType using the Relationships Grid on the
ItemType form:
Page 86
Unit 3 - Exploring ItemTypes
9. Change Requests should support the following classifications. Create a class structure to
support these subclasses:
Enhancement
Defect
10. Save, Unlock and Close the Change Request Item Type.
11. Look for a new Change Requests type at the bottom of TOC. Create a new Change Request.
Why is the form blank? _______________________________________________________
12. Save the Change Request and keep it locked. Close the form.
13. Now try finding the Change Request using a Simple Search. How many columns appear in the
search grid? ____________
What does the first column represent?
________________________________________________________________________
Where is this Item stored in the database? _____________________________________
14. Note that when you open a Change Request Item the title bar shows a hexadecimal number to
describe the Item in the windows title bar.
Edit the ItemType so that the Keyed Name for the Change Request ItemType uses the
modified_on property. You will need to set the Keyed Name Order to a positive number for the
modified_on property in the Relationships Grid.
Try opening a Change Request Item again and notice the difference in the title bar.
15. You will add new properties to this ItemType shortly. For now, you can delete the new items
you created from the database
Page 87
Configuring Solutions
Page 88
Unit 4 Creating Properties
Overview: In this unit you will learn how to assign basic properties to an ItemType. You
will also learn how properties are used in the database.
Page 89
Configuring Solutions
Property Basics
A property is a piece of
information associated
with an Item with a
designated data type
Each property maps to a
column in the ItemType’s
database table
Property Basics
The Properties tab in ItemTypes contains all properties of the item, including core system
properties. Properties can be thought of as columns in the database table for a single ItemType.
Some properties are required and populate on save, while other are required to be populated for
basic system functionality.
Properties also maintain a Label which is used for displays in search grids and form views.
Note
Property names must be entered as lowercase letters and spaces are not allowed.
Page 90
Unit 4 – Creating Properties
System Properties
System properties are created with every ItemType
and must be present for an Item to function
correctly
Each Item contains an id which is a 32 character
unique identifier
A config_id is also maintained which links multiple
versions of the same Item
System Properties
When an ItemType is saved 23 System Properties are created by default:
Page 91
Configuring Solutions
Basic Properties
Several data types offer custom dialogs to make data entry easier. For example, the Date data type
will display a calendar dialog to the user:
Tip!
String is preferred over Text where possible as it can use less space in a database and tends to be
more flexible.
Page 92
Unit 4 – Creating Properties
You will configure list properties using the List ItemType in a later unit
List
Allows you to create a list of choices that appear as a drop down list box to a user in a Form. You
can display a label value to the user and set a corresponding property value in the database when
the user makes a selection.
Filter List
Allows you to configure a cascading set of drop down lists where the value selected in one list
affects the values presented in other lists.
Color List
You can create a drop down list box that displays a text label with a different color background for
each row.
Page 93
Configuring Solutions
Special Properties
MD5
User passwords use this hash function which produces a 32 digit hexadecimal number.
Sequence
Useful for auto-numbering Items. A formatted number can be incremented each time a new Item is
created.
Item
Allows you to set the value of a property to another Item in the database.
Foreign
Allows access to foreign properties that reside on another selected Item.
Federated
Used to access data from an external system vs. the Innovator database.
Formatted Text
Allows you to provide a mask for a property that displays a phone number, product code, etc.
Multilingual String
Used for solutions that support multiple languages.
Page 94
Unit 4 – Creating Properties
Property Settings
Length: maximum length for string values
Precision: significant digits (for float and decimal)
Scale: digits to the right of the mantissa (for float and decimal only)
Required: requires a property value in order to save the item
Unique: enforces uniqueness on the property value
Indexed: sets a database index on the property
Hidden: property visibility in the search grid
Hidden2: property visibility in the relationship grid
Alignment: alignment (left/right/center) of the property in grids
Width: display width of the property on grids
Sort Order: column order of the property on grids
Keyed Name Order: controls the keyed name of the item
Order By: controls the order in which records are returned
Copyright © 2014 Aras All Rights Reserved. aras.com
Property Settings
Property Settings are configured in the Relationships Grid under the Properties tab.
Required
Is enforced on save, meaning you can't save an item that doesn't have a value for a required
property. Do not set Required for Sequence properties (they get a value server-side).
Unique
Setting Unique on 2 properties means that the combination of those 2 properties must be unique.
For example, you can set the combination of Part Number and CAGE Code (a manufacturer
identifier) to be unique so that you can maintain unique parts from different manufacturers that just
happen to have the same part number.
Hidden
If true, this property will not be displayed in the main grid for this item.
Hidden2
If true, this property will not be displayed on the relationship grid.
Page 95
Configuring Solutions
Sort Order
Is an integer values that controls the relative position of columns in a search grid display with lower
values left to right.
Order By
Controls the order (top to bottom) of the items displayed in the main item grid, either after a
manual or an automatic search. Whichever property has the lowest value of Order by, is the first
one to control the order. For example, if you want to order the employees by last name and then by
first name, last name would have a value of 1 in the Order By property, and first name would have a
value of 2.
Page 96
Unit 4 – Creating Properties
Default Search
A Default Search is used to predefine the search criteria for an Item. If a user has not searched on
the Item previously (no user preference) you can specify default search criteria for one or more
properties. A user can override these values.
Pattern
A Pattern applies only to properties of type Date, String, or Filtered List.
If Pattern property is of type Date, the following list of patterns can be used with the Date property.
The order of display for month, day and year will follow internationalization and localization rules
dependent on client settings.
Page 97
Configuring Solutions
If the Pattern property is of type String, the pattern follows basic regular expression syntax. For
example, to require that a user enter a telephone number in the format ###-###-#### you could use
the regular expression: [0-9]{3}-[0-9]{3}-[0-9]{4}$
If the Pattern property is type Filtered List, then Pattern is the pointer to a property which defines
the filter. Filtered lists are discussed later in the course.
Class Path
Indicates this property will only be available to this subclass (and any children of this subclass). Only
used if a Class Structure has been implemented on the ItemType.
Foreign Property
Foreign properties work with Item data type properties to allow you to refer to and display
properties of another selected Item. Foreign properties are discussed in detail later in the course.
Track History
Indicates the “changed to” and “changed from” values of this property will be stored in the Item’s
audit history depending on the ItemType History Template selected.
Item Behavior
Item Behavior refers to properties where the data type is Item, and the target item specified by the
property is versionable. Item Behavior can be Fixed or Float. Item behavior is discussed later in the
course.
Note
Tooltip and Help Text are not functional and reserved for future use.
Page 98
Unit 4 – Creating Properties
New
_completion_date Date
_cost Decimal 6 2
_department_number Integer Internal
_description String 128
_patent_required Boolean
_title String 64
TIP!
It's a good idea to consider using a prefix character(s) for a property name to distinguish it from the
standard Aras system properties. In this example the underscore character (_) is used.
Page 99
Configuring Solutions
Summary
In this unit you learned how Properties are configured and how to build new Properties for an
ItemType.
Page 100
Unit 4 – Creating Properties
Review Questions
Where are property values stored in the database?
Page 101
Configuring Solutions
Lab Exercise
Goal:
Be able to create basic properties for an ItemType and understand where the property data gets
stored in the database.
Scenario:
In this exercise you will create some new basic properties for the Change Request Item.
Steps:
1. Add the following properties to the Change Request ItemType:
2. Select the property named state and uncheck the Hidden checkbox. What will this do?
_______________________________________________________________________
3. How is the database table Change_Request altered each time a property is created?
____________________________________________________________________
4. Can you see these properties on a Form when you open a Change Request Item? What needs to
be altered? _________________________________________________
(You will accomplish this in the next unit).
Page 102
Unit 5 Creating the User Interface
Overview: In this unit you will create a user interface for a solution that allows a user to
interact with web forms.
Page 103
Aras Innovator Administration
ItemType
You design Forms using the Form Editor and then associate the Form (or Forms) to an ItemType.
The same Item may be displayed to different users in different ways by creating multiple Views and
Forms.
Page 104
Unit 5 – Creating the User Interface
Page 105
Aras Innovator Administration
1
2
Forms are defined using the Form Designer, stored in the database and rendered
dynamically at run time as Views.
Many standard controls are available for Form design.
Forms may also incorporate custom HTML and JavaScript
Properties
Properties that are used on the Form.
Field Definitions
Specific information about each Field.
Form Layout
Where you design the Form the user will see at runtime.
Empty Fields Toolbar
A series of Controls you can add to a Form – you will then associate the field to a property.
Page 106
Unit 5 – Creating the User Interface
1
2
Field Toolbar
Create an empty field before assigning property to the field. If you use the Unused Properties
option this is done automatically based on Property Data Type. You can add the following empty
fields:
Text field
Password field
TextArea Field
DropDown Field
Single Select ListBox field
Multi Select ListBox field
Checkbox field
RadioButton field
Label field
Date field
Color field
HTML field
Page 107
Aras Innovator Administration
1
2 4 5
3
9
6
7
8
Name
Field name
Field Type
Text: a simple text box , set length at (4)
Password: a text box with masking
Text Area: a text box set rows and columns at (4)
Checkbox: a checkbox for true/false values
For Lists
Dropdown: a dropdown box
Radio Button List: a set of radio buttons
Listbox Single Select: select one
Listbox Multi Select: Hold Ctrl to select many
Checkbox List: a list is selectable as checkboxes
Date: a text box with a calendar control
Item: a text box with an item picker / search dialog
File Item: choose File Item
Less commonly used
Label: a simple text placement
Formatted Text: can contain Html
Page 108
Unit 5 – Creating the User Interface
Page 109
Aras Innovator Administration
Field Physical
1 3
4
2
5
6 7
Field Physical
The following fields define a Physical Field:
Positioning
Absolute X & Y measured from top left of form, default and recommended
Relative X & Y measured from where browser would place the field in field order.
Static position determined by browser, X & Y ignored
X & Y measured in pixels
X Y
Row, Column Position
Field Order
Order used for Group Box field order
Tab Index
Tab key order of field if Tab Stop checkbox is selected
Z Index
Order of layered items
Visible
Suppress field from view
Disabled
Field is read only
Page 110
Unit 5 – Creating the User Interface
2 9
6
3
7
4
8
10
11 13 14
12
Name
Name of the Form
Identity
Who has access to this Form (defined in ItemType View)
Function
Specifies what the form will be used for (editing, viewing, printing, etc.) Default is edit and
view.
Classification
ItemType classification associated with this Form
Description
Details about the Form
Width
In pixels
Height
In pixels
Style sheet
Custom cascading style sheet
Category Form
Display this form in the Workspace Pane when user clicks on a TOC Category. Form name
Page 111
Aras Innovator Administration
Page 112
Unit 5 – Creating the User Interface
Creating a View
ItemType View Form
Creating a View
Views are the relationship between ItemType and Form. In order for an end user to see your Form
you must associate it with an ItemType. Aras Innovator automatically creates a view to a Form with
the same name as the ItemType the first time you save an ItemType to the database.
To Create a View
1. Open the Design Request Item Type.
2. Locate the Views relationship tab and add a new View relationship (if it is not already there).
3. Choose the Design Request form.
4. Note the Type is Default (edit/view/print).
5. Leave the Identity as World.
6. Save the ItemType.
Note
You can supply more than one Form on an ItemType. For example, you may create a Form that is
only used when a user prints the current View.
Page 113
Aras Innovator Administration
Configuring Views
2 3 4
Multiple views can be configured for an ItemType to provide custom displays based on function,
identity and class:
Type
Default – Form used when adding, editing, viewing or printing an Item.
Add – Form used the first time an Item is added.
Edit – Form used when the Item is locked for editing.
View– Form used for viewing the Item.
Print – Form used to print the Item.
Identity
Form available for members of defined Identity.
Classification
If Class Structure is implemented, the Form to display for this class.
Display Priority
If more than one Form meets selection criteria above, the display order priority (1 = highest
priority, 2, 3, etc.)
Page 114
Unit 5 – Creating the User Interface
Classifying a View
Classifying a View
One of the features (discussed earlier in the course) is the ability to add classification to an
ItemType. If an ItemType has been created with configured subclasses, a Form and corresponding
View can be created for each subclass to show different information.
In this example, the Design Request ItemType has been modified to support an Internal classification
View. The Department Number field should only be displayed to the user if the Internal subclass is
selected for the Item.
To Classify a View
1. Create a Form for the classification (or copy an existing form). Name the Form
appropriately.
Page 115
Aras Innovator Administration
2. Edit the ItemType and create a new View selecting the Form copied in the previous step.
3. Select the Classification subclass for the View.
4. Edit the Form used for the classified View to add classified properties to the Form.
Note
A Form must be related to an ItemType View in order to add new Unused Properties to the Form.
Page 116
Unit 5 – Creating the User Interface
Regenerating a Form
Regenerating a Form
A Form is automatically created the first type an ItemType is created in the database with the same
name as the ItemType.
Often you will add properties after you first create the ItemType. Regenerating a Form will pick up
any visible properties you have created and automatically apply them to the regenerated Form.
To Regenerate a Form
1. Open the desired ItemType and locate the Views relationship tab.
2. Click the right mouse button and select RebuildViewAction from the menu.
3. The Form will be regenerated.
Note
Do not use regeneration if you have already customized a Form – you will lose all of your changes!
Note
Make sure the Form is unlocked before attempting to regenerate it.
Page 117
Aras Innovator Administration
You can specify an existing Category name by selecting the Category option from the TOC Access
and choosing a selection for the ItemType to be displayed.
You can also create a category that supports subcategories with multiple levels. The example above
shows the Design Request ItemType assigned to a subcategory labeled Development that belongs to
a category labeled Product Management.
Categories are maintained in a List Item named Categories as described on the next page.
Page 118
Unit 5 – Creating the User Interface
Creating Categories
Edit List Item named Categories
Category Values
Category Labels
Creating Categories
TOC categories are managed in a special List Item named Categories. Aras Innovator is installed with
a predefined set of categories but you can add or change the Label names to better suit your
installation.
To add a category:
1. Click Administration -> List from the TOC and locate the List Item named Categories.
2. Open the list for edit to display the existing categories. Each row on the Value tab
represents a TOC category. The Label field indicates what is displayed to a user. The Value
field defines the internal name for the category.
3. Click the New Relationship toolbar icon to add a new row and provide a Label and Value.
To create subcategories:
1. Create a new row in the Categories list and provide the category Label. In the Value field
enter the parent category name first followed by the “/” character. Enter the value for the
subcategory to complete the Value field.
2. In the example above a new category named pm has been created with the label Product
Management. A second category labeled Development is created that will fall under the
Training Solutions category (pm/devel).
Page 119
Aras Innovator Administration
2. When you assign ItemType TOC Access to the Development subcategory the Product
Management category will appear as its parent in the TOC as shown below.
Notes
If a user does not belong to the TOC Access Identity specified in the ItemType and this is the only
ItemType contained in the category, the category(s) is automatically hidden from view.
After editing the Categories List Item, you may need to log off and then log on again to see the new
categories displayed in the ItemType TOC Access drop down list.
Page 120
Unit 5 – Creating the User Interface
Summary
In this unit you learned how to create an Item View using the Form Editor.
Page 121
Aras Innovator Administration
Review Questions
What is the difference between a Form and a View?
Page 122
Unit 5 – Creating the User Interface
Lab Exercise
Goal:
Configure a Form for an ItemType allowing changes to property values.
Scenario:
You will edit the Change Request Form to allow a user to supply values to the properties you created
earlier. Because the ItemType was created without any additional properties originally the Form
that is associated to the Change Request ItemType with a View does not display any properties. You
can quickly regenerate the Form which will add the properties automatically.
Steps:
1. Open the Change Request ItemType and select the Views tab in the Relationships Grid.
2. Select the Change Request Form Name. Click the right mouse and select RebuildViewAction
from the menu.
Note: The Change Request Form Name cannot be locked for the RebuildViewAction to execute
correctly. If the RebuildViewAction raises an error locate the Change Request Form and unlock
it.
3. Click the right mouse button on the Change Request Form Name again and select View Form
from the menu.
5. Inspect each property using the Field Type, Field Label and Field Physical tabs.
7. Add the following Unused Properties to the Form and label them as shown below:
Property Label
created_on Created Date
state Status
is_released Closed
created_by_id Creator
classification Type
Page 123
Aras Innovator Administration
9. Save, Unlock and Close the Form (and the ItemType if it is still open) and then open a new
Change Request Item to test your work.
10. Why can’t you change the Closed and Created Date field values on the Form?
_____________________________________________________________________________
11. Modify the Categories List Item and the Change Request ItemType TOC Access so that the
Change Request ItemType is displayed in the TOC as shown:
3. Edit the Change Request ItemType and create a classified View using the Defect class path.
Make sure the View Type is Default.
4. Edit the Change Request Defect Form and add the _defect_details property to the Form.
5. Test you work by creating a new Change Request and selecting the Defect subclass from the
Type field.
Page 124
Unit 6 Creating Aras Datatype
Properties
Overview: In this unit you will create a property that uses another Item as its value. You
will also learn how to build properties that allow single or multiple selections
from a List as well as a Filtered List. Finally,. you will build a property that
automatically iterates to a new value when a new Item is created.
Objectives: Defining Item Type Properties
Defining a Foreign Property
Defining a List Property
Defining a Filtered List
Building a Sequence
Using an Image Property
Page 125
Configuring Solutions
_customer Customer
Design
Request
In the example above the Design Request Item has a property named _customer whose value is a
pointer to a Customer Item. The Design Request has a one to one relationship with the Customer
named Acme Industries
Keyed Named Order of a referenced Item is important. If the system cannot define a Keyed Name,
the internal Item Id (GUID) will be displayed (32 digit hexadecimal number).
Page 126
Unit 6 – Creating Aras Datatype Properties
If you then add this property to a Form the following will appear to the end user:
Page 127
Configuring Solutions
_customer Customer
main_phone
Foreign properties are always displayed as read only to the end user in a Form and their values
cannot be changed. Foreign properties cannot be used to filter a list in a search grid.
Page 128
Unit 6 – Creating Aras Datatype Properties
Page 129
Configuring Solutions
You can choose to allow a user to select a single value from the list or multiple values based on your
configuration settings.
Page 130
Unit 6 – Creating Aras Datatype Properties
To Create a List
1. Create a new List Item from the TOC Pane.
2. Provide a List Name and Description for the new List. In this example, a Product Divisions
List will be created.
3. From the Value relationship tab add a new Value. The example above uses values shown
below.
4. Add a new property to the ItemType of Data Type List using this list as the Data Source. (If
you choose the Data Type Multi Value List a user will be able to select more than one
choice.)
Tip!
When entering Values increment the sort order by 10 to allow for additional items to be added
later. If you leave blank, the system provides a default order in increments of 128.
Page 131
Configuring Solutions
Filtered Lists
You can define a list that is dependent on the selected value of another list on a form. This allows
you to narrow the choices that the user selects from and reduces the chance of a user providing
invalid data.
In the example above, if a user selects Home Electronics from the Product Division list box, only
product types related to the selected division are available for selection from the Product Type list
box.
Note
Aras Innovator supports a "primary" list (Division) which filters a secondary list (Product Type). Filter
list "chaining" – where a filter list drives another filter list is currently not supported.
Page 132
Unit 6 – Creating Aras Datatype Properties
Source list
defines
values…
Page 133
Configuring Solutions
1 2 3 4 5
Name
Name of property to hold the value of the selected row in the filtered list.
Label
Label of the property.
Data Type
Choose Filter List.
Data Source
The Filtered List to be used for this list box.
Pattern
The property that has been configured to store the value of the source list.
Page 134
Unit 6 – Creating Aras Datatype Properties
Defining a Sequence
Provide auto-numbering capabilities for Items
Property values of the Sequence data type are
populated from the server
Defined by a Sequence definition
Support
▫ Prefix
▫ Suffix
▫ Step Increments
▫ Number Padding
Copyright © 2014 Aras All Rights Reserved. aras.com
Defining a Sequence
Sequences provide auto-numbering capabilities for Items
Properties of data type Sequence are populated server-side when an item is saved.
Page 135
Configuring Solutions
Creating a Sequence
1 2 3 4
5 6 7
8
Copyright © 2014 Aras All Rights Reserved. aras.com
Creating a Sequence
The following fields are used to create a Sequence:
Prefix
Up to 16 characters that will prefix each sequence number.
Initial Value
This value will be used to set the Current Value on import to another Aras database if the
Current Value field is NULL.
Current Value
Current sequence number value.
Suffix
Up to 16 characters that will follow each sequence number.
Pad With
Padding character to use (if blank no padding characters will appear)
Pad To
Total number of characters in the sequence number (excluding prefix and suffix)
Step
Increment of sequence number (typically 1)
Add a new property to an ItemType and specify Sequence as the Data Type. Use the Data
Source lookup (F2) to locate the Sequence and provide a label.
Page 136
Unit 6 – Creating Aras Datatype Properties
To Create a Sequence
1. Select Sequence from the Administration category in the TOC Pane and create a new
Sequence. In this example the Sequence is named Design Request.
2. Provide sequence values – in this example the following have been provided:
Prefix DR-
Current Value 0
Suffix
Pad With 0
Pad To 6
Step 10
3. Open the Design Request ItemType and add a new property named item_number. Define
the property as a Sequence that uses the Design Request Sequence and provide a Label.
Page 137
Configuring Solutions
3
1 2
Images can be stored in two locations. System wide image files are available in a reserved directory
on the Innovator server. The standard location for these files is: C:\Program
Files\Aras\Innovator\Innovator\Client\images. The Aras installation provides a small collection of
icons, etc. that be used for display in any Item.
External files can also be selected from any available location. Once the selected Item is saved that
contains the image, the image file is automatically checked into the user's Default Vault location for
later display. This can be useful for storing thumbnails, diagrams, etc. associated with an Item. You
will learn about Files and Vaults later in the course.
To Select an Image
1. Open an Item that supports the Image property and click the Select an image… link.
2. Choose Innovator from the toolbar to choose an Item located in the Aras Innovator file
system or External File to locate a file in an alternate location.
3. External files will be automatically copied/checked-in to the user's default Vault location.
Page 138
Unit 6 – Creating Aras Datatype Properties
Add to a Form
Note
If you name the Image property thumbnail the image will also appear in the Properties pane when
an item is selected.
Page 139
Configuring Solutions
Form Display
When a user selects a Product Division, the Product Type list is filtered.
The customer's phone number will appear in the Customer Phone field.
The user will be able to select an Image to be displayed as a thumbnail on the form.
Notes
The Division field (List) in this example must be set to "List No Blank" in the Form editor or the
filtered list results may be unpredictable.
Page 140
Unit 6 – Creating Aras Datatype Properties
Summary
In this unit you learned how to create properties that use another Item as their value. You also
learned about Lists and Sequences and how to apply a Foreign property to an ItemType.
Page 141
Configuring Solutions
Review Questions
Foreign property values can be edited by an end user in a Form. (True or False)
Page 142
Unit 6 – Creating Aras Datatype Properties
Lab Exercise
Goal:
Add additional special property types to an ItemType that allow for automatic sequencing, selection
from a list and access to foreign properties.
Scenario:
You will define an automatic sequence for number Change Requests when they are created as well
as add some additional properties that present a list selection to a user.
Steps:
1. Create a new sequence named Change Request that includes the following settings:
Prefix CR-
Current Value 0
Suffix (leave blank)
Pad With 0
Pad To 6
Step 10
2. Create a new List named Regions. The List should display the following:
Label Value
Americas AM
Asia AS
Europe EU
3. Create a new Filtered List named Design Centers. The filtered list should be tied to the Regions
list you built above. The Filtered List should respond in the following way:
Page 143
Configuring Solutions
4. Add the following properties to the Change Request ItemType (provide appropriate labels):
Property Name Data Type Data Source Pattern Keyed Name Order
_item_number Sequence Change Request 1
_region List Regions
_design_center Filter List Design Centers _region
_attachment Item Document
5. Add a Foreign Property named _attachment_name that will be used to display the name of a
selected Document based on the _attachment property above.
6. Open the Change Request Form and add the new properties you have created to the Form.
7. To test your work you will need to create several Document items (Located under the Document
category in the TOC).
8. Test your work by creating a new Change Request Item. Make sure you can select a Region,
Design Center and a Document. When the Item is saved, the name of the selected Document
should be displayed if you have configured the Foreign Property correctly.
Page 144
Unit 7 Assigning Security
Overview: In this unit you will define security so that only authorized users have access to
a solution. You will also configure the system to grant specific permissions to
groups of individuals.
Page 145
Configuring Solutions
Security Overview
Authentication
▫ Identifying a user with an ID and password (or through
External Authentication)
Authorization
▫ The right or permission to use a system resource; the
process of granting access.
Security Definitions
Authentication
Authentication provides a way of identifying a user, typically by having the user enter a valid user
name and valid password before access is granted. The process of authentication is based on each
user having a unique set of criteria for gaining access. The AAA server compares a user's
authentication credentials with other user credentials stored in a database. If the credentials match,
the user is granted access to the network. If the credentials are at variance, authentication fails and
network access is denied
Authorization
After logging into a system, for instance, the user may try to create or edit Items. The authorization
process determines whether the user has the authority perform such actions. Authorization is the
process of enforcing policies: determining what types or qualities of activities, resources, or services
a user is permitted. Usually, authorization occurs within the context of authentication. Once you
have authenticated a user, they may be authorized for different types of access or activity.
Page 146
Unit 7 – Assigning Security
Security Overview
Users and Identities
▫ Who am I and what is(are) my role(s)
Permissions
▫ What can I do in the system?
Security Overview
Aras Innovator provides both security Authentication with configured User records as well as
Authorization through Permissions.
In this unit you will learn how to create and configure Users, Identities and Permissions.
Page 147
Configuring Solutions
All Employees
Group Identities
Sales Engineering QA
User Identity
(Alias)
Peter Smith
Logon User
Peter Smith
Copyright © 2014 Aras All Rights Reserved.
Alias Identity
When a new User is created a User Identity record with the same name as the Logon User is also
created and is identified as a User Alias. The alias record is used to allow membership in Group
Identities.
Group Identities
Define a group of User Identities that all share a same set of roles in the organization. Group
Identities can also be assigned membership in other Group Identities forming a hierarchy.
In the example above Peter Smith is an Employee who belongs to the Engineering Identity. Rights
granted to the All Employees group will cascade “down” to Peter.
Tip!
When planning Users and Identities think “top down” like a company organization chart.
Page 148
Unit 7 – Assigning Security
Creating Users
2
6
4 7
3
5
Login Name
Must be unique and is supplied be the user at log on.
Password
Is encrypted in the database and required for a user to be authenticated.
Logon Enabled
Required to be checked for the User to be “active” in the system. If a User leaves an
organization it may be preferable to disable the logon versus remove the User record for
historical reasons.
Working Directory
Is the default location for files that are retrieved and checked out to a user’s local system
from a Vault. This value can be changed later by the User.
Default Vault
Default Vault assigned to the user for File Check In.
Manager
User specified as manager of this user.
Starting Page
Default starting page for the user (My Desktop, My InBasket, Search Center)
Page 149
Configuring Solutions
3. Locate and inspect the Alias Identities that are automatically created by the system.
Page 150
Unit 7 – Assigning Security
Alias Identity
Automatically created for each User
Normally do not have any members
Alias Identities
An Alias Identity is a special instance of an Identity representing a specific user. Created by the
system when a User is added to the system the Is Alias property/flag is set to true. This loosely
couples it to the User allowing the alias Identity to be placed in other Identities forming a
hierarchical structure. It is this Identity model that is used to control permissions and form a security
policy. Group Identities represent an Identity level containing a logical grouping of Identities.
Page 151
Configuring Solutions
Defining Identities
Identities may represent:
▫ An individual (Alias Identity)
▫ A group of individuals (Group Identity)
▫ A group of groups (Group Identity)
▫ Roles like Creator, Owner, Manager (Built-In Identity)
Identities are used when defining:
▫ ItemType Permissions
▫ TOC Access and Can Add
▫ ItemType Views
▫ Workflow Assignments, Notifications, etc.
▫ Lifecycle transitions
Defining Identities
Alias Identities can be grouped into Group Identities.
A Group Identity may be composed of Individual Identities or other Group Identities, and each
group identity may have its own set of access rights. The idea behind these Identities is to define a
membership structure for controlling and managing access rights.
Other systems have separate distinctions for individuals, groups and roles. Identities generalize
these concepts so you can assign to one or many without changing the data model.
Page 152
Unit 7 – Assigning Security
To Set Up an Organization
Here is a list of steps to make this process easier.
1. Create identities for top level department headings, for example: Engineering, Sales, and
Marketing.
2. For each top level heading, create subordinate departments. For example, Engineering
might have: Development, Support, and QA. Support, in turn, might further consist of:
Customer Support, Documentation, and Training. Make sure you add subordinate
departments as members to their respective group identities.
3. Once departmental structure is in place, create individual user identities and add them to
their respective departments. In Innovator, one user identity can belong to more than one
group.
Note
It is easier to change a group than individual Identity permissions.
Page 153
Configuring Solutions
All Employees
Members of All
Employees
Sales Engineering QA
Identities define and control user/group security, or permissions allowed for the particular
group.
Identities determine what actions may be performed on an Item, such as add, get, update,
delete and/or discovery privileges.
Identities determine activity assignments, such as an approval process in a workflow step.
Identities can promote Life Cycle State and be assigned for Workflow Activities.
Multi-tiered hierarchy access can be created using Group Identities. All members of an Identity
inherit the access privileges of the Identity. Members are assigned through the ‘Member’ tab in the
Identity ItemType. A User Alias Identity may belong to more than one group identity, in which case
the user's access or permissions would be cumulative.
Page 154
Unit 7 – Assigning Security
Name
Name of the Group (typically a role in the organization).
Description
Details about the group.
Member Name
Required to be checked for the User to be “active” in the system. If a User leaves an
organization it may be preferable to disable the logon versus remove the User record for
historical reasons.
From Date
For a member of an Alias Identity only – designed to allow access to another user’s Workflow
Assignments Voting rights for a limited period time period. This is a deprecated feature.
End Date
See above
Page 155
Configuring Solutions
Hierarchy Example
All Employees
Group Identities
Engineering
User Identity
(Alias)
Peter Smith Susan Harris John Young
Logon User
Name Engineering
3. Add 3 new Member relationships to the Engineering Identity and provide the following
values:
4. Add the Engineering Group Identity as a member of the existing All Employees Identity.
Page 156
Unit 7 – Assigning Security
The Identity
Membership
Report shows the
entire structure,
plus rolled-up
alias membership
The example shown is for the out-of-the-box solutions database, so it is pretty simple. Most
companies will have 4 or more levels of structure. This report is very useful as a quick reference
instead of traversing a deep hierarchy with a “Where Used” type search query.
Alias Membership
Displays all Identity Alias’ (Users) in one column and all the identities this user is associated with in a
column to the right.
Identity Structure
A reciprocal of the Alias Membership displays a hierarchy of identities from top Group Identity down
to the Alias. User Aliases in the Identity Structure are also shown in italics for easy recognition.
Page 157
Configuring Solutions
System Identities
There are a number of system Identities in Innovator which are reserved for specific purposes (and
cannot be deleted or changed).
World
Represents all identities in the system. Every user in the Aras system belongs to the World.
Administration
Allows a user to have administrative access to Aras. This includes access to the Administration
templates in the TOC as well as the ability to break an item lock.
Creator
This identity represents the user that created (first saved) an item. When an item is saved the
created_by_id system property on the item is updated to point to the user creating the item (this
value cannot be changed). To use this individual in a security policy, life cycle or workflow the
reserved identity Creator can be specified.
Owner
This identity represents the value of the owned_by_id system property on an item. Often it is useful
to allow a creator to be able to specify another individual (or group) that will be have some
interaction with this item later (life cycle promotion, security, workflow assignment). By placing the
owned_by_id property on a Form, a user or group can be chosen when the item is created or edited.
Page 158
Unit 7 – Assigning Security
Access to the value of this field is then accomplished using the Owner identity in a security
permission or workflow assignment.
As an example, the Owner identity is used by a Part item to allow assignment of an Assigned
Creator, or the identity responsible for the technical content and review of the item.
Manager
This identity represents the value of the managed_by_id system property on an item. You can use
the same technique as described for Owner to obtain the value of the managed_by_id property on a
Form using the reserved identity Manager.
Note
Super User is a special user identified as the “root” user of the system. The Super User is defined by
the system to ignore all Permission settings – granting it access to any Permissions it is assigned to.
You should not use the Special User when testing security.
Page 159
Configuring Solutions
Defining Permissions
Define which Identities may:
▫ Get (Retrieve) an Item
▫ Update an Item
▫ Delete an Item
▫ Discover an Item (Search)
▫ Show Permission Warnings on an Item
▫ Change Access on an Item
Each Item must have a Permission (most are shared)
A single Item can have a distinct permission (Private)
Defining Permissions
A Permission defines what access a user or group has to an Item. A Permission identifies one or
more identities and the rights and privileges assigned to each Identity, such as the ability to view,
edit, delete, etc.
Permissions are assigned to an ItemType to define the security for all Items of that type.
Permissions can also be assigned to LifeCycle states (discussed later in the course) to change the
security of an Item over its lifetime.
A system property named permission_id identifies the Permission for the current Item being viewed
or edited by a user. An Item can only have one Permission active at any one time, but many Items
can share the same Permission definition.
A special type of Permission known as "Private" allows you to define a Permission that is specific to
one Item only and is never shared. You will learn more about Private Permissions later in this unit.
Page 160
Unit 7 – Assigning Security
Creating a Permission
Identities Access
Creating a Permission
Permissions are defined with a name and are related to one or more Identities that have the
following access rights:
Get Access
Enables Identities to retrieve and view an Item
Update Access
Enables Identities to edit existing Items
Delete Access
Enables Identities to delete Items
Can Discover and Show Permissions Warnings are discussed later in this unit.
Note
Remember that Can Add and TOC Access are configured separately from a Permission. You set
these two access rights directly on the ItemType using the Can Add and TOC Access Relationship tab.
Page 161
Configuring Solutions
Page 162
Unit 7 – Assigning Security
ItemType
Default Permission
Identity
At least one Permission must be set as the Default permission for the ItemType.
Page 163
Configuring Solutions
Default Permission is
assigned to ItemType
To Assign a Permission
1. Open the Design Request ItemType for edit.
2. Locate the Permissions relation tab and add a new Permission relation.
3. You will be prompted to choose a defined Permission.
4. Search for and select the Design Request Permission and check the Default checkbox.
5. Save, Unlock and Close the ItemType
The list of all available Permissions must be defined in the corresponding ItemType.
One Permission is considered the Default permission for the Item when it is first created.
Page 164
Unit 7 – Assigning Security
Discovery Privileges
The primary function of a “Discover” privilege is to allow the user to search for items and view
limited information about them in the search grid, but not view the detailed information that would
be present on the Item form. This feature provides a certain level of access control over sensitive
information to determine if certain Identities are allowed to learn that an item exists in the
Innovator database.
For example, this feature may be used to restrict a development or supply chain partner to only
discover the items in your Innovator database they are responsible for. In this case, only items for
which the “Can Discover” access is set will be returned in searches even if items match the search
criteria.
Page 165
Configuring Solutions
Items will be returned in main grid and relationship grid when they match the search criteria
Users will be restricted to viewing only the information returned in the grid and will not
have the ability to open the form
A warning icon is displayed in the lock status column of main grid
A warning is displayed in the status bar indicating a permission restriction
If the “Show Permissions Warning” is set to true and there are missing items from a search query, a
message is displayed indicating insufficient privilege.
Page 166
Unit 7 – Assigning Security
Items with no “Can Discover” access are shown with words “Restricted” in each column of
relationship grid. User is unable to open item or see any information about it. Items are
displayed in this manner so all users see a complete number of items in grid to prevent
confusion and eliminate any chance restricted information is misunderstood as incomplete
information.
Items with “Can Discover” but no “Get” access have the Limited Permissions Icon in the first
column, similar to the main search grid.
No warnings are displayed in the status bar.
Note
In order to use the Discovery privilege, you must also set the "Enforce Discovery" option in the
target ItemType.
Page 167
Configuring Solutions
Changing Access
If the “Can change access” permission is set to true for an Identity, users of that Identity have the
ability to change the Permission of the Item.
The list of all available Permissions must be defined in the corresponding ItemType.
One Permission is considered the Default permission for the Item when it is first created.
To Change Access
1. Select Views > Permissions from the Tear Off Menu
2. list of available Permissions is displayed
3. Select a different Permission and Save the Item.
Page 168
Unit 7 – Assigning Security
In the example above, a Team has been created named Mobile Products. It includes two members
who are assigned the roles of Team Manager (Susan Harris) and Team Member (Peter Smith).
Another Team named Computing Products has been defined with different Identities for the same
Team Role names.
If a Permission is created that uses the Team Manager role – the Identity of that role will be
determined by which Team was selected for the Item. In this example, Susan Harris is defined as
Team Manager if the Mobile Products team is selected for an item. John Young is the Team
Manager if the Computing Products team is selected instead.
The system property team_id can be displayed on a Form to allow a user at runtime to select the
appropriate Team.
Page 169
Configuring Solutions
If you do not assign a Team Role to an Identity, it assumes the default role of "Team".
Page 170
Unit 7 – Assigning Security
3 4
Name
Name of the Team.
Description
Details about the Team.
Team Member Name
An Identity that has been defined and will become a member of the Team. This can be a
Group or Alias Identity.
Role
A Team Role. Choose Team Manager, Team Member or Team Guest. If you leave this field
blank the Identity assumes the role of Team.
Page 171
Configuring Solutions
In this example, the following Team named Mobile Products has been created:
Create another Team using the same procedure named Computing Products and define the
following members:
Page 172
Unit 7 – Assigning Security
Team Access
In this example, the Design Request Permission defined earlier in this unit has been modified to
include the Team Manager and Team Member roles with appropriate security rights based on their
level of responsibility.
Based on the two Teams created on the previous page, if the Mobile Products Team is applied to a
Design Request Item then Susan Harris (Team Manager) will be able to retrieve, update and delete
the Item. Peter Smith (Team Member) will be able to update but not delete the Item associated
with this Team.
If the Computing Products Team is applied to a request instead, then John Young will assume the
Team Manager role and Susan Harris will be a Team Member.
By creating Teams, you can supplement the already robust security system provided in Aras
Innovator.
Page 173
Configuring Solutions
2
1
The team_id property uses the Item data type property which points to a Team.
A user will then be allowed to search and select a Team to associate with the Item.
In this example, the Design Request Form is modified to allow for the selection of a Team.
Page 174
Unit 7 – Assigning Security
Private Permissions
A Private Permission (if allowed) lets a user to change the access rights for the current Permission
assigned to the Item.
The configured Permission is unique to this single Item and cannot be shared by any other Items in
the system.
For example, an Identity (such as an auditor) may need access rights on a particular Project instance
for a limited time. This Permission should be unique to this project and not shared by any other
Projects.
The Private Permission imposes a new set of access rights to this Item. It is independent of the
allowed (default and other) Permissions of an ItemType.
If Permission of the Item is changed later to a "standard" (non-private) Permission the Private
Permission is deleted.
Page 175
Configuring Solutions
Setting this option to true enables the user to set a Private Permission for an Item.
Note
The Identity must also have the Permission right “Can change access” set to true for their Identity.
Page 176
Unit 7 – Assigning Security
Page 177
Configuring Solutions
Password Policies
User Alias Identity defines:
▫ Password Age
▫ Password History Length
System Variables define:
▫ Minimum Characters
User_pwd_symbols_min_number
▫ Minimum Digits
User_pwd_digits_min_number
▫ Password attempts
AccountLockoutThreshold_triesNum
▫ Lockout duration
AccountLockOutDuration_minutes
Password Variables
Go to TOC Administration -> Variables to change any of the following Variables.
Identity Properties
Maximum Password Age indicates the password must be changed after this specified
number of days.
Password History Length specifies a number of old passwords that are saved and prevented
from being used again when resetting a password.
Page 178
Unit 7 – Assigning Security
Aras Innovator allows for a flexible set of configurations for authentication and site structure. By
combining the ability to distribute the different tiers of innovator with the different authentication
modes, administrators can create a deployment that leverages more than one authentication
method.
External authentication can be achieved via a number of different systems, but Active Directory is
the most common because Innovator runs on the Windows platform
Public Server - This server represents the main instance of Aras Innovator. This server runs the
Innovator Server, Database Server, and Vault Server tiers of Aras Innovator.
Internal Server – This server represents a second instance of Aras Innovator on the same network as
the Public Server, but does not stand alone. Users would authenticate against this server using
Active Directory, and would not be subject to the session timeout restrictions of the Aras Innovator
Security feature of the Public Server.
Distributed Client Server Tier - This tier represents an instance of Aras Innovator deployed on a
different LAN than the Public Server. This server only consists of the Innovator Server tier of Aras
Innovator.
Note
This is a subscriber only feature. For more details, refer to the Aras Innovator Windows
Authentication Setup document.
Page 179
Configuring Solutions
Summary
In this unit you learned about how to implement the Aras Innovator security model.
Page 180
Unit 7 – Assigning Security
Review Questions
What is automatically created when you create a new User? What is the purpose?
How would you prevent someone from being able to search and see an Item in the search grid?
What is the best way to see a Group Identity hierarchy that has been defined in the system?
How can you block someone from the system after 3 failed logons?
Page 181
Configuring Solutions
Lab Exercise
Goal:
Refine the security of the Change Request ItemType to only allow certain users to perform specific
operations on new or existing Change Request Items.
Scenario:
You will create a new User and Identity based on a set of security requirements. You will then refine
the permissions for the Change Request ItemType.
You will be extending the All Employees Identity so that when you are finished the organization
looks like the following:
All Employees
Engineering CRB
Note
You should have already built the Engineering and Alias Identities following along with the
Instructor. If not, you will need to do this before you start this exercise.
Steps:
1. Before beginning this exercise, delete any existing Change Request Items you created in
previous exercises. This will make it easier to see how making changes in security affects a
user’s ability to work in the system.
Page 182
Unit 7 – Assigning Security
4. Add the Ann Reddy Alias Identity as a member of the CRB Identity.
5. Add the CRB Group Identity as a member of the All Employees Identity.
6. Run the Identity Membership report. How many Group Identities does your new User belong
to? _________ Why? __________________________________________________________
Permissions
7. Create a Permission named Change Request. Configure the Permission as follows:
Identity Grants
8. Open the Change Request ItemType for edit and replace the Default Access permission you used
earlier with the Change Request permission created above. Make sure it is selected as the
Default permission.
9. Currently the Can Add security setting for the Change Request ItemType is assigned to the
identity World. Replace this with the following Identity. Make sure the “Can Add” checkbox is
selected for the Identity:
10. Attempt to create a new Change Request as the admin user. Can you create a new Item?
______
Why? ____________________________________________________________________
11. Log on to Aras Innovator as Peter Smith (psmith). Can you create a new Change Request?
___________
Why? ____________________________________________________________________
Page 183
Configuring Solutions
12. Log on to Aras Innovator as Ann Reddy (areddy). Are you able to view existing Change
Requests? __________ Are you able to edit a request? ___________
Why? _____________________________________________________________________
Teams
13. Log on as the Innovator Admin and create a new Team Item named Home Electronics that
includes the following members and role names:
14. Modify the Change Request Permission and add the following Team identities using the grants
as shown:
Identity Grants
Team Manager Get, Can Discover, Show Permissions Warning, Update, Delete,
Change Access
15. Modify the Change Request form and add the team_id property to the Form to allow a user to
select a Team.
_____________________________________________________________________________
16. Log on as Peter Smith (psmith) and create a new Change Request. Assign the Item to the Home
Electronics Team before saving the Item. What two users will now be able to delete the Change
Request? ______________________________________________________
Log on as one of those users to confirm your answer.
17. To make testing easier while in development, it will be easier to allow the Innovator Admin to
also be able to add new Change Requests to the system. What change must you make to allow
this happen?
______________________________________________________________________________
______________________________________________________________________________
18. Adjust the Change Request ItemType to allow the Innovator Admin to add new Change
Requests.
Page 184
Unit 8 Creating Item Relationships
Overview: In this unit you will learn how to build relationships between two ItemTypes.
You will also learn about typical relationship patterns and how they can be
used in different situations.
Page 185
Configuring Solutions
Relationship Item
Item
Relationship Item
Item Item
Relationship Item
Item
Copyright © 2014 Aras All Rights Reserved. aras.com
Items may have relationships to other Items through the use of RelationshipTypes.
When two Item instances are related in the database, a Relationship Item instance is also created
that can hold distinct property values for that specific relationship.
Relationship Items are created by users in the Relationships Grid on the tear off window. Each
RelationshipType is represented as a separate tab on the grid.
Page 186
Unit 8 – Creating Item Relationships
RelationshipType
Defines the relationship between two ItemTypes
▫ Source ItemType
▫ Related ItemType
Defines cardinality and versioning behavior
between related Items
Defines default setting in the relationship grid
RelationshipType
When you create a Relationship, the required source and related ItemTypes are captured in the
RelationshipType.
You can configure how many items can be related to the source item (one-to-one, one-to-many) and
how versions should be treated among related Items (discussed later in the course).
You can also configure some general default settings for the relationship search grid that appears in
a source Item (sort, auto-search, etc.).
Page 187
Configuring Solutions
Relationship ItemType
Is related to the RelationshipType with same name
Contains standard Item properties including:
▫ related_id
▫ source_id
▫ behavior
Can contain other properties relevant to the
relationship
▫ Quantity
▫ Model number
Copyright © 2014 Aras All Rights Reserved. aras.com
Because relationships are also Items they can store additional information about the relationship in
the database. For example, the Part BOM relationship in the standard PE Solution stores the
number of related Parts from a parent Part in a property named Quantity.
Page 188
Unit 8 – Creating Item Relationships
Design Request
Document
Design Document
Request Design Request
Document
In this example, we’ll create a relationship between the Design Request ItemType and the
Document ItemType. Note that the Document ItemType already exists in the standard solution
database.
Page 189
Configuring Solutions
Tabs On
Tabs Max
Tabs Min
Tabs On –the relationship tab will be shown in "normal" view mode which positions the
relationship tabs approximately at the center of the window.
Tabs Max – the relationships tabs fill the entire height of the window.
Tabs Min – the relationships tab is collapsed at the bottom of the window.
Tabs Off – relationship tabs are not shown for the window (hidden).
A user can also maximize or minimize the relationship tabs using the maximize or minimize icons
shown on the relationships tab:
Page 190
Unit 8 – Creating Item Relationships
Creating a RelationshipType
New
To Create a RelationshipType
1. Open the desired ItemType and locate the Relationships tab. In this example, we will
modify the Design Request ItemType.
2. Click the New button to define a new RelationshipType. A search dialog will appear to select
the Related ItemType. In this example, choose the Document ItemType.
3. Provide a Relationship Name (a typical naming convention is to use the source and related
ItemType names). In this example, the name is Design Request Document.
4. Provide a Label for the Relationship. This will become the tab label that is displayed in the
source Item.
Page 191
Configuring Solutions
“Use Src Access” is automatically selected indicating this Relationship ItemType will use the same
security permissions as the parent ItemType (in this example “Design Request”). If you uncheck this
option, you must provide the “Can Add” Identities as well as the default Permission for this
ItemType.
Dependent Option
The Dependent option is useful to prevent “orphan” Items in the database. If an Item cannot exist
on its own (must have a parent Item), select this option on the related ItemType. This will prevent a
user from creating an Item of this type unless it is part of a relationship. If the parent Item is
deleted, the dependent item is deleted as well (cascading delete).
Example: a Part Price Quotation cannot exist without a corresponding Part. The Price Quotation
ItemType is marked as Dependent which means that quotes can only be created on an existing Part.
Page 192
Unit 8 – Creating Item Relationships
1
6 7
2
3 14 8 13
4 9 11
5
10 12
Name
Name of the Relationship
Label
Label displayed on Item Relationships Tab
Auto Search
Search automatically for ItemTypes
Sort Order
Order of Relationships Tab on an Item
Default Page Size
Search grid page size
Source Item Type
Name of the Parent ItemType
Hide in All
If checked, hides the relationship
Related Item Type
Child ItemType name
Min Occurs
Minimum number of related Items required
Max Occurs
Maximum Number of connections allowed
Page 193
Configuring Solutions
Behavior
Revision behavior – discussed later in the course.
Grid View
Right - places the related item properties (the columns) on the right side of the grid; the
relationship properties are listed to the left of those columns
Left - places the related item properties on the left of the grid, after all the relationship
properties have been listed
Intermix - the columns are ordered only by the sort_order value of each property, so the
relationship properties and the related properties will be intermixed
On New Related Options
Allow user to pick existing ItemTypes or create new ones
Requires Related
Removes the “No Related” choice from the pick action drop down list box in the relationships
grid. A user must either pick an existing related Item or create a new one.
Open Related Form
If checked, the related Item view is displayed, allowing a user to enter data in a Form rather
than using the relationship grid columns.
Paste Defaults
Create Related – if the source Item is copied, then the related Item(s) is also copied.
Copy Permissions- if Create Related is true, when the related Items are copied if they have a
Private Permission it is also copied to the new related Item(s).
Note
The recommended way to create new RelationshipType is by adding a new relationship to a source
ItemType. If you manually add a new RelationshipType you will also have to manually create the
corresponding Relationship ItemType.
Page 194
Unit 8 – Creating Item Relationships
RelationshipType No
Related
ItemType Relationship ItemType ItemType
Relationship Item
In the example above, a NULL relationship is used to define the ability for a User to add multiple
remarks to an Item. A “remarks” String property can be assigned to the Relationship Item. Each
time a User defines a new remark – an additional Relationship Item will be created. No additional
related item is necessary.
Page 195
Configuring Solutions
1 2
3 4
Pick Related
Select No Related from the dropdown box .
New
Create a new NULL relationship.
Relationship Name
Specify the name of the relationship and a Tab Label.
Tab Label
Tab label that will appear to the user for this relationship in the relationship grid.
Testing Relationships
Each Tab represents a
RelationshipType for this Item
Add a new relationship and enter text in the field provided. When you save the Item a new NULL
relationship is established for that Item.
Page 197
Configuring Solutions
RelationshipType Patterns
The diagrams below show typical relationship patterns
Diagram A shows the most common type of relationship, where the source/parent
item (Part) has a relationship (Part Document) to a separate related/child item
(Document)
Diagram B show a circular relationship, where the source/parent item (Part) has a
relationship (Part BOM) to a related/child item of the same type
Diagram C shows a "null" relationship, where there is no related item. This
pattern is useful when there is a need to track items (Values, Comments, etc.) that
pertain only to the source item and would not be reused
A B C
Part Part List
Document NULL
RelationshipType Patterns
Innovator has three typical RelationshipType patterns, but there are others like relationships
relating to other relationships.
A Direct RelationshipType is the most commonly used pattern and is best described as having a
Source ItemType and a Related ItemType. See Diagram A above.
A Circular RelationshipType simply references itself, such as a standard Innovator Part ItemType.
Viewing the Part BOM RelationshipType reveals the Source and Related ItemTypes are both a Part
ItemType. In a Bill of Material (BOM) hierarchy Parts are connected to other Parts through the Part
BOM RelationshipType.
Null relationships normally have visible properties since they have no related ItemType. The Part
ItemType contains a good example of a Null RelationshipType named Part Goal. The Part Goal
RelationshipType does not have a Related Item since it only displays properties in the relationship
grid.
Note
Relationships may also be linked to other Relationships. An example is the (Part) BOM Substitute in
the standard PE Solution. The Part BOM Relationship contains a link to the BOM Substitute
Relationship which contains a pointer to a Related Item Part used as a substitute in form, fit, and
function for that BOM entry. To see this Relationship example, view a Part BOM entry on a Part and
then select the Substitutes tab.
Page 198
Unit 8 – Creating Item Relationships
Relationships can provide more flexibility and more configuration options, e.g. one-to-many or
many-to-many relationships to other Items using the Relationship Grid.
If a Foreign Property can be used to display related data, it is more efficient than using a
relationship (fewer database tables required).
Relationships give greater flexibility, allowing access to more than just one property value.
Relationships provide one-to-many connections, Item properties only provide one-to-one.
Using multiple Item properties on a single parent Item (e.g. Manufacturing Plant 1,
Manufacturing Plant 2, and Manufacturing Plant 3) makes the data model less flexible.
Generally, use an Item property when only one Item is referenced and a relationship for
referencing more than one item.
Page 199
Configuring Solutions
Searching Relationships
Advanced Search Relationship Criteria
Design Request
Document
Design Document
Request Doc00001
Searching Relationships
As you learned earlier in the course, the Advanced Search option allows you to locate items with
expanded criteria preferences. Advanced Search also allows you to search on relationships items
that have been created from a parent item.
In the example above, the Design Request Document relationship has been selected. Using the
system property related_id, you can find all items that are related to the parent Design Request item
type. In this case, all Design Requests related to a Document item named Doc00001.
Page 200
Unit 8 – Creating Item Relationships
Summary
In this unit you learned how relate one ItemType to another ItemType using a Relationship. You also
learned how to use NULL relationships to solve certain problems.
Page 201
Configuring Solutions
Review Questions
What is the difference between a RelationshipType and a Relationship ItemType?
Page 202
Unit 8 – Creating Item Relationships
Lab Exercise
Goal:
Be able to create a relationship between two or more Items and assign appropriate configuration.
Be able to define and use a Null Relationship.
Scenario:
The original requirements for the Change Request system stated:
In this exercise, you will establish relationships from the Change Request to a Customer Item as well
as Product Items. You will also add the ability to create review notes to a request using a Null
relationship.
Steps:
1. Create a new Customer and a new Product before establishing relationships to them from the
Change Request. (These two existing ItemTypes are part of the existing solution database.)
Note
You need to be a member of the Change Specialist I Identity to create a new Product. You
will first need to add the Innovator Admin to the Change Specialist I Identity to create a new
Product (remember to log out/in after making the change).
2. Open the Change Request ItemType for edit and make sure the Default Structure View is set to
Tabs On:
3. Locate the RelationshipTypes tab. Create two new RelationshipTypes using the following
settings:
Page 203
Configuring Solutions
Label Customer
Label Product
4. Save, Unlock and Close the Change Request ItemType. What two definition types have been
automatically created for each relationship based on the settings you provided above?
________________________________________________________
________________________________________________________
________________________________________________________
________________________________________________________
Locate and view these type definitions.
5. A Change Request requires a relationship to a Customer. Open the Change Request Customer
RelationshipType and modify it so that Min Occurs is set to the number 1.
6. Next create a new Change Request Item. You should see the following tabs in the Relationships
grid.
Page 204
Unit 8 – Creating Item Relationships
Are you able to save the Change Request without a Customer? ________
Why? ______________________________________________________________________
8. Create some additional Change Requests with Customer and Product relationships to test your
work.
9. Next, we want to add the ability to capture Review Notes in the Change Request. You will
accomplish this using a Null relationship.
11. Add a new “No Related” RelationshipType from the Relationships Grid. Use the following
settings:
12. Save, Unlock and Close the Change Request ItemType. What two definition types are
automatically created?
________________________________________________________________________
13. Locate the Relationship ItemType that was automatically generated by defining the new
RelationshipType and add the following property:
14. Create a new Change Request Item and note the new tab presented in the user interface. Use
the Review Notes tab to create a new Review Note.
Page 205
Configuring Solutions
Optional: Modify the Relationship ItemType so that the modified_on date also appears next to the
note in the in the null relationship above. How do you control what properties are displayed in an
Item relationship grid?
__________________________________________________________________________
Page 206
Unit 9 Defining Life Cycles and
Versioning
Overview: In this unit you will learn how to define life cycles for an ItemType and how to
control how a user promotes an Item through a life cycle. You will also learn
how to control Item versions and how to configure different behaviors when
related Items are versioned.
Objectives: Identifying Life Cycle States
Defining Life Cycle Transitions
Creating a Life Cycle for an ItemType
Promoting an Item through a Life Cycle
Configuring and Viewing Item Versions
Defining Versioning Behavior
Performing Effectivity Searches
Using the Structure Browser
Page 207
Configuring Solutions
You configure a Life Cycle for an ItemType by creating a Life Cycle Map.
Page 208
Unit 9 – Defining Life Cycles and Versioning
State
Role
Start
Every Life Cycle has a Starting state.
Transition
Defines the connection between each State - or the promotion path.
Role
Defines who (Identity) is capable of making this Transition.
Page 209
Configuring Solutions
New
Submitted
In Technical Review
Approved
Rejected
Incomplete
Cancelled
To connect a State with a Transition, click the right mouse button over a state and select
“Add Transition”. Position the mouse pointer on a “to” state and click to add a transition
from the first to the second state. Provide the Role name. In this example, we will use the
Support Identity or all Transitions.
Page 210
Unit 9 – Defining Life Cycles and Versioning
3. You can add a breakpoint in the Transitions between the In Review and Incomplete States to
make the diagram mode readable.
4. To add a break, click the right mouse button over a transition and select Add Break. Drag
the transition line as required.
5. When you have completed the diagram, Save the Life Cycle Map.
6. In order to use the Life Cycle you must associate it with an ItemType. In this example, open
the Design Request Item Type and add a new Life Cycle relationship. Note that a Life Cycle
can use the classification subclasses if the ItemType has been configured with a Class
Structure (as discussed earlier in the course).
7. Select the Design Request Life Cycle and save the ItemType.
Page 211
Configuring Solutions
2 8
Name
Name of the State as it appears in the Life Cycle Map. If you supply a label this is displayed to
the user instead of the name and can be localized for foreign languages.
Image
Custom image for this state.
Released
Signifies Item is released and should be revised to next major version if versioning is
supported for the Item. Life Cycle is also reset to first state. (This is discussed later in this
unit.)
Not Lockable
Item is not editable while in this State.
State Permissions
Overrides any default ItemType Permissions while in this State. State permissions must also
appear as allowed permissions on the ItemType definition to work correctly.
Workflow
Starts a Workflow – discussed in a later unit in this course.
Page 212
Unit 9 – Defining Life Cycles and Versioning
History Template
Allows the History Template defined on the ItemType to be overridden by this defined
template. Note - for the override to work correctly the original ItemType must have a History
Template defined.
Configure E-Mail
Allows email messages to be sent when this state become current on an Item. This is
discussed later in the course.
Page 213
Configuring Solutions
3
1
Role
Identity that is allowed to interact with this Transition (promote).
Server Methods
Custom server methods created to provide custom behavior before and after this transition.
Get Comment
Presents a dialog box to the end user when a promotion occurs to capture user remarks.
Configure E-Mail
Configures message(s) to send when this transition is reached.
Note
Team Roles are also supported as a valid Transition Role.
Page 214
Unit 9 – Defining Life Cycles and Versioning
Promote
View LifeCycle
In this example, create a new Design Request Item and then View the Design Request Life Cycle.
You can Promote the Life Cycle to the next State by choosing it from the drop down list and clicking
the Promote button.
Page 215
Configuring Solutions
Choose
Available
State
Promote is also available on the context sensitive menu when you right click an unlocked item.
Page 216
Unit 9 – Defining Life Cycles and Versioning
Item Versioning
If an ItemType is Versionable:
▫ Items keep a history of changes by storing a new
generation of the item each time a change is made
▫ A new generation is created when an Item is edited –
(locked, saved and unlocked)
▫ Subsequent saves while the item is still locked modify
the same generation
▫ The Revision (major_rev) is incremented when an
item in a released state is locked and saved
Manual Versioning allows the user to decide
when an item should be versioned
Versioning Terminology
major_rev is the Version Property containing major increments, controlled by business rules causing
the Version to increment when changes are made to an Item in its Released state.
minor_rev is the Revision Property containing the secondary increments controlled by business rule
behavior as defined at the application level and customization.
generation is an Integer Property acting as the sequence counter of changes. Generations are
automatically incremented by Innovator core processes and rules. Whenever an Item is locked,
saved and then unlocked a new instance is created for traceability.
id is a Property that is an internally unique Item instance identifier. (Not seen by end-User)
Lifecycle is a customer defined sequence of States and Transitions used as a primary driver of
business rules. All Items are defined to be in one State within one specified Lifecycle. State names
are not significant to the system, but flags on each State definition determine Items behavior.
Lifecycle Start State is a State within the Lifecycle that has specifically been designated as the
starting point for the Lifecycle. When a new Item instance is created, it is automatically set to the
Start State. When Versioning, the Item will be set back to its Lifecycle Start State and its Generation
is incremented.
Lifecycle Release State is a State within the Lifecycle that has specifically been flagged as a Released
State. There may be more than one Released State in a Lifecycle, but when an Item that is in the
Page 217
Configuring Solutions
Released State is Versioned, its major_rev is incremented, it is set to the Lifecycle Start State, and its
Generation is incremented.
Promote is an Action performed by a User to change the State of an Item. It assigns another State
from the same Lifecycle that is connected by the Transition.
Lock, save, and unlock is a set of actions used to initiate and save changes to Items resulting in
Versioning when Automatic Versioning is activated on ItemType. Lock, save, and unlock affect the
Generation and Major_Rev of an Item explicitly. Minor_Rev behavior is controlled by business rules
definable at the application level via customization.
Page 218
Unit 9 – Defining Life Cycles and Versioning
If the Manual discipline is selected, a user decides when the next generation of the Item is created.
The generation will not be created automatically.
Page 219
Configuring Solutions
Note
When dealing with Revisions some companies like to start with numbers in a pre-release and move
to letters later when a Part is finally released. The system is not configured to change a Revision
sequence automatically once it is defined for an ItemType, however this behavior can be added with
custom programming.
Best Practice
Create your own Revision Item rather than modifying the existing Default Revision. The Default
Revision is used internally as you develop a solution and could cause problems if modified.
Page 220
Unit 9 – Defining Life Cycles and Versioning
Viewing Versions
Viewing Versions
Each time an Item is Un-Locked and Saved a new Generation is created. Every Generation creates a
new row in the ItemType table with a unique Id and the generation Property is incremented by one.
An Item also maintains a hidden property – config_id. The config_id property contains a 32
hexadecimal value that remains constant throughout the entire span of an Items existence.
Regardless of how many Generations of an Item are created the config_id remains the same. This is
how the system maintains traceability of an Item.
To View a Version
1. Select an Item from the search grid and click the right mouse button.
2. Select Revisions from the menu – the Item Versions dialog will appear.
3. Choose the Version to review from the dialog.
To Delete a Revision
1. Select an Item from the search grid and click the right mouse button.
2. Select Purge from the menu.
3. The current version of the Item will be deleted from the database.
Note
If you delete an Item, all revisions of the Item are deleted. Purge and delete are the same for non-
versionable Items.
Page 221
Configuring Solutions
In the simple example above, the Item first appears as Revision A – Generation 1 Resolved.
The Item is then edited again and promoted to the Released state of Closed.
The next time the Item is edited (locked, saved, unlocked) the Revision is incremented to B.
Page 222
Unit 9 – Defining Life Cycles and Versioning
Item Behavior is a property of the life cycle state that sets behavior on the connection between
source item (parent), and related item (child). This property is only applicable if source item and
related item are versionable. Also, keep in mind that a default Item Behavior property is defined on
the RelationshipType as well (see RelationshipType Item Behavior). These two property settings -
the Item Behavior of a RelationshipType and of the Item Behavior on the Life Cycle State - work
together to control configuration of source and related items.
The settings Hard Fixed and Hard Float mean different things for RelationshipType behavior and Life
Cycle State behavior.
RelationshipType
Hard Float or Hard Fixed behavior cannot be modified by the LifeCycle state settings. This
allows different relationships on an ItemType to support different behaviors by overriding
the standard LifeCycle behavior.
Page 223
Configuring Solutions
Date Filter Searches are used to help filter the main search grid with a state and date specification.
Four Effectivity Types exist; Current, Latest, Released, and Effectivity.
The default search type is Current, meaning you see the most current generation of the Items.
Latest searches may return unexpected (but correct) results. For example, consider a Document
that was originally (gen 1) named "Spec", but was later (gen 5) changed to "Functional
Specification". A Latest search for "sp*" would (and should) return gen 1 of the Document, allowing
the original author able to find it by name.
Latest can also find the latest generation based on a specific date, and return the last generation
created before the date entered.
Effective Date may be exposed and set manually if desired. Otherwise, Effective Date will be set to
Release Date.
If “As Of” date is used, either Today as the default, or a Date is selected the time is inclusive up to
midnight of that day. For example, "Released as of Today" really means "Released any time before
midnight tonight".
Page 224
Unit 9 – Defining Life Cycles and Versioning
Page 225
Configuring Solutions
Page 226
Unit 9 – Defining Life Cycles and Versioning
The behavior becomes more complicated when the versioned Item is related to other versioned
Items in the database. Should the other versioned Items still be related to the next Generation?
What if a related Item is edited – should it remain related to its “Parent” Item?
Four behavior rules exist for related Item versioning and can be set on a RelationshipType or a Life
Cycle State.
These behaviors are also available for Items that are related using an Item Data Type property.
Item Behavior is a property of the life cycle state that sets behavior on the connection between
source item, or parent, and related item, or child. This property is only applicable if source item and
related item are versionable. Also, keep in mind that an Item Behavior property is defined on the
RelationshipType as well (see RelationshipType Item Behavior). These two property settings - the
Item Behavior of a RelationshipType and of the Item Behavior on the Life Cycle State - work together
to control configuration of source and related items.
Page 227
Configuring Solutions
Configuration Behavior -
RelationshipType
Note
This rule sets the behavior property on the instance of a Relationship ItemType when it is created.
Page 228
Unit 9 – Defining Life Cycles and Versioning
Note
If Item Behavior is set for a Life Cycle State it takes precedence over the RelationshipType behavior
that may be defined for the Relationship Item.
Page 229
Configuring Solutions
Float Behavior
Related Item Versioned
Revision A Related
Generation 1 Item is
Revision A Versioned
Generation 1
Revision A
Generation 2
Float Behavior
If a Life Cycle behavior is set as Float, when a related Item is revised to a new generation, the source
Item points to the newest version of that Item.
1. In this example, a Design Request is created and a relationship is established to a Document Rev
A – 1.
2. The Document is then edited and a new revision is created (A -2). The Design Request
Document relationship will “float” to the highest revision.
Page 230
Unit 9 – Defining Life Cycles and Versioning
Fixed Behavior
Related Item Versioned
Revision A Related
Generation 1 Item is
Revision A Versioned
Generation 1
Revision A
Generation 2
Fixed Behavior
If a Life Cycle behavior is set as Fixed, when a related Item is revised to a new generation, the source
Item points to the existing version of that Item.
1. In this example, a Design Request is created and a relationship is established to a Document Rev
A – 1.
2. The Document is then edited and a new revision is created (A -2). The Design Request
Document relationship will remain “fixed” to the existing revision.
Page 231
Configuring Solutions
Float Behavior
Source and Related Item Versioned
1
Revision A Revision A Revision A
Generation 1 Generation 1 Generation 1
Revision A
Generation 1
2 3
Revision A Revision A Revision A
Generation 2 Generation 2 Generation 2
1. In this example, a Design Request is created and a relationship is established to a Document Rev
A – 1. The Life Cycle behavior is set to Float.
2. The Design Request is then revised (A -2). Since there are no other Documents the relationship
to Document A -1 continues.
3. A user then creates a new revision of the Document (A -2). The Design Request (A -2) now
“floats” to the newer Document (A-2).
Note however, that the original Design Request (A-1) remains related to Document A -1. The
relationship behavior of Design Request A1 to Document A1 is set to "Hard Fixed" to maintain this
configuration for this version. This behavior is in accordance with the CMII standard.
Page 232
Unit 9 – Defining Life Cycles and Versioning
Fixed Behavior
Source and Related Item Versioned
1
Revision A Revision A Revision A
Generation 1 Generation 1 Generation 1
Revision A
Generation 1
2 3
Revision A Revision A Revision A
Generation 2 Generation 2 Generation 2
Page 233
Configuring Solutions
Item Behavior is a property of the lifecycle state that sets behavior on the connection between a
versionable source item (parent), and related item (child). Default behavior for a relationship is
configured on the RelationshipType template and can be overridden using behaviors configured on
each lifecycle state.
The settings Hard Fixed and Hard Float have different meanings depending on where they are
configured.
RelationshipType
When Hard Float or Hard Fixed behavior is defined on a RelationshipType this indicates that
behavior cannot be overridden by the LifeCycle state settings. This allows different relationships
from a parent ItemType to support different behaviors by overriding the parent LifeCycle behavior
(since there can only be one active lifecycle configured on a parent Item) .
Page 234
Unit 9 – Defining Life Cycles and Versioning
Summary
In this unit you learned how to define a Life Cycle for an Item as well as version Items in the
database. You also learned about related item behaviors when connected Items are revised.
Page 235
Configuring Solutions
Review Questions
Where can I configure Item behavior as it relates to versioning and related Items? What takes
precedence?
Page 236
Unit 9 – Defining Life Cycles and Versioning
Lab Exercise
Goal:
Be able to define a lifecycle for an ItemType and promote an Item through the lifecycle. Be able to
define relationship behaviors based on the requirements of the situation.
Scenario:
In this exercise, you will provide a life cycle for the Change Request ItemType and also support
versioning. You will also review the relationship behavior between the Change Request Item and
related Products to support a fixed or float versioning scheme.
The following lifecycle has been determined for the Change Request:
3. Note that each transition requires an Identity to allow promotion. Who will be able to promote
the Change Request to Approved or Rejected?
________________________________________________________
4. Open the Change Request ItemType for edit. Add the new LifeCycle Map you have created
above to the ItemType.
Page 237
Configuring Solutions
5. Log on as a member of the Engineering identity and create a new Change Request. Promote the
Change Request, testing the life cycle transitions you have created. Are you able to promote
from the In Review state? ______ Why? __________________________________________
Are you able to edit the Change Request when it is promoted to the Cancelled state? Why?
________________________________________________________________________
Defining Versioning
1. Open the Product ItemType and set the Versionable checkbox to True (use Automatic
versioning). Also, locate the major_rev and generation property in the Properties tab and
uncheck Hidden and Hidden2. This will allow you to see these properties easily in the search
grid and relationship grids.
2. Create a new Product Item and make sure that new generations are created each time the Item
is saved and unlocked. Why does the major revision also increment each time you save a
Product Item?
_________________________________________________________________________
3. Open a previous version of a Product by selecting Edit > Revisions (or click the right mouse
button and select Revisions from the menu). What happens if you change and save this item?
_________________________________________________________________________
1. Create a new Change Request Item and add a versioned Product Item to the relationship grid.
Note the generation number of the Product in the relationship grid and Save, Unlock and Close
the Change Request.
2. From the TOC, open the same selected Product for edit and then Save, Unlock and Close the
Item to create a new generation.
3. Now return to the Change Request Item you created previously and open it for view. What
generation appears from the selected Product? ________
Why? ____________________________________________________________________
4. Promote the Change Request to the Cancelled state. Now create a new generation of the
attached Product outside of the Change Request. What Product generation appears when you
view the Change Request? _________ Why?
__________________________________________________________________________
Page 238
Unit 10 Examining a Workflow
Overview: In this unit you will learn how to execute a workflow by reviewing a Workflow
Map, processing assignments and tasks in an InBasket and reviewing workflow
history.
Page 239
Configuring Solutions
Describing a Workflow
A set of activities, resources and data that model a
business process
Defined by a Workflow Map
Contain:
▫ Activities
▫ Paths
▫ Assignments
▫ Tasks
Describing a Workflow
A workflow is a defined sequence of activities representing a business process, such as an ECN
approval process. Workflows often have embedded procedural rules and incorporate branching and
parallel activities. In Innovator, a Workflow Map graphically represents the template for a business
process. An instance of a Workflow Map is called a Workflow Process. Workflow Processes track
actual participants, instances of items in the process, as well as any decisions made. Workflow is
invaluable to ensure all steps of a business process are completed, in the correct order, and in a
repeatable fashion with many different Items
As seen in the above image, a workflow map consists of Activities and Paths. Each Activity
represents a unit of work that must be performed. Activities contain a task list, the assignments to
identities responsible for these tasks, any accompanying notifications, and variables such as hours
spent on the activity. An Activity also has configurable settings which determine its behavior in the
workflow. These behaviors include whether any user interaction is necessary; whether it may be
refused or delegated; whether all votes must be received before following a path; and whether all
input paths must be completed before initiation. The Path links between Activities also have
configurable settings which determine behavior, including whether the path is the “default” exit
path for an activity or whether the path “overrides” all other votes.
When an Activity becomes active, assignees are notified by the Activity via an Assignment. An
Assignment appears in the assignees InBasket. Assignees can then open the Voting Dialog (also
known as an Activity Completion Worksheet), which guides them through a list of tasks to complete
as well as any other work to performed before an Activity can be completed. Assignees also vote on
Page 240
Unit 10 – Examining a Workflow
which exit path should be taken for this Activity. If there are multiple Assignees, each will submit a
vote and a cumulative voting weight will determine an exit path to the next activity.
Modeling a Workflow Map is repeatable and extremely important to extract metrics leading to
process improvements.
Some systems attempt to approximate workflow using a lifecycle in simple cases. This can become
difficult with more complex processing including parallel branches and loops.
Page 241
Configuring Solutions
Purpose Standardize a process and assign tasks to Define mutually exclusive states on an Item
users or groups
Nodes Called Activity State
Instantiation Individual Workflow Process Instances One instance shared by many items
created per Item
Assignments One or more Assignees (user or group) for Fixed in same instance
Activity
Universality Workflow is optional All Items have Life Cycle
Uniformity Items of the same type can have different Items of the same type have Life Cycle
workflows assigned by Classification
Parallel Paths Yes, parallel paths possible No, only one state
Link Method Yes, Pre & Post Yes, Pre & Post
Life Cycle - a set of mutually exclusive states an Item may be in, often representing a stage of a
process. For example, all parts or manufactured items have a lifecycle. The specific states may be
called: design, review, released, in-change, superseded, and so forth. It is clear how a part that is in
the design state, cannot also be in the superseded state. Usually there is a specific flow through
these states, which may branch out or contain feed back in loops.
A Workflow is not the same as a Life Cycle -- workflows track Work that people actually perform
while life cycles track an Item state.
Page 242
Unit 10 – Examining a Workflow
Graphical
Workflow
Designer
Workflow
Properties
Component
Tabs
In the image above you see a Workflow Map form divided into 3 parts. The top part is the Graphical
Workflow Designer (GWD) – also referred to as the Workflow Canvas. This canvas contains the
diagram representing Activity Templates and the Paths connecting them.
The middle part contains header properties of the selected item in the diagram. In this case, nothing
is selected in the diagram, so you see header properties of the Workflow Map itself. If an Activity
Template is selected, Activity Template Properties appear here. If a Workflow Path is selected, its
properties appear.
The bottom part contains tabs pertaining to the selected component in the Graphic Workflow
Designer (GWD). If an Activity Template is selected, seven relationship tabs appear: Assignments,
Paths, Notifications, Tasks, Variables, Server Events, and Promotions. If a Workflow Path is selected
only two relationship tabs appear: Pre Methods and Post Methods.
Page 243
Configuring Solutions
PR-100001 PR-100012
Workflow information is gathered in the Workflow Process, such as Assignees, and Signoff History of
the Controlled Item. The currently active Activity of the Controlled Item appears highlighted in
yellow. Typically, an ItemType has many Workflow Processes instances running simultaneously, each
at a different point in the workflow process.
Controlled Item
An instance of an ItemType is called a Controlled Item when referred to from a Workflow or
Lifecycle. The ItemType is where you set the Workflow and Lifecycle which contain the controlling
logic for context to the Item instance.
Because a new Workflow Process is started for each Item, it is recommended that versionable
ItemTypes not be used with a Workflow.
Page 244
Unit 10 – Examining a Workflow
1 2 3 4 5 6 7 8 9 10 11
The Workflow InBasket is a preconfigured search grid that contains the following columns to filter
the assignment queue:
Claimed By
A user can "claim" or lock and assignment so that other users will not be able to vote on this
assignment. You will learn how to claim an assignment later in this unit. Choices are Claimed
by Me, Others or Anyone.
Type
Workflow assignments can be generated by Aras applications as well as your own. For
example, the Aras Project Management application can send users "Project Tasks". For this
class we will always use the "Workflow Task" type.
Source Item
Displays the Workflow Status dialog shown later in this unit.
Activity
The current workflow activity name
Page 245
Configuring Solutions
Start Date
Date the activity began.
Due Date
Expected date activity should be completed.
Status
An activity can be Pending or Active. This allows you to "look ahead" at activities that may
require your attention later in the process.
Assigned To
Identity the assignment is assigned to.
Instructions
A brief description of the activity.
Work Item
Controlled item that invoked the workflow.
My Assignment
If true (=1) then show only assignments sent to me (current logged in user). If false (=0) show
all assignments.
To View an Assignment
Assignments are viewed and processed from the My Innovator > My InBasket.
In this example, we will create a PR (Problem Report) which is part of a pre-packaged solution that
incorporates a Workflow.
In order to test with the PR ItemType, you will need to make the following security change (you
should have done this already in an earlier lab assignment):
1. Now create a PR (Problem Report) from the TOC Pane – the details of the report are not
important right now. Save, Unlock and Close the Report.
2. Access My Innovator > My InBasket from the TOC Pane.
3. You should see an assignment similar to the one shown above.
Filtering Assignments
The InBasket displays an Assignees Workflow Activities, Project Activities and FMEA Action Items
having been assigned to Identities. The user can filter active or pending assignments for each of the
activity types. The InBasket also provides links to Workflow Process and Controlled Items.
Notes
The Workflow InBasket supports simple, advanced and AML search modes.
Page 246
Unit 10 – Examining a Workflow
Workflow Status
Current
Activity
Page 247
Configuring Solutions
Due to looping of a Workflow, the same activity may appear more than once. Comments typically
show the reason for a loop, such as a rejection.
Page 248
Unit 10 – Examining a Workflow
Completing Tasks
Tasks
Completing Tasks
A workflow assignment can contain Tasks that should/must be completed before the assignment
can be processed. A sequential list of Tasks will appear allowing a user to check the Complete
checkbox as each Task is finished. One or more Tasks may be required which means you must check
the Complete checkbox before you are allowed to process the assignment.
To Complete a Task
Select Complete Task from the context menu (mouse right click) or double click on the assignment:
Page 249
Configuring Solutions
Submitting a Vote
Submitting a Vote
The Voting Dialog is dynamically built based on the Workflow Process definition. Executed from an
InBasket, the Voting Dialog (Activity Completion Worksheet) provides a location to collect
Authentication such as passwords and e-signatures and a location to vote an Exit Path.
The result of this vote is then used by the Workflow Process to determine the next set of actions to
perform.
Action Buttons
Complete - error checks the activity (to make sure that all required tasks have been checked,
variables entered, etc.), marks the activity as complete, and continues the workflow.
Save Changes - saves all information entered on form, but does not process the activity. This is a
useful option for activities having a long list of tasks, and an assignee wishes to keep track of what
has been completed. Also, if the activity is assigned to a group, then different members of the group
may work on different tasks. Once a task is completed, marked as complete, and saved, all members
of that group will see this information on their Worksheets, thereby reducing duplication of effort.
Cancel - closes the form without saving any of changes made to it since it was opened or last saved
Page 250
Unit 10 – Examining a Workflow
Refusing an Assignment
If allowed, assignee can choose to Refuse vote
Assignment is then escalated to:
1) Assignment “Escalate To” Identity, if blank then…
2) Activity Template “Escalate To” Identity, if blank then…
3) Workflow Process Owner, if blank then…
4) Creator
Refusing an Assignment
A Workflow developer can allow a vote to be refused.
The Refuse option re-assigns an Activity according to an escalation order. A refused assignment is
first escalated to a specified escalation Identity (if it exists), then to the Activity escalation Identity,
then to the Workflow Process Identity Owner and finally the Workflow Process Creator.
To Refuse an Assignment
Select the Refuse option in the voting drop down list.
Page 251
Configuring Solutions
Delegating an Assignment
If allowed, assignee can delegate assignment
to another identity
Delegating an Assignment
A Workflow developer can allow a vote to be delegated to another Identity. This allows a user to
pass the assignment to someone else if the they feel they cannot complete this assignment.
To Delegate an Assignment
Press the Lookup Button next to the Delegate Field and choose a new Identity. Press the Complete
action button.
Page 252
Unit 10 – Examining a Workflow
Claiming an Assignment
Claiming an Assignment
Activities may be assigned to a Group Identity and sent to all members of an Identity group. Many
members receive a notification that work is to be done, but not assigned specifically to one User.
Claiming allows you to tell others in a group that you will be doing the work. It is a very simple
mechanism to send a notification to a whole Group without the complexity of individual assignment,
but places the responsibility on Individuals to move things forward.
Claiming simply places a lock on an Activity preventing others from modifying it, since an Activity
cannot complete while it is locked. If another User tries to alter the Workflow Activity Completion
Worksheet while another User has it locked, a warning dialog box appears stating “This assignment
has been claimed by another user.”
Page 253
Configuring Solutions
Summary
In this unit you learned how to view and process an existing Workflow. You learned how to find and
vote on assignments in the My InBasket as well as complete tasks.
Describe a Workflow
Explore the differences between workflows and life cycle
Review a Workflow Map
Review a Workflow Process
Process Assignments in an InBasket
Submit an Activity Vote
Review Workflow History
Claim an Assignment
Page 254
Unit 10 – Examining a Workflow
Review Questions
Page 255
Configuring Solutions
Lab Exercise
Goal:
Be able to complete tasks and vote on assignments.
Scenario:
In this optional exercise you will continue to experiment with the Problem Report ItemType by
creating new PR Items and processing assignments with different votes.
Steps:
Create several new PR Items and process the resulting assignments based on what you
learned in this unit.
Note the different paths the workflow takes based on voting results.
Try to Refuse and Delegate an assignment to see how the workflow reacts to these events
Page 256
Unit 11 Creating a Workflow Map
Overview: In this unit you will learn how to create a new Workflow Map that incorporates
Activities and Paths. You will assign the Workflow to an ItemType and test the
new process.
Page 257
Configuring Solutions
Name
Defines the name of the Workflow Map
Description
Allows you to provide details about this map.
Process Owner
An recommended Identity that can be provided to define ownership of the resulting workflow
process. Process Owner is important in escalation strategies and has the authorization to cancel a
running workflow.
Page 258
Unit 11 – Creating a Workflow Map
Page 259
Configuring Solutions
Default Workflow
Note
Workflows are intended to work with non-versionable Items. Remember that each controlled Item
is associated with a Workflow Process Item. Supporting multiple versions of Items with attached
Workflow Processes can cause unexpected results.
Page 260
Unit 11 – Creating a Workflow Map
In this example, the following activities have been created for the Design Request Workflow:
Verify Request
Review Request
Perform Tech Review
Approve Request
Page 261
Configuring Solutions
To Add a Break
A break allows you to “bend” an Activity Path to provide a more readable display.
In this example for the Design Request Workflow, t new activities have been added:
Page 262
Unit 11 – Creating a Workflow Map
Go
Verified
Submit to Tech Review
Approve
Reject
Cancel
Incomplete info
Resubmit to review
Page 263
Configuring Solutions
3
4 6
5 7
8 10
9 11
Name
Name of the Activity
Label
Multilingual label for internationalization.
Message
Message to display to user in Assignment .
Expected Duration
Number of days - used to calculate the due date of the activity which is equal to the activity
start date plus the expected days entered. For example, if the activity starts on June 1 and
the expected duration entered is 6 the due date is equal to June 7.
Timeout Duration
Number of days – used to trigger escalation events after due date. If blank then escalation
begins on due date based on Expected Duration.
Reminder Interval
The amount of time between reminder messages calculated backwards from the calculated
due date of the activity. Used in conjunction with the Reminder Count. For example, assume
an activity starts on June 1 and is due on June 7 based on an Expected Duration of 6 days. If
the Reminder Interval = 2 with a Reminder Count = 2 then a reminder will be sent on June 5
and June 3.
Page 264
Unit 11 – Creating a Workflow Map
Reminder Count
The number of reminder messages to be sent. The Expected Duration must be greater than
Reminder Count * Reminder Interval.
Managed By ID
An identity that is allowed to make changes to the Assignment list of a running activity. For
example, you could assign Peter Smith as the Managed By ID of the In Work activity on Design
Request workflow. This means he could view the running workflow of a Design Request and
edit the Assignment(s) on the In Work activity.
Role
This field is used in conjunction with the Managed By Identity described above. If left blank,
the Managed By Identity of an Activity can edit the Assignment list and choose anyone in the
system for reassignment. If a role is provided, the user is restricted to reassigning the activity
to members of that role only.
Escalate To
An Identity is notified when this Activity becomes overdue or is refused. When there is no
identity specified here, assignments are escalated to the Process Owner. If no Process Owner
Identity is specified, the assignments escalate to the Creator of the Workflow Process.
Subflow
The workflow map to be instantiated as a subflow. An Activity will not be considered
complete until its subflow is complete. The exit path from an activity that represents a
subflow is typically marked as the Default Path. We discuss subflows in greater detail later in
this course.
Note
Two server Methods are provided to check for Workflow Activity reminders as well as
escalations in the standard Solutions database.
Check Escalations
Send Email Reminders
These Methods should be run periodically on the Aras Server. Refer to the Aras Innovator –
Scheduler Service reference document for more information.
Page 265
Configuring Solutions
Start Activity
First activity to be executed when workflow begins.
End Activity
End Activity closes the workflow process. There can be more than one End in a workflow.
Automatic Activity
This activity has no user interaction and completes automatically.
Can Refuse
Allows a user to refuse this activity
Can Delegate
Allows a user to delegate an activity
Consolidate Delegated
Groups assignments of the same type into a single assignment – details later in this unit.
Wait for All Inputs
Does not activate until all input paths connected to this Activity have been completed. If not
checked, as soon as any one input path is completed, the activity becomes active.
Page 266
Unit 11 – Creating a Workflow Map
Start Activity
Activated as soon as the Workflow Process begins
Single Start activity created by default
Multiple starts supported (not typical)
Page 267
Configuring Solutions
End Activity
Closes a Workflow Process
Single End activity created by default
Multiple end points supported
Distinctive icons can be applied
End Activities trigger a Workflow Process to close immediately, even if branches create
simultaneous Workflow Process Activities. Once a single End Activity is active, all other existing
assigned Activities will be removed from all InBaskets and the Workflow Process Life Cycle will be
promoted to a Closed state.
Page 268
Unit 11 – Creating a Workflow Map
Automatic Activity
Require no end user intervention and are executed
by the server immediately
Logic can be applied to respond to server events
Default path must follow an Automatic activity in
the Workflow Process Map
Typically used with:
▫ Start Activity
▫ End Activity
▫ Branch Activities
Copyright © 2014 Aras All Rights Reserved. aras.com
Automatic Activities cannot have any Required Tasks or use Password/E-Signatures Authentication.
Automatic Activities have several uses when used with voting weight to be discussed later in this
unit.
Page 269
Configuring Solutions
Defining an Assignment
Identify which identities will receive work to
perform in their In Basket
Used to select an Activity path based on voting
decisions
Can be:
▫ Delegated
▫ Refused
▫ Escalated
Defining Assignments
Assignments are used to define who will perform an operation in a workflow. Assignments appear
in users InBaskets.
Page 270
Unit 11 – Creating a Workflow Map
Creating an Assignment
New
1 2 3 4 5
Creating an Assignment
The following fields define an assignment:
Name
Identity to receive assignment. Note that Team Roles are also supported as Workflow
Assignments (Team, Team Manager, Team Member, Team Guest).
Required
Identity must complete this assignment (regardless of other voting rights)
For All Members
This option applies only to group identities assigned to this activity; if false, only one member
of the group identity has to complete and vote on the activity, which will then automatically
remove this activity from the other group members' In Basket. If true, all members have to
complete and vote on the activity and will be assigned equal voting weight with the
cumulative weight equal to the assigned voting weight.
Voting Weight
Percentage of vote for this assignment. In order for a path to be selected it has to reach at
least a 100% vote.
Escalate To
An identity that will receive this assignment if the activity is not completed by the due date +
time out. If no identity is specified here, then the Activity Template Escalate To identity will
receive this assignment.
Page 271
Configuring Solutions
To Create an Assignment
Locate the Assignments relationship tab on the Activity Template and add a new Assignment
relationship. In this example, the Verify Ticket Activity of the Help Desk workflow is configured with
a new assignment using the following values:
Name Creator
Required No
Page 272
Unit 11 – Creating a Workflow Map
In order for path selection to occur, it must reach at least a 100% vote, or more. For example, in the
above image, assuming no Default and Override Path is set; both Identities have 50 as a Voting
Weight. Therefore, both identities are required to agree for any Path to add up to 100. Once 100 (or
greater) is reached that Path is followed.
In this example, "For All Members" is not selected for any group assignment so only a single
member's vote from a group is needed.
If 100 cannot be determined after all votes then escalation occurs on this activity. This behavior can
be adjusted and is discussed later in this unit.
Page 273
Configuring Solutions
Alternatively, the Wait For All Votes flag can be used to interactively follow multiple outgoing paths
or branch. Exit Paths for an Activity calculate after all votes are gathered. Once gathered multiple
Exit Paths may contain weights of greater than 100. In this case as with an automatic default path,
all Exit Paths with weight greater than 100 are followed, creating a branch in a Workflow Process.
For example, in the above example there are three assignees each with a Voting Weight of 100. If
the Wait For All Votes flag is not set - an exit path is followed immediately on the first path >= 100 .
If Wait For All Votes flag is selected, accrued weights could be 200 for Exit Path Approve, and 100 for
Exit Path Reject. After all assignees had voted, both the Approve and Rejected Paths would be
followed.
Page 274
Unit 11 – Creating a Workflow Map
Voting Weight is calculated at runtime. Notice the Engineering Group has a Voting Weight of 100
and all its members receive an assignment. Each member Identity gets a Voting Weight divided by
the total number of members in the group. If the Engineering Group had 5 members, each user
would have a Voting Weight of 20.
Note
Voting Weight is distributed evenly, but is rounded up. If there are three members of a group
identity assigned a weight of 100, each member will get a weight of 34. This may not work as
expected when there are more than a dozen members (13 and 14 members both result in a weight
of 8).
Page 275
Configuring Solutions
Creating a Task
New
1 2 3
Creating a Task
Tasks are used to provide some instruction on what work needs to be accomplished to complete an
assignment.
Sequence
Order of task in assignment voting dialog.
Required
Task must be completed to complete the assignment.
Description
Task instructions.
To Create a Task
1. Locate the Tasks relationship tab for an Activity Template and create a new Task
relationship.
2. In this example, the values above have been used for the Review Activity of the Design
Request workflow:
Page 276
Unit 11 – Creating a Workflow Map
Refusing an Assignment
If allowed, assignee can choose to Refuse vote
Assignment is then escalated to:
▫ Assignment Tab “Escalate To” Identity
▫ Activity Template “Escalate To” Identity
▫ Workflow Process Owner
▫ Creator
Refusing an Assignment
If an Activity allows an Identity to refuse an assignment an escalation of the assignment begins.
Look at Assignment Tab of the Activity Template and see if there is an Escalate To Identity. If not,
then look for an Escalate To Identity on the Activity Template. If blank, then look for a Workflow
Process Owner Identity. If blank notify the Creator of the workflow.
Page 277
Configuring Solutions
Delegating an Assignment
If allowed, assignee can delegate assignment to
another identity
If the Activity supports Consolidated Delegation
multiple delegations of the same assignment
become one
▫ Voting weight is cumulative
▫ Reduces the number of assignments in an In Basket
Delegating an Assignment
A user can delegate an assignment to another valid Identity in the system.
Consolidate Delegated
Consolidate Delegated flag is useful when one Activity is Delegated To the same Identity several
times. Normally, the targeted user will receive multiple assignments to perform the same
operation. For example, an Activity has three Assignees each with a Voting Weight of 40, when the
Activity becomes active each Assignee gets a Workflow Activity in their InBasket of Voting Weight
40. Assignee One and Assignee Two both Delegate To Assignee Three. Assignee Three now has 3
identical Activities in their InBasket.
If Consolidate Delegated flag is NOT checked, Assignee Three receives three identical assignments in
their InBasket - each with a Voting Weight of 40. One is their own assignment and the other two
have been delegated. Assignee Three must now open each assignment individually and Vote a total
of three times for the system to calculate a Path. If the Consolidate Delegated flag is used, Assignee
Three sees only one assignment in their InBasket with a Voting Weight of 120 and needs to only
vote once.
Another benefit of Consolidate Delegated is in the timing of the vote. If Assignee Three in the above
example had already voted – when Assignee One and Assignee Two delegate their votes later - the
system will automatically consolidate their votes (and their weight). Assignee Three will not have to
process any further assignments.
Page 278
Unit 11 – Creating a Workflow Map
1 2 3 4 5 6 7 8
Sequence
Order of variable prompt in the voting dialog.
Name
Name of the variable.
Type
Data type of variable.
Source
Data Source of variable (if reference data type)
Default Value
Default to show the user
Required
Voting dialog cannot be completed unless a value is entered for this variable.
Hidden
Do not show variable (programmatic use only)
Label
Multilingual string for internationalization
Page 279
Configuring Solutions
Sequence 1
Type List
Source Countries
Required No
Hidden No
Label None
Page 280
Unit 11 – Creating a Workflow Map
1 2 3
4 5
Name
Name of the Path
Authentication
Password/E-Signature – does user require authentication to move forward in the process?
Label
Multilingual string for internationalization
Default Path
This path becomes the default exit for this Activity.
Override Path
If chosen, this path overrides all other voting weights from the Activity.
Page 281
Configuring Solutions
Authentication
Additional verification can be required to follow a path:
▫ Password
▫ E-signature
Password is Aras Innovator User password
Authentication restricts path access to identities having a Password or an E-signature. A vote is not
completed until validation of one or both is established. Authentication is set on Exit Paths and not
the Activity of a Workflow Map.
If Password Authentication is selected for a path an end user will need to provide their Aras
Innovator password to continue to process the assignment.
To Create an E-Signature
1. An E-signature is created by a user from Main Menu by selecting Tools > Change E-
Signature.
2. The user provides the current signature (if it exists) and a new signature. If a user is setting
the E-Signature for the first time, leave the old signature blank.
Page 282
Unit 11 – Creating a Workflow Map
Default Path
Automatically followed when all assignments are
closed and no Path has reached 100% voting
weight
Required after Automatic activities
The primary purpose is to define a Path for a Workflow to follow when no cumulative Voting Weight
reaches 100 or more for a single Path from an Activity. Normally, the workflow process will escalate
(using the Escalate To Identity) if there is no majority decision. To avoid escalation, you can define
one or more of the Paths following an Activity as Default. Once all votes have been tallied, if any
one path does not have a weight of 100 or more it can be designated as the "default vote". If more
than one path is marked as Default then the workflow will follow parallel paths.
The other purpose for Default paths is to indicate an exit path for Automatic activities. At least one
Path following an Automatic Activity must be defined as Default or the workflow will not continue.
If multiple paths are marked as Default, all default paths will be followed. Multiple default paths are
often used with an Automatic Activity to support branching (parallel processing) in a Workflow.
Note
If a Default Path is not defined following an Automatic Activity, an error will be displayed to the user
when they attempt to vote in an Activity Assignment that leads to the Automatic Activity.
Page 283
Configuring Solutions
Override Path
Followed as soon as a vote is cast
All remaining assignments for the current Activity
are closed
Override Path
Override Paths are used to potentially make a workflow more efficient. If an override path is chosen
by a user no additional votes are collected for the activity and processing continues using the
override path. Override paths take precedence over Wait For All Votes option (discussed earlier in
this unit)
In the example above, the Cancel Ticket path is configured as the Override Path (and also requires
an E-Signature). If this path is chosen any votes for resubmission are ignored and the Reject Ticket
activity is invoked.
Page 284
Unit 11 – Creating a Workflow Map
In the example above, the Order Approved activity has Wait For All Inputs selected. The activity will
not be reached until all of the Approve paths have been processed.
Conversely, if Wait For All Inputs is deselected, then the first path that is processed will activate the
Order Approved activity and move the workflow forward.
Page 285
Configuring Solutions
Summary
In this unit you learned how to create and configure a new Workflow Map.
Page 286
Unit 11 – Creating a Workflow Map
Review Questions
How do I configure an assignment so that all users belonging to an Identity receive the assignment?
What two forms of authentication are available to restrict who can complete an assignment?
Page 287
Configuring Solutions
Lab Exercise
Goal:
Be able to define a new Workflow Map and configure activities with assignments and tasks. Be able
to create transition paths between activities.
Scenario:
In this exercise you will create the basic Workflow Map for the Change Request workflow.
Requirements:
The following requirements have been established for the first phase of the Change Request
workflow. Attempt to draw the workflow below before attempting to create it as a Workflow Map.
1. Once a user creates a Change Request, they should receive an InBasket assignment to
recheck the request before submitting it for verification/validation and review. If they
cancel the request the process should end. If the user attempts to cancel the order they
must submit provide their E-Signature password.
2. If the user submits the request to verification/validation, it should be sent to the
Engineering group so that any member can verify the request. At the same time, a member
of the Change Specialist I Identity should receive an assignment to validate the request.
3. Once both the verification and validation activities have been completed, the request should
then be submitted to the CRB group for final review.
4. A member of the CRB must either Approve or Reject the request which ends the process.
Workflow Diagram:
Page 288
Unit 11 – Creating a Workflow Map
Steps:
1. Create a new Workflow Map named Change Request using the diagram shown above as a
guideline. You will need to create new Activities and connect them with transition Paths.
Name the Activities and Paths using the suggested names below.
4. The Branch activity should split when the workflow reaches this activity and process both the
Verify Request and Validate Request activities in parallel. What setting must you apply to the
Branch activity? ________________________________________________________________
What setting must you apply to the Verified and Validated paths following the activities?
_______________________________________________________________________
Apply the settings.
6. The Review Request Activity should not be reached until the order is both Verified and
Validated. What setting is required to ensure this happens?
____________________________________
7. None of the Activities should allow Refusal with the exception of Review Request. If the Review
Request Activity is refused it should be escalated to the Innovator Admin.
______________________________________________________________
9. Add the Workflow Map to the Change Request ItemType as the Default.
10. Log on as the Innovator Admin (admin) and create a new Change Request.
Page 289
Configuring Solutions
11. View the Workflow Process for this Item – what Activity is the Workflow in?
____________________________________
12. View the InBasket. You should see an assignment with a task to perform for the Item you
created above.
13. Vote to Submit to Verify the Item. Who should receive the next assignments?
____________________________________________________________________________
Log on as that member and perform the task to complete the workflow process.
14. Walk through the complete process noting the Identities that are assigned to each activity.
Page 290
Unit 12 Enhancing a Workflow
Overview: In this unit you will learn how integrate an Item life cycle with a workflow. You
will also learn about using subflows and responding to server events.
Page 291
Configuring Solutions
Workflow Activity
Promotes
LifeCycle State
Workflow:
In the example above, when the workflow reaches the Review Ticket Activity the life cycle of the
controlled Item is automatically promoted from New to In Review.
Using a combination of workflows and lifecycles provides the best of both technologies. A
controlled Item gains all the advantages of life cycle state you have learned about in this course.
The Workflow has the ability to create assignments, tasks and use voting weight to decide when an
object should be promoted to a new life cycle state.
Page 292
Unit 12 – Enhancing a Workflow
1 2 3 4 5 6
Copyright © 2014 Aras All Rights Reserved.
The following fields are used to configure a life cycle state promotion from a Workflow:
Event
A server event that triggers the promotion action. There are many available server events
you can use – OnActivate is typical – when the Activity is activated execute the promotion.
Item Type
The ItemType of the controlled Item.
Life Cycle
The controlled Item Life Cycle to be used .
From State
The state the Item currently set to.
To State
The state the Item will be promoted to.
Role
The granted Identity to perform this promotion. The Workflow can assume an Identity
different then current assignee-to “grant” access to the promotion from the Workflow.
Page 293
Configuring Solutions
Page 294
Unit 12 – Enhancing a Workflow
Promotion Guidelines
Current LifeCycle state of Controlled Item must
match one of the “From State” values
Only promotes states in current Controlled Item
Workflow Activity assumes Role provided in
Promotions configuration (bypasses User Identity)
Multiple promotion configurations are supported –
one must match current “From State”
The Controlled Item’s current lifecycle state must match one of the defined Workflow Promotions
‘From State’ when the promotion is initiated or else it will fail. For example, if the Controlled Item is
currently in the Draft state and an Activity with a Workflow Promotion is initiated, there must be at
least one Promotion defined for the Activity which has a ‘From State’ = Draft.
A Workflow Promotion cannot be used for promoting other ItemTypes that are not defined as the
‘Controlled Item’ for the Workflow.
A Workflow Promotion bypasses a defined Identity Role for a given Life Cycle Transition. As a result,
the promotion will occur even if the User who completed an Activity initiating the promotion is not a
member of the Life Cycle Transition’s Identity Role.
Page 295
Configuring Solutions
Workflow:
In the example above, the Review Request Activity in the workflow must provide two promotions
because the LifeCycle Submitted state has two transitions on the “From State” side. Failure to
provide both promotions will result in the LifeCycle possibly being out of sync with the workflow.
Page 296
Unit 12 – Enhancing a Workflow
Workflow
Map
Note
An allowed Workflow is one that is related to the same ItemType to which the Life Cycle is also
related.
Page 297
Configuring Solutions
Using Subflows
Enable process reuse and simplify graphical
display
Using Subflows
Subflows may be added to any workflow to enable process reuse or to clarify the graphical display
Subflows allow for a Workflow “hierarchy” by creating a form of branching. The current workflow
activity is suspended until the Subflow completes and returns control. A Subflow can be used with
other forms of branching, because only the Activity containing the Subflow suspends, not the whole
Workflow Process.
In this example, the Verify Ticket Activity calls a separate workflow to step through the initial
verification requirements. When they are complete the main flow continues.
Note
Activities with Subflows should always be set to Automatic
Page 298
Unit 12 – Enhancing a Workflow
Configuring Subflows
To Configure a Subflow
1. Specify the Subflow to call from the Activity Template.
2. Make sure the Automatic Activity setting is set to true.
Page 299
Configuring Solutions
Configuring Dynamic
Assignments
Members of the Workflow “Managed By” Identity
can add, change and delete assignments on a
running Workflow Process
If a Role has been configured only members of that
Identity can receive changed assignments
Note
The Activity returns an error if you try to assign an Identity not a member of the Role Identity
Property.
Changing Assignments
Dynamic assignments can be altered in a Workflow
Process
Changing Assignments
If Dynamic Assignments have been enabled for an Activity, the Assignments can be altered in the
Assignments section of the Workflow Process dialog. Only a user (or members of a group) specified
on the Managed By field of each activity have this privilege.
Page 301
Configuring Solutions
Summary
In this unit you learned how to enhance a workflow.
Page 302
Unit 12 – Enhancing a Workflow
Review Questions
If a workflow promotes an Item to a new state, what Identity is used to process the promotion?
Page 303
Configuring Solutions
Lab Exercise
Goal:
Be able to integrate an Item LifeCycle with a Workflow.
Scenario:
In this exercise, you will add Promotions to the current Change Request Workflow to allow the
workflow to control the state of an Item.
Steps:
1. Open the Change Request Workflow Map for edit.
3. Save your changes and then create a new Change Request Item.
4. Submit the Change Request for review and as you process each assignment check the state of
the Change Request. You should see the Item change state based on the promotions you have
set above.
2. Assign the Quality Checks Activity to the Innovator Admin Identity and create a Task that
requires the assignee to perform standard quality control checks. Save your changes.
3. Open the Change Request Workflow and assign the Quality Control Workflow as the Subflow of
the Verify Request activity.
NOTE: You will need to make this Activity automatic as the subflow will control the Assignment.
Page 304
Unit 12 – Enhancing a Workflow
5. Open the Change Request ItemType and add the Quality Control workflow to the ItemType
(non-default). Why must you do this?
________________________________________________________________________
6. Create a new Change Request Item and process the Item though the workflow. The Innovator
Admin should see an assignment for Quality Control before the Item can be approved.
Page 305
Configuring Solutions
Page 306
Unit 13 Working with Files
Overview: In this unit you will learn how a vault is configured to store files uploaded by
users in a solution. You will learn how to assign a user to a vault, set a default
working directory as well as learn about the association of File item to a
"container" item. You will also learn how to configure an ItemType or
Relationship to support file upload/download.
Objectives: Reviewing the Default Vault
Reviewing Vault Server Configuration
Configuring User Working Directory
Defining File Items
Uploading/Downloading Files
Configuring File Support
File Vault
Page 307
Configuring Solutions
Reviewing Vaults
Client
File Store
Innovator Server Vault Server
Database
Copyright © 2014 Aras All Rights Reserved. Slide 3
As we discussed earlier in the course, files are stored in a vault (file store -not the database) and an
IIS Vault Server application is dedicated to each vault that is configured. The Vault Server
communicates with the Innovator Server to keep track of files and their locations (file meta-data) in
the database.
When Aras Innovator is installed, a vault named Default is created to store user files. You can
configure additional vaults if necessary. Steps to install more than one Vault are described in the
Aras Innovator Installation guide.
Page 308
Unit 13 – Working with Files
When you create new User, you also assign the vault that a user will work with to upload and
download files from the system. The default assignment is to the vault named Default.
In addition, you can assign a default directory location which will be used as the local location for
files that are retrieved and edited by a user. If you leave the Working Directory field blank the user
will be presented with a File Dialog the first time they log on to the system. They can then choose
their own working directory.
A user can also change their working directory at any time by selecting Tools > Preferences > Change
Working Directory… from the main menu.
Page 309
Configuring Solutions
VaultServerConfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<VaultServer>
<AppServerURL>http://localhost/InnovatorServer/Server/
InnovatorServer.aspx</AppServerURL>
<LocalPath>C:\Support\vault\</LocalPath>
<login_name>vadmin</login_name>
<name>Default</name>
<password>vadmin</password>
<version>11.0.0</version>
</VaultServer>
When Aras Innovator is installed, a Default vault is automatically created and configured for the
system.
A Vault ItemType is created and configured and contains a URL address to the Vault Server .aspx file
used for processing files to a Vault.
The Vault Server application is configured using the VaultServerConfig.xml file which contains the
appropriate URL for the Innovator server as well as the matching vault name. The following keys are
defined in the file:
Note
If you require more than one vault (or a custom configuration), see the Aras Innovator Installation
guide for more information.
Page 310
Unit 13 – Working with Files
The Vault Item maintains a URL to the vault server .aspx page which contains the logic to copy a file
from a user's client machine to a file server directory store. The Vault Item is then assigned to each
User Item to determine their default Vault.
Name
Name of the Vault associated with the desired vault server.
Vault URL Pattern
The URL to the vault server. The URL can also contain the following symbols which are
substituted when the Vault Item is saved:
HTTP_PREFIX_SERVER = http:// or https://
HTTP_HOST_SERVER= server name
HTTP_PORT_SERVER = server port number (if exists)
HTTP_PATH_SERVER = Innovator web alias specified at installation
Vault URL
This read only field displays any substitution that occurs on the URL Pattern when the Vault
Item is saved.
Page 311
Configuring Solutions
The physical file is stored in a file store configured for each Vault.
Page 312
Unit 13 – Working with Files
Aras Innovator provides pre-configured file containers (e.g. Document, CAD Document) or an
administrator can configure additional file containers as you will learn in this unit.
Users manage files by accessing a container (based on the security of the container item) and
peforming an upload from their local computer to the Aras Vault or download from the Aras Vault to
their local working directory.
In the example above, a Document item has been created that has a configured relationship to a File
item. A user has uploaded a file named ABC123.dwg.
Note
An Aras administrator (only) can view ALL files that have been uploaded to any Vault by selecting
Administration -> File Handling -> Files from the TOC.
Page 313
Configuring Solutions
Page 314
Unit 13 – Working with Files
Page 315
Configuring Solutions
Page 316
Unit 13 – Working with Files
Page 317
Configuring Solutions
Managing Files
Once a file has been successfully uploaded to a Vault a user can then manage the file using the
Manage Files dialog box. A Manage File icon appears before the name of the uploaded file and can
be clicked to display the Manage File dialog box.
View File
When you click the filename hyperlink the file is displayed (if possible) in the browser. If the
file cannot be displayed the browser prompts for a file download.
Delete File
Removes this file association from the current container. Note that the physical file is not
deleted from the Vault. The File item is reassigned to a system container named "Ophaned
Files Container" and is only available to the Aras administrator.
Select and Upload
Allows you to choose a physical file from your working directory and upload to a Vault.
Download to working directory
Downloads (and overwrites) the physical file that resides in the working directory.
Working Directory
Displays the current working directory location.
Change
Changes current working directory.
Page 318
Unit 13 – Working with Files
To simplify the management of files, a File Item cannot be versioned. The container representing
the File Item represents the version of that particular file stored in a Vault. Each time a file is
uploaded to Aras Innovator a new File Item is created that represents that file.
Document Example
In the example above, a user has created a new Document item and uploaded a drawing file named
ABC123.dwg. A File Item is created in the Aras database to represent this stored file.
Later, the user edits the Document item, downloads the file and makes some changes to the
physical file. Then the user uploads the file changes to the Document a new File Item is created
representing that file and the version of the Document (container) is incremented.
Page 319
Configuring Solutions
Configuring Option 1
This approach uses a relationship that is configured with File as the related ItemType. This approach
is currently used on the standard Aras Document ItemType.
To Configure Option 1
1. Create new RelationshipType with File as a the related ItemType. In this example, a new
relationship is created from the Design Request to an item of type File.
2. Make sure that the Default Structure View is set to the Tabs On option.
Page 320
Unit 13 – Working with Files
1. Open the RelationshipType template for Edit (for our example the template is named
Document Request File).
2. Select Create Only for the On New Related Option. This prevents a user from accidentally
selecting a file that has already been uploaded to a Vault.
3. Check the Requires Related checkbox. This disables the "No Related" option when a user
attempts to create a new File relationship.
Page 321
Configuring Solutions
Configuring Option 2
This approach uses a null relationship. The resulting relationship ItemType is then modified and a
File Item property is added. This approach is currently used on the Aras CAD Document ItemType.
To Configure Option 2
Create a new null relationship by choosing No Related before the relationship is added. In this
example a new null relationship named Design Request File Attached is created.
Page 322
Unit 13 – Working with Files
Page 323
Configuring Solutions
Configuring Option 3
This approach adds a File Item property to the container ItemType directly (no relationship). This is
useful if only 1 file can be associated with a file container item. This option is currently used in the
CAD Document ItemType.
To Configure Option 3
Create a new property of Data Type File that uses the Data Source File. In this example, a property
named _file_placeholder has been created.
Page 324
Unit 13 – Working with Files
Page 325
Configuring Solutions
Summary
In this unit you learned how to work with files. You should now be able to:
Page 326
Unit 13 – Working with Files
Review Questions
Which Configuration Option does not require the use of a relationship item?
Page 327
Configuring Solutions
Lab Exercise
Goal:
Be able to configure an ItemType to support file upload/download from the Default Vault.
Scenario:
In this exercise, you will add the capability for users to upload a file to a Vault directly from a Change
Request. Once the file has been added a user will be able to manage the file using the Manage File
dialog box.
Steps:
1. Edit the Change Request ItemType and create a new RelationshipType named Change Request
File that uses File as the related ItemType.
2. Now open the Change Request File RelationshipType template and select the Create Only and
Requires Related options from the On New Related Options panel.
3. To test the new configuration, open or edit a Change Request and upload a new file.
4. Locate the Vault directory to view the files that have been checked into the vault. (Remember,
an end user will never be allowed access to the directory.)
Page 328
Unit 14 Replicating Files
Overview: In this unit, you will learn how to configure file replication between multiple
Vaults. File replication is useful in enterprise installations where multiple
Vaults may be used to store different files based on type or size – or to allow
faster retrieval of files when users are located in different geographic areas.
You can configure file replication in several different ways depending on the
requirements of the solution. Note that file replication is is a subscriber only
feature that requires a subscriber license key to operate.
File Vault
Vault
Page 329
Configuring a Solution
This distributed Vault environment allows for greater flexibility but poses a problem if a file that is
changed needs to be copied (or moved) to another Vault location to provide synchronization of
versions.
File replication is an asynchronous process that is invisible to the end user. A user simply locates the
desired file for retrieve and edit (based on their permissions). The system keeps track of the
location(s) of the newest copy of the file.
File Retrieval
When a user retrieves a file the first time, the system can be configured to dynamically locate the
latest version of the file and copy (or move) it to their preferred Vault for future access.
File Add/Change
When a user saves changes to a file and checks it in to the system, the file is always written to the
user’s default Vault. In addition, the default Vault can be configured to dynamically copy (or move)
the file to one or more alternate Vaults.
Page 330
Unit 11 – Replicating Files
System Event
You can create and associate a custom Method with a system event to invoke replication on one or
more files in response to the event. For example, when a Document Item is promoted to the
“Released” state the file(s) that are related to the Document Item can be scheduled for replication
to another Vault.
Page 331
Configuring a Solution
Retrieving a File
1
4 Replication Transaction 6
5
File Replicated File
Copyright © 2014 Aras All Rights Reserved. Slide 4
Retrieving a File
This example shows a typical process for “on demand” file retrieval and file replication. Note that
there are many options available that you will learn about in this unit. This example uses two Vaults
that have been configured to support file replication (Alternate and Default).
A User is always assigned to a default Vault in their user profile. In this example, the User is
assigned to the Vault named Default.
The User selects a file to retrieve from the Innovator Server. The Innovator Server maintains
meta-data about each file stored in a Vault (actual file data is contained in the File Store). Since the
latest version of the file exists in the Alternate Vault (and not the User’s Vault), the Innovator Server
requests the file from the Alternate Vault.
The file is copied to the User’s default Vault based on the schedule defined in the Replication
Rule.
Page 332
Unit 11 – Replicating Files
Adding/Changing a File
1
5 Replication Transaction 3
4
Replicated File Updated File
Copyright © 2014 Aras All Rights Reserved.
Adding/Changing a File
This example shows a typical process for “on change” file replication. Note that there are many
options available that you will learn about in this unit. This example also uses two Vaults that have
been configured to support file replication (Alternate and Default).
A User is always assigned to a default Vault in their user profile. In this example, the User is
assigned to the Vault named Default.
The Default Vault has been configured to target the Alternate Vault when a file is added or
changed in the Default Vault.
The updated (or new) file is first stored in the User’s default Vault.
A Replication Transaction is created to copy the file to the targeted Alternate Vault.
The replicated file now resides in the Alternate Vault.
Page 333
Configuring a Solution
Replication Transactions
Configured server event triggers check for
replication when:
▫ A user requests a file (onDemand)
▫ A file is changed in a vault (onChange)
▫ A program initiates an event (onEvent)
Replication Transactions can execute:
▫ Immediately
▫ Based on a schedule
▫ When a defined method is executed
Files can be copied or moved
Copyright © 2014 Aras All Rights Reserved.
Slide 6
Replication Transactions
Replication is configured by creating Replication Rules which are associated with a Vault. When a
matching Replication Rule is found on a Vault, a replication transaction is created to process the file.
Replication Rule settings include:
onDemand - A user requests a file from a Vault. The Vault is configured with an
“onDemand” rule to copy (or move) a file to another Vault.
onChange - A file is changed or added to a Vault. The Vault is configured to copy or move a
file when a file is added or changed.
onEvent - A Vault is configured to respond to a programmed event that is invoked from a
Method. This method may be associated with an Action menu item or a system event (e.g.
Promote Item) that causes a file replication transaction to be created.
Timing - Several options are available to indicate when the transaction should be invoked,
including immediate execution, delayed or scheduled time and by program invocation.
Move or Copy - The Replication Rule indicates whether a file should be moved or copied to a
new Vault location.
Page 334
Unit 11 – Replicating Files
Replication Transaction
Conditions
A Replication Transaction will be skipped if:
▫ Not due for execution (scheduled/delayed)
▫ The file is locked
▫ Another transaction is already processing the file
A Replication Transaction will be discarded if:
▫ File is not latest version in the "source" vault
▫ Latest version is already in the "target" vault
▫ Filter method removes file from contention
A skipped transaction will remain in the queue for future processing. Discarded transactions are
removed from the queue and marked as “Discarded” in the Transaction Log (discussed later in this
unit).
Page 335
Configuring a Solution
Internal Thread
An internal thread can be configured to handle the processing of replication transactions that have
been created using Replication Rules. A replication.config file is available in the Innovator/Server to
enable file replication using the standard internal thread. This file has been configured on your
classroom machine with the following default settings:
Page 336
Unit 11 – Replicating Files
For the purposes of demonstration, you will use the internal thread in this course. For more
information on the thread parameters and other options noted above see the Configuring Vault
Replication document on the installation CD.
Page 337
Configuring a Solution
For more information on creating and configuring alternate Vaults see the Aras Innovator
Installation Guide available for download from aras.com or on the installation CD.
Page 338
Unit 11 – Replicating Files
4. Once verified, an email will be sent to you with the activation key.
5. Select Tools > Admin > Licenses > Activate Feature from the main menu.
6. Enter the key in the field provided and press the Activate Feature button.
Page 339
Configuring a Solution
Page 340
Unit 11 – Replicating Files
1 2
When a user requests a file, the following locations are checked for the latest version (in the order
listed):
In the example above, the User’s highest priority Read Vault is Alternate, followed by Default.
Note
It is typically a good practice to assign a user’s highest priority Read Vault to be the same as their
Default Vault.
Page 341
Configuring a Solution
Each Replication Rule is configured with a mode setting that indicates what system event will trigger
the creation of a replication transaction.
onChange
A user has added or changed a file in a Vault.
onDemand
A user has requested a file in a Vault.
onEvent
An executed Method with “replicate” programming instructions will cause this event to fire.
Page 342
Unit 11 – Replicating Files
Page 343
Configuring a Solution
2 6 7
3 8
Initiator Type
onDemand – user retrieves a file from a Vault that should be replicated
onChange – user adds a file to a Vault that should be replicated
onEvent – a Method when execute will invoke the rule
Replication Mode
Immediate – replication will begin without delay asynchronously
Delayed – delay replication transaction using the Replication Time field in hours and minutes
(hhmm).
Scheduled – scheduled time for transaction using the Replication Time field in hours and
minutes using UTC time (hhmm). If time has already passed for today will execute at that
time tomorrow. Max time is 2359.
Manual – transaction will not be processed until a program method call is made.
Replication Time
Used for Delayed and Scheduled transactions.
Label
Description of Replication Rule – this text will appear in the Replication Transaction Log
Filter Method
A custom Method that tests if a file should be replicated (or not) when the replication
transaction is processed. When the replication transaction is invoked the Method receives
Page 344
Unit 11 – Replicating Files
the current file id, which can be used to determine if a file should be replicated. Example:
files over a certain size or in a certain lifecycle state are not replicated based on business
rules.
Replication Type
Copy or Move replicated file.
Is Active
Allows you to deactivate a rule. Useful for removing a rule discussed later in this unit.
Timeout
Maximum time (hhmm) allowed before started replication transaction is completed. Default
is 0100 (one hour).
Page 345
Configuring a Solution
Page 346
Unit 11 – Replicating Files
Notes
Target Vaults are ignored for onDemand Replication Rules. A User’s highest priority Read Vault is
used instead when a User requests a file.
Only one Vault should be specified when the Replication Type equals Move. Once the file is moved
from the source Vault it will no longer be available for any other replication transactions and will
cause replication transaction errors.
Page 347
Configuring a Solution
Configuring onDemand
Replication
Default
The User’s Read Vault Priority List is first examined and the system checks for the latest file in the
Default Vault (priority 1). It is typically a best practice to specify the user’s default Vault as the
highest priority Read Vault unless a “Master Vault” scenario is used (discussed later in this unit).
If the latest file resides in the Alternate Vault, an immediate “copy” replication transaction is
created. The file is copied from the Alternate Vault to the Default Vault based on the configured
onDemand Replication Rule on the Alternate Vault.
Page 348
Unit 11 – Replicating Files
Target
Alternate
Vault
The Default Vault is configured with an onChange Replication Rule which fires creating a copy
replication transaction to the Target Vault named Alternate.
Page 349
Configuring a Solution
Alternate
Vault
User Chooses
File(s) to Replicate
In Alternate Vault
Copyright © 2014 Aras All Rights Reserved.
Slide 20
Configuring onEvent Replication
This example demonstrates a User having the ability to select a file for replication using a custom
configured Action and Method. The user selects a file and chooses the Replicate File menu item to
invoke a Method call.
The Alternate Vault containing the file starts a replication transaction based on the onEvent
Replication Rule and targets the Default Vault for the copy operation.
This same approach could be used to provide a response to a lifecycle promotion event to replicate
Document Item files to a target Vault(s) when a Document Item reaches a certain state (e.g.
“Released).
You will learn about configuring Actions and Events later in this course.
Page 350
Unit 11 – Replicating Files
Viewing Pending/Running
Transactions
Page 351
Configuring a Solution
Page 352
Unit 11 – Replicating Files
Deactivating a Rule
Deselect Is Active
You can also permanently delete a Replication Rule once all pending/running transactions for this
rule have been completed.
Page 353
Configuring a Solution
Page 354
Unit 11 – Replicating Files
An onChange Replication Rule is assigned to each Vault in the system. Each Replication Rule targets
the other Vaults in the system for replication when a file is changed in any Vault.
Depending on number of users and system load, these rules could be scheduled for “off” hours
when the network traffic is lighter.
Page 355
Configuring a Solution
Vault A
Vault B Vault C
Each User assigned Vault has an onChange – Copy Replication Rule associated with the Vault. The
“central” Vault becomes the write target Vault in addition to the User’s default Vault.
Page 356
Unit 11 – Replicating Files
Vault A Vault D
MPEG ZIP
Vault B Vault C
MPEG ZIP
Each User’s default Vault (B and C) target a specific Vault based on a File Type. An onChange
Replication Rule with File Type configured moves the file from the User’s default Vault to a specific
“type” Vault.
Page 357
Configuring a Solution
Summary
Page 358
Unit 11 – Replicating Files
Summary
In this unit, you learned how to configuration file replication.
Page 359
Configuring a Solution
Review Questions
How do you specify which Vaults should receive a copy of a file when it is changed?
How would you restrict a replication so that only AUTOCAD files were replicated?
Page 360
Unit 11 – Replicating Files
Lab Exercise
Goal:
Configure a file replication rule.
Scenario:
In this exercise, you will configure file replication. You will define a Replication Rule and test the
results using the Default and Alternate Vaults that are configured on your classroom computer.
Steps:
1. Assign the following default Vaults based on each User profile:
3. Create a Replication Rule that will copy immediately any file that Peter Smith checks-in. (Use
the Identity World for the rule.) The target Vault should be the Alternate Vault. Which Vault
will you apply the rule to? ____________________ What is the Initiator Type?
____________________
4. Test your work by checking in a file while logged on as Peter Smith. Review the Transaction Logs
to make sure the replication was successful. You can also perform an Advanced Search on
Administration > Files from the TOC to prove the file has been copied to the Alternate Vault.
5. How would you restrict the copy operation in Step 3 so that only .JPG images would be
replicated? ____________________________________________
Page 361
Configuring a Solution
Page 362
Unit 15 Sending User Notifications
Overview: In this unit you will learn how to create administrative user notifications that
appear as alerts to end users in an Aras Innovator session. These notifications
can be used to alert a user about an upcoming event (e.g. system
maintenance, updated feature, etc.) This notification system is provided for
administrators only and is separate from e-mail notifications which will be
discussed later in the course.
Page 363
Configuring a Solution
You can configure a message that will be broadcast to one or more users (determined by Identity).
Message can be configured to appear in the main window status bar control or to popup in a
separate window when received. You can also determine if a user must acknowledge a message
which will be recorded for your review.
Messages can also be configured to expire after a certain date which will remove them from a user’s
queue automatically.
A standard template is available to quickly create a new message or you can use your knowledge of
HTML to create a completely customized form.
Page 364
Unit 15 – Sending User Notifications
Message Titles
Pending Messages
Note
You can configure the message priority so that more important messages appear before others in
the list.
Page 365
Configuring a Solution
Viewing a Message
Popup Message
Status Bar
Viewing a Message
Messages appear as a popup window containing the message text as well as an optional OK and Exit
button.
To View a Message
1. From the Message Titles box, click on a Message Title to display the corresponding popup
window.
2. Depending on how the message has been configured you can then acknowledge the
message by pressing the OK button or exit by pressing the Exit button (if configured).
Page 366
Unit 15 – Sending User Notifications
2 3
4 5
6 7 8
9 10 11
12 13 14
Page 367
Configuring a Solution
Type
“Standard” indicates that the message will appear in the Status Bar control. The user will
need to select a message title to display the popup window. “Popup” indicates the message
will only appear as a popup window when the message is received (making it harder to
ignore).
Show OK Button
The OK button is considered the “acknowledgement” button for a message that configured to
be acknowledged once (discussed later in this unit). When a user presses a message that is
configured to be acknowledged once, the event is recorded and can be viewed by an
administrator later. The window is also closed.
OK Button Label
Text for the button (supports multilingual string).
Priority
You can rank messages so that the message titles in the status bar control are ordered by
importance. Higher priority messages will appear above lower ones.
Show Exit Button
The Exit button will close the window and exit the application. This is useful for messages
where the user must acknowledge the message (press OK) before they can use the system.
Exit Button Label
Text for the button (supports multilingual string).
Acknowledge
“Once” indicates that when a user presses the OK button on a message it will be removed
from their message queue and the event will be recorded for later viewing by an
administrator. “Always” indicates the message will always appear in the user’s message
queue until it expires or the administrator deletes the notification message template.
Page 368
Unit 15 – Sending User Notifications
OK (Acknowledge)
Button
Note
The standard template is based on a default template xml file which is located (on the classroom
computer) in the following location:
C:\Program Files\Aras\Innovator920\Client\xml\ notification_popup_template.xml
Page 369
Configuring a Solution
In the example above, the color of the title text and buttons has been changed and the message text
will display in italics.
Page 370
Unit 15 – Sending User Notifications
Note
The OK and Exit buttons are still configured based on the selections in the Notification Message to
allow for acknowledgement and standard exit behavior. The buttons will appear after the supplied
custom HTML.
Page 371
Configuring a Solution
Defining Acknowledgements
Acknowledge Once
▫ When user presses OK button, message is removed
from status bar
▫ Acknowledgement is recorded for review later
Acknowledge Always
▫ Message is not removed when user presses OK button
▫ Message will be removed only by expiring (or deleted
by Administrator)
▫ Acknowledgement not recorded
Defining Acknowledgements
Acknowledgements are configured using the Acknowledge setting on the Notification Message
form.
Once
When the “Once” option is selected, the OK button on the displayed message becomes the
acknowledgement that the message was read by the end user. The message is automatically
removed from the user’s message queue. The acknowledgement is also recorded as a relationship
to the current user which will be discussed later in this unit.
Always
Messages that use the “Always” setting are not removed when the user presses the OK button on
the message dialog. “Always” messages are intended to stay in a message queue until the message
expires (or the administrator deletes the Notification Message template).
Page 372
Unit 15 – Sending User Notifications
Message Acknowledgements
The relationship named Message Acknowledgement identifies the users that have acknowledged
the broadcasted message.
Page 373
Configuring a Solution
Viewing Acknowledgements
Viewing Acknowledgements
Acknowledgements for a Notification Message are available from the Message Acknowledgements
tab in the relationship grid.
To View an Acknowledgement
1. Open the Notification Message template.
2. If the relationship grid is not in view, select the Hide Tabs button from the tear-off
window toolbar.
3. The list of acknowledged users is displayed.
Tip
The Message Acknowledgement relationship Item stores properties about the acknowledgement.
For example, it might be useful to expose the created_on or modified_on properties in the search
grid as you learned earlier in this course. For more information, see Creating Item Relationships.
Page 374
Unit 15 – Sending User Notifications
Note
System variables always provide 2 fields to set a value. The “Value” field is used to set the current
value the system should use for this variable. “Default Value” is used to reset the current value if
the same system variable is imported into the current system (on a system upgrade for example).
In the example above, 900000 will always be the current value for this variable. If the same variable
name is imported into the system, the Default Value will be used to set the current value, regardless
of the value on the item being imported.
You will learn more about import/export and packaging later in this course.
Page 375
Configuring a Solution
Summary
In this unit, you learned how to create and customize a notification message.
Page 376
Unit 15 – Sending User Notifications
Review Questions
Page 377
Configuring a Solution
Lab Exercise
Goal:
Create a notification message that alerts a user that the system will go off-line at a certain time.
Scenario:
In this exercise, you will create a notification message to alert everyone in the system that the
server will go off-line at a specific time. You will review acknowledgements to make sure everyone
has read and acknowledged the message.
Steps:
1. For testing purposes, decrease the message check interval to 20 seconds.
2. Create a new Notification Message that appears similar to the display shown below. The user
should be able to click on the Message Title to view the aras.com home page. The message
should expire one day from today.
3. Make sure that each user acknowledges the message once and view the acknowledgements.
Note
You may need to provide a CSS override to widen the button above. You can use the following
syntax in the Style CSS field. See Customizing the Standard Template in this unit for more details.
.notification_ok_btn{width:250px}
Page 378
Unit 16 Sending E-mail Notifications
Overview: In this unit you will learn how to send a customized e-mail message when an
Item is promoted to a new life cycle or on a workflow event. You will learn
how to create an E-mail Message Item and configure the Item in a LifeCycle or
Workflow Map.
Objectives: Reviewing Notifications
Creating E-mail Message Items
Using Variables in E-mail Text
Configuring an E-mail in a LifeCycle
Configuring a Workflow Notification
Email
Message
Workflow
Map
LifeCycle
Map
Page 379
Configuring Solutions
Reviewing Notifications
Allow e-mail messages to be generated from:
▫ Lifecycle Transitions
▫ Lifecycle States
▫ Workflow Activities
E-mail Notifications
You can configure notifications from Aras Innovator that will send e-mails to one or more individuals
based on an Item lifecycle or workflow event.
In a lifecycle, e-mail is used to notify selected identities that an item has either entered a specific life
cycle state, or that it is in transition between states. In a workflow, e-mail is used to notify selected
identities that a workflow event has occurred. Common events include an Activity becoming active,
when an assignment reaches an InBasket, or when an Activity is delegated or escalated to another
identity.
Note
In order to use e-mail, your Innovator server must be configured to work with a valid SMTP e-mail
server. The default configuration uses the IIS mail queue (which must be enabled) but you can also
specify a specific server. See the Aras Innovator - Installation Guide for more information.
If an e-mail server is not available (for testing purposes) you can enable the e-mail debug option.
Locate the InnovatorServerConfig.xml file in the Aras server installation directory and remove the
“disabled” setting from the operating parameter of the e-mail-debug-option:
Text files representing the generated e-mails will be now be created in the directory associated with
the temp_folder operating parameter instead of being sent from the SMTP server.
Page 380
Unit 16 – Sending E-mail Notifications
3 5
Name
Name of the E-Mail Message.
From User
Indicates who this e-mail will be from. Choose an existing User or leave blank. Leaving this
field blank means the system will use the currently logged on user as the sender of this
message. Note that all Users should have a valid e-mail address if a reply is needed to the
message.
Subject
The subject of the e-mail message.
Body Plain
To send a plain text message, provide the e-mail message text here.
Body HTML
To send e-mail with embedded HTML tags, provide appropriate text here.
Query String
An XML representation of the current Item is always available to allow you to use variables in
e-mail text. In certain circumstances, you may also want to retrieve other information to use
in an e-mail which requires the use of Adaptive Markup Language (AML).
Page 381
Configuring Solutions
Page 382
Unit 16 – Sending E-mail Notifications
Page 383
Configuring Solutions
1 2
Name
Name of the E-Mail Message.
Of ItemType
If provided, limits the use of this E-Mail Message to this ItemType only. Note that Life Cycle
Maps can be shared among ItemTypes. If this is the case, and the e-mail only applies to a
specific ItemType provide the ItemType name. Leaving this field blank means it will work
with any ItemType that is used with this LifeCycle.
Name
Destination Identity for this message. If a group identity is provided, all members of the
identity will receive the e-mail message.
Page 384
Unit 16 – Sending E-mail Notifications
4. Close the Configure E-Mail dialog and save changes to the LifeCycle Map. Note that the e-
mail configuration is not saved until the LifeCycle Map is saved to the database.
You can test the configuration by promoting a Design Request to the In Review state.
Page 385
Configuring Solutions
Configuring a Workflow
Notification
1 2 3
Event
The following events are available to indicate when an e-mail should be sent:
On Activate - when the workflow reaches this activity.
On Assign – when an assignment is generated for this activity.
On Refuse – when the assignment is refused by a user.
On Delegate – when the user delegates an assignment to somebody else.
On Vote – when the user votes on an assignment.
On Remind – when an overdue reminder is triggered based on the duration
settings.
On Due – when the activity is due to be processed based on duration settings.
On Escalate – when the activity is escalated to another identity.
On Close – when the workflow exits this activity.
.
Target
All Assignments - All assignees listed in the Assignments tab for this activity. If
there is an assignee which is a group identity, all members of that identity will
receive this notification.
Open Assignments - All assignees that have not completed the activity. Typically
Page 386
Unit 16 – Sending E-mail Notifications
In this example, a simple E-mail Message Item has been created to notify a user to review a Design
Request. The following has been configured on the Review Request Activity of the Design Request
Workflow:
Page 387
Configuring Solutions
<AML>
<Item type=‘Design Request’>
<_item_number>
DR-000100
</_item_number>
<state>Released</state>
<_title> Item Properties
Suggestion…
Current Item </_title>
NPR-000100 </Item>
</AML>
Using Variables
Every Item in Aras Innovator is described using an extended form of XML known as Adaptive Markup
Language (AML).
You can use specially formatted variables in the Subject and Body Text of an E-Mail message to
provide information from the system as part of the message.
In the example above, you may want to include the Design Request number, state or priority as part
of the message to be sent to users when a Design Request is promoted, or when it is assigned to
certain individuals.
Page 388
Unit 16 – Sending E-mail Notifications
Example:
Please review item: ${_item_number}
To access a property, use the syntax ${property_name} – where the property name identifies a
valid property defined in the ItemType of the Item. In the example above, the current ticket number
will be substituted in the e-mail message when it is generated.
2. Replace the Notify in Review message configured in the In Review state of the Design
Request LifeCycle map.
Page 389
Configuring Solutions
Example:
You have been assigned Design Request:
${Item[@type="Design Request"]/_item_number}
Workflow notifications support a more robust syntax using the XPath standard to locate information
in the Item AML.
In the example above, the ticket_number property of the Design Request Item will be displayed in
an e-mail message.
Note
A full discussion of XPath is outside the scope of this class, but you can learn about the XPath
standard from many sources on the web.
Page 390
Unit 16 – Sending E-mail Notifications
2. Replace the Request Flow Submit message in the Verify Activity of the Design Request
Workflow Map.
Note
There are also four system variables available that can be used for any e-mail message.
Variable Definition
$[USER] The current logon name
$[ALIAS] The alias identity of the user
$[DATE] String containing today's date
$[TIME] String containing the current time
Page 391
Configuring Solutions
Summary
In this unit you learned how to enhance a workflow.
Page 392
Unit 16 – Sending E-mail Notifications
Review Questions
Where are the four places you can configure an e-mail notification?
How can you notify a user that an assignment has been delegated to him/her?
Page 393
Configuring Solutions
Lab Exercise
Goal:
Be able to send an e-mail notification from a LifeCycle and a Workflow.
Scenario:
In this exercise, you will create notifications for the Change Request to alert users about Life Cycle
state changes and pending assignments.
Steps:
1. The Creator should receive an e-mail message that resembles the following when a Change
Request is created. Configure the email message on the Preliminary (starting) life cycle state.
(The underlined text below is used to indicate where you will need to use variables.)
Message:
Change Request CR-000200 has been created.
Reason: Printer assembly needs to be replaced
Cost$: 200
Please submit for review.
2. The Review Request Activity of the Change Request workflow should send the following
message to the CRB group.
Page 394
Unit 17 Using Secure Social Visual
Collaboration
Overview: In this unit, you will learn how to collaborate on the design, development and
review of Part and Document items. Aras Secure Social Visual Collaboration
(SSVC) allows you to create secure text messages associated with an item that
can be viewed and commented on by other users in the system. Three built-in
file viewers allow you to display, markup and exchange ideas easily using the
provided markup tools. You will also learn how to categorize messages and
create and manage discussion forums to organize content in many different
ways.
Objectives: Understand the functional options available in SSVC
Participating in Discussion Forums
Create a Secure Social Message
Reply to a Secure Social Message
Sort and Search Secure Social Messages
View and Markup a Document or Drawing
Create a Snapshot Comment
Manage My Discussion Forums
Page 395
Configuring Solutions
Collaboration Options
Secure Social Messages
Visual Markup
My Discussion Forums
Visual Markup
Aras provides three built in file viewers that allow you to display standard PDF's, 3D PDF's of CAD
drawings created by the Aras Converter or standard image files (e.g. jpg, gif, etc.) A viewing markup
tool is incorporated into the file viewer to allow you to highlight, add comments or notations that
are visible to other users as a "snapshot". The original file is untouched, all snapshots are stored
separately for each item.
My Discussion Forums
Each user also has access to a My Discussions panel that allows conversations to be organized by
Bookmarks including author, user flags or content. A user can also create a named Forum to store
references to items being discussed as well store saved searches of collections of items in the
conversation.
Page 396
Unit 17 – Using Secure Social Visual Collaboration
Each comment can also be flagged by one or more users and tracked later to highlight important
ideas the discussion.
Secure Social Messages will also appear in the My Discussion panel based on Bookmark settings.
Page 397
Configuring Solutions
In this example, a Part item has a relationship to a Document item and a CAD Document item which
both contain message comments as well as visual markups. When the user views the discussion
panel on the Part item they see any comments from the Part item as well as messages and
markups from the Document item and the CAD Document item .
This powerful grouping feature allows you to participate in and review the discussion about all
aspects of the currently selected parent item.
Message and file aggregation is a configurable feature that can be modified by an administrator.
You will learn more about message and file aggregation in this course.
Page 398
Unit 17 – Using Secure Social Visual Collaboration
Display Form
Displays the item main form window.
Display 3D PDF
If a 3D PDF file has been attached to this item then the file can be viewed using the built in 3D PDF
viewer.
Page 399
Configuring Solutions
Page 400
Unit 17 – Using Secure Social Visual Collaboration
Discussion Toolbar
Secure Social
Message
Secure Social
Reply
Each message displays the message creator, message date and time, as well as the referenced item
version and current lifecycle state. You can click on the item name to display the corresponding tear
off window for that item.
Note
An item does not require lock access to add a comment. Items locked by other users can also have
comments added.
Page 401
Configuring Solutions
3
2
1. Enter the desired text in the add comment box. Messages are stored in the database using
the Text data type which allows for virtually any size message.
2. To expand the comment box you can drag the corner marker.
3. Press the Add Comment button to add the comment to the discussion.
Page 402
Unit 17 – Using Secure Social Visual Collaboration
Replying to a Message
2
3
Replying to a Message
Existing comments can be replied to by using the Reply message feature.
To Reply to a Message
Login as user William Hunt (whunt), password = innovator.
1. Click the Reply link on the comment that you created on the previous page.
2. Enter the reply text in the comment box.
3. Click the Add Reply button to add the response.
Page 403
Configuring Solutions
Flagging/Unflagging A Message
Flag Count
Flagging/Unflagging a Message
You can and other users can Flag a message to bring attention to a specific comment in a discussion.
Flagged messages can later be tracked using Follow options in the Discussion panel and the My
Discussions panel.
To Flag a Message
Click the Flag link. A Flag indicator with the number of users who have flagged this comment
appears on the message. You can click on the flag count to see who else has flagged this message.
To Unflag a Message
Click the Unflag link. You will be removed from the flagged user list.
Page 404
Unit 17 – Using Secure Social Visual Collaboration
Erasing a Message
Erasing a Message
To remove a message you have created use the Erase Message option. The message text will be
removed but the message entry will remain as part of the history of the discussion.
To Erase A Message
Click the Erase link then press OK on the confirmation dialog to remove the message.
Note
Only the message creator or and Aras administrator can erase a message. If a user attempt to erase
someone else's message the following appears:
Page 405
Configuring Solutions
Sorting Messages
Conversation Standard/Review
Thread Date Display
Message Date
Sorting Messages
Comments can be sorted in several ways as well as being displayed in Standard or Review mode.
To Sort Messages
Conversation (Default)
Messages are sorted by the time the message was posted. The most recent message is on top.
Thread Date
Messages are sorted by date with the most recent on top. Determination of “recent” is based only
on the time of the message itself, not on any replies. The messages are displayed in a threaded style.
Message Date
Messages are sorted by date with the most recent on top. Determination of "recent" is based only
on the time of the message itself, not on any replies. The messages are displayed in a flat style with
all replies listed at the same level as Comments.
Page 406
Unit 17 – Using Secure Social Visual Collaboration
Filtering Messages
Basic Search
Advanced Search
Advanced
1
2
3
4
5
6
Filtering Messages
Messages can be filtered using Basic or Advanced mode to locate specific comments based on their
content.
Type
All Comments – search in all messages.
Text Comments Only – only search for non "snapshot" messages.
Snapshot Comments Only – only search for messages containing a snapshot.
Audio Messages Only – only search for comments containing Audio files.
Video Messages Only – only search for comments containing Video files.
Automated Messages Only – only search for auto messages configured by an
administrator.
Source
All – search in all messages.
This Item Only – search for messages related to the current item.
Page 407
Configuring Solutions
From
Anyone or a specific user .
Timeframe
Within the last - allows the user to specify a number and a time value (Minutes, Hours,
Days, or Months).
Date Range – specify a range of message create dates.
Revision
Search based on this related item revision number.
State
Search based on the lifecycle state of the this related item.
Page 408
Unit 17 – Using Secure Social Visual Collaboration
Viewer Markup
Copyright © 2014 Aras All Rights Reserved.
Aras provides built in viewing software as well as a small set of incorporated markup tools. No
changes are ever made to the actual source file – markups are stored independently of the file in the
Aras database.
Page 409
Configuring Solutions
3D PDF
Image
Standard PDF
Adobe PDF files which can include text and 2D images.
Image
Standard image file types including JPG, PNG, or GIF file.
3D PDF
Three dimensional drawing files (HWF) created by the Aras Conversion Server using the HOOPS
converter.
Page 410
Unit 17 – Using Secure Social Visual Collaboration
Image
3D PDF
For a complete list of the Viewer toolbar options see: Just Ask Innovator Help
Page 411
Configuring Solutions
Viewing a File
Viewing a File
The Item Side Bar shows available viewers based on the content uploaded into that item. In this
example the Printer roller you created earlier in this course is opened for display. The Item Side Bar
shows the PDF file that is contained in the Document item related to this Part.
To View a File
Open the Print roller Part item (P404-011) that we created in a previous unit of this course. (If you
have not created this item you can do it now – make sure to associate the Part to a Document item
that has the P404-011 Printer Specification.PDF uploaded. See details earlier in this course.)
Page 412
Unit 17 – Using Secure Social Visual Collaboration
Highlighted
Text
Markup
Toolbar
Scribble
Markup Toolbar
The Markup Toolbar allows you to use the Scribble, Highlight or Label tools.
When you click on a Tool the Markup Options dialog lets you select the color or other properties of
that tool.
In this example, a standard PDF file is being marked up using the Markup Toolbar. A portion of text
is highlighted to be included in a snapshot comment.
Page 413
Configuring Solutions
Include snapshot
with comment
Login as user William Hunt and Tom Chan so you can add further replies to the discussion or open
the file viewer again to make additional annotations to be saved in additional snapshot comments.
You will be able to view the conversation in the My Discussions panel described next.
Page 414
Unit 17 – Using Secure Social Visual Collaboration
Defining My Discussions
3
Defining My Discussions
The My Discussions panel shows all the social content a user is following and provides a powerful,
configurable mechanism to aggregate social content, including files, to related items. It also includes
discussion content and files from related Documents and CAD Documents.
You can filter by Bookmarks to follow messages created by you and others as well as comments that
have been flagged.
My Discussions also supports the use of named Forums which allow you to add items or item saved
searches as filters to further organize content.
You access My Discussions from the TOC, by navigating to My Innovator --> My Discussions.
Page 415
Configuring Solutions
Reviewing Bookmarks
Reviewing Bookmarks
Bookmarks allow you filter messages in My Discussions to restrict content in comments you are
interested in.
All Bookmarks
Uses all of the filters configured in My Discussions to create the message list.
Messages from Me
Only displays messages you have created.
Flagged By Me
Only shows messages that are flagged by you.
MESSAGES FROM
Shows messages created by one or more selected users.
FLAGGED BY
Shows messages flagged by one or more selected users.
FORUMS
Shows messages from related items that have been added to a named Forum or are the result of a
saved item search.
Page 416
Unit 17 – Using Secure Social Visual Collaboration
ITEMS
Only shows messages related to one or more items you have added to your Bookmarks group.
Note
When you display the My Discussions panel the default Bookmark filters are used to construct the
discussion list. "All Bookmarks" is the typical option assigned by the Aras administrator as the
default setting.
To change the default right click on any of the bookmark filters and choose the Set Default action.
Page 417
Configuring Solutions
Following a Discussion
Following a Discussion
You can set Bookmarks to view and follow messages created by (or flagged by) other users in the
system. This enables you to filter conversations by specific individuals.
To Follow a Discussion
Messages From
1. Click the Follow button to display the Follow dialog box.
2. Choose one or more users to follow by checking the box in the first column before their
name. The selected users will then appear as filters in the MESSAGES FROM bookmarks
section. Clicking on a single filter will display only messages from that selected user.
Flagged By
Follow the steps above and select the checkbox in the second (Flag) column. The selected users will
then appear as filters in the FLAGGED BY bookmarks section. Clicking on a single filter will display
only flagged messages from that selected user.
Page 418
Unit 17 – Using Secure Social Visual Collaboration
To Create a Forum
1. Click the Create Forum button.
2. Enter a name for the Forum in the field provided.
3. Click the Share… button to choose who will have access to this Forum. The default Identity
World lets everyone see and follow the Forum in My Discussions.
Page 419
Configuring Solutions
Page 420
Unit 17 – Using Secure Social Visual Collaboration
Page 421
Configuring Solutions
Summary
In this unit you learned how to use Secure Social Visual Collaboration.
Page 422
Unit 17 – Using Secure Social Visual Collaboration
Review Questions
What three built in viewers are provided as part of Secure Social Visual Collaboration?
How do you share your markup annotations with other users in the system?
Where can you see all of the Discussions you or others are part of?
Page 423
Configuring Solutions
Lab Exercise
Goal:
Be able to create Secure Social Messages that include Snapshot comments. View the My
Discussions panel to display and filter the conversation.
Scenario:
In this exercise you will simulate a Discussion on a new Part item and use a viewer and markup tools
to create snapshot comments about the Part.
Steps
1. Login as the admin and create a new Part item using the suggested details below:
2. Create a new Document item and upload an image file (.jpg, .gif, etc.) into the Document item:
Page 424
Unit 17 – Using Secure Social Visual Collaboration
3. Display the Discussion Panel for the Document item and enter some comments
4. Create a relationship from the Document item to the Part item you created above.
5. Click the Show Discussion icon (top) in the Item Side Bar to display the Discussion panel. The
Document comments will display in the Discussion panel as an aggregated message.
6. Click the Image Viewer icon in the side bar to display the uploaded image in the associated
Document item
7. Add some markup to the image and then save a Snapshot Comment
Page 425
Configuring Solutions
8. Access My Innovator -> My Discussions from the TOC to display the conversation.
9. Change the Display from Standard to Review and note the change.
10. Try the Bookmark filters to display different comments in the discussions.
Page 426
Unit 18 Enabling Secure Social Visual
Collaboration
Overview: In this unit, you will learn how enable Secure Social Visual Collaboration (SSVC)
on a new or existing ItemType. Enabling SSVC on an ItemType allows users to
create discussions which can include visual markups and be followed in one or
my discussion forums by other users. You will also learn how to aggregate
comments and files created on items that related to a parent item and how to
configure the basic discussion forum options.
Page 427
Configuring Solutions
Aggregated
Parent Item
Discussion
In the example above, the "Parent" item is related to 3 other items (either as related items on more
or more Relationship Grids or as the target item of a configured Item data type property). And
discussion on the related items is "rolled up" or aggregated into the Parent item discussion.
Out of the box, a Part item in Aras can be related to BOM Part, CAD Document and Document items.
Any comments created on these related items are also displayed in the Part Discussion Panel.
Message aggregation also supports "recursive" lookups. For example a starting Part item may be
related to a BOM Part. That BOM Part may then be related to other BOM Part items. You can
configure how many levels of recursion Aras should perform to create the aggregated discussion.
In this unit you will review an existing configuration for Parts and Documents. You will then learn
how to configure other ItemTypes to use message aggregation.
Page 428
Unit 18 – Enabling Secure Social Visual Collaboration
Aggregated
Viewers Parent Item
PDF Image
CAD Document Document
Document
In the example above a Parent item is related to a CAD Document item which contains a CAD file, a
Document item which contains a PDF file and another Document item which is represents an image
file.
All three viewers appear on the Parent item sidebar because the Parent item has been configured to
use File aggregation.
This make it easy for a user to quickly access the viewing and markup tools for any files that are
related to the Parent item.
Page 429
Configuring Solutions
Discussion
Template
Discussion
Feed Template
Template View
File Selector
Template
Copyright © 2015 Aras All Rights Reserved.
Each enabled ItemType can support one or more Discussion Templates which can be individually
styled using a Discussion Template View.
Each Discussion Template then contains one or more Feed Templates which indicate what messages
will be aggregated from items related to the current ItemType.
In addition, each Feed Template can then be configured with one or more File Selector Templates
which indicate which files should be aggregated and available on items of the current type.
Page 430
Unit 18 – Enabling Secure Social Visual Collaboration
2 3
4 5
Class Path
If the enabled ItemType has a defined Class Structure (classification) then a different
Discussion template can be defined for each subclass. This allows you to customize
message and file aggregation based on the selected Class Path of the item.
File Selection Depth
Controls file lookup recursion for file aggregation. If the enabled ItemType allows
relationships to other items which are related to files this number indicates how many
levels of recursion. -1 indicates there is no limit.
Item Selection Depth
Controls message lookup recursion for message aggregation. If the enabled ItemType
allows relationships to other items which contains discussions –and the related items are
then further related to other items this number indicates how many levels of recursion. -
1 indicates no limit.
Feed Template
Defines what related items should be used for message and file aggregation. Discussed
later in this unit.
DiscussionTemplateView
Contains style definition options for the Discussion Panel and tooltips. Discussed later in
this unit.
Page 431
Configuring Solutions
Page 432
Unit 18 – Enabling Secure Social Visual Collaboration
4
5
Feed Type
Board or Discussion. Each ItemType enabled for Secure Social Messages must contain a
Board feed type so that messages can be displayed for the items created from this
ItemType. The Discussion feed type is used to configure messages from items related to
items of this type (discussed later in this unit).
History Events
Audit trail events can automatically be captured as part of an item discussion and
displayed in the Discussion Panel. History Events are only available for Board feed types.
The following are typical History Event options:
*(asterisk) – show all audit trail events in the Discussion Panel
event_name – name of event to be captured (e.g. Add, Update, Promote, Delete) – to
capture more than one event use a | symbol – Add|Update|Promote
Reference
A reference to an item, relationship, or property. Some typical references include:
this - show messages from the current item
relationshipname(property_name) –name of a relationship ItemType with related
property - messages from a related item will be included in the aggregation
item_property – name of an Item data type property – messages from the targeted item
Page 433
Configuring Solutions
Page 434
Unit 18 – Enabling Secure Social Visual Collaboration
2
3
Page 435
Configuring Solutions
Page 436
Unit 18 – Enabling Secure Social Visual Collaboration
1 2 3
Filter
If blank, then any file indicated by the reference below is included in the file aggregation.
If a filter is supplied, this indicates which types of files should be included in a file
aggregation. All other file types will be ignored. The filter is configured using the GUID of
a FileType item. To locate a FileType select Administration -> File Handling -> File Types.
Select a FileType and right click to view Properties. The GUID of the FileType item is
displayed:
To enter more than one FileType GUID use a | symbol between the id's.
Page 437
Configuring Solutions
Reference
An ItemType/Property reference to the File item representing the file. For standard
relationships this takes the form of:
RelationshipName(related_id)
If an Item property of type File has been configured directly on the enabled ItemType the
name of the property can also be specified.
In the example above, the Document ItemType uses a relationship named Document File
which contains the property related_id which points to the File item.
Tooltip Text
Text to be displayed when a user hovers over a viewing tool icon in the item side bar...
You can enter standard text to be displayed to the user along with parameter variables
that are substituted in the text. Some common examples:
${File:filename} – displays the name of file
${ItemType:label} – displays the ItemType label
${Item:keyed_name} – displays the keyed name property of the current item
Page 438
Unit 18 – Enabling Secure Social Visual Collaboration
Design
Request
Comments
Customer
Comments Aggregated
Discussion
Document
Comments
Page 439
Configuring Solutions
Note
Once an ItemType is enabled for Secure Social Messages a new Discussion Template is automatically
created under the Secure Social tab:
Page 440
Unit 18 – Enabling Secure Social Visual Collaboration
Page 441
Configuring Solutions
Aggregated
Viewers
The item side bar will display the appropriate viewers based on the files attached to the Design
Request.
Page 442
Unit 18 – Enabling Secure Social Visual Collaboration
Creating a FileSelectorTemplate
The File Selector Template indicates what kinds of files should be collected based on a filter and a
reference. Because the Document ItemType is preconfigured to support file aggregation out of the
box we only need to configure the Design Request File relationship.
To Create a FileSelectorTemplate
1. Select the first Feed Type (Board) from the Design Request Discussion Template.
2. (Optional) Supply one or FileType filter GUID's in the Filter field. In this example the GUID's
for the PNG and GIF FileTypes have been supplied.
3. Enter the reference definition for the Design Request to File relationship-
Design Request File(related_id).
4. Use the standard Tool tip Template provided.
Page 443
Configuring Solutions
Style
An rgb color value in the field provided using the syntax:
background_color:rgba(red_value, blue_value, green_value);.
Secondary Icon
Discussion comments normally display the icon associated with the ItemType of the item.
You can override this by supplying an alternate icon.
Page 444
Unit 18 – Enabling Secure Social Visual Collaboration
Default Bookmark
Starting Bookmark for My Discussions for users in this Identity. Note that each user can
override this default setting.
Default Number of Replies
Maximum number of replies to show in Discussion threads.
Note
If the World identity is selected changes to the settings above only apply to users who were created
after the changes were made. Existing users are not affected.
Page 445
Configuring Solutions
1. Select Administration -> Secure Social -> Forums from the TOC.
2. Locate the Forum to be modified in the search grid. Forums can be created by you or
individual users.
3. Open the Forum for edit and select the Must View By tab.
4. Add the required Identities to the relationship list and save changes.
To Deactivate A Forum
Select the appropriate Forum use the Promote action to set the Forum to Inactive.
To Delete a Forum
Select the appropriate Forum and use the Delete action to remove the Forum. When a Forum is
deleted it is automatically removed from any users Bookmarks without any warning.
Page 446
Unit 18 – Enabling Secure Social Visual Collaboration
Summary
In this unit you learned how to enable and configure Secure Social Visual Collaboration on a new or
existing ItemType.
Page 447
Configuring Solutions
Review Questions
What template is automatically created when you enable an ItemType for Secure Social Messages?
How would you configure a Board Feed Type to display a history event as a comment when a user
changes an item or performs a life cycle promotion?
What must you obtain if you want to apply a filter to a File Selector Template?
Where can you configure the color of the item side bar?
Page 448
Unit 18 – Enabling Secure Social Visual Collaboration
Lab Exercise
Goal:
Be able to enable an ItemType for Secure Social Messages and configure a Discussion Template to
aggregate messages.
Scenario:
You will enable the Change Request and Product ItemTypes to support Secure Social Messages and
then configure a Discussion Template to support message aggregation from both related Products
and a Customer.
Steps
1. Edit the Product ItemType and enable Secure Social Messages.
2. Edit the Change Request ItemType and enable Secure Social Messages.
3. Edit the default Discussion Template on the Change Request ItemType and create a new Feed
Template.
4. Modify the Board Feed Type to show all History Events in the Discussion Panel.
5. Configure a Discussion Feed Type that references the related_id property of the Change Request
Product ItemType. What is the reference? _______________________________________
(See examples the appropriate reference in this unit.)
6. Add another Discussion Feed Type that references the related id property of the Change
Request Customer ItemType.
7. Save changes and test the configuration by adding some comments to a Change Request and a
related Customer and Product(s).
Page 449
Configuring Solutions
Page 450
Unit 19 Creating Multilingual Solutions
Overview: In this unit you will learn how to create a solution that supports multiple
languages and multiple time zones. You will also learn how to configure the
Corporate Time Zone to for scheduling and effectivity searches to work
correctly.
Language Locale
Page 451
Developing Solutions
All text is stored in the Innovator database using Unicode (2 bytes per character).
Note
**Care should be taken if multiple language instance data is supported in a solution. This will be
discussed later in this unit
Page 452
Unit 19 – Creating Multilingual Solutions
Note
Currency settings are not currently supported –Innovator only stores the number in the db – no
localized currency information is stored.
Page 453
Developing Solutions
Defining Components of a
Multilingual Solution
Server Culture Code
Language Item
Locale Item
Default Language and Locale Variables
Client Region and Language Settings
Multilingual Labels
Multilingual Properties
In this unit you will learn how to configure each component to support a localized version of a
solution.
Note that one installation of Aras Innovator can support more than one localized language at a time.
Page 454
Unit 19 – Creating Multilingual Solutions
The Server Culture code determines the default culture setting for the server. Note that this setting
may be different than the region setting on the server.
Note
The Innovator server should be restarted after this change is made.
Page 455
Developing Solutions
1
2
3
4
5
Code
ISO Code identifying language – list available at
http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes.
Name
Name of the language Item.
Suffix
Used to create a table name extension (discussed in this unit). Typically this is the same as
the language code with an underscore prefix.
Collation
Any custom sorting rules that will be used in the database.
Direction
Direction text is read - Left to Right or Right to Left
Page 456
Unit 19 – Creating Multilingual Solutions
Code
Culture code using the format culture-LANGUAGE
Name
Name of the Locale Item.
Language
A Language Item that has been previously created in the database.
Page 457
Developing Solutions
One Default Language is supported by the system and used as the standard text if no localized
translations are found. By default, English is the Default Language in a new Innovator installation.
To change the Default Language, access the DefaultLanguage and DefaultLocale System Variables
from the TOC and edit their values.
Page 458
Unit 19 – Creating Multilingual Solutions
A user will need to set their preferred browser language/locale to see the localized translations.
Internet Explorer setting is shown above.
This setting also changes the Date and Time format as well as Number Format based on the
language/locale.
Note
Currency format is currently not supported.
Firefox Setting
Page 459
Developing Solutions
Once an additional Language has been configured a button will appear next to any Label field in the
system.
When you press the button a dialog box will appear allowing for a localized translation of the label.
Note
If a translation is left blank, then the Default language is used
Page 460
Unit 19 – Creating Multilingual Solutions
Suffix
The Innovator database stores translated labels by Language in a new column using the label name
with a suffix (defined in the Language Item discussed previously).
In this example, the label for an ItemType for the French language is stored in the database with the
–FR extension on the column name.
Page 461
Developing Solutions
Aras Innovator does support the ability to store translated instance data for an Item. These are
actual property values for an Item that are stored as translated text based on the Languages
configured.
When a user views and edits a field on a form they will be editing, the property value of the selected
client language appears.
You can also allow a user to edit more than one language in a form. If you change the field type on
the form to Multilingual String an ellipsis button will appear next to the field allowing the user to see
all languages as shown above.
Note
Some restrictions apply to Multilingual Properties:
You should also think carefully before considering maintaining translated instance data.
Page 462
Unit 19 – Creating Multilingual Solutions
When a multilingual property is defined a new column with the language suffix is added to the
ItemType table.
In this example the name property data will be stored in both the default language and French.
Page 463
Developing Solutions
<menubar id="main_menubar">
<menu id="file_menu" name="Fichier">
<item id="new" name="Nouveau" disabled="true"/>
<item id="save" name="Save" disabled="true"/>
<item id="saveAs" name="Sauvegarder " disabled="true"/>
1. Locate the Innovator/Client/xml directory and make a copy of the directory and contained
files.
2. Name the copied directory xml.[language_code] where language code is the language Item
you have created in the database. In this example, fr (French) is the alternate language
code.
3. Open the XML files contained in the copied directory to localize the menu text, etc. Any
entry that is not translated will revert back to the default directory (English in this example).
Page 464
Unit 19 – Creating Multilingual Solutions
To accommodate different time zones requires setting a chosen Corporate Time Zone as described
in this unit.
Page 465
Developing Solutions
Using CorporateTimeZone
Recommended to provide single time standard
Headquarters
Remote Office
Corporate Time
10:00 AM
Local Time
10:00 AM Corporate Time
10:00 AM
Local Time
2:00 PM
Copyright © 2014 Aras All Rights Reserved.
Corporate Time Zone is recommended if your Innovator server will be accessed by clients in
different time zones.
Corporate Time Zone sets one “universal” time for the enterprise so that everyone uses the same
“Corporate” time in their solutions regardless of the local time zone. This is important for timed
events and scheduling.
Page 466
Unit 19 – Creating Multilingual Solutions
Setting CorporateTimeZone
Add System Variable CorporateTimeZone
(no spaces):
Page 467
Developing Solutions
Time
Central Pacific Standard Time Mountain Standard Time W. Australia Standard Time
Mountain Standard Time W. Central Africa Standard
Central Standard Time (Mexico) Time
Central Standard Time (Mexico) Myanmar Standard Time W. Europe Standard Time
N. Central Asia Standard
China Standard Time Time West Asia Standard Time
Dateline Standard Time Namibia Standard Time West Pacific Standard Time
E. Africa Standard Time Nepal Standard Time Yakutsk Standard Time
E. Australia Standard Time New Zealand Standard Time
E. Europe Standard Time Newfoundland Standard Time
E. South America Standard Time North Asia East Standard Time
Eastern Standard Time North Asia Standard Time
Note
Make sure to restart the Innovator server and all browsers when setting Corporate Time Zone
Page 468
Unit 19 – Creating Multilingual Solutions
If the user logged on to a client in a time zone other than the CorporateTimeZone a second clock
appears showing both local and corporate time.
All Items created in the database will be marked with the corporate time.
Page 469
Developing Solutions
Aras has created several language packs that include translated labels. You can import these
translations in a multilingual installation to save time when setting up a localized system.
See the Configuring Localization and Internationalization support document for more information.
Page 470
Unit 19 – Creating Multilingual Solutions
Summary
In this unit you learned how to add a new language to the Innovator server and add localized
translations to labels and instance data.
Page 471
Developing Solutions
Lab Exercise
Goal:
Be able to define a new Language and support translation of labels (and instance data) in the new
language.
Scenario:
In this exercise, you will add a new Language and Locale and customize the Customer Form.
Steps:
1. Add a new Language (_es) and Locale for Spanish that uses the culture code es-ES (Spanish-
Spain).
2. Configure the Customer Form so that it displays the labels in Spanish when the client region and
language is Spanish(Spain) in the control panel.
3. The following translations are provided. If you are more comfortable in another language use
that instead.
Name Nombre
Phone Telefono
Fax Facsimile
Contact Name Contacto nombre
Address Dirección
City Ciudad
State Estado
Country Pais
Zip Code Código de zip
Website Sito web
Description Descripción
4. Change the name property of the Customer type to support a Multilingual String. What
happens in the database when you make this change?
__________________________________________________________________________
6. Using the AML Studio tool retrieve the Customer Items and note the i18n tags assigned to the
multilingual string data type.
7. How are dates and number displayed in the AML response? What action could you use to
display numbers and dates in their localized format? __________________________
Page 472
Unit 20 Packaging a Solution
Overview: In this unit you will learn how to package the solutions you have built in this
course so they can be exported and moved to a different database. You will
build a package definition, add Items and export the package to the file
system. You can then import the exported files to a different database.
Package
Definition
Page 473
Configuring a Solution
Moving a Solution
Once a solution is ready for testing, a copy is typically moved to a Test/QA server for assessment of
any problems, etc... When the solution has been approved for general use, it is then moved to the
Production server where end users begin to use the solution. Changes are never made to the
Production server until they have been verified through careful testing.
Your exact configurations may differ (and may be more detailed), but this general configuration is
recommended for developing/deploying solutions.
In this unit, you will learn how to package a solution so that it can be transported to a new server.
You will also learn some best practices for moving solution elements.
Page 474
Unit 20 – Packaging a Solution
Package Overview
Package
Definition
Package Groups
Package Elements
As you have discovered, everything you create in Aras Innovator is an Item. The templates you have
created in this course to define ItemTypes, RelationshipTypes, Forms, etc. are all Items that define
your solution.
As you also learned earlier in this course, all Items are described using Adaptive Markup Language
(AML). In effect, the Innovator database is a large collection of AML documents that describe the
configuration of your solution as well as the data. To move a solution to another system requires
careful planning to determine what components comprise your solution.
Package Definition
The first step in moving a solution is to create a Package Definition. A Package Definition is a
collection of Package Groups that contain Package Elements. Each Package Group defines a
collection of templates that are exported from the database.
In the example above, the Package Definition contains an ItemType Package Group. That group
contains one Package Element which is the Design Request ItemType. Each subsequent group
contains respective element(s) for that group (Workflow, LifeCycle, RelationshipType, etc.).
Page 475
Configuring a Solution
Page 476
Unit 20 – Packaging a Solution
Core
PLM Solution
Design
Request
Every solution in Aras Innovator is dependent on the Core Package. The Core Package is installed
when you first install Aras Innovator. Because every solution relies on this package, the dependency
is implied and does not have to be defined in a Package Definition.
In the example above, the PLM Solution is dependent on Core but that dependency is implied and
does not have to be configured in the PLM Solution Package Definition.
The Design Request solution we have built in this course uses elements from the PLM Solution
package so it must be defined in the Design Request Package Definition.
Page 477
Configuring a Solution
Package Dependency
Note
You can also add and remove dependencies in a Package Definition once it is created.
Page 478
Unit 20 – Packaging a Solution
Select the desired Package Definition and click the OK button to add the Package Element to the
definition.
Note
A Package Element can only belong to one Package Definition. If you attempt to add the element to
more than one definition an error will occur.
Page 479
Configuring a Solution
Searching on the modified_on property for each element type. If you know when
development began for your solution you can use this date/time filter to determine what
might be relevant.
Starting with the ItemType(s) that comprise your solution and noting each element that
relies on this ItemType (Form, LifeCycle, Relationship, etc.).
Using the Where Used browser to determine where an element is used in other elements.
Using the Structure Browser to display the structure of related elements.
Keeping a complete inventory as you create each element in your solution can save time when it
comes time to move the solution.
*You should not package any ItemTypes that have the “Is Relationship” option selected. These
ItemTypes are automatically included in the definition of the RelationshipType element.
Page 480
Unit 20 – Packaging a Solution
** You should not include any Lists that have been generated to bind a set of PolySources to a Poly
ItemType. These Lists have the same name as the Poly ItemType and must be newly generated in
the destination database.
It is also typically not recommended that you include Users and User Aliases in a Package Definition.
Including Users in a package makes your solution less generic and ties your solution to a set of pre-
defined individuals that must always exist in production.
Page 481
Configuring a Solution
In this example, three Form elements have been included in the Form Package Group which is part
of the Design Request Package Definition.
Page 482
Unit 20 – Packaging a Solution
Reviewing Dependencies
In this example, one dependency has been configured for the Design Request Package Definition.
Page 483
Configuring a Solution
Exporting a Package
AML Files
Innovator Database
File System
Copyright © 2014 Aras All Rights Reserved.
Exporting a Package
Once the Package Definition is complete, the package can be exported using the Export utility. This
utility is a separate executable named export.exe that is available on the Aras Innovator CD.
The Export utility allows you to select a Package Definition from the database and create a package
folder structure in the file system. Each template type (ItemType, Form, etc.) becomes a separate
subfolder. Within each subfolder, each exported Item is represented as an AML file with the same
name as the exported Item.
In the example above, three Form definitions have been exported and are contained in the Form
subdirectory. Note the remaining subfolder names – each represents a kind of exported Item from
the database.
Page 484
Unit 20 – Packaging a Solution
1
3
2
Page 485
Configuring a Solution
Export To:
The directory location for the exported AML files.
Export Referenced Items
If a referenced element in another package is encountered while exporting an Item, this
option will allow the referenced element to be exported as well. This is typically not
recommended – the Package Definition should be configured with appropriate package
dependencies as we discussed earlier in this unit.
References to Unknown Packages
Remove Silently – if an unknown referenced element is encountered exporting an Item, the
Item is removed from the export and no errors occur.
Page 486
Unit 20 – Packaging a Solution
Page 487
Configuring a Solution
Note
A new log file is created for each export session. If you perform more than one export before
closing the Export utility, the status messages are appended to the same log file.
Page 488
Unit 20 – Packaging a Solution
<imports>
<package name="Design Request"
path="Design Request\Import">
<dependson name="com.aras.innovator.solution.PLM" />
</package>
</imports>
The manifest file contains the package name and the top level directory location where the
exported AML files are stored. Each subdirectory under the “Import” directory is the name of a
Package Group (ItemType, Form, RelationshipType, etc.)
The manifest also includes the dependencies that have been configured in the Package Definition so
that referenced Items can be resolved on import in the database.
Page 489
Configuring a Solution
Importing a Package
File System
Manifest File
Innovator Database
Importing a Package
Package export is accomplished using a separate executable named Import.exe that is available on
the Aras Innovator CD.
The Import utility uses an existing manifest file to locate the AML export files. Each file is then
parsed to create (or edit) new Items in the destination database.
The Import Utility imports Package Groups from a Package Definition in the following order:
Page 490
Unit 20 – Packaging a Solution
Page 491
Configuring a Solution
Page 492
Unit 20 – Packaging a Solution
Mode
Fast Mode – will not do detailed reference checking of the Item as it is imported into the database.
Thorough – performs comprehensive checking of referenced Items to ensure they exist and are
correct (recommended).
Page 493
Configuring a Solution
Summary
In this unit, you learned how to create a Package Definition to export your solution for transport to
another server.
Page 494
Unit 20 – Packaging a Solution
Review Questions
Page 495
Configuring a Solution
Lab Exercise
Goal:
Export the Product Change Request solution using a Package Definition and the Export utility.
Scenario:
In this exercise, you will create a Package Definition for the Change Request solution. You will need
to determine all of the required components for the solution to create a new Package Definition.
You will then export the solution.
Steps:
1. You will first need to take inventory of what elements comprise your Product Change Request
solution. Use the table below to help you to determine what you will need to capture in a
Package Definition.
ItemTypes
RelationshipTypes
Forms
Workflow Maps
Page 496
Unit 20 – Packaging a Solution
Actions
Methods
Lists
Sequences
Identities
Permissions
2. Create a new Package Definition named Change Request and capture all of the elements you
have listed in the previous step.
3. Use the Export utility to extract the elements from the database to the file system into a
directory named C:\ExportPackage.
4. Review the log and manifests files that are created and resolve any errors
Page 497