AgileXRM Release Notes 8.0.25300.20502

The main improvements in this end-of-year release are the following:

  • New UX improvements for the AgileXRM Solution
  • Process Manager guides user to any descendant subprocess with error
  • Support Allowed Extensions for File Uploads
  • New API to fully control Snapshots (Point-In-Time) including Transactions

New Enhancements & Fixes

Dataverse/D365 Integration

Enhancements

  • New design for the AgileXRM Solution
    The solution has been enhanced to include the latest Dataverse component technologies and UX improvements, as well as made ready for future enhancements.

    NOTE: Due to a MS issue, the first time the solution is imported over an older version, the Update option should be selected rather than the Upgrade option. After this first time, the Upgrade option will work for future imports of newer versions.

  • DEPRECATIONRun Process and Start AgileDialog Command Bar buttons
    When a Table is Enabled these buttons used to be added to the Main Forms and Views. These are not added anymore as they generated clutter. NOTE: Previously Enabled Tables still have these buttons.

  • Change of Behaviour: Executed Instance record Ownership logic change
    When record is created, the Owner is set to the Model Owner if the Security Context is set to Model Owner

  • IMPORTANT: Use the Update Enabled Entities button in AgileXRM Administration for both Entities and Activities, so that they are updated with the latest AgileXRM components

Fixes

  • WaitForUpdate Plugin was throwing benign error in trace logs due to concurrent Deletion
  • Generated solutions for Enabled Tables/Activities were including the table metadata which was unnecessary

AgileDialogs

Enhancements

  • Support Allowed Extensions for File Control at environment-level as well as at Control-level
    At environment-level, set them in the AllowedExtensions.json file. At File Control-level, select which of the environment-level ones are allowed.
    NOTE: The Blocked Extensions in Dataverse System Settings still apply.

  • Add API support for Save Snapshot (Point-In-Time)
    This is to cater for situations where end user stays forever on the last confirmation pop-up and does not complete the Dialog.

    DialogsEngine.SaveSnapshot( bool includeCurrentPage, int TimeoutInSeconds )
    API to be called from OnLoadScript if needed.
    If includeCurrentPage is True, include the page when it was entered into (not when it is exited), else leave it out of the Snapshot.

    The TimeoutInSeconds sets the duration of the Page, after which the Page is Cancelled internally and the Dialog continues (i.e. finishes, assuming this was the last Page).

  • Added API to support Snapshot Transactions (Point-In-Time)
    When there are loops in a dialog, allow Modeler to be able to save Snapshot of completed loops, but not abandoned loops.

    Added 3 new APIs to DialogsEngine:

    • SnapshotStartTransaction
      Starts writing Pages in a transaction until Commit or Rollback are called.

    • SnapshotCommitTransaction
      Adds the content of the transaction to the Snapshot
      From this point on, Pages are written to the Snapshot

    • SnapshotRollbackTransaction
      Clears the transaction
      From this point on, Pages are written to the Snapshot v

  • Rolling Session (sliding sessions) supported in External Dialogs

    New config parameters to modify the following:

    • UseTokenLifetime (true/false)

    • ExpireTimeSpanSeconds (in seconds)

    • SlidingExpiration (true/false)

  • Improve File Upload errors so user knows the reason for the error

  • Make the Calendar Control width settable
    Previously it was a fixed width.
  • DEPRECATED: The End Message functionality is deprecated
    With the new AfterSubmit functionality, this static message is not needed.

Fixes

  • Certain characters in the name of a Dialog Model like ~ were breaking the functionality
  • Dialog was closing unexpectedly after error in a FetchXML in the Page
  • Radio Control was not respecting values set in OnLoadScript
  • File Control validation was failing when it was within a Group container
  • Snapshot (Point-In-Time) was not generated correctly when Resuming a Dialog which contained SubProcesses
  • When saving Snapshot (Point-In-Time) it was sometimes timing out
  • Snapshot (Point-In-Time) was not recording which checkbox was clicked
  • Scrollbar was not working in the Dialog History popup window
  • Dialog History before reaching a Page with Disable Back set, was being cleared
  • Breadcrumbs were not working correctly with Disable Back
  • Some Unicode characters were not displayed correctly in Firefox
  • Phone RegEx did not support French style Phone numbers
  • Calendar Control was failing with Before and After conditions in Rules
  • The Contains Data condition in Rules for File Control was not working
  • Search shape was setting output variables to Empty string rather than to null, when there was no value to set

Process Manager

ENHANCEMENTS

  • Show Error triangle in SubProcess shapes whose subprocess instance hierarchy has an error
    If any descendant subprocess has an error in it, the SubProcess shapes above it, all show an error Triangle, so user can drill-down to get to the root cause of the error
  • Change Sort Order for Sessions in an Automatic Activity popup to Descending on CreatedDate
    This avoids having to scroll down to get to the latest session

Fixes

  • The Open Task button for a Dialog Task was throwing a javascript error
  • The Open Task button was not working with all the sessions of a Task
  • Data tab control were cropped in German version
  • Data tab was rendering content of variables
  • Date formats were not respecting Formats set in Personal Settings
  • Task Due Date popup was not respecting user’s Regional Settings Date Format

Process Modeler

Enhancements

  • Support Envision for use by non-Local-Administrators
    Previously, all Envision users had to be in the Local Administrators Group of the PC. Now they can be normal Users

  • Add HTML (Rich Text) Editor to Add Note shape’s Content property
    Dataverse supports HTML in Notes and now these can be set

  • Include “Does Not Contain” Operator in Single and Multiple Condition Editor

  • Change of Behaviour: Auto-set Security Context and Auto-create Model Permissions
    When a new Model is first Published, previously, Security Context and Model Permissions had to be configured manually. Now, Security Context is set to Model Owner for Process Models and to Process Initiator for Dialog Models. Also, All Permissions for root System Administrator Security Role are set automatically

Fixes

  • Model names were allowed to exceed 100 chars breaking Publish functionality
  • When adding new filters to a Search Query, the fields were being added below the related Tables. Though benign, it caused confusion.
  • Email Templates window when maximized, was rendering incorrectly
  • Trying to set the value of an Image column with an empty variable was throwing an exception
  • Under certain circumstances, the buttons in the URL Editor of the Email Template Editor were not visible
  • Visio would sometimes crash when accessed via Remote Desktop and a Page was saved that had OnLoadScript
  • Visio was sometimes crashing when used in high-resolution monitor with high DPI (>150%)
  • Clicking Open SubProcess link (in a SubDialog shape) was throwing an exception
  • Detaching a file which had two consecutive dots in its name, to SharePoint was throwing an exception
  • Selecting My Dynamic Major Version in SubProcess configuration was throwing an error
  • Visio was crashing with multi-language Progress Messages
  • Some windows were not rendered correctly under high DPI settings

Miscellaneous

  • FIX: Internal Caching mechanism did not include Security Context and SLA info for Models
  • FIX: AgileXRM DevOps Import Task was not updating Models with non-consecutive versions

Enable SLAs in Dataverse? YES YOU CAN!

Do you use the SLA functionality in Dynamics 365 Customer Service?
Maybe for Case or for some custom tables?

Wish you could also use SLAs in Dataverse?

Screenshot of a Dynamics 365 Customer Service case interface, displaying SLA details including 'Time to Resolution' and case information.
This example shows SLA KPI added to RapidStart’s Service app.

Problem is that all SLA-related settings that you find mentioned in the Microsoft docs, are missing in Dataverse!

It turns out that the SLA functionality is not actually missing, rather it is hidden from users.

PLEASE NOTE that SLA functionality requires a valid Customer Service license.
That is, with only a Power Apps license, you are not allowed to use SLAs (details here).
However, if you already have a Customer Service License and want to use SLAs in your Dataverse Apps, you are allowed to do so.

