Question about New-UDTable

I have a table, generated from a sqlite database, and have a couple of questions:

First is just a question around aesthetics. Whenever I create a table from an external source, the column headings are uneven (doesn’t seem to be an issue when I create one manually from data contained in the script itself). Below is an example, along with the relevant code. Any ideas why?

  $Columns = @(
        New-UDTableColumn -Property Request -Title Request -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Server -Title Server -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property BuildDate -Title BuildDate -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Requester -Title Requester -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Project -Title Project -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property LineOfBusiness -Title LineOfBusiness -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Environment -Title Environment  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Domain -Title Domain  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property CPU -Title CPU  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property MemoryGB -Title MemoryGB  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Function -Title Function  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Product -Title Product  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property OS -Title OS  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property PromoPath -Title PromoPath  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Description -Title Description  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Location -Title Location  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Architecture  -Title Architecture -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property IvantiGroup -Title IvantiGroup  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text        
        New-UDTableColumn -Property Owner -Title Owner  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property LocalAdmins -Title LocalAdmins  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Sudoers -Title Sudoers  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Ticket -Title Ticket  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property ApprovedBy -Title ApprovedBy  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive1Size -Title Drive1Size  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive2Size -Title Drive2Size  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive2Label -Title Drive2Label  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive2Letter -Title Drive2Letter  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive3Size -Title Drive3Size  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive3Label -Title Drive3Label  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive3Letter -Title Drive3Letter  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive4Size -Title Drive4Size  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive4Label -Title Drive4Label  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive4Letter -Title Drive4Letter  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive5Size -Title Drive5Size  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive5Label -Title Drive5Label  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Drive5Letter -Title Drive5Letter  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text                
        New-UDTableColumn -Property FirewallPorts -Title FirewallPorts  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Notes -Title Notes -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Approved -Title ApprovedBy  -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Built -Title Built -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property Ansible -Title Ansible -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text
        New-UDTableColumn -Property ApprovalNotes -Title ApprovalNotes -ShowSort -IncludeInExport -IncludeInSearch -ShowFilter -FilterType text 
 )

 $aBuilds = Invoke-SQLiteQuery -DataSource $sDB -Query "SELECT * FROM Builds"
 New-UDTable -Id 'QueryResults' -Columns $Columns -Title 'Builds' -Data $aBuilds -ShowSearch -Sort -ShowPagination -Export -PageSize 100 -Dense

Secondly, a question around server-side processing. I am importing from a sqlite db on our network. I read the article on server side processing out of the docs, but that is using dbatools. Just curious if that is the only way to do it. My sqlite db is only ~100 rows, but already I see this error whenever the page is refreshed:

image

It’s like it cannot build the constructor. But then, after a second or two, the array is built and populates. Just curious, if I want to try out server-side for building the array, if the dbatools module is the only way to do it.

Product: PowerShell Universal
Version: 1.5.11

@JLogan3o13
your second issue has already been resolved in 1.5.13 version.

Thanks, I knew the new version was out, didn’t realize it addressed this. I will try it out.