Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Playbook 'User Form' activity 'Complete Condition' missing

Valqe
Tera Expert

Hi all,

Very new to this field and hoping someone will help.

I am working on a playbook and trying to use "User Form" activity to capture some field(s) values.

I would greatly appreciate any help you can provide how to validate user's input in 'User Form' playbook activity.

Example:
1) I want user to change the assignment group to a certain group, but "Complete Condition" is missing in "User Form" and I don't know how to validate user's input .

2) I would prefer to hide "Mark Complete" and "Skip" buttons (as this form is mandatory) but I am not sure how to do that.

Valqe_0-1749646052757.png

I also tried utilizing 'Questionnaires' but ended up in similar result without a resolution.

Thank you in advance

 

 

Ref:

By 'Complete Condition' I'm referring to activity property options where you get to validate end-user input before activity moves forward. User Form activity does not have this option thus no way to validate what end-user selected. Sharing screenshot below for your reference

Valqe_0-1749649448258.png

 

1 ACCEPTED SOLUTION

Community Alums
Not applicable

@Aleena598657870  and @Valqe 

 

Activity Definition named "User Form" has been de-activated and its 'Protection policy' field has been set to 'Read-only'. You won't be able to change this in this record. But, nothing prevents you from creating your own activity definition by replicating the one that was de-activated by ServiceNow. I am surprised why this activity was depricated and new one is missing 'Complete Condition' option. 

 

The way I addressed this was I created my own 'Activity Definition' and I did it by starting from the one that already exists (but is deactivated and protected).

These are the steps I used and they worked:

  1. Navigate to Process Automation > Activity Definitions
    Locate "User Form" record that active=false and export this record to an XML in your local computer.
  2. Now you need to make 4 changes in the exported XML record in your local computer
    1. Set 'Active' field to true:
      <active>true</active>
    2. Rename it to something other than 'User Form' (I used 'User Form Val')
      <label>User Form Val</label>
      <sys_name>User Form Val</sys_name>
    3. Update sys_id
      You can use Background Scripts to generate unique sys_ID by using
      gs.info(gs.generateGUID());
      then copy generated sys_ID value and replace it in XML:
      <sys_id>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</sys_id>
    4. Remove 'read-only' protection
      Is shows: <sys_policy>read</sys_policy>
      Change it to: <sys_policy/>
  3. Save changes and import this XML back to your instance
    You should be able to see newly generated activity definition. Note that active=true and 'Protection policy' is not read-only:
    ValonSheremet2_0-1751026321024.png

     

  4. Open record and scroll to 'Playbook Actions' related lists and generate 'Playbook Actions' by matching them with original 'User Form' activity:
    ValonSheremet2_1-1751026416254.png

     

    Now you are ready to use this activity in your playbook:
    ValonSheremet2_2-1751026518178.png

     

View solution in original post

5 REPLIES 5

Community Alums
Not applicable

@Aleena598657870  and @Valqe 

 

Activity Definition named "User Form" has been de-activated and its 'Protection policy' field has been set to 'Read-only'. You won't be able to change this in this record. But, nothing prevents you from creating your own activity definition by replicating the one that was de-activated by ServiceNow. I am surprised why this activity was depricated and new one is missing 'Complete Condition' option. 

 

The way I addressed this was I created my own 'Activity Definition' and I did it by starting from the one that already exists (but is deactivated and protected).

These are the steps I used and they worked:

  1. Navigate to Process Automation > Activity Definitions
    Locate "User Form" record that active=false and export this record to an XML in your local computer.
  2. Now you need to make 4 changes in the exported XML record in your local computer
    1. Set 'Active' field to true:
      <active>true</active>
    2. Rename it to something other than 'User Form' (I used 'User Form Val')
      <label>User Form Val</label>
      <sys_name>User Form Val</sys_name>
    3. Update sys_id
      You can use Background Scripts to generate unique sys_ID by using
      gs.info(gs.generateGUID());
      then copy generated sys_ID value and replace it in XML:
      <sys_id>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</sys_id>
    4. Remove 'read-only' protection
      Is shows: <sys_policy>read</sys_policy>
      Change it to: <sys_policy/>
  3. Save changes and import this XML back to your instance
    You should be able to see newly generated activity definition. Note that active=true and 'Protection policy' is not read-only:
    ValonSheremet2_0-1751026321024.png

     

  4. Open record and scroll to 'Playbook Actions' related lists and generate 'Playbook Actions' by matching them with original 'User Form' activity:
    ValonSheremet2_1-1751026416254.png

     

    Now you are ready to use this activity in your playbook:
    ValonSheremet2_2-1751026518178.png