You need to sign in to do that
Don't have an account?

This has to be a bug...
This code works...
<apex:page controller="Lilly_Customer_Manager"> <apex:form > <apex:repeat value="{!$ObjectType.Account.FieldSets.Lilly_Customer_Manage}" var="f"/> <apex:repeat value="{!actFldMap}" var="act"> <apex:pageBlock title="{!$ObjectType[act].label}" mode="edit"> <apex:pageBlockButtons > <apex:commandButton action="{!mySave}" Value="Save" rendered="{!IF(act == 'Account','true','false')}"/> <apex:commandLink action="{!myNew}" Value="New {!$ObjectType[act].Label}" rendered="{!IF(act != 'Account','true','false')}"> <apex:param name="str" value="{!act}" assignTo="{!tabButton}"/> </apex:commandLink> </apex:pageBlockButtons> <apex:repeat value="{!tabIdMap[act]}" var="aciId"> <apex:pageBlockSection title="{!aciNameLookup[aciId]}" columns="2" collapsible="true"> <apex:repeat value="{!newFields[aciId]}" var="aci"> <apex:inputField rendered="{!IF(aci['Type__c'] == 'PICKLIST' || aci['Type__c'] == 'MULTIPICKLIST','false','true')}" label="{!aci['Field_Label__c']}" value="{!aci[fldLookup[aci['Type__c']]]}"/> <apex:selectList rendered="{!IF(aci['Type__c'] == 'PICKLIST','true','false')}" label="{!aci['Field_Label__c']}" value="{!plv[aciId + '.' + aci['Field_Name__c']]}" size="1" multiselect="false"> <apex:selectOptions value="{!plvVals[aci['Object_Name__c'] + '.' + aci['Field_Name__c']]}"/> </apex:selectList> <apex:selectList rendered="{!IF(aci['Type__c'] == 'MULTIPICKLIST','true','false')}" label="{!aci['Field_Label__c']}" value="{!plvMS[aciId + '.' + aci['Field_Name__c']]}" size="5" multiselect="true"> <apex:selectOptions value="{!plvVals[aci['Object_Name__c'] + '.' + aci['Field_Name__c']]}"/> </apex:selectList> </apex:repeat> </apex:pageBlockSection> </apex:repeat> </apex:pageBlock> </apex:repeat> </apex:form> </apex:page>
And this code throws the error
Field Account.label does not exist. Check spelling
Error is in expression '{!$ObjectType[act].label}' in component <apex:pageBlock> in page lilly_customer_manager
<apex:page controller="Lilly_Customer_Manager"> <apex:form > <apex:repeat value="{!actFldMap}" var="act"> <apex:pageBlock title="{!$ObjectType[act].label}" mode="edit"> <apex:pageBlockButtons > <apex:commandButton action="{!mySave}" Value="Save" rendered="{!IF(act == 'Account','true','false')}"/> <apex:commandLink action="{!myNew}" Value="New {!$ObjectType[act].Label}" rendered="{!IF(act != 'Account','true','false')}"> <apex:param name="str" value="{!act}" assignTo="{!tabButton}"/> </apex:commandLink> </apex:pageBlockButtons> <apex:repeat value="{!tabIdMap[act]}" var="aciId"> <apex:pageBlockSection title="{!aciNameLookup[aciId]}" columns="2" collapsible="true"> <apex:repeat value="{!newFields[aciId]}" var="aci"> <apex:inputField rendered="{!IF(aci['Type__c'] == 'PICKLIST' || aci['Type__c'] == 'MULTIPICKLIST','false','true')}" label="{!aci['Field_Label__c']}" value="{!aci[fldLookup[aci['Type__c']]]}"/> <apex:selectList rendered="{!IF(aci['Type__c'] == 'PICKLIST','true','false')}" label="{!aci['Field_Label__c']}" value="{!plv[aciId + '.' + aci['Field_Name__c']]}" size="1" multiselect="false"> <apex:selectOptions value="{!plvVals[aci['Object_Name__c'] + '.' + aci['Field_Name__c']]}"/> </apex:selectList> <apex:selectList rendered="{!IF(aci['Type__c'] == 'MULTIPICKLIST','true','false')}" label="{!aci['Field_Label__c']}" value="{!plvMS[aciId + '.' + aci['Field_Name__c']]}" size="5" multiselect="true"> <apex:selectOptions value="{!plvVals[aci['Object_Name__c'] + '.' + aci['Field_Name__c']]}"/> </apex:selectList> </apex:repeat> </apex:pageBlockSection> </apex:repeat> </apex:pageBlock> </apex:repeat> </apex:form> </apex:page>
The only difference is the repeat block, with no code in it running through the fieldset. Is it the repeat tag with the magical power or the previous call to $ObjectType