KrisShar
ServiceNow Employee

Opening a Dialog on Button Click in a List (UI Builder)

 

Configuration Steps

Create the following records via configuration:

 

1. Action Assignment

Table: sys_declarative_action_assignment

  • Create a new Action Assignment record.
  • Populate the fields as shown in the reference screenshot.

    KrisShar_2-1770701514032.png

2. UX Add-on Event Mapping

Table: sys_ux_addon_event_mapping

  • List: CSM/FSM Workspace → List Sys ID
  • Payload: List Action Event Payload

    KrisShar_5-1770701567605.png

                        

    Payload: List Action Event Payload:

    {
        "container": {
            "external": {
                "binding": {
                    "address": [
                        "external"
                    ]
                },
                "type": "EVENT_PAYLOAD_BINDING"
            },
            "fields": {
                "binding": {
                    "address": [
                        "fields"
                    ]
                },
                "type": "EVENT_PAYLOAD_BINDING"
            },
            "multiInstField": "sysId",
            "params": {
                "binding": {
                    "address": [
                        "params"
                    ]
                },
                "type": "EVENT_PAYLOAD_BINDING"
            },
            "passiveNavigation": {
                "binding": {
                    "address": [
                        "passiveNavigation"
                    ]
                },
                "type": "EVENT_PAYLOAD_BINDING"
            },
            "redirect": {
                "binding": {
                    "address": [
                        "redirect"
                    ]
                },
                "type": "EVENT_PAYLOAD_BINDING"
            },
            "route": {
                "binding": {
                    "address": [
                        "route"
                    ]
                },
                "type": "EVENT_PAYLOAD_BINDING"
            },
            "size": {
                "type": "JSON_LITERAL",
                "value": "md"
            },
            "title": {
                "binding": {
                    "address": [
                        "title"
                    ]
                },
                "type": "EVENT_PAYLOAD_BINDING"
            }
        },
        "type": "MAP_CONTAINER"
    }
    ​

3. Action Payload Definition

Table: sys_declarative_action_payload_definition

  • Configure the payload.
  • Route should reference the new page variant that opens inside the dialog.

    KrisShar_6-1770701750923.png

     

 

4. UX App Route

Table: sys_ux_app_route

  • Parent Macrocomponent: CSM/FSM Workspace – List Sys ID

    KrisShar_7-1770701762133.png

     

5. Action Configs

Table: sys_ux_action_config

  • Add the created Declarative Action under List Actions.

    KrisShar_8-1770701787076.png

     

6. Page Variant Creation

  • Create a Page Variant at the CSM/FSM Workspace level.
  • Add a Form component to the page.
  • Configure Data Resources → Form Controller.

    KrisShar_9-1770701815621.png

     

    KrisShar_10-1770701848997.png

     

    KrisShar_11-1770701858094.png

     



Result

  • A custom List Action button appears in the CSM/FSM Workspace list.
  • Clicking the button opens the configured page variant in a dialog with the form loaded.

    KrisShar_12-1770701886562.png

 

Version history
Last update:
2 hours ago
Updated by:
Contributors