Graciano - February 2025

Follow

Overview

The following article covers what's new in our Graciano release (beginning in February 2025) to provide a detailed understanding of what's changing, how new features work, how to enable them and any additional factors your team should consider. If you're new to Practifi or our release documentation, please review our best practices for 📚 Using Practifi Release Notes.

Graciano significantly improves mobile usability, automation and data management and resolves product issues for a smoother user experience.

Product Enhancements

Mobile Compatibility for Task Actions

Practifi now supports the Mark as Complete action for Checklists, Deliverables and Active Forms on mobile devices.

 

SFiOS.png

 

We've also made the following improvements for smartphone and tablet users:

  • Active Forms are enabled globally for mobile, with real-time sync on iOS devices.
  • We've created mobile-friendly layouts for task pages, success/error notifications and collapsible components for seamless interaction.
  • Tabs like Open Activities and Activity History automatically update.

Please note: Multi-screen Active Forms and wide tables may not display optimally on smaller screens. For more guidance on configuring Active Forms for use on mobile devices, see Active Form Best Practices.

Set an Integration Log Retention Period

Practifi has an Integration Log object that logs integration-related activities, such as Microsoft 365 Sync activities. These logs, generated throughout the day and containing large text strings, accumulate over time and occupy significant data storage space in Practifi organizations. Some integrations log thousands of activities daily.

Because these logs are often major contributors when organizations approach or exceed data storage limits, we've implemented a solution to efficiently manage and clear these logs. A new Practifi Custom Setting called Integration Log Retention Period allows administrators to define a retention period as a number of days from 0 to 182. Logs older than the specified number of days will be deleted automatically.

The new setting will default to Null, which means a scheduled job will run daily but will not delete any logs. This ensures that current functionality is maintained. We strongly recommend that you enter a value to clear out old logs, as they are mainly used to troubleshoot integration issues and logs older than a few days are rarely required.

The setting works as follows:

  • 0 days is the minimum value. Entering a 0 means logs will be cleared daily.
  • 182 days (six months) is the maximum value.
  • 32 days is the recommended value.
  • Null (default value) means that logs will not be deleted.

 

Screenshot 2025-01-28 at 10.58.58 AM.png

 

Additionally, a daily scheduled job will run to check the setting's value and automate the deletion of logs older than the retention period. For instructions on accessing the setting, please see our article on Deleting Integration Logs.

Client Type Update for Black Diamond

We revised the default client type in Practifi for clients created via the Black Diamond Integration. The new default client type for creating clients through Black Diamond has been updated from Organization to Household. Additionally, we modified the Create New Client trigger to utilize Household as the default client type, ensuring uniformity across all environments.

Please note: Practifi uses the Account Name provided by Black Diamond (limited to 80 characters) as the default Asset Name instead of the Display Name due to inconsistencies in the provision of Display Names.

Microsoft 365 Sync Exclusion Views

We improved the Exclusions feature of our Microsoft 365 Sync to allow users to distinguish between global and personal exclusions on the Exclusions tab. A button group now appears before the search bar in the External Addresses table with options for Global (default) and Personal views.

 

Screenshot 2025-01-28 at 10.29.27 AM.png

 

  • The Global view displays exclusions from the Exclusions tab.
  • The Personal view displays exclusions added via the Emails page.
  • Search functionality adapts to the selected view.

Please note: Exclusion management remains unchanged, preserving existing workflows.

Microsoft 365 Task Ownership Alignment

Previously, the Created By user assigned to tasks generated by the Microsoft 365 Email Sync was the user who scheduled the Microsoft 365 jobs rather than the owner of the associated email record. This caused discrepancies in reports for firms relying on task ownership for accurate metrics.

Tasks generated by Microsoft 365 are now assigned to the owner of the associated email record instead of the user scheduling Microsoft 365 jobs.

Clarification of Group Field Labels

The term “Group” is used in several different contexts across Practifi. We've updated field names and help text to clarify and refine grouping fields across Process Types, Task Templates and Task Actions for improved organization and usability.