HOW?

Just click the button below to follow this self-contained wizard-like dialog.

It will take you through the steps.

It does not configure your SLAs, rather it enables your tables so that you are able to configure your SLAs. Specifically, it carries out these steps.

It also installs a shell App called SLA Management, bringing together all the Microsoft SLA Settings pages used in the Microsoft docs, so you can then configure your SLAs.

Hope you like it!

But wait! This blog post is not about SLAs, it is about what kind of things you can do with AgileDialogs.
Here you have an example interactive dialog that guides the user towards a desired outcome, in this case Enable Dataverse Table for SLA.

Flowchart illustrating the process for enabling SLA functionality in Dataverse using AgileDialogs, including steps for login, table selection, SLA configuration, and KPI management.
The Enable SLA Dialog created in MS Visio

An AgileDialog is not just about automation.

It is a mixture of UI steps (Pages) and automatic steps taking the user towards a goal.

It is created and configured in Microsoft Visio.

Some of the automatic steps and logic within it, could have been implemented in a Power Automate Cloud Flow, or scripted using CLIs or PowerShell.
But then, how would users utilize them?
Would they need to know all the input parameters?
Where in these automations would the users make decisions, or get feedback, or even go back and change their mind?

With AgileDialogs, users do not need to know anything.
They would just follow the guided steps to get to the desired outcome.
This way, any user could do any task, no matter how complex, because AgileDialogs makes complex tasks look simple.

Imagine the use cases!

If you see your project benefiting from having this kind of functionality (and a lot more) let’s set up a call for a one to one.

AgileXRM Release Notes 8.0.25007.20500

The normal release cycle is usually every Spring, but this is the latest version for AgileXRM V8.

The main improvements in this release are the following:

  • Ability to control navigation after Dialog ends
  • Support complex conditions in the Single-Condition shape
  • Allow running a Dialog against multiple selected records in a View, to do bulk actions
  • Support users invited from other Entra IDs
  • New Open (record) button in automatic shapes in Process Manager
  • Revamp Datetime handling to support all Timezones and all Datatime-type columns behaviors

New Enhancements & Fixes

Dataverse/D365 Integration

Enhancements

  • Allow running a Dialog against multiple selected records in a View
    The IDs for the selected records (max 300) in a semicolon-seperated list, will be passed to the Dialog via a variable with this naming convention:
             "guids_" + schemaname + "Selection"
    (e.g. guids_contactSelection or guids_accountSelection)

The schemaname for the Table/Entity is passed in the variable called CrmBeType.
Use a Command Bar button for the View/List to launch it, configured to call the function startDialogByTemplateNameForSelectedIDs like this:

  • New AgileXRM Card Form added to Task and Process Task activities
    These Cards are much better suited to display the items in the Timeline.
    In the Timeline configuration, under Activities, make sure Task and Process Task are selected. Then configure each to use the new Card as such:
  • Support Users invited from other Entra ID tenants to Dataverse
    Dataverse allows and supports adding users from an external Entra ID.
    AgileXRM now also supports this type of users
  • Set any Lookups in downstream environments to search by ID first and then by Name
    This is very useful when records are created that have Lookups to master data and that these might have different IDs in different environments
  • Support handlebars like {{VARIABLE}} in Dataverse Email Templates as placeholders to map to, from the Send Email shape
  • Update Dynamics 365 SDK to 9.0.2.56

Fixes

  • Under certain edge circumstances, a Task in Dataverse/D365 was not automatically set to Completed when its associated Dialog became Completed
  • Max permitted solution name issue was occurring for very long table names. Generated Unmanaged Solution name prefix for Enabled Entities and Activities are changed from AgileXRMEnabled_ to XRM_ 

AgileDialogs

Enhancements

  • Configurable Navigation of user to anywhere in Dataverse after finishing a Dialog
    For example, navigate user to the record that was just created by the Dialog.
    Also supports navigate to a View, a Dashboard or a Web Resource.
    Details are in the documentation here.
  • POSSIBLE BREAKING CHANGE: Revamped the handling of Date/Datetime, especially with regards to Timezones
    For internal Dataverse users, the Timezone set in Dataverse Personalization Settings is used. For External or Public/Anon Users, the browser’s Timezone is used.
    The handling of datetime has been redesigned and corrected, hence existing dialogs that were configured to work around previous odd behaviors, would need to be retested, and if needed, reconfigured
  • Support Sign-Out Page for invoking from External Portal Site
    This invalidates the SSO token
    <AGILEDIALOGS_SERVER_URL>/Logout.aspx[?post_logout_redirect_uri=<REDIRECT_URL>]
  • Allow choosing if a Control takes focus upon load
    By default, AgileDialogs focuses the first editable control on the page. This behavior is useful for most cases, but sometimes it is intrusive. It can now be controlled using the new autofocus parameter in the URL querystring:
      autofocus=0   (disables autofocus behavior)
      autofocus=1   (default behavior)
  • Add granular control on how Pages are stored in Dialog History (Point-in-Time)
    Adds a HistoryBehavior property to Page Settings tab under Form Options with these values:
    • Default
    • Hide this Page keeping placeholder
      Shows a text like instead of the Page Title: This page was not stored intentionally
      No controls/data is shown
    • Hide this Page completely
      Stores nothing for this page not even a placeholder.
    • Hide Page Data
      Shows controls but without any data. NOTE: Info control is not affected by this setting
      Adds the following suffix to the Page Title: (Data hidden intentionally)
    • Save last Session Data only
      Last Session data overwrites previous sessions’ data
      Adds to the Page Title of previous sessions: (Data hidden intentionally. Only data for last session is kept)
  • Indicate which button was clicked in History (Point-in-Time)
  • Restrict Control names to valid chars only
  • Simplify Calendar Control’s Min and Max setting window

Fixes

  • File Control’s Required flag validation was throwing error after the file was replaced
  • Start Page was showing Back and History buttons
  • Pop-Up pages were too narrow when browser width was low
  • DialogsEngine.clearValue method was not triggering the Change event
  • Radio controls configured as Button Set were not being saved correctly in History (Point-in-Time)
  • Calendar Control was not taking into account the First Day of Week setting in System Settings
  • Info control was not respecting Column Span when inside a Group control
  • Group control was wrapping long labels erroneously
  • Resume button was being shown when a dialog entered a Faulting state
  • Built-in variables were not working in Start Page controls based on a query

Process Manager

Enhancements

  • Show the Open Task button when user is not an admin, but belongs to the Team the Task is assigned to
  • Add corresponding Open button to these automatic shapes:
    • Create Entity, Update Entity, Upsert Entity and Create Note
      For these shapes, the button opens the corresponding record
    • Trigger Power Automate Flow
      The button opens the specific Flow Run
  • Show the Team’s name when an activity is assigned to a Team
    Previously, it would only show this generic label “Dynamics CRM Team”

Fixes

  • Reassign pop-up window was showing incorrect users for Manual Tasks
  • Open Task button was always opening the record for the last session in multi-session scenarios
  • Changing the Due Date for a Wait For Update shapes was throwing an error
  • Some buttons that did not apply, were being shown for Completed activities

Process Modeler

