function readOnly(count){ }
Starting November 20, the site will be set to read-only. On December 4, 2023,
forum discussions will move to the Trailblazer Community.
+ Start a Discussion
Andrew BudziszekAndrew Budziszek 

Creating a list of Custom Objects for VisualForce Page

Hello,

I would like to create a list of custom objects on a home page layout. I understand that I need to make a home page component, I just need help building the APEX VF page.

How do I create a list of custom objects? I've done this before with opportunities by going to the Opportunity home page and creating a new ListView, but custom objects don't seem to have this luxury. Any suggestions are appreciated! 

Thanks!
king kullaiking kullai
hai try this code,



<apex:page controller="picklistobj">
    <apex:form >
        <apex:pageBlock >
            <apex:pageBlockSection id="ps">
                <apex:pageBlockSectionItem >
                    <apex:outputLabel value="objects"/>
                   <apex:selectList value="{!objname}" size="1" onchange="seleobj();">
                       <apex:selectOptions value="{!objnames}">
                       </apex:selectOptions>
                   </apex:selectList>
               </apex:pageBlockSectionItem>
               <apex:actionFunction name="seleobj" reRender="ps"/>  
                <apex:pageBlockSectionItem >
                <apex:outputLabel value="feilds"/>
                <apex:selectList value="{!objfeild}" size="1" onchange="seleobj1();">
                   <apex:selectOptions value="{!objfeilds}"/>
                </apex:selectList>
               </apex:pageBlockSectionItem>      
               <apex:actionFunction name="seleobj1"  action="{!act1}" reRender="ps"/>  
                <apex:pageBlockSectionItem rendered="{!kk}">
                <apex:outputLabel value="Operator"/>
                <apex:selectList value="{!operatorname}" size="1" onchange="opratorevent();">
                   <apex:selectOptions value="{!operator}"/>
                   </apex:selectList>
                   </apex:pageBlockSectionItem>
                   <apex:actionFunction name="opratorevent"  action="{!act2}" reRender="ps"/>
                   <apex:pageBlockSectionItem rendered="{!kr}">
                   <apex:outputLabel value="Text Box" />
                   <apex:inputtext value="{!textvalue}" />
                   </apex:pageBlockSectionItem>
            </apex:pageBlockSection>
            <Apex:pageBlockButtons >
            <apex:commandButton value="Search" action="{!searching}" />
            </Apex:pageBlockButtons>
            <apex:pageblockSection >
                <apex:pageblockTable value="{!mysobject }" var="m">
                    <apex:repeat value="{!objname1}" var="r">
                        <apex:column value="{!m[r]}" / >
                    </apex:repeat>
                </apex:pageblockTable>
            </apex:pageblockSection>
        </apex:pageBlock>
    </apex:form>
</apex:page>

public class picklistobj {

    public list<String> objname1 { get; set; }
    
    public list<sobject> mysobject { get; set; }
    public boolean kr  { get; set; }  
    public boolean kk  { get; set; }
    public String textvalue { get; set; }
    public String operatorname { get; set; }
    public String objfeild { get; set; }
    public String objname { get; set; }
    string queryStr;
    public list<selectoption> getobjnames() {
        list<selectoption> options = new list<selectoption>(); 
        options.add(new SelectOption('None','--none---'));
        options.add(new SelectOption('Account','Account'));
        options.add(new SelectOption('Contact','Contact'));
        return options;    
    }
    public list<selectoption> getobjfeilds() {
        list<selectoption> options = new list<selectoption>(); 
        try{
            options.add(new SelectOption('None','--none---'));
            Map<String,Schema.SObjectType> gd = Schema.getGlobalDescribe(); 
            Schema.SObjectType sobjType = gd.get(objname); 
            Schema.DescribeSObjectResult describeResult = sobjType.getDescribe(); 
            Map<String,Schema.SObjectField> fieldsMap = describeResult.fields.getMap();
            for (Schema.SObjectField fieldName: fieldsMap.values()) {
                schema.describefieldresult dfield = fieldName.getDescribe();
                options.add(new SelectOption(dfield.getname(), dfield.getLabel()));  
            } 
        }
        catch(exception e){} 
        return options;    
    }
    public list<selectoption> getoperator() {
        list<selectoption> options = new list<selectoption>();
        options.add(new SelectOption('None','--none---'));
        options.add(new SelectOption('=','Equals'));
        options.add(new SelectOption('!=','Not Equals'));
        options.add(new SelectOption('>','Greater Than'));
        options.add(new SelectOption('<','Less Than'));
        return options;
    } 
    public void act1() {
        kk=true;
    } 
    public void act2() {
        kr=true; 
    } 
    
    public void searching(){
        Schema.SObjectType t  = Schema.getGlobalDescribe().get(objname);
       
        if(textvalue!=null){
            queryStr = 'select id ,name  from ' + t;       
            objname1 = New List<string>();
            objname1 .add('Id');
            objname1 .add('name');
            mysobject = database.query(queryStr);
      } 
    }
}