==General Details=====Upgrade Dates===Public Cloud Production release date: '''November 14th 2019'''<br />Public Cloud Backup release date: '''October 29th 2019'''{{Banner-UnderConstruction}}
Private Cloud Production (Managed Upgrades) release date: '''November 28th 2019'''<br />
Private Cloud Backup (Managed Upgrades) release date: '''November 14th 2019'''
==Overview==Watch this video The Variable Processor is the engine within SmartSimple that processes and replaces variable references (e.g. @firstname@) with actual values (e.g. John Doe) within templates and calculations. This allows you to get configure a general overview of the new features in this releasegeneric template or calculation to be translated and applied across multiple records.
coming soonA simple example of the concept of variable translation can be seen in the display of your name in the header menu of SmartSimple after having logged in.To achieve this the SmartSimple application would first require a generic web page template with a variable reference to ''user name'' in the header menu.When you log into SmartSimple the application processes the generic template and replaces the variable reference for ''user name'' with your actual name and the result is what you see in your browser.<!--{{#ev:youtube|jfzDUPZxLZA}}-->
''To watch this video in full screen, please click on the '''full screen''' button on the bottom right.''=Configuration - Essentials=
==Global System UpgradesAreas of Use==The new features listed below are enhancements to the SmartSimple system and will be immediately available to SmartSimple users upon the application of the upgrade to their server:*Email Templates*Custom Fields*Template Formulas*Workflows
===Major Updates=Basic Syntax======Change to Upgrade Schedule====Starting in 2020, we'll be changing our upgrade cycle The most common use of the Variable Processor is to reference a 4-month release cyclefield value. Instead of 4 upgrades Variable references are denoted in general by a year, we'll be producing 3 upgrades a yearfield name encapsulated by the @ symbol. The reason for this most basic form of variable is to be able to produce more polished, as well as larger functional enhancements. The 3-month cycle was limiting our ability to develop some of our larger features in a more comprehensive manner. Lengthening the release cycle will allow us to produce some bigger, meaner features, so stay tuned for these starting in 2020!:
====Deprecation of Classic Interface====It @'s time to step boldly into the future. With this upgrade we've deprecated our Classic interface. If you havenfieldname't yet made the switch to Arcadia interface, your system will automatically be converted to using the Arcadia interface after this. This is to ensure the best user experience for all of our clients, and their communities, not only with a modern interface but also with the rich set of features that we're able to offer through the Arcadia interface that wasn't possible in Classic. Note, your system interface will only change if it currently looks like the Classic example below, and after this upgrade it will be updated to look like the Arcadia example instead.<!--92714 - deprecate classic-->@
====Deprecate Decimal and Integer Number Formats from Question Set Builder Field====Deprecated Where ''fieldname'' is simply the number Format options name of Decimal, and Integer from fields used in the Question Set Builder a custom field. Note that this only applies to or one of the Question Set Builder custom field, and only pre-defined standard fields as listed in the case where you have created questions that use these format optionsappendix for each of the record types. This change was made to align form is used when the configuration of these fields more consistently with our other custom field settings for Number Precisionexists on the record that you are viewing. Note that For example, if you have any questions current configured in we are viewing a Question Set Builder configured for the deprecated format options above, they will just be converted user profile and wish to the value of None after this upgrade. You will have to update the fields manually and set the Number Precision if neededreference that user's first name we can configure a variable '''@firstname@'''.<!--93305 - Deprecate Decimal and Integer format type from question set builder-->
====Change to CAPTCHA Bypass Setting=Record Level===Change to You can also reference information from other records by defining the CAPTCHA bypass function previously used to disable CAPTCHA functionality for users by country. Instead we've re-introduced an older CAPTCHA feature record level of ours that will apply a simple CATPCHA test that is verified locally on the server instead of reaching out to our Google reCAPTCHA integration that was being blocked by some countries. Instead of outright disabling CAPTCHA functionality for a country, this setting will now instead supply users in selected countries field with a SmartSimple CAPTCHA in order to always present some challenge to malicious automation out there.<!--71605 - Ref to ticket 71008 - Captcha Response Error upon completing the registration, please enhance.-->following syntax:
====New Ability to Attach Multiple Filters to a List View====New ability to attach multiple filters to a single list view @''record''. You may now build complex list filters by combining multiple simple list filters. When assigning multiple filters to a list view, the results of each individual filter are returned and then combined together to render the list. In other words, the resulting list will contain records that satisfy any single one of the attached filters.<!--91407 - Ability to add multiple filters to one list view-->''fieldname''@
====Expanded Field Search Where ''record'' defines a different record that you wish to List View Configuration====Expanded the ability to search for fields reference a field from. For example, if we are again viewing a user profile but wish to reference the list view configuration screencompany name of that user we can configure a variable '''@parent.name@'''. Now when editing In this example, we are currently on a list viewuser profile, you can easily search for specific fields that you're looking for, similar and in order to reference information from the functionality in the report builderuser's parent company we reference one level up using 'parent'.<!--89682 - list view column custom field search-->
====Expanded Edit List View Icon Record levels can also be nested to More Areas====Expanded refer to records that are multiple levels apart. For example, if we wish to reference the availability company name of the edit list view icon to more areasuser that is currently logged in we can configure a variable '''@me.parent. Wename@''ve now extended '. Here we see two records mentioned, the ability to easily configure first for 'me' starts at the list view that you user currently have open to most of the list view areas logged in the system including lists on contact records, organization records, and UTA consumer/provider liststhen 'parent' to traverse one level up. Another example of valid syntax could be '''@parent.parent.parent.''fieldname''@'''.<!--87475 - Navigate to List view Editor/Settings via Consumer Provider/L2/Contact Lists-->
====Enhanced Search Panel Function====Enhanced the search panel area for list view sections The following are some examples that can be used in portals. This search panel is an easy way for you to provide a simple search filter for your end users to use, by predefining a set of criteria that they're able to filter onvariable reference. Within For these examples assume the configuration of a portal section of type list view, simply enable following scenario:* You are logged in as 'SmartSimple Support'* Your parent company is the Search Panel option, and then select which columns 'Customer Support' department* The root company of the list view you want to allow end users to filter oninstance is 'SmartSimple Software Inc.<!--93189 - revised Arcadia portal search (engage)-->'
{| class====New View "wikitable"|-! Syntax! Description! Format! Example|-| parent| References the parent of Workflow Connectivity Configurations====the current record being viewed.| @parent.''fieldname''@New settings screen that lists workflow connectivity to help you to trace through complex workflow processes| @parent. In name@ -> Customer Support|-| me| References the configuration screen user currently logged in.| @me.''fieldname''@| @me.email@ -> support@smartsimple.com|-| level1/level2/level3| Specific within the area of UTA template formulas. This is required to explicitly denote the record level in a workflow, weformula since multiple levels can be referenced.| @level[1/2/3].''fieldname've introduced a new menu tab called Workflow Connections that will allow you to see other workflows that trigger, or are triggered by the workflow you're viewing@| @level2. Also, when you are editing Grant Name@ = "@level1.name"<end>is an example of a workflow task UTA Level 2 template formula that triggers another workflow, we've introduced a link for you to review copies the workflow that you're linking Level 1 name standard field value toa Level 2 Grant Name custom field.<!|-| rootcompany| References the root company of the instance.| @rootcompany.''fieldname''@| @rootcompany.name@ -87846 > SmartSimple Software Inc.|- Workflow settings page enhancements-->|}
====New Ability to Test Report Exports and Autoloader Imports=Field Attributes===New ability to test report exports and autoloader imports on the fly now. We've introduced Specific attributes of a Test Now button on the scheduling screen for report exports and autoloader imports for you field can also be referenced to manually kick off get different information about a testfield.<!--92533 - Add testing buttons for import/export functions-->The general syntax syntax to do this is:
====Enabled Change History for Reports====Enabled change history functionality for reports @''record''. You can now see detailed change history for your reports and also even revert changes to a previous version! Note that changes to reports will only begin to be logged after the upgrade and you will not see previous changes made before''fieldname''.<!--88002 - Track changes on Reports-->''attribute''@
====Enabled Audit History for UTA Security Matrix====Enabled audit history for UTA security matrixThe following are some examples that can be used in a variable reference. The system will now log changes made to For these examples assume the UTA security matrix.following scenario:<!*A custom field with ID '132547', named 'Gender' that is configured as a Select One -Combo Box field with options '1=Male;2=Female;'*A custom field with ID '243657', named 'Text' that is configured as a Text Box -54550 - UTA security matrix audit history-->Single Line field with caption 'Enter Text Here'*A record where we have entered Gender as male and Text as 'Lorem Ipsum'
{| class===Minor Updates==="wikitable"|-! Syntax! Description! Format! Example|-| value| Returns the stored value of a field.| @''fieldname''.value@| @Gender.value@ -> 1|-| combovalue====Update | Specific to SmartCheck Error Message====Select One - Combo Box custom field type. Returns the stored value of a field.| @''fieldname''.combovalue@| @Gender.combovalue@ -> 1|-| lengthUpdated | Returns the standard message character length of the stored value of a field. Commonly used to check whether a field is empty by checking for a failed SmartCheck validation from "please correct length of 0.| @''fieldname''.length@| @Text.length@ -> 11|-| id| Returns the custom field ID of a custom field.| @''fieldname''.id@| @Gender.id@ -> 132547|-| caption| Returns the caption of the custom field. Commonly used when creating custom forms with the following errors" instead Display Only – Web Page View custom field type.| @''fieldname''.caption@| @Text.caption@ -> Enter Text Here|-| numoffiles| Specific to "submission failed due Link - Multiple Files custom field type. Returns the total number of files uploaded to the following"field| @''fieldname''. This was done numoffiles@| |-| numofpages| Specific to avoid confusion in situations where Link - Single File and Link - Multiple Files custom field type. Returns the failed submission logic should not actually be corrected, such as an eligibility form, where suggesting total number of pages within files uploaded to correct the failed criteria would invite perjuryfield| @''fieldname''.numofpages@| |-| files| | @''fieldname''.files@<!| |-| uploadlink| | @''fieldname''.uploadlink@| |-61778 | compressedfiles| | @''fieldname''.compressedfiles@| |- Smartcheck Message Info | compressedlink| | @''fieldname'please correct the following errors'.compressedlink@| |-| filenames()???| | @''fieldname''.filenames()@| |->|}
{| class====Enhanced Tab Bar Mode Feature===="wikitable"|-! Syntax! Description! Format! Example|-| html| Enhanced the Tab Bar feature and extended it to more areas| @xml. You can now enable Tab Bar mode from the portal, where previously it was restricted to admin user views only''fieldname''. Also added the ability to re''section''.html@ / @grid.''fieldname''.html@| |-order your tabs, as well as to use the various split-screen features such as list view split-screens, and map panels| xml| | @xml. We've also updated the modal window functionality from covering the entire screen instead to just covering the main application window when using the Tab Bar feature'fieldname''. This will allow you to more easily work with multiple tabs and switch between them''section''.<!| |-| xmlpre| pre-92385 processed variables| | |- Tab Bar phase 2| xmlvalue| | @xml.''fieldname''.xmlvalue@| |-| grid| inline data grid| @grid.''fieldname''.| |-><!--92260 - New version of modal window-->|}
===Functions=Updated Icon Library====Updated the library of available icons, for use in places like portal shortcuts. This will grant you more variety in the available icons you can choose from, as well as different styles of icons.<!--92817 - Font Awesome-->
====Added Ability to Show All Records in Portal List ViewDate Formatting====Added The following syntax is available in order to explicitly specify the ability to show all records in display of a portal list view nowdate formatted field. Previously in For example, to always display the portal view, list views were limited date in the number of records they could display at a time.<!'YYYY-MM-89913 DD HH:MM am/pm' you can define a variable '''@year(''fieldname'')@- Allow showing all records on portal list view sections@month(''fieldname'')@-->@day(''fieldname'')@ @hour(''fieldname'')@:@minute(''fieldname'')@ @ampm(''fieldname'')@'''.
====Updated Settings Terminology of Data Categorization Feature====Updated The following are some of the terminology and field labels for the settings of the Data Categorization functionality to improve clarity around the featureexamples that can be used in a variable reference. In For these examples assume the Global Settings, Security menu, following scenario:*A record where we have entered the previous Data Categorizations and Policies link has been moved down to a new section labelled Data Management Policies, and Data Categories has been re-labelled to Field Sets. These changes were made to have access to this feature more apparent and intuitive.<!--75526 - Data Categorization and Policies Refreshstandard field Start Date as '2017-01->02' at '22:52'
{| class====Updated Icon for Configuration of Translation Text===="wikitable"|-! Syntax! Description! Example|-| year| Specific to date formatted fields. Returns the full year.| @year(''fieldname'')@| @year(fullstartdate)@ -> 2017|-| month| Specific to date formatted fields. Returns the month number.| @month(''fieldname'')@| @month(fullstartdate)@ -> 01|-| monthname| Specific to date formatted fields. Returns the month name.| @monthname(''fieldname'')@| @monthname(fullstartdate)@ -> January|-| dayUpdated | Specific to date formatted fields. Returns the icon for day.| @day(''fieldname'')@| @day(fullstartdate)@ -> 02|-| dayweek| Specific to date formatted fields. Returns the configuration day of custom translation text within settings pagesthe week.| @dayweek(''fieldname'')@| @dayweek(fullstartdate)@ -> Monday|-| hour| Specific to date formatted fields. Previously this was an icon beside Returns the text boxes that could be translated, such as caption label, however, this functionality has now been moved up 12-hour format of hour.| @hour(''fieldname'')@| @hour(fullstartdate)@ -> 10|-| hour24| Specific to date formatted fields. Returns the top 24-hour format of configurations screen with a new iconhour. This change was made | @hour24(''fieldname'')@| @hour24(fullstartdate)@ -> 22|-| minute| Specific to have access date formatted fields. Returns the minute.| @minute(''fieldname'')@| @minute(fullstartdate)@ -> 52|-| ampm| Specific to text translations more consistent and easily available date formatted fields. Returns the am/pm value of the 12-hour time.| @ampm(''fieldname'')@| @ampm(fullstartdate)@ -> pm|-| date| Specific to administratorsdate formatted fields. Returns the date ???.<!| @date(''fieldname'')@| @date(fullstartdate)@ -> 2017-85366 01- Translations button02 ???|-| datetime| Specific to date formatted fields. Returns the date time ???.| @datetime(''fieldname'')@| @datetime(fullstartdate) ->2017-01-02 22:52 ???|-| formatdate| Returns the date formatted to the current user preference| @''fieldname''.formatdate@ ???| |-|}
====Added Baseline Language Translations for JapaneseNumber Formatting====New language supported by defaultThe following syntax is available in order to format a numeric field value (e.g. We have introduced default baseline system translations now in Japanesecurrency, percent formats).<!--84747 - Language Support-->
{| class====Simplified Report Builder joins for Audit Logs===="wikitable"|-! Syntax! Description! Example|-| formatUpdated the report builder | Specific to simplify number formatted fields. Returns the inclusion specified formatted value of Standard the number. Possible format options include currency, decimal, and Custom Field Audit Log record sets. Now when you add one of these record setspercent| @format(''fieldname'',currency,us)@<br>@format(''fieldname'',decimal, the link field option will also show specific fields that you can link on in order to limit your report of field history to specific fields.<nowiki>''</nowiki>)@<br>@format(''fieldname'',percent,<nowiki>''<!/nowiki>)@|--89857 - Put restrictions on Report Builder joins-->|}
===Miscellaneous Variables=Enhanced Reporting of Privacy and Security Policy Agreements====Enhanced the Privacy and Security Policy agreements to now capture the policy version, as well as expose the information to be exportable via Reports. You can now build a report to export the information of user acceptance of your policy agreements.<!--90774 - Exportable Policy Acceptance Info-->
====Enabled Additional Logging of Emulation Users in Field Change History====Enabled logging of emulation users for field change history. If a user is emulating another user, the original user will also be logged in the field change history to indicate that the target user was being emulated by another at the time. When viewing field changes, a new Emulated By column has been added to indicate this.<!--91018 - Emulation Feature - Field History@now@@currentdate@@objemail@ (object email address)@SmartFields@ @SmartFields(fieldidlist)@ @SmartFieldsIncludeTab@ @SmartFieldsEdit@ (appears in edit mode)@lat@ @lng@-->
=Configuration - Advanced===Enhanced Association Entry Interface====Enhanced the new association entry view for ease of use. Added the ability to select and drag multiple rows. Also, extended the new association entry interface to custom fields of type Linked Record List. If you're using the new association entry interface, this will also now be applied to custom fields that display association lists as well. This will be applied to your system if in Global Settings -> Classic Options -> you have untoggled Use Classic Association Entry View in order to try out the new interface.<!--92712 - association entry interface new icon and row clickable--><!--92708 - linked record list to use the new association entry interface-->
==On-Demand System UpgradesAdvanced Syntax==The following features are available immediately with the application of the upgrade, but must first be enabled or configured by a System Administrator:
===Major UpdatesRecord Level=======Added Options for Configuring Minimum and Maximum Selection Requirement for Lookup - Autocomplete Custom Fields====Added options for the configuration of Lookup - Autocomplete custom field types to allow you to easily configure Record levels are used within a minimum requirement, as well as maximum limit on options for users variable reference to selectdefine the record in question.<!--70483 - SmartCheck Validation for Lookup - Autocomplete Options Multi-Select-->
====New Option for Update Behaviour with Organization Signups for Matching Organizations====New update behaviour option for organization sign up pages introduced The following are some examples that when can be used will allow new registrants the ability to select existing organizations to sign up under. This new option will automatically create in a new organization when no matches are found, but will alternatively display matching organizations when found and allow users the ability to select which to create their user account underneathvariable reference.<!--84626 - Organization lookup: partial matching-->
{| class====New Option for Organization and User Signups to Apply SmartCheck Validation===="wikitable"|-! Syntax! Description! Format! Example|-| system| References global system variables. | @system.''variablename''@| |-| system2| References global system variables. | @system2.''variablename''@| |-| system.library| | @system.library| |-| levelone / leveltwoNew ability | Specific to assign a SmartCheck validation contact, company, or transaction associations to a signup pageLevel 1 or Level 2 (e. While g. Level 1 Contacts association). References the signup page would apply field level validationsassociated Level 1 or Level 2 record| @levelone.''fieldname''@| |-| company / contact| Specific to contact, you may now also apply SmartCheck Validations company associations to configure more complex validation requirementsa Level 1 or Level 2 (e.g. Level 1 Contacts association). References the company or contact record from the association (e.g. L1 or L2 multiple contacts)<!| @company.name@| @company.name@ -> SmartSimple Software Inc.|-94388 | linkparent| References| @linkparent.''fieldname''@| |- SmartCheck Validation available on sign up page| sessioncompany| References your current association company (logging in from multiple companies)| @sessioncompany.| |-->|}
====New Location Proximity Searching=Field Attributes===New ability for list views with the map panel enabled to filter and sort records based on location proximitySpecific attributes of a field can also be referenced. Now available for UTA Level 1, users, and companies list views. This will allow users to list records The following are some examples that can be used in order of proximity to the user's choice of their current location, an address search, or simply pointing on the mapa variable reference.<!--84636 - Ability to sort list view by geographic location proximity to user-->
==Lists=Minor Updates=======Expanded Quick Assign for use in Portal Sections====Expanded the Quick Assign feature to be available for portal sections now. Previously, this was limited to just the full UTA view, but we've now made it available for portal sections so you can provide it to your end users with limited portal views.<!--92641 - quick assign in portals-->
==Functions==Added Option for Workflow Connector to Exclude by Record Status and Type====Added an option to add a status and type exclusion list for workflow connectors. Previously, there was only an inclusion option for status and types, but now you can choose either or to simplify your configuration.<!--90250 - Workflow Connectors - Update to Select Exclude Statuses and Types-->
===Controls=Added Option to Show Record Count for Mixed Record Type List Views in Portal====Added the Show Record Count option for portal sections of type List View - Mixed Record Type.<!--88301 - Listview - Mixed Record Type-->
===Calculations=Added Ability to Restrict Availability of Invitation Templates====Added ability to restrict the availability of Invitation templates of the Invitations feature to certain user roles. Visibility Condition settings have been added for Invitation templates to allow you to limit their use.<!--90806 - More granular permissions & availability settings on Invitations functionality-->
===ReportProperty=Added Additional Expiry Options for Privacy and Security Policy Agreements====Added an option to enforce that your end users accept your Privacy and Security policies on a daily or weekly basis. Previously, the shortest available option to you was monthly.<!--65906 - Add Daily Option to Privacy and Security Policy Agreement Frequency-->
=Appendix===New Ability to Manifest UTA Level 3 Tabs====New ability to manifest UTA Level 3 list views as tabs now.<!--90291 - Manifest tab for L3 list views-->
==Beta PreviewsStandard Field Variable Names==No features are available for beta preview this upgrade.
==Notes for Admins======New Ability to Search within History and Pending Workflow Tasks=User===New ability to perform searches within the workflow task history/pending queue lists. You can now search, filter, and sort on the workflow task queue to better trace the automated workflow processes being triggered in your system.<!--87394 - Workflow history@inRole(rolename)@-->
===Company=Added Option for use of Private Key File for Authentication of Report Exports====Added option to use private key file for use in authentication of report exports. You may now upload a private key file for use in report exports to external sites such as SFTP sites.<!--90252 - Scheduled Export from a report - enhancement to use key file as credentials for sftp-->
===UTA Level 1=Expanded Variable Processor to Maximum Word/Character Setting of Custom Field====Enhanced the maximum word/character setting of a custom field to run through the variable processor. You can now make the maximum word/character limits of your custom fields dynamic and dependent upon the value of another field.<!--85056 - Use variable syntax for maximum word/character count for an input text field-->
====Added Option to Restrict Dynamic Content Enabled Custom Field to List Only Parent Associated Objects====<!--Added an option for selection-type custom fields with dynamic content enabled to restrict the list of dynamic content to related child records@company. or @client. For example, a multi-select custom field on a UTA Level 1, with the dynamic content option enabled will have an additional setting Enforce Parent Restriction available to you now@person. Enabling this setting will restrict the list of Level 2 records to only the child Level 2s under the Level 1 record the user is onor @people.<!--91318 - Restrict Objects to Parent - Dynamic Content-->
===UTA Level 2=Expanded Variable Processor to Records Linked via Linked Record Custom Field====Added the ability to reference field values from another record linked through a selection-type custom fields with dynamic content. You'll be able to use the following variable syntax to reference an object linked to one of these fields: @linked.''linkfield''.''recordfield''@ @linked.''linkfield''[#~''recordstandardfield''~ $''recordcustomfield''$#]@
e.g===UTA Level 3=== ===Email Broadcast Templates=== ===Workflow Email Templates=== =Recommended Reading= <!--@rootcompanyid@@ssformtoken@ (security token) @ssformtoken. html@ (hidden input HTML with security token)@url@@now@@currentdate@@logourl@@linked.EmergencyContact.cellphoneprimaryroleid@(primary role when logged in, using prole parameter from login)given that EmergencyContact is a Linked Record custom field of type contact@dateformat@ (user setting, and cellphone is used in scripting)@sstimezone@ (user setting)@ssget()@@object@ (from a cellphone custom field belonging transaction will go to the contactuser/company depending on transaction type, can also use @parent@)@company.or @client. (for invoice to get company information) note: change record context to level<!--91321 - Variable Syntax for Linked Records - Dynamic Content--> [[Category:Process Drivers]][[Category:Variables]]