Status

From SmartWiki
Revision as of 10:21, 22 October 2021 by Garrett Alford (talk | contribs) (Why?)

Jump to: navigation, search

Overview

Statuses represent a core concept within the SmartSimple Cloud platform. Each status represents the state of the related object. Statuses can be defined with the Universal Tracking application for all types of objects that you create; Level 1 objects and Level 2 and Level 3 activities. You can also use statuses with both contacts and organizations. This article concentrates on the use of Statuses for the Universal Tracking Application but the same logic applies to contact and organization statuses.

Why?

Statuses can be assigned to all records in SmartSimple Cloud, including users and organizations. By assigning statuses to entities in your system, you are able to track your relationships with anyone and everyone that you interact with, both internally and externally.

A good use-case for the benefits of statuses is if you have an organization's Status as Registered, but not yet Verified. Once their status is switched into Verified, you are able to enter that information to change their status in your SmartSImple instance, and both the status and record will be updated simultaneously. You can create as many status options as you need; they can be modified and updated in your Global Settings, UTA Settings, as well as from any individual organization or applicant record.

Configuration - Essentials

Creating UTA Statuses

To work with statuses within a UTA you need the Manager Permission for that UTA. If you have this permission, go to the Configuration Settings on the UTA, choose the Level 1 or Level 2 tab, and then click on the Statuses link.

Status-001.png

The Status settings for Level 1, Level 2 and Level 3 are similar, with a few differences outlined below.

  • For Level 1 statuses click the Statuses link in the Level 1 settings page.
  • For Level 2 and Level 3 statuses click the Statuses link in the Level 2 settings section.

Status-002.png

Note: Level 2 and Level 3 Statuses are both created and managed on the same page.
By default any statuses you create here will be available to both Level 2 and Level 3 records, but can be restricted to either Level 2 or Level 3 using the Status Availability section (described below).
  • Details of each status are displayed when you click into a specific status.


Organization/Contact Statuses


Referencing Statues as value

You can reference the status of any status based object (Level 1, Level 2, Level 3, Contact or Organization) by referring the object and one of the following status qualifiers.

@Contact.status@ returns the status name for example: Active

  • statusid (the numeric identified of the status), statuscaption (the alternative caption of the status) can also be referenced.
  • This syntax can be used within Submit Logic Validation script by adding the object type prefix:

"@level1.client.statuscaption@"

The status caption will be references. Example:

Verified

See Submit Logic for detailed instructions.


Status Settings

Each status has the following settings:


General Tab

  • Status ID - Internal unique system ID that can be used to reference the status.
  • Language - Language each status can be defined in multiple languages.
  • Name - Name for the Status.
  • Caption - Default display name for the status.
  • Tooltip - a description to be displayed when the user moves their mouse over the caption (when displayed used the Status Indicator). This is only available on level one statuses.
  • Display Order - The order that statuses are displayed in the Status combo box.
  • Group Name - Used in conjunction with the Arcadia Settings to mask multiple individual statuses with a single overall status.
  • Description - Any comments or notes you wish to include. Note: Description only manifests on the configuration page.
  • Colour Code - The colour code used to indicate each status. This colour will be used in the list view and the details view. Click the colour palette button to display a colour picker.
  • Lock On Status - This setting is used to lock the record so that it cannot be changed until it is unlocked.
  • Is Default Status - Determines the default status to be selected when a new record is created.
  • Is Default Copy Status (Level 2 & 3 only) - When the Copy button is used to create a copy of a Level 2 or Level 3 record, the new record will have the status that has this setting enabled. If no status is set as Is Copy Status, copied Level 2 or Level 3 records will have the same status as the original record.
  • Exclude from Status Indicator - Checking this will exclude this status from the Status Indicator Level 1 Standard field.
  • Display Buttons - Controls which default Save buttons are available to the user for a record at this status. (See Button Options below).
  • Template Page Submit Status - Controls the assigned status when submitted via a template page.


Permissions and Availability Tab

  • Status Availability - Only available when configuring Level 2 Statuses. By default any statuses created for a Level 2 will be available to both Level 2 and Level 3 records, but can be restricted to either Level 2 or Level 3 using the Status Availability section. (See Status Availability below).
  • Allow to Set Roles - The specific roles that can set the status. If you do not set a role, then any user can set any status.
  • Override Lock Roles - The specific roles to which the Lock On Status setting does not apply. If you enable Lock on Status and do not set an Override Lock Role, then the item cannot be unlocked.
    Note: Any Role with the UTA Manager Permission will be able to override the Lock on Status setting, even if not specified here.


Annotation Settings

The following settings are used to control the behaviour of the object when annotation has been applied to fields.

    • View Annotation Roles - defines the roles that can view annotations that have been added to the object at this status (annotation is only available for UTA objects).
    • View and Create Annotation Roles - defines the roles that can view and create annotations that have been added to the object at this status.
    • Edit Field in Annotation Mode Roles - defines the roles that edit fields that have had annotations attached.
    • Open Record in Annotation Mode - defines the roles that can edit the entire record in annotation mode.

Status and Level 1 Templates

The final setting on this page controls the specific templates for which the status is available. You can also restrict which Statuses are available to each Level 1 Template by navigating into the template itself. See here for details.


Status History