Product Area Previous Label New Label Help Text
Process Type Group Process Group Explains the field's use in categorizing Process Types for organization and reporting.
Task Template Task Group Task Template Group Highlights the field's role in grouping Task Templates for picklists.
Task Action Group Dependency Group Explains the field's function in task dependencies and action triggers.

 

Enhanced Process Launch for Lost Prospects and Clients

We improved system behavior when marking Entity records as Lost Prospects or Lost Clients to support additional workflows. Currently, when a Prospect or Client record is marked as lost, all related records (Deals, Services, Deliverables, Processes and Tasks) are closed automatically. With this release, we've added the following enhancements:

  • Workflow Support: Rules configured in the Rulebook can now launch Processes and Tasks when records are marked as Lost.
  • Order of Operations: The system updates the Entity's stage, closes related records and checks for applicable rules to launch specified Tasks and Processes seamlessly.

Improved Logic for Asset-Based Service Creation

Previously, when an asset was marked as Under Advice manually or via a portfolio data feed, an Asset-Based Service would be automatically created if one didn’t already exist for the associated entity. For most data-fed assets, individual holdings would then be displayed under that asset.

However, there were inconsistencies in selecting the appropriate Service Type, especially when key fields like Default Asset-Based Service? or Order were incorrectly configured. To solve for this, we've made the following changes:

  • Validation Rules
    • The Default Asset-Based Service? checkbox now requires the Group field to be set to Asset-Based. Validation prevents saving invalid configurations, ensuring consistency.
    • A trigger automatically sets "Group" to "Asset-Based" if the checkbox is enabled.
  • Service Type Selection Logic
    • Default Service Priority: If multiple Service Types qualify, priority is given to the one with the Default Asset-Based Service? setting enabled and the lowest Order value.
    • Fallback Criteria: If no default exists or there are duplicates, the most recently modified Service Type is selected.
  • Asset-Service Association
    • If an Asset-Based Service already exists for the entity, the asset is linked to it. Otherwise, a new service is created and appropriately associated.
  • Updates to Existing Records
    • Existing Service Types with Default Asset-Based Service? enabled that do not have a value in the Group field will be updated to Asset-Based to align with the new rules.

These enhancements ensure consistent and accurate Service Type selection, reducing errors and streamlining the management of Asset-Based Services.

Available In Field for Service Types Now Mandatory

The Available in field (added with the Pinot Blanc release) determines if a Service Type is accessible for New Deals only, New Services only, or both. To ensure Service Types appear only where intended, this field is now mandatory. Please note the following about this update:

  • When creating a Service Type record, the Available in field is blank by default and requires input before saving.
  • The Available in field having no value prevents saving and excludes the Service Type from actions like Promote to Client.
  • For compatibility, existing Service Type records with blank values in the Available in field will be set to "New Deal action".

Enhancements to Reactivate Deliverable Action

Currently, when a Deliverable is reactivated using the Reactivate Deliverable action, its Next Due Date is determined by the Initial Calculation Basis set at the Deliverable Type level. The Reactivate Deliverable action only displays when the chosen Deliverable has a status of Completed or Canceled.

We’ve improved the Reactivate Deliverable action by adding a flexible Next Due Date field and allowing the reactivation of inactive Deliverables. The Next Due Date field is automatically populated based on Deliverable Type settings and can be modified. It remains blank for mass actions.

 

Screenshot 2025-01-28 at 10.40.27 AM.png

 

The Reactivate Deliverable action is available for Deliverables with Inactive, Completed or Canceled statuses. Reactivated Deliverables appear in the sidebar assistant and update fulfillment activities.

Automation for Deliverables Fulfilled by an Activity

We've extended Deliverable automation so that Activity ID and Activity Name are now automatically updated on a Deliverable record with activity details upon fulfillment via an Activity.

New Risk Profile Permission Set for Administrators

Previously, we had a single permission set related to Risk Profiles called Practifi – Risk Profile, which allowed end users to create Risk Profiles on entities and configure settings for Risk Profiles, such as Question Sets, Questions and Answers.

