This is a great idea, and I would love to see it added to functionality.
But in the meantime, here's a workaround...
If you have your own SQL database set-up in the same environment that your Laserfiche Repository database is in (on the same server for example) and you are already set-up to do lookups from your database, then you can add a view to your database that can look up this information from the repository's database (there are some assumptions here - such as the access permissions to the repository database for the user that Forms is using for lookups).
Here's an example:
SELECT
toc.[tocid] AS entry_id,
toc.[name] AS entry_name,
toc.created,
toc.modified,
template.[pset_name] AS template,
--Dispay the value of the String field:
string_field.[str_val] AS string_field,
--Display the value of the Number field that is formatted as an Integer:
CAST(ROUND(number_field1.[num_val], 0) AS INT) AS number_field1,
--Display the value of the Number field that displays 3 decimal places:
ROUND(number_field2.[num_val], 3) AS number_field2,
--Display the value of the Date field - CAST AS DATE removes the time portion:
CAST(date_field.[date_val] AS DATE) AS date_field
FROM [LaserficheRepositoryDatabaseName].[dbo].[toc] AS toc
LEFT JOIN [LaserficheRepositoryDatabaseName].[dbo].[propset] AS template ON template.[pset_id] = toc.[pset_id]
--Example of field that displays as a string (str_val)
LEFT JOIN (
SELECT field_val.[tocid], field_val.[str_val]
FROM [LaserficheRepositoryDatabaseName].[dbo].[propval] AS field_val
LEFT JOIN [LaserficheRepositoryDatabaseName].[dbo].[propdef] AS field_def ON field_def.[prop_id] = field_val.[prop_id]
WHERE field_def.[prop_name] = 'NAME OF THE STRING FIELD GOES HERE'
) AS string_field ON string_field.[tocid] = toc.[tocid]
--Example of field that displays as a number (num_val)
LEFT JOIN (
SELECT field_val.[tocid], field_val.[num_val]
FROM [LaserficheRepositoryDatabaseName].[dbo].[propval] AS field_val
LEFT JOIN [LaserficheRepositoryDatabaseName].[dbo].[propdef] AS field_def ON field_def.[prop_id] = field_val.[prop_id]
WHERE field_def.[prop_name] = 'NAME OF THE FIRST NUMBER FIELD FIELD GOES HERE'
) AS number_field1 ON number_field1.[tocid] = toc.[tocid]
--Example of field that displays as a number (num_val)
LEFT JOIN (
SELECT field_val.[tocid], field_val.[num_val]
FROM [LaserficheRepositoryDatabaseName].[dbo].[propval] AS field_val
LEFT JOIN [LaserficheRepositoryDatabaseName].[dbo].[propdef] AS field_def ON field_def.[prop_id] = field_val.[prop_id]
WHERE field_def.[prop_name] = 'NAME OF THE SECOND NUMBER FIELD FIELD GOES HERE'
) AS number_field2 ON number_field2.[tocid] = toc.[tocid]
--Example of field that displays as a date (date_val)
LEFT JOIN (
SELECT field_val.[tocid], field_val.[date_val]
FROM [LaserficheRepositoryDatabaseName].[dbo].[propval] AS field_val
LEFT JOIN [LaserficheRepositoryDatabaseName].[dbo].[propdef] AS field_def ON field_def.[prop_id] = field_val.[prop_id]
WHERE field_def.[prop_name] = 'NAME OF THE DATE FIELD FIELD GOES HERE'
) AS date_field ON date_field.[tocid] = toc.[tocid]
--Only show situations where there is a value in the field.
--Strings can be blank or NULL, we only want values that are neither:
WHERE (string_field.[str_val] IS NOT NULL AND string_field.[str_val] <> '')
--Exclude the numbers that are NULL:
OR number_field1.[num_val] IS NOT NULL
OR number_field2.[num_val] IS NOT NULL
--Exclude the dates that are NULL:
OR date_field.[date_val] IS NOT NULL