DISPLAY FORMAT TEMPLATE SYSTEM SPECS

Display format (aka name display format) templates are used to customize what is shown in minimal display areas in order for a user to identify a record uniquely
for selection purposes.

Raven will rely much more heavily on this for several reasons so it needs to be a solid integral part of Raven

CASES



REQUIREMENTS

Client
    - Main grid lists will be very narrow and in many (if not all) cases show only a single column
    - Selection drop down boxes in forms for selecting other objects
    - Template editor under global settings for all main list objects

Server
    - List of templates with their column selections
        - For client editor
        - For server to process what the query and send for lists
    - List of fields available for templates for client and server validation etc
    - Caching likely useful as server will need to deal with templates constantly as users fetch almost any list or combo box source etc
    - Has to be very peformant as it will be doing this a lot
    - SERVER handles composing the list object name display, NOT the client
        - This saves bandwidth
        - Incurrs more computing ops at the server but bandwidth is more expensive than server power all around
        - Clients could be shitty and slow, this elminates that prospect
        - Easier to code in c# than in javascript! ;)

Back AND front end
    - Need to handle changes in fields gracefully i.e. a new field added in an update, a field removed in an update cleans out the template when detected etc
    - Should send the customized templated display name field to the reports as well as all the regular including name fields   
        - This is because users will likely want that for many reports
        - Kind of a calculated field        
    - Default templates come with Raven, user can customize further