Enhancements

  • Unify Single-Condition and Multi-Condition shapes’ config windows to support complex conditions in the Single-Condition shape
    Previously, only a boolean variable could be used in a Single-Condition shape. Now, complex conditions can be configured using the same familiar condition-editor of Multi-Condition shape.
    RECOMMENDATION: Any Multi-Condition shapes that have only one Rule in them, should be replaced with a Single-condition shape using the same Rule and this way, improve the readability of the models
  • Added Save and Save & Close buttons to Page Editor
    This helps the modeler to occasionally save the Page without having to close and reopen it
  • Allow Filtering in Environment Explorer to quickly find process models
    Like Checked-out by me, Checked-in last x Days etc.
  • Clearly show if Search shape/control is returning First Record Only or All Records
    This was already visible in the property grid but not directly in the config window
  • Support text sort in repeating tables in Word shape
  • Add field-type icons to wherever fields are shown
  • Add the Text-Block icon to the Visio Ribbon
    This Visio tool allows moving the text of a shape, specially useful for shapes that have their labels outside the shape itself like Wait For Update or Delay shapes
  • Allow custom Accept header in REST shape and REST-based controls
  • Restrict Model names to a valid set of chars
  • DEPRECATION: These shapes have been deprecated and may be removed in a future Release. If they are being used in existing models, they will continue to work, but should not be added to any new models:
    • Milestone and Wait for Milestone
    • Intranet User Task
    • Intranet Dialog Activity
    • Web Service (WS)
    • Web Service Extended (WSE)

Fixes

  • Search shape was not generating the correct Output Variables after a Column was removed
  • The Equals (Ignore Case) label in the Condition shapes’ operator drop-down was not showing correctly
  • REST shape was allowing to set the Request Body when the verb was PATCH
  • REST shape was throwing an exception when Request Body was empty
  • Detach shape (to SharePoint) was throwing an exception with a certain Access Token configuration
  • Copy-Paste was not copying over associated Email Templates
  • Duplicate Process Model name detection was not taking into account models in the Recycle Bin

Miscellaneous

  • Add Suspend, Resume and Wait for Event functionality to the AgileXRM PowerShell Module
  • Include NX v8.0, Software Update 2, Cumulative Update 5 (See Release Notes)

AgileXRM Release Notes 8.0.24121.20400

Another spring season and that means, it is time for a new Release of AgileXRM.

The main improvements in this release are the following:

  • Much improved Modeler Experience including Copy/Paste and metadata-driven comparisons in Conditions and Rule Editor
  • All-In-One Send Email shape
  • Extended Dialog History functionality (Point-in-Time)
  • New AgileXRM Administration PowerShell Module
  • Performance Improvements

New Enhancements & Fixes

Dataverse/D365 Integration

Enhancements

  • Allow sending notification emails to Dataverse/D365 Teams
    Now, if a Manual Activity is assigned to a Team and an Email Notification is configured for the Activity, the Team members correctly receive the notification email
  • New All-in-One Send Email Shape
    This shape replaces the previous three Email shapes which were creating confusion.
    DEPRECATION: Email shape, which sent Emails from AgileXRM
    DEPRECATION: Email Activity shape, which sent Emails via Dataverse/D365 creating an Email Activity using AgileXRM Email Templates
    DEPRECATION: XRM Email shape, which used Dataverse/D35 Email Templates but sent email via AgileXRM
    It also adds new functionality like Bulk Emails.
  • Support SSO without Third-Party Cookies
    Chrome (and other browsers) are removing use of Third-Party Cookies and this technology was the basis of SSO
  • Full Support for Reflexive M:M Relationships
    When a M:M relationship is created from an entity/table to itself, there is a concept of Direction (who references who), for instance, in a Tutor to Minor relationship
  • Added Application Insights Telemetry logging for Dataverse/D365 Plugins
  • Extended information logged if an AgileXRM Plugin throws an Exception
  • Add mechanism to Clear all AgileXRM Caches
    There is a button in the Integration tab of the CRM Integration app that clears all caches
  • Improve Process Launcher UX
  • Update Dynamics 365 SDK to 9.0.2.52

Fixes

  • N/A: No Defects found

AgileDialogs

Enhancements

  • In Rule Editor when creating a comparison with a Control based on an OptionSet/Choice, show a drop-down with the possible entries
    Previously, the modeler had to use the internal integer value of the item 
  • Keep Page Title pinned in Popped-out dialogs
    When an embedded dialogs was popped-out to its own browser tab, the Dialog Title was not pinned
  • Make a Control’s Help feature more prominent
  • Support Theme inheritance
  • Support Custom Permission Validation Plugins
    Specially useful in External Site to allow controlling who can Run a dialog or Resume a dialog started by another user
  • Extend Notification messages sent to parent portal from embedded dialogs
    This allows implementing more granular control in parent site. New messages are DialogFinished and DialogErrored
  • Support opening External Dialog Tasks by passing WorkItemID via Redirect page
  • Save unselected records in Grids in Dialog History (Point-in-Time)
  • Support saving a standalone dialog in Dialog History (Point-in-Time)
    Previously, only Dialog Tasks were saved as a Process Task activity
  • Support ${CurrentUsername} in External Dialogs
    If a dialog is Resumed by a user different to the original ProcessInitiator, this variable stores who the current user is
  • Highlight which button was clicked in Dialog History (Point-in-Time)
  • Support server-side Dialog History temp storage
    Previously, Dialog History was saved client-side, limiting maintaining history after Resume to the same user using the same browser. Now it is more securely saved server-side and removed the limitations
  • Change File Control’s Delete icon to a dustbin
  • Support opening External Dialog Tasks by Public Users
    Includes a new Global Variable called PublicActivityURL to allow constructing URLs to activities to send to anonymous users
  • Support selecting the Dialog to run, dynamically in Dialog Tasks using a variable

Fixes

  • Notes field was sometimes covering controls at the bottom of the page
  • Resume button was showing when a dialog had failed
  • File Control was not clickable in Spanish L10N
  • The Next button was showing even when OptionSet/Choice-based Button Bars where configured
  • A user ordering a Grid that was connected to another control, was throwing an exception
  • Dialogs on Apple devices with iOS 16.4 or above were throwing an exception
  • In Page Editor Preview, Combo controls could not be opened, closing upon opening
  • Rich Text control was editable in Dialog History (Point-in-Time)
  • Frame Control configured as a Button, was showing content in Dialog History (Point-in-Time)
  • New items added to a Radio control via API did not respond to mouse-clicks correctly
  • Info controls were saving content even if configured not to
  • There was an issue with Min and Max value validation in Calendar control in certain time zones
  • There was an excessive gap between Control label and Control itself after Resuming a dialog
  • The Info control was not working correctly in Popup Render Mode if it had the same Control Name as an Info Control in the underlying Page
  • Custom labels for Yes/No controls were showing as Yes/No in Dialog History (Point-in-Time)
  • Dialog End Message was showing even if dialog was cancelled
  • File Control Required validation was failing upon using the Back button
  • Validation upon Submit only option was not working if there was a Search Control in the Page
  • The Equal and Does Not Equal operators in Rule Editor were using strict (===) comparisons. Now they use standard (==) comparisons
  • The DISTINCT option in FetchXML was not working properly
  • Some icons were being shown from the cache even after updating AgileXRM version
  • Start Pages could not be configured to show as Popups

Process Manager

Enhancements

  • Allow repeating a Suspended Activity
    If an activity caused an exception and became Suspended, previously, it was not possible to force it to Repeat (assuming root cause of Exception had been solved) without doing a Change Flow to a previous shape in the process, which was not always desirable
  • Support User permissions via membership of a Team given those permissions
  • Performance improvements 

Fixes

  • Cancel, Reassign and Change Due Date buttons were being shown for Completed activities
  • Date/Time formatting was not taking into account the Dataverse/D365 User’s Regional Settings
  • Zoom feature using mouse wheel was not working correctly if mouse was on top of an activity

Process Modeler

