Following are the some options (supported and unsupported) in implement filer in CRM 4.0 entity form for any lookup fields.
Option 1: Change lookupsingle.aspx file (Unsupported)
George Doubinski explains full steps in his blog at Here
Option 2: Buy Stunware Filtered Lookup Add on for CRM
If you looking for truly global solution which is embedded in CRM for this then this would be best fit answer for this requirement.
Please check out full details at their website.
Option 3: Using java script and entity changes
This option requires you to do some entity changes and also put relevant java script code in CRM on load event.
Let’s understand this with one example, Case Form got account and contact look up. When ever user select particular account then while looking up contact only contacts record that belongs to selected account should get displayed, (i.e. contacts look up filtered based on account selected).
Now following steps to achieve this functionality using this Option
Step 1: (Entity Change)
Change the contact search field names in Contact Lookup view and Quick Find view (i.e. add parentcustomerid as searchable field in these view and publish the entity)
Step 2: (Java Script on Entity Form on Load)
Above screen print displays base code for this, before using relevant field name should get changed and then put in relevant CRM Form On Load Event.
Hope this helps!!
Cheers,
MayankP