Updating Disabled Expression for button on child tab of Incident does not change button's behavior

Version 1

    Details

     

    The quick action buttons on the toolbar of a child panel on Incident (for example Task or External Task) have logic that determines when they are enabled based on the current Status of the child record. This logic is visible in the configuration screens for the button in the appropriate Incident layout. However, changing the logic does not appear to change the button's behavior.

    Example Use Case: Allow users to be able to Complete an external task that is in a Logged state
    Steps to Reproduce:
    1. Go to IncidentLayout.ServiceDesk and go to formView
    2. In the External Task tab, edit the Toolbar
    3. Set the Complete quick action to have any of the disabled rules below:

    $(if Status == "Logged" || Status == "Assigned" || Status == "Accepted" ||
         Status == "Reassigned" || Status == "Waiting" || Status == "On Hold"
      then false
      else true)

    NOTE: Above is an out of the box script

    $(if Status == "Logged" || Status == "Assigned" || Status == "Accepted" || Status == "Waiting"
      then false
      else true)

    $(if Status == "Logged"
      then false
      else true)


    EXPECTED RESULT:
    Selecting a Logged external task, the Complete button should be enabled

    ACTUAL RESULT:
    Selecting a Logged external task, the Complete button is disabled.

     


    Resolution

    The quick action buttons also have a 'Disable in UI when:' expression on the Quick Action itself, which will override the expression on the layout toolbar. This expression will also need to be modified.


    To make the update for the example use case in the Description above:

    Go to the External Task workspace
    Select the Action Menu
    Expand the Buttons folder
    Edit the Complete button
    On the right, update 'Disable in UI when:' to the same expression as the layout toolbar
    Save the Quick Action