Use resolve in DB Lookup UI for New SSP Timesheet
In New SSP Timesheet, the Work Detail Time Code DB Lookup supports the resolve parameter. You can display Time Codes on the timesheet even when those codes are not selectable in the lookup, for example, when pay rules assign overtime or other restricted codes.
Without this configuration, users may see a blank Time Code when:
- A pay rule sets a Time Code that is intentionally excluded from the DB Lookup
sourcequery. - The Time Code is not otherwise available in the lookup results.
Use resolve (with useResolve='true') when:
- Your DB Lookup
sourcequery intentionally hides some Time Codes from the selectable list - Pay rules or other logic can still assign those hidden Time Codes to work details that appear in SSP Timesheet.
In this scenario, resolve is used to look up and display the Time Code on existing rows, while the source query continues to control which codes users can search for and select.
Required configuration
- To enable this behavior in the DB Lookup configuration, add a
resolveSQL andresolveTypethat can return all Time Codes you need to display. - Add the new flag
useResolve='true'so SSP uses theresolvequery when loading existing values. - Keep your restriction logic in the
sourcequery so that hidden Time Codes are visible when present but not selectable in the lookup.
Sample configuration:
resolveType='SQL'
resolve='SELECT TCODE_ID,TCODE_NAME, TCODE_LOC_NAME, TCODE_LOC_DESC FROM VL_TIME_CODE'
useResolve='true'
sourceType='SQL'
source='SELECT * FROM (SELECT TCODE_ID, TCODE_NAME, TCODE_LOC_NAME, TCODE_LOC_DESC,
TCODE_HIDE_FROM_EMPLOYEE, ? CUR_EMP_ID
FROM VL_TIME_CODE
WHERE TCODE_LOC_NAME NOT LIKE ''UAT%''
AND TCODE_HIDE_FROM_EVERYONE = ''N'') A
WHERE (CUR_EMP_ID IN (?) AND TCODE_HIDE_FROM_EMPLOYEE = ''N'')
OR CUR_EMP_ID NOT IN (?)
ORDER BY TCODE_LOC_NAME'
sourceParams='INTEGER==#page.property.employeeId#~|~INTLIST==#control.EMP_ID#~|~INTLIST==#control.EMP_ID#'
sourceKeyField='TCODE_NAME'
sourceLabelField='TCODE_LOC_NAME'
sourceDisplayFields='TCODE_LOC_NAME'
Behavior
- Loading existing values: When SSP loads the timesheet or applies a default value, it uses:
resolveifuseResolve='true'andresolveType/resolveare configured, otherwisesourceto resolve and display the Time Code value.
- Searching / selecting in the lookup: When a user opens the DB Lookup or types to search, SSP still uses only the
sourcequery. Time Codes excluded fromsource:- Do not appear in the selectable list.
- Can still be displayed on existing rows if they are returned by the
resolvequery.
- Defaults: If you configure a default Time Code for the field, ensure that the default value is valid and resolvable by your configuration. The system does not validate that the default is present in
source. Administrators are responsible for choosing a valid default.