Enhancements

  • New powerful Copy and Paste function
    Visio’s standard Copy/Paste functionality was not powerful enough to copy all types of shapes. Now, any number of shapes can be selected, copied and pasted in the same document or in a different document
  • Multi-condition shape comparisons for Controls based on OptionSet/Choice or with Static values, now show a drop-down with the possible items
  • Column/Field selector now shows an icon representing the type
  • In Environment Explorer show which user is currently blocking the model (in Check-Out)
  • Allow setting the Regarding field for External Tasks
  • Support configuring entity/table and field/column dynamically in Update shape
  • Allow opening models in View-mode, even if they are Checked-Out to someone else
  • Allow setting Status Reason (for default Status) in Create and Upsert shapes and to any Status Reason in Update shape
  • Add a Keep Checked-Out option when Checking-In or Publishing
  • Simplify Multi-Condition shape by removing Basic and super-Advanced modes
  • Add mechanisms to be able to open Process Context using the mouse
    Previously, $ and { had to be typed in some places
  • Power Automate shape now has a Flow Selector for simpler finding and selecting
  • Add Logging and Tracing mechanism for troubleshooting the Modeler
  • Support Visio on Windows 11

Fixes

  • Detach Shape configuration was failing for SharePoint Destination, if the Document Library had huge number of folders
  • REST shape was misinterpreting empty as ComplexType
  • Setting Query property in Multi-SubProcess shape, was wrongly clearing the Entity Name property
  • Search Shape was not clearing variables if query did not return any results

Miscellaneous

  • New Global Variables for constructing Activity URLs for sending to participants
    These are InternalActivityURL, ExternalActivityURL and PublicActivityURL
  • New AgileXRM Administration PowerShell Module
  • Allow publishing a model created in an older version of AgileXRM into an environment with a newer version
  • A User who was not System Administrator could not cancel a Delay shape
  • Power Automate Connector action Get Process Data, was not returning Global Variables

AgileXRM Release Notes 8.0.23142.2040

It is Spring time and that means it is time for a new Release.

The main improvements in this release are the following:

  • Version 8 of the Process Engine
  • Enhanced Search functionality (Search Shape, Search Control and Query-based Controls)
  • Performance Improvements overall
  • Smoother Modeler Experience
  • New Rule Editor in Page Forms

New Enhancements & Fixes

Dataverse Integration

Enhancements

  • Support SSO limitations of PowerApps Native Mobile App
    As SSO is not supported in the Native App, when user navigates to a page with AgileXRM functionality, the user is now notified that it is not supported, and allows the user to click a link to take them to the corresponding page in the browser, where AgileXRM and SSO work correctly and context is not lost
  • Support running a process against multiple selected records in a View
  • “Processes I can Initiate” view uses a more logical filter
  • Support certain operations in a process in current environment in another environment
    The operations Search, Insert and Update can be executed against another org
  • Enable Entity/Activity now generates corresponding Unmanaged Solution for upstream ALM
  • DEPRECATION: A new process variable called ProcessInitiatorId replaces the deprecated ProcessInitiatorCSDId
  • Update Dynamics 365 SDK to 9.0.2.48 

Fixes

  • Upsert shape did not populate SaveEntityIdTo property when query found the record
  • Detach Shape was sometimes failing during runtime
  • CrmConnector threw an exception when Process Template record had already been created in Dynamics/Dataverse
  • Process Launcher was taking a lot of time to show data
  • Process Launcher did not render process diagram properly
  • Set Status shape was failing when ClosePendingTask property was set to True
  • Wait For Update shape was failing with “Is Any of These” operator 

AgileDialogs

Enhancements

  • Add a HTML/RichText Editor Control
  • Improve Search Control and Query-based Controls
    Including improvements in Query, Columns, Mapping and Advanced tabs and support for dynamic custom FetchXML
  • Support Progress Bar and Messages between Pages
    When the steps between two pages are going to take long, allows to inform the end user with a progress bar and informative messages
  • Allow editing the Source HTML of Labels
    Gives full control over the content of the label
  • Support Custom Attributes inside Dialog Title and End Message
  • Allow setting custom labels for Two-Options control (not just Yes/No)
  • Allow Ordering Radio Buttons based on OptionSet
  • Allow 3 Grids in a row: Minimum Column Span is now 4 (instead of 6)
  • Add Ordered and Unordered List functionality to Label editor
  • Add SignOut option to Page Form Editor
  • Button background contrast increased in theme.uui
  • Added better support for DPI > 100%
  • When IFrame Control has no file to display, show a more friendly message 

Fixes

  • “Reassign To Me” button was not showing in the user message informing that this is not your activity
  • When Stages were enabled, page was not rendering properly
  • Custom Validation was executing for hidden controls
  • PageForm editor was taking excessive time to copy large amount of controls
  • An unnecessary vertical scrollbar was showing when rendered with the non-hosted option
  • History was not working if Page was in a loop
  • Grid was not working correctly if REST returned empty JSON
  • Page columns were not aligning correctly
  • Resizing Dataverse window was not centering AgileDialogs window correctly
  • AutoNext in Grids was not working the second time if going back to the grid page
  • Scrollbars were not responding to mouse clicks if Page Width was not 100%
  • Search Control was not mapping to attributes from a linked entity
  • Validation message window was left open when navigating back
  • Default value for Numeric Control was overriding old value
  • Required flag was not always at end of last line of label
  • Auto-scroll was not working with Continuous Render mode
  • Grid Control was not always returning the correct number of rows
  • Undo (CTRL+Z) in Control Caption editor did not work correctly
  • Dialog Task assigned dynamically via custom FetchXML was not being assigned correctly

Process Manager

Enhancements

  • Performance improvements

Fixes

  • Process Manager did not always provide correct information about sub-process status
  • Show All Processes functionality was not working if processes had been deleted/archived
  • Open Task functionality was not opening Completed Dialog Tasks
  • Under certain circumstances process status was not being shown correctly

Process Modeler

Enhancements

  • New Rule Editor in Page Form Editor
    Easy to configure Rules greatly reducing the need to use javascript to customize Page Forms
  • Support M:1 and M:M Relationships in Search
  • Add Clone Action to Environment Explorer
    The Clone action allows duplicating an exiting process or dialog model with a different name. This is the only supported way to rename a process.
  • Handle “WS Trust Auth” deprecation for all new Dynamics 365/Dataverse Organizations
    Microsoft deprecated Basic Authentication, so this enhancement allows using OAuth instead
  • Environment Explorer Check-Out button now always does a Get-Latest
    When more than one modeler is working on a model, this enhancement ensures no work is overwritten by the other modeler
  • Logic Inspector improved to include all variables in all shapes
    And also takes into account Global Variables and performance improved
  • Add keyboard-shortcuts to AgileXRM Ribbon buttons
  • Allow empty string for Equals and Does Not Equal operators for string-type fields
  • DEPRECATION: Change Ownership and Change Ownership (Multi) shapes are deprecated
    Use Update Entity and Update Entity (Multi) shapes instead

Fixes

  • Certain XPDL files were failing to import
  • Delete key inside the property grid was deleting the shape rather than the item in the grid 
  • Sub-Process shapes failed to Validate when Template Name was a custom attribute
  • Environment Explorer had some unhandled exceptions
  • REST Shape Schema Mapper lost mapping information after select “Only Unmapped Items” option
  • REST Shape Schema Mapper was taking too much time to open
  • REST shape config would fail if service was not retuning any data in the body
  • Query Expression Editor threw an exception when the same related entity was added multiple times
  • SetStatus and SetStatusMulti shapes were sometimes being misconfigured
  • Multi Shapes were allowing contradictory configurations
  • Could not delete the last row of Activity Properties
  • Could not set Priority for Manual Activities
  • WCF shape was throwing an exception after closing config window
  • CheckIn and Undo CheckOut was failing if modeler account name had changed case

Miscellaneous

  • Security: Hide and Encrypt Secret Key in CRM Connector
  • Security: Encrypt Secret Key in root web.config
  • New Azure DevOps Tasks for Process Template Import/Export
  • Includes NX v8.0, Software Update 2, Cumulative Update 4 (See Release Notes)
  • New AgileXRM Administration PowerShell Module (Preview)
  • “Get Process Data” task in the AgileXRM Connector for Microsoft Flow was not retrieving data from the Process Engine
  • Process Import Tool was not loading .zip files with non-ascii chars in file name
  • Known issue: AAD User Virtual Entity cannot be used in AgileXRM because it does not support Client Credentials

Announcing the AgileXRM Community Edition

person hand reaching body of water

“You’ve got the Holy Grail of Process Management Tools”

— Microsoft Program Manager


AgileXRM has been around for quite a while now and has been fully tried and tested, out there in many clients around the globe, including many hard-to-convince enterprise and public sector customers, helping them manage their Business-critical processes.

AgileXRM started life back in 2006, in the Dynamics CRM 3.0 era, and has since grown and matured through the amazing evolution of Dynamics CRM On-Premise to Dynamics 365 Online and on to the remarkable Power Platform (Dataverse), Microsoft’s Business Application Platform.

All these years, we have been happily occupied with evolving the product through all the feedback we received from our customers, to cater for their ever-changing and increasingly demanding real-world business scenarios. Our customer base was growing just through word-of-mouth!

It is now time to make AgileXRM available to a much larger audience, and what better way to make our product more reachable in the market, than by offering a Free-Forever version of it. With AgileXRM Community Edition you can verify for yourself, the value it brings to your Digital Transformation strategy and how it complements the Power Platform.

Recruitment Process Example

Below we try to answer some questions you may have:

What is the value of AgileXRM for me?

In short, you will be receiving the following:

  • A Microsoft Visio-based Modeler to let you model processes and dialogs
  • Powerful dialog functionality for creating guided interactions for any type of user
  • A Business Process Engine (BPM) to manage the lifecycle of your processes end-to-end
  • A Process Monitor to let you visually see and manage running processes

The answer also depends on you background:

  • If you are new to Power Platform and just starting
    Power Platform is many things to many people. You may be looking at Canvas Apps in conjunction with data sources like SharePoint to create your Apps. Or maybe you have already recognized the need for Dataverse as your data repository and want to create more solid and manageable Model-driven Apps. If it is the latter, then AgileXRM would add great value.

    AgileXRM Value: AgileXRM keeps Model-driven process-apps Low-Code (mostly No-Code). Because with AgileXRM, you avoid having to use javascript in your Dataverse Forms and avoid needing to write custom C# code (Plugins etc.). Also being a BPM tool, you will be modelling and configuring your business processes and your User Interfaces/Interactions explicitly with Microsoft Visio, a visual tool that is designed to be understood by business users. Anyone can create very complex process-apps easily and cleanly without extensive knowledge of Dataverse customization.
  • If you are already using Power Platform to some extent and want to do more
    Having delved into the platform already, you probably have recognized how some requirements are harder to implement, either needing resources with expert knowledge or requirements that need too much effort to implement.

    AgileXRM Value: AgileXRM allows you to reach much further and quicker without requiring a higher level of Dataverse knowledge.
  • If you are already deep into Power Platform and have created many complex solutions
    There is no better person than you to know exactly where the pain-points are:

    • Difficulty in correctly capturing the business process requirements
      Business users usually use a flowchart diagram to describe their process requirements, but they will never see it again in the produced apps

      AgileXRM Value: From requirements capture to creation to execution, everyone uses the same Process Model. Everyone sees the same model at design-time and at runtime and it is understandable by everyone.

    • Cost/effort in creating the solutions
      Good expert resources are hard to find in the market and certain requirements demand excessive amounts of code leading to over-customization of the platform

      AgileXRM Value: Implement complex business requirements much faster and by non-developers. Avoid over-customization of the platform by keeping everything truly Low-Code.

    • Cost/effort of maintaining the solutions
      The business logic is split in many parts and hard to see the overall picture, especially when project resources leave or when business requirements change once in production, and how those changes affect existing processes that are mid-flight

      AgileXRM Value: The process logic is being documented with the end-to-end process model as What You Model Is What You Execute, and it is easy to see what needs to be changed and where in the model. You can even compare different versions of the process to see exactly what changed and where.

    • Cost/effort in troubleshooting when things go wrong
      Given the end-to-end business process is split across many components (Flows, Workflows, Actions/Custom API, Business Rules, Business Process Flows, Plugins, Custom Pages and client-side javascript), it is hard to identify what failed and what needs to be fixed. And even when it is identified and fixed, it is hard to evaluate how the changes affect existing processes which are still in progress

      AgileXRM Value: Firstly, you can model error-handling in your business process using alternative paths. Then, there is also a Retry mechanism, but if eventually a step in the process fails, the process is Suspended, and the error is made visually visible in the Process Monitor and recorded in Dataverse against the Process record (and admins are notified). If it is an external issue and it is fixed, Resuming the process is enough to continue. If it is a logic error in the process model, you can correct it, publish it and then Migrate existing running processes to the new corrected version.

    • Handling high volumes and business-critical processes
      When the correct running of the processes is of paramount importance to the business because it touches the organization’s bottom-line, you are aware of the pressure for all of it to work correctly

      AgileXRM Value: Our customers, in both private and public sectors, run Business-Critical Processes with millions of process instances per month. AgileXRM JUST WORKS!

What can I do with AgileXRM Community Edition (CE)?

You can use the full functionality of the Licensed Edition, for up to 25 Users for Free and Forever. You get the Visio-based Process Modeler, the Process Engine, the Process Manager and AgileDialogs.

  • Model and configure end-to-end Business Processes for any of your Dataverse or Dynamics 365 Customer Engagement Apps
  • Visually monitor where you are in the process
  • Handle unforeseen situations by managing the running processes
    Things like jumping from any step of the process to another step. Or even migrating a running process to another version
  • Model and run powerful dialogs (screen flows, agent scripts, wizard-like self-service guides etc.) for internal and external users (Contacts or anonymous users do not need a license)

AgileXRM CE is single-server. If you require High Availability, Archiving or more than 25 Users, you would need to get a License.

How do I get my copy of AgileXRM CE?

Simple: Go through this dialog(Powered By AgileXRM) on our web site and just follow the steps to register.

How is AgileXRM CE deployed to my environment?

AgileXRM CE will be deployed to your chosen Azure tenant and your chosen Dataverse Environment (or Dynamics 365 Org). Everything is done via another nice dialog(Powered By AgileXRM) that will guide you through the steps of the deployment process automatically. You’ll receive a link to this dialog once you register.

AgileXRM CE Deployment dialog

You are going to need the following:

  • Azure Global Administrator credentials for the Consents
  • Azure Subscription Owner credentials (usually same as above) for deploying the Process Modeler and Process Engine VMs to your Azure Tenant
  • Dataverse Environment with System Administrator credentials for deploying the AgileXRM Solution and Consent
    If you do not have one, create a Trial Dataverse Environment here, clicking Start Free button
  • Visio Plan 2 License as the Process Modeler uses Microsoft Visio
    If you do not have one, get it here Visio Plan 2
    NOTE: You can also use a Visio 2019 Product Key (Standard or Professional Editions), if you have one

What if I do not want to (or cannot) deploy anything to our Azure tenant?

You have two options:

  1. If you just want to try AgileXRM CE, you can create a new Azure Trial here
    You get US $200 of credit and you can deploy everything there, which gives you 30 days to try everything

  2. Let us know when going through the registration dialog and we can provide you with one of our AgileXRM Online Trial tenants. This way, nothing is deployed to your Azure tenant.
    You are still going to need a Dataverse Environment (or Dynamics 365 Customer Engagement Org) and an Azure Global Administrator credentials for the Consents.

What is the best way I can try the capabilities of AgileXRM CE?

We do Free PoC’s. We highly recommend that you let us help you to implement your first process-app. That way, you quickly get up to speed and will be able to realize the value that AgileXRM brings to your Power Platform projects.

AgileXRM Release Notes 7.0.22098.2070

New Enhancements & Fixes

It is Spring again here in the north hemisphere and there is a new version of AgileXRM. This is a list of the more important enhancements and fixes included in it:

Dataverse Integration

Enhancements

  • New AgileXRM App in the Solution
    There is now a new App in the AgileXRM Solution which allows to Manage and Administer AgileXRM
  • Support for the latest FetchXML Schema
    The Query Editor now support many more operators and Advanced Mode now supports the full power of FetchXML
  • Support downloading the XPDL and Readable XML files for a Process Template
  • Correctly Handle Dataverse API Limits Errors
    AgileXRM now adapts to the API Limit Errors received and adjusts Retry times, accordingly.
  • Change of behavior when deleting a Parent Process 
    Now you can only delete a Process Instance if all its descendant processes are either Cancelled or Completed, otherwise it notifies the user with an error. More importantly, now when a Parent Process is deleted, all its descendant process instances are also deleted. This is to avoid orphaned process instances in the system.
  • Change all code that used Microsoft-deprecated Xrm.Page 
  • License types ‘Process Participant’ and ‘Employee Self Service’ are DEPRECATED
    These license types are no longer useable
  • Improve visual effect of embedding AgileXRM content in Dataverse Forms
  • Allow disabling the Confirmation window when launching a Process from the Command Bar
  • Update Dynamics 365 SDK to 9.0.2.42

Fixes

  • If multiple Dataverse records were selected and Run Process clicked, an error was shown
  • If a Process Template Owner was changed, the cache was not invalidated immediately
  • If user was not an AgileXRM Administrator, the Dataverse Cancel Activity action was failing
  • Enabling/Updating tables/entities was not adding Process Viewer tab to some Main-type forms
  • Disabling a Dataverse Activity that had all its Forms imported from a Managed-Solution, was failing
  • Disabling a Dataverse Activity that had corresponding Running AgileXRM Activities for it, was throwing an exception rather that Cancelling those activities first then disabling the Dataverse Activity

AgileDialogs

Enhancements

  • Support Centered layout
    Now it is possible to define what percentage of the available width is used to display the controls leaving the rest blank
  • Major improvements in Responsive layout especially in Mobiles 
  • Support for Multi-OptionSet and Two-Option fields in Radio-button and Checkbox controls
  • Support Quick Create of dialogs
    It is now, not necessary to add at least one control to every Page in a dialog. By just adding the empty Pages and publishing, the dialog can be run
  • Support Label Horizontal Mode at Page Level 
    This puts labels next to controls rather than just above them. Also allows setting ControlWidth of Radio-button, Checkbox and YesNo controls in Horizontal Mode
  • Support showing Radio-button, Checkbox and YesNo controls’ values horizontally
    This allows showing the options in these controls in a row. Useful in unison with Label Horizontal Mode.
  • Support Tooltip for showing full data when data is cropped in a Grid cell
    With mouse over the cell, the full content is shown
  • Support for Aggregate queries in Search Control
    In Advanced Mode, aggregates can now be used in the FetchXML
  • Allow customizing the Back button text
    This text can the also be translated to other languages via the Translation functionality
  • Support customization of buttons in Pop-Up rendered pages 
  • Allow setting minimum and/or maximum values for DateTime controls
  • Save both html and text value of Info controls
  • Support authenticating Users in AgileDialogs External site with Azure AD B2C
  • Support Azure Translation Service for AgileDialogs
    An Azure Translation Service Key is required for this to work
  • Improved default settings in dialogs
    Now, by default, dialogs are Centered (use center 50%). Process Viewer is shown (deselect for Production), and Scope is set to Standalone
  • Support 86 Languages (all Dataverse Languages plus 48 more) 
    This includes many Right-to-Left (RTL) languages:
    Afrikaans, Albanian, Amharic, Arabic, Armenian, Azerbaijani (Latin), Bangla, Basque, Belarusian, Bulgarian, Catalan, Corsican, Croatian, Czech, Danish, Dutch, English, Estonian, Finnish, French, Frisian, Galician, Georgian, German, Greek, Gujarati, Hausa (Latin), Hebrew, Hindi, Hungarian, Icelandic, Igbo, Indonesian, Irish, Italian, Japanese, Kannada, Kazakh, Khmer, Kinyarwanda, Kiswahili, Korean, Kyrgyz, Lao, Latvian, Lithuanian, Luxembourgish, Macedonian, Malay, Malayalam, Maltese, Maori, Marathi, Mongolian (Cyrillic), Nepali, Norwegian (Bokmal), Odia, Pashto, Persian, Polish, Portuguese, Punjabi, Romanian, Russian, Scottish Gaelic, Sinhala, Slovak, Slovenian, Spanish, Swedish, Tajik (Cyrillic), Tamil, Tatar, Telugu, Thai, Turkish, Turkmen, Ukrainian, Urdu, Uyghur, Uzbek (Latin), Vietnamese, Welsh, Xhosa, Yoruba, Zulu
  • Remove Theme and Hosted cookies
  • New CSS and custom javascript Editors (Preview)
    Inside the modeler, it is now possible to edit CSS and javascript with syntax highlighting

Fixes

  • Showing a document in SharePoint was failing if the configured URL contained Custom Attributes
  • Showing a document in SharePoint was failing in SubDialogs
  • If a column was not translated in Dataverse and it was used in a Grid as a related tables/entity, the schema-name was being shown instead of the Base Language literal
  • YesNo control was wrongly saving Display value in English (United States) irrespective of current language
  • Lookup control was throwing an exception if user tried to search a datetime field
  • Lookup control was not showing previously selected value when user navigated back to the Page
  • If a users was logged on with multiple Microsoft Accounts, dialogs sometime failed to start correctly
  • FileUpload was failing upon returning to the same Page
  • XRM Search control was breaking the Radio-button control’s ShowInTaskbar functionality
  • Translation mechanism was missing custom Column Header labels in the Lookup control, so in all languages, the same base language header was being shown
  • Currency symbol was not being shown correctly in Currency control if value was being set via a variable
  • The afterSubmit parameter was not handling passing multiple parameters in it
  • When cloning a Checkbox control, its source was not being copied correctly 
  • When importing a Page Form, the OnLoadScript was not being imported
  • DialogsEngine.addChangeEventHandler API call was overwriting the handler if called more than once for the same control
  • DialogsEngine.getDialogContextValue API call was throwing a server exception in certain circumstances

Process Manager

Enhancements

  • Sub-Process Activity details to show datetime values in Relative format

Fixes

  • Relative time was being shown wrongly under certain circumstances

Process Modeler

Enhancements

  • Envision Performance greatly improved
    This is specially relevant to larger models
  • Schema Picker now shows the Shape(s) that create the variable
  • Schema Mapper improvements
    Very useful when trees are large. Added a Quick Filter box to find nodes on either side. Added option to show Mapped Only and Unmapped Only nodes 
  • Support for Multi-OptionSet fields/columns
  • Warn User if configuring Wait For Update shape with an Entity/Table that is not Enabled
  • Support Global Disco Service (Regional Disco Services deprecated)
  • Add Quick Config links to more shapes for easier reaching main config window
  • Collapse shape functionality improved for easier recognition of the shapes
  • Environment Explorer Improvements
    Show Model Thumbnails. Add a new Ribbon. Allow deleting empty Applications (with no models)
  • Allow opening a Sub-Process (or Sub-Dialog) Template directly from shape
    This includes the possibility of creating a new SubProcess/SubDialog
  • Allow opening Process Models and Shape configurations where underlying Environment is not the same
    If an Entity/Table or an Attribute/Column is not available in the Dataverse environment connected to the model, it is shown in red allowing modeler to see configuration and change it accordingly. If a WCF Service is not available, configuration is visible and not lost upon changing the service URL
  • Hide all Advanced properties of all Shapes so as not to confuse Modelers
    These can be made visible again if necessary for edge cases. Also many unneeded properties have been permanently removed
  • Expose certain Page Form properties in the Page Form property grid with corresponding visual indicators
    Render type and Disable Back properties are now visually distinguished in the Page Form Shape and are easily accessible for change 
  • Improve Process Validation to make it easier to identify the Shape causing the error
  • Allow setting the Scheduled Start date in Manual Activity shapes
    It is now possible to define the Scheduled Start datetime (scheduledstart field/column) of a Dataverse activity to be set in the future, rather than automatically set it when the process reaches the activity. For instance, at the beginning of the process, one can now create all the activities and set their start time to any time in the future
  • Allow setting the entity/table in the configuration window of Create, Update and Upsert shapes
    A warning is shown if configuration will be reset
  • In the Query Expression’s Columns tab, clearly show which Columns have already been selected
  • View Process History window improved
    Ordered by ID Descending. Removed superfluous columns
  • Typing the characters ${ opens the Schema Picker in many more places
  • Many configuration windows are now resizable up to to full screen size
  • Improve use of JSON as source including a JSON Editor
  • Add ISO8601 UTC mask to Datetime Operations shape
  • Replace deprecated WebControl control with modern IWebView2 control
  • Shapes now only have Property Grid (Design Tasks panel removed)

Fixes

  • Word shape was failing to create a Folder in SharePoint site Document Library root
  • Wait For Update shape was failing in a process that did not have Main Entity
  • Visio was sometimes throwing an exception upon closing the Process Modeler (Envision) and it was reopening automatically 
  • Multi-language Email Templates could not be consumed correctly
  • Set Stage shape configuration was not being set correctly if Stage was not set specifically
  • On-Premise Envision Translation functionality was not working

Miscellaneous

  • Authentication changed to use Microsoft Graph API instead of deprecated Azure AD API
  • Improve Archiving Connector logging
  • Includes NX v7.0, Software Update 2, Cumulative Update 7  (See Release Notes)

AgileXRM Release Notes 7.0.21097.2060

New Enhancements & Fixes

There is a new version of AgileXRM available and here is a list of the new enhancements and fixes included in it:

Dataverse Integration

Enhancements

  • SLA fields added to AgileXRM Process entity
    The fields Expected Duration and SLA Warning Level (value in %) are added and updated automatically based on values in Process Template settings
  • Add ExceptionHandlerBehavior property to WaitForEvent shape
    The WaitForEvent shape could fail when executing the underlying query. Previously, if the query threw an exception, then the process continued. As a Modeler you can now configure this behavior, to specify if process should or should not continue on error.
  • Turn Off Sharing Entity Records by Default
    Previously, when a Process Instance record was created, the record was automatically shared with the Process Initiator (if different from Process Owner). This caused the POA table to grow too much in high volume environments. By default it is now turned off. If needed, the Plugin can be re-enabled from AgileXRM Configuration window using the provided checkbox.
  • Better adapt embedded heights of AgileDialogs and Process Manager sections
  • Add German Localization
  • Update Dynamics 365 SDK to 9.0.2.29

Fixes

  • When opening a link to a Dataverse Activity that contained an AgileXRM Page or dialog, it was not authenticating correctly the very first time
  • Update enabled entities/activities function in AgileXRM Configuration was not creating new fields or registering new Plugins steps
  • Starting an AgileDialog from the Ribbon failed when special characters were used in the Template name
  • Multi-SubProcess Shape threw exception at runtime when running old versions of a Template

AgileDialogs

Enhancements

  • Support Start Page
    Previously, in order to show the first page of a dialog, a process instance would need to be created. Many times users decide not to continue after seeing the first page. This caused superfluous information being stored and a need for corresponding cleanup. With Start Page, the process instance is only created after the Next button is clicked.
  • Reorganize Page Editor layout
  • Add Sliders to manage ColumnSpan and ColumnWidth Property of control
  • Add Ordering functionality to FetchXML Editor
  • Change Page Form Import/Export functionality to use the Clipboard (instead of filesystem)
  • Make typing ${ in control caption to pop-up the ProcessContext window
  • IFRAME control to support DialogsEngine.register and DialogsEngine.setSelectedValue APIs
  • Add REST as data source to various controls 
  • Add DialogsEngine.saveDialogContext API to allow saving dialog page data explicitly
    Previously, only through the “Next” action you would save the page data
  • Improve dialogs on mobile form-factor (Responsive)
  • Disable browser autocomplete functionality in Lookup controls
  • Stop storing Display variable for Info Controls
  • Improve Script Editor
  • Add German Localization

Fixes

  • Breaking change: Datetime values were not correctly formatted in certain circumstances. The AgileXRM Server should now be in Universal Coordinated Time timezone. Also the AgileXRM Service Account User in Dataverse should be in the UTC timezone.
  • History view was showing decimal places “2” instead of currency symbol in Currency controls. This does not fix previous History entries, only new ones.
  • XRMGrid controls that contained quotes (“) were not saved correctly in History
  • XRMGrid control was showing “NaN” for empty datetime fields
  • XRMGrid control selection of row was failing if apostrophe (‘) character was present in the row
  • New controls were being marked as invalid
  • Search control did not map values correctly when destination was a Currency control
  • Watermark property of Text Control did not work if it included characters like backslash (\) or quotes (“)
  • The backslash (\) character in XRM DataGrid DataValue Property was causing dialog to crash
  • File control was not triggering change event properly after first time
  • Calendar control was showing time even though it was configured as DateOnly
  • Error message info was not showing correctly for controls placed on the right edge of the screen
  • Datetime controls were not rendering correctly (overlapping) in narrow screens
  • Checkbox control Validation message was overlapping checkboxes not allowing user to change selection
  • Final message shown when dialog is finished was not encoded correctly 
  • Combo controls set to ReadOnly was still showing “-Select option-“
  • Setting a ReadOnly control to Required via API was not making the control editable
  • Numeric Control’s Type property was empty by default

Process Manager

Enhancements

  • Add German Localization

Fixes

  • Subprocess activity details was showing the same Start Date for every session
  • Subprocess Instance name was not being shown
  • Activity status icon was not positioned correctly for very wide process templates
  • Activity error icon was not being replaced if fixed in the following session
  • Could not migrate Process Instance if Activity was Suspended (but Process was Running)
  • Change Flow was not working straight after a Migrate action
  • The hand icon depicting Wait All Incoming was not being shown correctly in some circumstances
  • Suspended Process Instance was not showing an error icon
  • Sometimes migrating a Process Instance threw a “request entity too large” error
  • Cancelling a Process Instance whose parent was a dialog was not getting Cancelled
  • The Save Context XML button was only appearing after hitting Refresh and it then saved two files instead just one

Process Modeler

Enhancements

  • Consolidate all relevant icons to one AgileXRM Ribbon
  • Enable dropping a Shape on a Connector for simpler modelling experience
  • Add swim-lanes to templates
  • Add TextBlock tool to Ribbon to allow moving text of a shape
  • Add Subject and Activity Properties to External shapes
  • Improve variable search functionality in ProcessContext window
  • Allow to use TeamID as Team Participant for Manual Activities
  • Improve Environment Explorer to allow filtering processes
  • Add a confirmation step for the Delete action in Environment Explorer
  • Improve Environment Explorer to identify Processes versus Dialogs in the tree using icons
  • Add Quick Config links to many shapes to easier reach the main config window
  • Allow using dynamic SharePoint URLs in Attach, Detach and Word shapes
  • Move Async property for all XRM shapes to Advanced property group
  • Add German Localization

Fixes

  • Process selector in subprocess activity was not showing ChildOnly process templates
  • REST activity was not allowing TEXT as value in accept field
  • Shapes that had Participants when dropped directly on Swimlane were losing Participant
  • Changing Swimlane Title was changing Process Name and vice versa
  • Table-type fields were not being shown in Bold in the Word Shape’s Fields listbox
  • ProcessContext window was not showing in activity Participant window’s Team drop-down control
  • If Team Participant was set to a custom attribute, the configuration was lost upon re-editing
  • Multi-Subprocess shape was not showing the QueryExpression editor correctly
  • REST Payload editor was not showing any error messages when it contained an invalid JSON value

Miscellaneous

  • Runtime Security Context was being cached for a Process Template that was set to Process Initiator
  • XRM Search activity to return 0 in ResultCount when no records found
  • XRM Search activity was returning DateOnly fields in UTC
  • Attach/Detach shapes’ Override option was failing
  • Skip License checking for AgileXRM Application User in Dataverse 
  • Includes NX v7.0, Software Update 2, Cumulative Update 6  (See Release Notes)

AgileXRM Release Notes 7.0.20106.2040

New Enhancements & Fixes

There is a new major version release of AgileXRM available and here is a list of the new enhancements and fixes included in it:

Dynamics 365 / CDS Integration

Enhancements

  • Show a message in a Process Task when the task is assigned to another user
    Previously the user would not see the task before clicking Assign To Me button
  • Update Dynamics 365 SDK to 9.0.2.5
  • Enable Change Tracking on AgileXRM custom entities
    This can used in some ALM processes

Fixes

  • Data in DateTime fields configured as Time-Zone independent were not being saved correctly
  • When refreshing a D365/CDS Activity that had an AgileDialog, a new dialog instance was being created

AgileDialogs

Enhancements

  • New theme.uui inline with current CDS style
  • Support showing external data within DataBound controls (Grid, Lookup)
  • New Dialog Task design-time flag parameter to create or not Process Instance record in D365/CDS
    This allows avoiding the creation of undesired records in CRM/CDS
  • Support multi-value Option Sets
  • Improve drag & drop UX inside Container Controls
  • Support Relative Time anywhere DateTime is shown
    Rather than showing timestamps which are difficult to decipher, show relative time (e.g. 5 minutes ago, 2 weeks ago etc,)

Fixes

  • Error was thrown when OnLoadScript invoked DialogsEngine.register and DialogsEngine.setSelectedValue methods
  • DateTime controls were truncated when browser window was narrow
  • Error Messages were truncated for controls placed in the right edge of screen
  • Some culture names were not supported
  • DialogsEngine “Next” feature failed for “PopUp” render mode
  • TextControl did not save data properly when its behavior was set to Decimal
  • XrmGrid control did not show Formatted DateTime values properly
  • Calendar control did not show date fully in theme.cds
  • Occasionally security token was not deemed valid for connecting to D365/CDS

Process Manager

  • Support Relative Time anywhere DateTime is shown
    Rather than showing timestamps which are difficult to decipher, show relative time (e.g. 5 minutes ago, 2 weeks ago etc,)
  • Allow cancelling a suspended process
  • Allow drill-down to dialog process instance when clicking Dialog Task shapes
  • Show latest active root process instance that is not an AgileDialog instance
    Typically a dialog is used to create an entity record and a corresponding life-cycle process is kicked off. It is more important to show the life-cycle process rather than the dialog when viewing Process Manager

Fixes

  • Process Manager did not apply themes properly
  • Process Manager showed Wait All Incoming icon wrongly
  • Process Manager did not show AgileDialogs history page

Envision Process Modeler

Enhancements

  • New Trigger Power Automate AgilePart
    Kick of any Power Automate Flow using this shape
  • New Upsert Shape
  • Support selecting the D365/CDS Activity Form in all AgileXRM Manual Activity shapes
    This also keeps the correct form visible to the user, even if user tries to change the form to another one
  • D365/CDS Email shape can attach a file stored in SharePoint Online
  • Allow XRM Sub-process shape to share context with a sub-process based on a different Entity Type
  • Control behavior of FetchXML for empty filter value for a D365/CDS GUID field
    If in a Query there is an Equal operator and comparing to a custom attribute that is empty (has no value), and the field is an ID type field (Lookup etc), then D365/CDS API will throw an exception with “Not a valid Guid”. This is OK if this is a modelling error and the right value was not supplied. But sometimes a value may or may not be available to compare to, but still want to pass this to the query. So now there is an Equal or NULL operator and an Equal or Not NULL operator
  • Allow Word shape to store in any of the available different document repositories
  • Support for accepting TEXT in REST shape, additionally to JSON and XML
  • Allow to optionally save D365/CDS Activity field values into Custom Attributes upon completion of the activity
    Previously modeler needed to explicitly query this data in a follow up Search shape
  • Support multiple IDs (semicolon-separated list of IDs) in Detach shape
  • Inject ProcessInitiatorCDSUserId into processes initiated by users from D365/CDS
    Many times it is necessary to search for the userid of the Process Initiator. This new custom attribute avoids having to do the search explicitly
  • Accept a D365/CDS team as a recipient of a D365/CDS Email
  • Support associating an existing D365/CDS Activity to an AgileXRM Manual Activity shape
    Users sometimes create some ad-hoc activities for a particular entity. This new functionality allows these activities to be incorporated in the end-to-end process
  • Improve BPF Stage shape
  • Allow launching independent process using Sub-Process shapes
    This allows to not create any relationship between the parent process launching the other process. This is typically useful for Process Launcher processes
  • Improve Participants UI for all Manual Activity Shapes to support Owner and Queue assignments
    Previously a OwnerID parameter was used, which is now deprecated
  • Allow override of CreatedBy and ModifiedBy in Create Entity and Update Entity shapes
    Sometimes the user of the process execution context is not the right user and modeler requires to set these to another user
  • Execute operation against different environment/organization
    Implement mechanism to execute D365/CDS Operations (Search, Create and Update Entity) in an organization distinct to the current one

Fixes

  • Some fields (like ZIP / Postal code) were not appearing in Columns tab for their corresponding entities in Search shape
  • Envision Import XML file feature failed
  • REST Shape had runtime error for “x-www-form-urlencoded” content-type
  • Word Shape (online version) configuration failed when more than 2 SharePoint tokens were available
  • Could not select a Dialog on SubDialog activity
  • REST Shape was unable to reset OAUTH configuration once it had been setup
  • Multiple Delete shape failed after deleting first record
  • REST shape did not allow pasting text in the Response details field

Miscellaneous

  • New Microsoft Power Automate® Connector for AgileXRM
  • Support Azure B2C for External AgileDialogs
  • Support Public Anonymous AgileDialogs
  • Support Chrome 80+ SameSite Cookie changes
  • Could not pass concatenated custom attributes to a sub-process parameter
  • Includes NX v7.0, Software Update 2, Cumulative Update 4  (See Release Notes)