Auto-refresh issue on scrolling in dropdown of 100+ choices with 1+ null choice label, on a monitor

Certified Lead Developer

This is an issue that was initially reported on a Site and I could not replicate it when testing in any browser, until I thought to test on a separate monitor (not my laptop screen). When testing on the monitor was able to replicate in Chrome & Edge through the Site, through the top-level parent interface, and through the interface that contained the dropdown (although for the customers instead of a refresh, it was causing the entire page to turn grey). Can only replicate the issue on my laptop screen through the interface, not through the Site. I have reached a resolution for the issue (updating/deleting rows in the database or logic on local!choices to replace nulls with "Unknown") but sharing since I was not able to find anything when I had searched online. Believe the issue was caused by a user deleting some of the data for a couple rows before using the "Delete" icon/button that had been set up.

The case was the query pulling in the data did not have any filters & there were couple similar fields in the database: code, desc, name. The queried data was sorting on the code (always not null) & using the desc (couple nulls) as the Choice Labels (IDs as the Choice Values, all unique integers). Below is some code that can be copy-pasted into a test rule if anyone would like to see what the issue looks like, just need to do the testing on a separate monitor (not your laptop screen).

a!localVariables(
  local!values: enumerate(105),
  local!choices: touniformstring({enumerate(15), "", enumerate(89)}),
  local!selection: null,
  a!sectionLayout(
    contents: a!dropdownField(
      label: "Dropdown",
      placeholder: "-- Select a Value --",
      choiceLabels: local!choices,
      choiceValues: local!values,
      value: local!selection,
      saveInto: local!selection
    )
  )
)

  Discussion posts and replies are publicly visible

Parents
  • 0
    Certified Associate Developer

    Hi,

    Slight correction in your code hope it will help you for the null values

    a!localVariables(
      local!choices: reject(fn!isnull,touniformstring({enumerate(15), "", enumerate(89)})),
      local!values: enumerate(count(local!choices)),
      local!selection: null,
      a!sectionLayout(
        contents: a!dropdownField(
          label: "Dropdown",
          placeholder: "-- Select a Value --",
          choiceLabels: local!choices,
          choiceValues: local!values,
          value: local!selection,
          saveInto: local!selection
        )
      )
    )

Reply
  • 0
    Certified Associate Developer

    Hi,

    Slight correction in your code hope it will help you for the null values

    a!localVariables(
      local!choices: reject(fn!isnull,touniformstring({enumerate(15), "", enumerate(89)})),
      local!values: enumerate(count(local!choices)),
      local!selection: null,
      a!sectionLayout(
        contents: a!dropdownField(
          label: "Dropdown",
          placeholder: "-- Select a Value --",
          choiceLabels: local!choices,
          choiceValues: local!values,
          value: local!selection,
          saveInto: local!selection
        )
      )
    )

Children
No Data