We've updated the existing Risk Profile permission set to restrict end users' access to Risk Profile settings to Read Only and created a new one to grant Practifi Administrators access to Risk Profile settings.

Permission Set Details

Practifi – Risk Profile

  • Enables creating, editing and deleting personal Risk Profiles.
  • Grants read-only access to Risk Profile configurations in the Settings app.

Practifi – Risk Profile – Administrator

  • Provides full access to all Risk Profile settings.

 

Please note: To ensure no loss of functionality, existing users with Risk Profile permissions will be assigned both permission sets. Practifi Administrators can restrict users' access to Risk Profile settings by removing the Practifi – Risk Profile – Administrator permission set via the Additional Features page in the Settings app. For more information, please see Enabling Risk Profiles.

Automatic Reassignment of Scheduled Jobs for Deactivated Users

A long-standing cause of numerous issues and problems has been Scheduled Jobs continuing to be assigned to deactivated users. With this release, Scheduled Jobs assigned to deactivated users will now be automatically reassigned to the deactivating user, ensuring the jobs continue to be assigned to an active System Administrator.

Please note: Reassigned jobs retain all original settings. Running jobs cannot be reassigned; this may impact frequent jobs like Microsoft 365 Sync, which runs every 15 minutes.

Enhancements to Lookup Rollup Summary for Accurate Data Aggregation

Some users reported discrepancies in rolled-up (aggregated) field values that should match (e.g., Asset Value, Service AUM). We determined the issue was caused by rollup jobs running in scheduled mode at different times and in varying order.

We have now added a new Rollup Summary Execution Order field to allow administrators to sequence rollup job execution (e.g., roll up Asset Values before the roll-up of Service AUM).

  • Field Name: Rollup Summary Execution Order
  • Data Type: Number (3,2)
  • Placement: Below Run in Schedule Full checkbox.

Rollup jobs are executed based on ascending numerical order, ensuring dependency alignment.

Improved Feature Settings Layout for Custom Metadata Types

The Practifi Feature Settings Layout has been updated to include missing Custom Metadata Type fields. The Information section now features a two-column layout for improved organization and consistency. We've also added help text for the Annual Revenue Calculation Basis and Annual Revenue Multiplier fields to clarify how asset revenue is calculated when related installments are present.

To enable these changes, a Practifi Administrator must edit the Practifi Feature Settings Layout. For instructions on editing the page layout, please see our article on Updating the Practifi Feature Settings Layout.

Practifi organizations created after February 2025 will automatically receive the updated layout.

Resolved Issues

Active Forms

Picklists in Active Forms

Required picklist fields in multi-screen Active Forms failed to save inputs despite showing success messages, causing validation errors and forcing users to refresh and retry. Input for required picklist fields now saves correctly, ensuring smooth task completion without repeated attempts or validation issues. A related issue where picklist values were not displayed as expected was also resolved.

Active Form Preview Setting for Task Templates

Some users experienced poor response (page load) times when creating a new task from a Task Template that contained an Active Form. We found that response times could be improved significantly when the Active Form preview was disabled. We've introduced a new setting in Task Template records called Include Active Form in Preview Screen? to allow administrators to enable or suppress the preview for Task Templates based on their needs. The default value for existing and new Task Templates is set to "Yes" to preserve existing behavior.

Active Form Fields in Quik! Forms

When a user deletes a value from an Active Form field, it will now be displayed as blank rather than showing “_DELETED_” as a value when migrated to a Quik! form.

Active Form Mandatory Field Fixes

Tasks with Active Forms configured via Flow Builder could be marked as complete without filling mandatory fields. This stemmed from incomplete validation of required inputs and missing assignments to Active Form variables.

Mandatory fields must now be assigned to Active Form Variables and linked to workflow actions for validation. The Screen Flow is displayed until all required fields are completed. Clear error messages highlight missing inputs, ensuring validation before task completion.

Active Form SOQL Error

