It sounds like Dynamic Fields is what you're looking for. Dynamic Fields can reference a table hosted in any database on the same SQL server, and use the information in that table to (1) present a list of values to the user and (2) have the values available for fields depend on the value selected for another.
For example, when entering an employee ID, you could have a list of departments, then a list of names narrowed by department once that is selected, then have the ID field depend on both the name and department (it will automatically select the value if there's only one possible ID).
The help files have a lot of information in dynamic fields, including planning Dynamic Fields, registering the external tables (a required part of the configuration), and adding Dynamic Fields to a template.
You can also reference the Empower Course LADMIN303: Advanced Metadata.