With SoftPro Select it would be nice to put some custom fields at the top of the list, or to change the order of Custom Fields. I hear it's a feature that's coming down the pike, I'm just not sure how long the pike is. So today I decided to figure out if I could control the order of Custom Fields in SoftPro Select. Turns out I can, read on and you will be able to also.
The future is now! In Select 3.0.10820.1134, and maybe before, the sort order is settable within the application. Go to the Management Console, Click on ProForm, then Custom Fields right click on Custom Fields and select Screen Order.
Enter or select the Context the Custom Fields are in which you want to order
--------- End Update -------------
Let's gets started setting the custom field order in SoftPro Select. OK hold up. I must mention THIS IS NOT A SUPPORTED MOVE. It will work, it's simple, but we are editing the Select Database directly, don't delete stuff, don't edit other stuff that looks good, stick to the plan and you'll be fine. Back it up. Deviate, and your Select Database might be left in an unusable condition. Stop if the term or operation of SSMS is confusing. We’re going to move fast here using SSMS. We are traveling where only code should go, respect it or pay the price.
That being said….
SelectDB is the typical starting point, go there. Navigate to pf.CustomFieldDefinition. Select where Context = the Context you are editing. In my case it's Property, so Select * from pf.customFieldDefination Where (Context = 'Property' Order by SortOrder.
I'd recommend updating the SortOrder Column with something like ((SortOrder+100) * 100). It's clear from the data that Select doesn't care about gaps in SortOrder, that will add some space for later ordering. The maximum value allowed in the column is 2,147,483,647, go over that and it likely wraps, don't do it, know your values. UPDATE [SelectDb].[pf].[CustomFieldDefinition] SET [SortOrder] = (([SortOrder]+ 100) * 100) worked well for me to provide room in the table. It might be advisable to include a Where Context = 'YourContext' to the UPDATE command, I updated the entire table to provide space in all contexts.
Now it’s a simple matter of manually updating the SortOrder column for the fields you want at the top, or wherever. Set it to something lower than the lowest Sort order. The field allows and Select currently respects negative numbers, I wouldn't recommend using them to better ensure future compatibility.
The last thing that needs to happen is the Select Server in SoftPro Select Services needs restarted. Do that then fire up the SoftPro Select Client and enjoy your new more efficient Custom Field order.