If the Status Standard field is configured with Track Changes enabled then any user with View Field History Permissions will see a small dotted line under the Status field.

When they hover over the Status field then they will see the History icon.

When they click on the History icon then they will see a breakdown of the history plus a bar chart showing the amount of time spent in each status. The duration (in days) can be included when building a report by including data from the "Standard Field Audit Log" dataset.

StatusHistoryChart.png

Translation Options

Specify a status caption for each desired language.

    • Select the language from the Language drop-down list.
    Status-003.png
    • Enter the desired caption translation and save.
    • The relevant language caption will be displayed to users based on the language specified in their Personal Settings.

Button Options

For each status you determine which of the "Save", "Save Draft" and "Save & New" buttons are available to the user with the Display Buttons setting mentioned above.

The Submit button is not included in the Display Buttons options. The Submit button will be displayed whenever the Submit Button Status has been defined.

Button Description
Save
    • This button validates all fields in the record, ensuring that mandatory fields and formatting requirements are satisfied.
    • Clicking the Save button does not change the current status.
Save Draft
    • Save Draft saves the record, but performs NO validation.
    • This button should always be used in conjunction with at least the Submit button.
Save & New
    • The Save & New button validates all fields in the record, saves the item, then displays a new record.
Submit
    • The Submit button validates all fields in the record, ensuring that mandatory fields and formatting requirements are satisfied.
    • It saves the record and changes the status to the status defined in the Submit Button Status section of the original status.
    • Note that the label on the Submit button can be defined in the Caption section of the status page, so may appear with another name.

Important: If a Submit Button Script has been defined the Submit button will run that function, and will NOT perform the tasks listed above.

Configuration - Advanced

Submit Button Script (Level 1 Only)

In order to use the Submit Button Script you must select a Submit Button Status so that the Submit button will appear.
You must also create a Browser Script containing a JavaScript function that is called within the Submit Button Script setting.

    • This feature can be used to perform tasks such as confirmation or custom validation of the data on the page, prior to submission.
    • The function must return either a value of true if the record should be submitted; or false if the record should not be submitted.
    • Standard and Custom Field validation is performed after this script is run, provided that the function has returned true. If the function returns false no further validation is performed and the record is not saved/submitted.
    • You can optionally re-label the Submit button using the Caption setting and you can select an icon for the button.

For example, if your Browser Script contains a function called customsubmit you would put the following into the Submit Button Script section:

  • Bsf.png

The following sample JavaScript function will prompt the user to confirm if they want to submit the record.

function customsubmit()
{
var answer = confirm ("Do you really want to submit this?")
if (answer)
   {
   alert ("Consider it done")
   return true
   }
else
   {
   alert ("Keep filling it in then")
   return false
   }
}
    • The "return false" isn't strictly necessary. If the function does not return true then false is assumed.
    • Note that JavaScript is case sensitive.

If you would like to define a custom script that runs when a record is saved or submitted you can use savefunc.


Status Availability

By default any statuses you create here will be available to both Level 2 and Level 3 records, but can be restricted to either Level 2 or Level 3 using the Status Availability section.

The following 3 options are available:

    • Available for Tasks - will make it available to both Level 2 and Level 3 records.
    • Not available for Tasks - will make it available to Level 3 records only.
    • Not available for Level 3 Activities - will make it available to Level 2 records only.

Status Triggers

Sometimes you will need to control the status associated with level 2 and level 3 items based on a status change at the level 1 item.

For example, if you have an “abandoned” status for a project tracking UTA and you set a project to that status then you may need to set an “abandoned” status for all level 2 (or level 3 items) related to that project. This effect is achieved through a status trigger.

For each level one status change you can control status changed for all level 2 and level 3 items. You can further control this behavior by restricting the trigger to specific types of level 2 and level 3 items. Using the previous example you may not wish to change the status on a “reporting” type level 2 activity simply because the project is abandoned.

Status Triggers can be defined by clicking the Status Trigger link when editing the relevant Status:

  • StatusTrigger.png

Which brings you to the Status Trigger page:

Level 1:
  • Level 1
Level 2:
  • Level 2
    • From Level 1 you can define status triggers for associated Level 2 records, Level 3 records, and Transactions.
    • From Level 2 you can define status triggers for the associated Level 1 record (the "parent") as well as any associated Level 3 records.
    • Level 3 status triggers are not supported.
    • The Type (or Template for Level 1) is selected in the Type Filter combo box.
    • The current status is selected in the Status Filter combo box.
    • The new status is selected in the Set Status To combo box.
    • The Add Trigger button is used to add the new trigger to the trigger list.

So for the defined Type/Template any associated records that were at the status selected in Status Filter will be changed to the Set Status To status.

    • Any number of triggers can be created.

Submit Logic

    • This feature provides for the creation of any number of submission rules that control a submission process.
    • When a submission process is controlled by submission logic, then values at other levels can be validated.
    • Values are validated based on the sequence defined within the submission logic.
    • From Level 1 the submission rules can access any field at Level 1, account/contact fields, as well as aggregated fields at Level 2 and/or Level 3.
    • The Submit Logic feature is associated with a particular status. Associating the conditions with each status allows for different statuses to control sets of Submit Logic rules.


See Also


Previous.png  Status Field Permissions        Level 1 Templates  Next.png