Maybe you know this feature, maybe not...
You could run the form specified in LookUpForm property of a table from any object without define any variable with datatype Form
i.e. if you have a RequestForm to select Payment Methods for filtering a DataItem in a report, just create a global variable like this
Name: rec289
DataType: Record
Subtype: Table 289 (Payment Method)
Put a textbox inside Request Form and get into C/AL code. In OnLookUp trigger, type
form.run(0,rec289);
when selecting form 0 (zero), the system runs the form specified in LookUpForm property of the table, and with just a record variable and a line of code you could access to every table with LookUpForm defined.
0