Some workflows returned a "Too many SOQL queries: 101" error when processing tasks in a flow. This occurred due to excessive queries while prefilling fields from another task. To resolve this, we've optimized the prefill process to reuse loaded data, reducing query loads. We've also prevented repeated data fetches for identical tasks, enhancing system efficiency.

Please note: This fix mitigates the issue significantly but may not fully resolve it if too many tasks attempt simultaneous data prefill.

Deliverables

Deliverables Marked for Fulfillment Fix

Super Users (users with the permission set group of Practifi - Super User) encountered errors when completing Deliverables marked for fulfillment using the Complete Deliverable action. Upon fulfillment of a Deliverable, the status is now updated to Completed and Deliverables are delinked from associated activities as intended.

Sync with Services Fix

Using the Sync with Services action after updating the frequency of a Deliverable Type would not always correctly recalculate the Next Due Date of existing Deliverables where the Initial Calculation Basis was set to "Based on Date During Calendar Period".

We've implemented the following changes:

  • The recalculation process for the Next Due Date mirrors the initial due date calculations, incorporating all frequency parameters (e.g., Day, Month) and the chosen starting point (Today’s Date or Last Fulfillment Date).
  • If the Last Fulfillment Date is selected but occurs before Today’s Date, the calculation defaults to Today's Date as the starting point.
  • When the Frequency is updated for an individual Deliverable, the Next Due Date is recalculated based on the chosen Recalculation Basis (e.g., Last Fulfillment Date).
  • If no fulfillment date exists or if the recalculated date is in the past, the calculation defaults to today’s date and adds the Frequency length.

Cancellation Logic for Deliverables

The handling logic for Tasks or Services with related Deliverables has been updated to account for when they are canceled:

  • When a Service is canceled, its related Deliverables are also canceled.
  • When a Deliverable’s status is set to Canceled, the following actions occur:
    • It no longer appears in the sidebar assistant on Tasks and Events as available for fulfillment.
    • Any Tasks and Events previously associated with the canceled Deliverable can now fulfill other Deliverables.
    • If the Task was a pre-nominated fulfillment activity previously linked to the canceled Deliverable, it will also be canceled.
    • The Next Due Date field's current value is deleted and is not recalculated.
    • Fulfillment activities are not generated.

Miscellaneous

Addepar Asset Sync Error

Some users reported that Addepar synchronization failures were preventing assets from updating. We determined that some text fields were populating in the Account Number field, causing errors due to excessive length. We increased the Account Number field length from 50 to 255 characters, resolving compatibility issues and ensuring successful synchronization for all users.

Microsoft 365 All-Day Event Issue

All-day events originally created in Microsoft Outlook could have their dates offset by a day when synced with Practifi. For example:

  • A holiday event scheduled for 12/24–12/25 shifted to 12/23–12/24 after syncing.
  • A personal day off for 12/19/2024 was changed to 12/18/2024 following the sync job.

This issue primarily occurred with all-day events that had been on the calendar for an extended period and were altered when the sync process ran. All-day events, whether created in Outlook or Practifi, now retain their original dates during the sync process, and sync jobs will no longer modify the dates of all-day events.

Button Group Picklist Fix

Button Group Picklist values were not saving correctly when multiple browser tabs for the same Task were open on a Client record. Selections are now reliably saved and displayed across all open tabs, ensuring consistent functionality and an improved user experience.

Enhanced Revenue Calculation for Installments

Revenue calculations for assets with multiple installments have been refined to improve accuracy. Previously, only the most recent installment was considered for reporting. Now, the system aggregates all installments received on the latest date and uses the total for calculations.

Here's how it works:

  • The total of all installments received on the most recent date is multiplied by the Annual Revenue Multiplier to determine annual revenue.
  • The Feature Settings Layout now displays the Annual Revenue Calculation Basis and Annual Revenue Multiplier fields with descriptive help text.

Rules on Cloned Processes

