Show-UDModal Freezes

I have a UDButton that when clicked shows a modal. This modal reads from a spreadsheet and checks if a server is being skipped for maintenance. The modal shows the server name, any associated change ticket, and reason for skipping. When the list is, let’s say, goes over a hundred, it sometimes freezes especially when you start dragging the scroll bar. In cases that I am able to close the modal after some time, I am then unable to click the UDButton until I refresh the whole page. I am using UD Community 2.3.2. Thoughts? Thanks

Any code examples?
Hard to say without anything to attempt replication with.

Below are the relevant parts that is causing the issue from entire dashboard.

$data = Import-Csv “$localFolder\Report.csv”

#SERVERS NOT SCHEDULED LIST
$cache:ScheduleModal = @(
data | Where-Object {.“Patch Skip Ticket ID” -ne “None” -or $.“Patch Enabled” -eq “No”} | Select-Object -Property “Patch Skip Ticket ID”,“Server Name”,“Patch Enabled” | Sort-Object -Property “Patch Skip Ticket ID”,“Server Name” -Descending
)

#START OF NON-SCHEDULED SERVERS AND TICKET ID MODAL
New-UDButton -Icon plus -Text “Remedy Ticket Info” -Flat -OnClick {
Show-UDModal -Content {
New-UDTable -AutoRefresh -Title “NOT SCHEDULED SERVERS TICKET ID” -Style bordered -Headers @(“Remedy Ticket”,“Server Name”,“Patch Enabled”) -Endpoint {
$cache:ScheduleModal | Out-UDTableData -Property @(“Patch Skip Ticket ID”,“Server Name”,“Patch Enabled”)
}
}
}

Thanks.

Does the issue persist if you run it without the “-autoreload” on the table?
Is the issue replicable when running said table outside of modal?
I’ll get to generating some testdata tomorrow and see if i can replicate.

2 Likes

I’ll try removing -AutoRefresh and see how it goes. but yes, I just tried the same udtable on a new-udpage yesterday, and it did the same thing, especially when trying to scroll up/down. Let’s see if -AutoRefresh is the culprit

If it works without the autorefresh, try adding a manual refresh button inside the modal.

New-UDButton -Text “refresh” -OnClick {
Sync-UDElement -Id “IDtoTableEndpoint”
}

Or try using a Grid instead, which offers a built in refresh-button. You might have to update your module in order to see the refresh button, as i believe this was added recently. 2.4 ish?

1 Like

Looks like removing autorefresh worked. I also changed it from a table to a grid and it’s so much better! I don’t think I really need autorefresh for now, but will keep your suggestion in mind. Thanks for the help!!!

1 Like