This is a rather "technical" sample that is getting old now, and it was more meant as inspiration to a technical thinking around functionality in DataEase 8 than a practical way to solve this problem.
But nothing wrong in explaining it a little better:
The subform is crated on the virtual field RelKey. This field contain a derivation that simply states: "a*".
This means that the initial display in the "dropdown" is a list of customers that start with a.
We also hid the subform with SetState("Jumbled",0) -- name of subform and hide (0).
We are ready to start.
When you key something into the Company Field nothing happens, until you hit enter or click on Pick button.
When you hit enter we have a listener on the KeyBoard event on Company so when it gets 13 (enter) it will simply click the button Pick to save some codeing (SetState("ObjectName","Click")).
On the button we simply push the value of the field Company concatenated with a *. As this field is a relationship key that the "dropdown" (subform) is dependent on it will force the subform to reload data and we will get the values that is correct for the new relationship hit.
At the same time we "show" the dropdown with SetState("Jumbled",1).
Now everything is ready for us to pick a value.
And then we hide the "dropdown" again wtih SetState("Jumbled",0)
See that we use a virtual field in the Subform that is just derived from the actual column (vCustomerName). This is because we want the field to be write protected so we can click on it without entering into edit mode.
On the Clicked event we simply run a plain SetValue() to set the value back into the Comany field and then hide the dropdown.
Hope this helps.