Где вопрос выбора? Вы хотите использовать его где-нибудь или как?
Пока вы будете (или не будете) отвечать на мои вопросы, я выложу несколько советов для вас. Надеюсь, они вам как-нибудь помогут.
Например, у вас есть объект со всеми этими полями.
На странице Visualforce я буду делать следующие вещи.
<apex:pageBlockSection id="myContentSection" title="My Content Section" columns="1">
<apex:inputField value="{!myObject.Id}" >
<apex:actionSupport event="onchange" action="pullObjectById" reRender="myContentSection" />
</apex:inputField>
<apex:inputField value="{!myObject.Name}"/>
<apex:inputField value="{!myObject.Balance}"/>
<apex:inputField value="{!myObject.Amount}"/>
<apex:inputField value="{!myObject.Paid}"/>
</apex:pageBlockSection>
В классе контроллера будет метод
public myObjectType myObject {get;set;}
public PageReference pullObjectById() {
myObject = [ select Id, Name, Balance, Amount, Paid from myObjectTable where Id =:myObject.Id];
return null;
}
Поэтому, когда вы выбираете объект из окна поиска, у вас будут заполнены все остальные поля на вашей странице.