So, you’ve installed Aras Innovator, and you have some great new workflows to try out! Now, how do you get a notification to your users that they have something to do? Aras can email them for you! All you need to get started is a user account with the email address set and a workflow (or lifecycle) to test with.

The Basic Template

Email Form

First, let’s set up an email item in Aras. Navigate to TOC > Administration > Notification > EMail Message and create a New Item. Let’s go over what’s on this form real quick:

  • Name: What the Email Item will be named in the database

  • From User: the User account that will send the email.

    • While you can choose any user, if the user does not have an email set, sending will fail and generate a notification in the system log file, if you have logging turned on. General practice is to set this as an Admin account so users know they are receiving a system notification, as opposed to an email from, say, someone in IT.

  • Subject: the subject line of the email

  • Body Plain: if you want to create a plain-text email with no HTML or other enhancements

  • Body HTML: If you want to create an enhanced email

  • Query String: if you want to use XPath and AML to directly query the current item and pull back variables to use in the above items.

You need to Name the item, give it a Subject, and set some relevant Body Text; then save it. That’s it! You have the minimum information needed to add a notification to a flow. This basic email is enough to use, but let’s cover a more advanced setup as well, in the next section.

Customizing The Template

Form (edited)

Email Message Form (edited for visibility)

Left half of form

Left Half of Form

Right half of form

Right Half of Form

OK, so what are all those odd strings in the above pictures? (I borrowed our OOTB Change Management email.) Those are query strings that pull information from the current context item; which allows your email to dynamically populate with relevant information when generated. The body of the email is also a great place to use these references. You can see in the above example that most of the body text isn’t even coming from the template itself, but from calls back into Aras. As long as you format the calls correctly, the above turns into a nice email like this:

Email Example

A couple of quick examples, since the usage here diverges, depending on if you are writing to interact with a lifecycle or a workflow:

  • Lifecycle:

    • ${property_name}

      • Returns the defined property value from the current item associated with the current lifecycle

      • ex: ${item_number}

  • Workflow:

    • ${Item[@type=“ItemType”]/property_name}

      • Returns the defined property value from the specified ItemType associated with the workflow.

      • ex: ${Item[@type=“ECR”]/item_number}

    • XPath

      • You can also use XPath style calls with workflows. There is an explanation from W3C here. Just translate the XML thinking into your current Item-relationship setup.

There are also some system-wide variables that should work with either type:

  • $[USER]

    • Current Logon Name

    • ex: jpublic

  • $[ALIAS]

    • Alias identity of the current user

    • ex: John Public

  • $[DATE]

    • Returns a string containing the current date

  • $[TIME]

    • Returns a string returning the current time

Applying Email Templates

Now to put an email template to work, you will need to assign it to a Lifecycle or a Workflow. Since these assignment methods are somewhat different, I’ve separated them out below:

Assigning an email to a Lifecycle:

  1. Open your Lifecyle and lock it for editing

  2. Select a state or transition (icon or line, respectively) when you want to generate an email

  3. Click the Configure Email text

  4. Pick/Create your email message

  5. (Optional) limit the email to instances of a single itemtype, (blank) will apply to all itemtypes

    • For instance, if a LC is shared between two items, you want to send separate emails for Type A versus Type B.

  6. Select the destination Name (Identity) to send the email to. You can add multiple identities per email or use group identities.

  7. Save your work.

Assigning an email to a Workflow:

  1. Open your Workflow and lock it for editing

  2. Select an activity (icon)

  3. Select the Notifications tab

  4. Pick/Create an email message

  5. Set the Event you want to fire the email

    • On Activate: when the workflow reaches this activity (I consider this the default)

    • On Assign: when an assignment is generated for this activity

    • On Refuse: when the assignment is refused by the user

    • On Delegate: when the user delegates the assignment

    • On Vote: when a user votes on an assignment

    • On Remind: when an overdue reminder is triggered

    • On Due: when an activity reaches its due date based on duration settings

    • On Escalate: when an activity is escalated

    • On Close: when the workflow exits the activity

  6. Pick the Target of your email:

    • All Assignments: Email is sent to everyone assigned to the activity, regardless of status. Will also send to all members of an assigned group

    • Open Assignments: All assignees that have not completed the task (typically used with On Due or Remind)

    • Closed Assignments: All assignees that have completed the task (typically used with On Close)

    • From Identity: for escalation or delegation: user from whom the assignment is being delegated or escalated

    • To Identity: for escalation or delegation: the user to whom the assignment is being delegated or escalated

    • Alternate: the identity is statically defined in the field nearby

  7. Save your work.

With the above steps complete, you can test your new flow, which should be generating emails.

The Final Setup

You will also need an email queue software such as Papercut if you don’t want to test by sending yourself a flood of emails. The default queue SMTP setting on installing Aras should be enough for testing, but if you encounter any issues please refer to the installation documentation. You will also need to make sure your IIS server has SMTP installed.

You can also set a debug parameter in the server to generate files, if you do not wish to use the above software option. In your InnovatorServerConfig.xml file in your installation location there is a line for <disabled_operating_parameter key="email_debug_option" value="file"/> remove the word disabled and the now-leading underscore from the tag and save the file. The “emails” will show up in your temp folder. (Remember to turn it back off when you are done testing!)

A few more settings: The default setup value of “queue” will send mail from the IIS mail queue which should be enabled by default. If you wish to set up a different mail server you can either enable this during your Aras install, or by altering the Mail tag in your server config file.

As an aside: you can also generate emails on a schedule using our Aras Scheduling Server. You can reference this blog post on how to set one up!

Conclusion

Setting up email notifications from Aras so you can notify your users of work is integral to getting work done in a PLM environment, and, with Aras Innovator, simple to set up. It can also be extended to pull from the system itself to save you work customizing each email type that needs to be sent.

Do you have any improvements on sending emails from Aras Innovator? Let us know in the forums or in the comments below!