Skip to main content
February 15, 2022
Question

set timer on interface to auto submit?

  • February 15, 2022
  • 9 replies
  • 1 view

Hi there,

I have an interface, normally there is drop down which has multiple options, use select one, then click button "Next"("Submit" button) to get out to different interfaces. but the user want to just choose the option without clicking "Next" button, then system can automatically go to next one.

any suggestion how to do it? I know in Appian you have to click a "Submit" button to  get out. and heard someone mentioned can set the timer, but dont have any idea.

can anyone help here?

Thanks.

Lin

9 replies

csteward
February 15, 2022

This sounds like a case where requirements are overreaching and will cause much more development time, maintenance and hassle than may be necessary.  Is there any reason the user cannot Submit to confirm their selection?  Do they expect the interface to change immediately once their dropdown selection is complete, or do they want to make a selection and close the window and the process moves on behind the scenes?

If they expect the interface to change immediately, you could create a wizard type interface and handle this within the same form, such as:

a!localVariables(
  local!option1,
  local!option2,
  {
    a!dropdownField(
      label: "Option 1",
      showWhen: rule!APN_isEmpty(local!option1),
      placeholder: "-- Select --",
      choiceLabels: {"A","B"},
      choiceValues:  {"A","B"},
      value: local!option1,
      saveInto: local!option1
    ),
    a!dropdownField(
      label: "Option 2",
      placeholder: "-- Select --",
      showWhen: and(
        rule!APN_isEmpty(local!option2),
        not(rule!APN_isEmpty(local!option1))
      ),
      choiceLabels: {"C","D"},
      choiceValues:  {"C","D"},
      value: local!option2,
      saveInto: local!option2
    ),
    a!richTextDisplayField(
      showWhen: and(
        not(rule!APN_isEmpty(local!option2)),
        not(rule!APN_isEmpty(local!option1))
      ),
      value: {
        a!richTextItem(
          text: "Done!",
          style: "STRONG",
          size: "MEDIUM"
        )
      }
    )
  }
)

Otherwise if the process must move without them submitting, an exception timer would be required and it cannot chain them to the next interface - I would not recommend this approach, but if you allow them to select an option, and not submit, you would need to handle the data persistence with a!writeToDataStoreEntity() on the dropdown or any other field they can toggle, so their selection is immediately stored to the DB.  Then remove the Submit button completely.

Then you will need to set an exception timer, and you will have to weigh the timing where it's long enough that they have time to make their selection, but quick enough to keep the process moving.  This will cause you issues since the timer begins at task assignment, not at the time they accept (open) the task.

Again, possible in theory, but not a UX like I would suggest - or let the business suggest without a set of disclaimers from a maintenance and process perspective.

andrewh0007
February 15, 2022

Unless I've misunderstood what you're trying to achieve I can't see why this can't be done in the one interface without "Submitting" to move through a process model. It sounds like just a normal dynamic form that shows different options based on selections.

Do you want the interfaces to be connected by process models activity chaining and if so, why do you want this?

linp0001Author
February 15, 2022

thanks for the information. it is the node of a process model, the reason is the customer feel it too much work by selecting the option, then clicking a button. they want to just select the option, then the system will switch to the next interface.

regards,

andrewh0007
February 15, 2022

I think you've misunderstood what I'm getting at. That's the end result the customer wants which is completely fair enough, the way we get to that solution is what I'm talking about.

We can tackle it another way. Can you give a quick three step example (even if it's completely made up) that matches what you're looking for? Please include a different path based on different selections if this is part of the use case.