Execution and visibility rules failed to replicate correctly during the Deep Clone action for Process Types. Users no longer need to manually adjust these rules on cloned Processes. Here's what's changed:

  • Execution Rules: Cloned Processes now execute as expected.
  • Visibility Rules: Field visibility on the cloned Process mirrors the original Process.
  • Task Associations: Tasks, actions, and rules are cloned without errors.

Exclusion of Inactive Service Types from Actions

Inactive Service Types were incorrectly shown as options in workflows like New Service and Promote actions. To enhance clarity and minimize errors, we've excluded inactive Service Types, ensuring users only see active options.

Mass Action Processing for Large Record Selections

Mass actions like Mass Edit failed or stalled for selections of over 50,000 records in tile tables and app pages. Now, mass actions work for manually selected records that exceed 50,000. When the Select All option is used for more than 50,000 records, the selection is limited to 49,999 or fewer based on configuration.

If performance issues persist, we recommend reducing the number of records per update to 2,000.

We've made the following changes to optimize processing:

  • For fewer than 200 records, processing runs immediately (synchronously).
  • For more than 200 records, processing runs in the background (asynchronously) to save CPU time.

Errors like "Limit Exceeded" can occur during complex mass actions like Create Tasks when dealing with over 2,000 records. Actions such as Cancel Deliverable, Complete Deliverable and Add to Campaign may also be affected.

We recommend keeping complex mass actions under 2,000 records where possible. More complex flows may have even lower limits. Future improvements aim to support up to 50,000 records.

For a list of recommended limits by action type, please see Record Limits for Mass Actions.

Tile Filter Date for Open Tasks

Selecting specific date values in the Open Tasks tile filter on the Home page displayed dates that were off by one day. To ensure improved accuracy, we've reviewed and corrected similar filtering inconsistencies across other platform components.

Business Development App AUM Tile Calculation

AUM tiles in the Business Development app displayed incorrect values due to a backend limitation with numbers exceeding $2.14 billion. The maximum values were increased and now support dollar amounts beyond a trillion.

We also resolved an issue where tiles that sum values did not display correctly if the sum totaled $0.

Multi-Lookup with Data Sources and Fuzzy Matching

The Assigned To filter on Task records did not work correctly with multi-lookup fields using multiple data sources and fuzzy matching. Filter functionality now works consistently across supported configurations and changes have been merged into component JSONs to ensure uniform behavior in all environments.

Name Validation for Access Request Trigger

We implemented a validation to address issues with the populateName method, which previously could generate names exceeding maximum length limits.

Change Log

Several product areas have been altered to implement the features and enhancements in this release. The table below consolidates these updates, making it easier to understand the release’s changes as a whole.

🔧 Implementation Details 
The product areas below have changed as a part of delivering these enhancements. If you’ve customized them, you won’t receive the changes automatically. A copy of the updated item will be made available in your Practifi instance. You can either replicate the changes or switch to the updated item and replicate your customizations.
Product Area Feature/Enhancement What's Changed?
Setup > Custom Metadata Types > Practifi Feature Settings Improved Feature Settings Layout for Custom Metadata Types
  • Updated the Practifi Feature Settings Layout to include previously missing Custom Metadata Type fields. A new 2-column layout has been implemented in the Information section to surface these fields more clearly.
Setup > Custom Settings > Practifi Settings Set an Integration Log Retention Period
  • A new custom setting called Integration Log Retention Period has been implemented to efficiently manage and clear Integration Log records. Logs older than the specified retention period will be automatically deleted.
    • The setting does not have a default value and will be shipped as Null for all organizations.
    • If no value is set, logs will not be deleted, ensuring no impact on existing behavior.
    • Administrators can configure the setting with a retention period between 0 and 182 days to enable automated log deletion.
