You need to sign in to do that
Don't have an account?
Andrew 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!
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!
<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);
}
}
}