This is a good example who is looking for url on search.The code looks like this
public class RetUrlSearchController
{
public String nameQuery {get; set;}
public List<Account> accounts {get; set;}
public PageReference executeSearch()
{
String queryStr='%' + nameQuery + '%';
accounts=[select id, Name, BillingStreet
from Account
where name like :queryStr];
return null;
}
public RetUrlSearchController()
{
// if query appears in URL, execute it
String urlQuery=ApexPages.currentPage().getParameters().get('query');
if ( (null!=urlQuery) && (0!=urlQuery.length()) )
{
nameQuery=urlQuery;
executeSearch();
}
}
}
<apex:page controller="RetUrlSearchController">
<apex:form >
<apex:pageBlock >
<apex:pageBlockSection title="Criteria">
<apex:outputLabel value="Enter Name Snippet"/>
<apex:inputText value="{!nameQuery}"/>
<apex:commandButton action="{!executeSearch}" value="Search"/>
</apex:pageBlockSection>
<apex:pageBlockTable value="{!accounts}" var="acc">
<apex:column headerValue="Name">
<apex:outputLink value="/{!acc.id}/e?retURL={!URLENCODE('/apex/RetUrlSearchPage?query='+nameQuery)}">{!acc.Name}</apex:outputLink>
</apex:column>
<apex:column value="{!acc.BillingStreet}"/>
</apex:pageBlockTable>
</apex:pageBlock>
</apex:form>
</apex:page>

No comments:
Post a Comment