Risk Profile New Risk Profile Permission Set for Administrators
  • New Permission Set introduced:

    • Practifi - Risk Profile - Administrator provides full Create, Read, Edit, and Delete (CRED) access to Risk Profile configurations (Question Sets, Questions, Answers and Risk Bands).

       

  • Modification of existing Permission Set:

    • Practifi - Risk Profile now allows users to:

      • Create, edit, and delete their own Risk Profiles on Entity records.

      • View Risk Profile configurations in the Settings app with read-only access (Question Sets, Questions, Answers and Risk Bands).

  • Access control adjustments:

    • Administrator users are typically assigned both permission sets for full access to both configuration and feature utilization.

    • Non-administrator users will generally have the Practifi - Risk Profile permission set for utilizing the feature while maintaining read-only access to configurations.

  • Enabling the Risk Profile Feature through the Settings App - Additional Features:

    • Both permission sets are now available for seamless enablement under the Risk Profile heading in the Additional Features menu of the Settings app.

  • Post-Implementation Updates:

    • All existing Risk Profile users will be assigned both permission sets by default.

    • Administrators can restrict non-administrator user access to configurations by removing the Practifi - Risk Profile - Create & Modify permission as needed.

Settings App > Additional Features New Risk Profile Permission Set for Administrators
  • The permission sets Practifi - Risk Profile and Practifi - Risk Profile - Administrator are now accessible under the Risk Profile section in the Additional Features menu of the Settings app.
Deliverables Enhancements to Reactivate Deliverable Action
  • Added a Next Due Date field to the Reactivate Deliverable modal, with auto-population logic based on the Deliverable Type's Initial Calculation Basis.

  • Extended the Reactivate Deliverable action to include Deliverables with Inactive statuses in addition to Completed and Canceled statuses.

  • Added guidance text regarding activation rules and potential re-inactivation upon reactivation. It is important to note that if the activation rules are not satisfied, the Deliverable will remain inactive.

  • Activation Rule Guidance:

    • Informational text in the modal highlights that if the Deliverable has activation rules that are not met, invoking this action may result in the Deliverable becoming inactive again.

Process Types Clarification of Group Field Labels
  • Group field renamed to Process Group.
  • Updated help text for clear reporting usage guidance.
Task Templates
  • Task Group field renamed to Task Template Group.
  • Field visible only on Task Template layouts.
  • Updated help text for task grouping clarity.
Task Actions
  • Group field renamed to Dependency Group.
  • Updated help text to explain task dependency behavior.
Task Templates Active Form Preview Setting for Task Templates
  • Introduced a new Include Active Form in Task Preview Screen? setting to control the display of Active Form Fields in task preview.

    • Type: Picklist

    • Values:

      • Yes (Default)

      • No

         

  • This field conditionally renders only on Task Templates.

  • It is positioned below the Configure this task’s Active Form with field on the Process Task (Task Template) record page.

Settings app > Categories (Service Types) Available In Field for Service Types Now Mandatory
  • Made the Available in field mandatory, defaulting to blank, and added validation to prevent blank saves.

  • Post-Deployment:

    • Updated existing Service Type records with blank Available in values to "New Deal action".

Improved Logic for Asset-Based Service Creation
  • A post-deployment script will update existing Service Types where the Default Asset-Based Service? checkbox is checked, ensuring the Group field is set to "Asset-Based" if it is empty.
Microsoft 365 Sync Microsoft 365 Sync Exclusion Views
  • Added a button group to switch between Global and Personal exclusions views.
Lookup Rollup Summaries Enhancements to Lookup Rollup Summary for Accurate Data Aggregation
  • Added a Rollup Summary Execution Order field for users to set job execution priority, ensuring reliable calculations. It appears below the Run in Schedule Full checkbox on the Lookup Rollup Summary record page.

  • Functionality:

    • Jobs with a specified value execute first, in ascending order.

    • Jobs without a value execute afterwards, using the system’s default order.

Asset/Liability Addepar Assets Sync Issue
  • Increased the length of the practifi__Account_Number__c (Account Number) field on the Asset/Liability object from 50 to 255 characters to ensure compatibility with all Addepar assets.
Mass Actions Mass Action Processing for Large Record Selections
  • We have addressed issues related to mass action record limits.
0 out of 0 found this helpful

Comments

0 comments

Article is closed for comments.