Customizing roster display fields
You can now configure the items displayed in the Roster listing to vary based on whether the record displayed is a member record or a company record. You can set the configuration options by selecting Customers > Set up module > General > Advanced.
The Roster Display Fields configuration option enables you to designate what is displayed when listing an individual member record in the Roster.
The Roster Display Company Fields configuration option enables you to designate what is displayed when listing a company record.
A valid configuration line consists of a list of comma-separated field names in the format Name.FIELD_NAME, which is a maximum of 255 characters long. In addition to Name table fields, you can also include subqueries in your configuration subject to the following restrictions:
- only one value can be returned per subquery
- only one row can be returned per subquery
For example, in the configuration line Name.FULL_NAME, Name.ID,(select top 1 ADDRESS_1 from Name_Address where Name_Address.ID=Name.ID) as NAddress1,Name.TITLE, Name.COMPANY the subquery begins with "select top 1". This is necessary because the address table may have more than one address linked to a member.
Subqueries can select data from valid iMIS tables.
Example 1
The following Roster Display Fields entry displays the member's ID, full name, title (if any), and then displays either "current" or "MEMBERSHIP EXPIRED [Month, Year]" depending on the value in Name.PAID_THRU.
Name.ID, Name.FULL_NAME, Name.TITLE, (select expstat = case when Name.PAID_THRU < GETDATE() THEN "MEMBERSHIP EXPIRED " + DATENAME (Month, Name.PAID_THRU) + ", " + DATENAME (Year, Name.PAID_THRU) ELSE "Current" END)
Example 2
The following Roster Display Company Fields entry displays the company ID, name, city, state/province, country, and staff size:
Name.ID, Name.COMPANY, Name.CITY, Name.STATE_PROVINCE, Name.COUNTRY, (select Staff_Size from Name_Demo where Name_Demo.ID=Name.ID)as staff
Note: Roster display values assigned through a SELECT statement must be assigned a name, either by using (select [name] = ...)(shown in Example 1) or by using (select ... )as (shown in Example 2).
You must restart iMIS for your changes to take effect.