You need to sign in to do that
Don't have an account?
How to hide One section in related list when we select one picklist vakue
Hi all,
I want to hide one section called "Maps" and whenever I select Picklist value as "Travel" this Map section should be visible.
And these Expense & map section are the two VF pages, So how should I achieve this??
Any help will be grateful!
I want to hide one section called "Maps" and whenever I select Picklist value as "Travel" this Map section should be visible.
And these Expense & map section are the two VF pages, So how should I achieve this??
Any help will be grateful!
That will give us little more idea and we could possibly come up with a solution.
This is Object VF Code
<apex:page standardController="Expense_Line_Item__c" extensions="policyController" EXtensions="SaveAndNew" showHeader="true" >
<apex:slds />
<div class="slds-scope">
<script>
function fetchAmount()
{
alert('Function Working');
CallApexMethod();
}
</script>
<apex:form >
<apex:actionFunction name="CallApexMethod" onComplete="alert('After apex method') ;" reRender="ren"/>
<apex:outputPanel id="t1">
<apex:pageBlock >
<apex:pageBlockSection columns="2" title="Information">
<apex:inputField value="{!Expense_Line_Item__c.Expense__c}" />
<apex:inputField value="{!Expense_Line_Item__c.Date__c}" />
<apex:inputField value="{!Expense_Line_Item__c.Name}" />
<apex:inputField value="{!Expense_Line_Item__c.Bill_Available__c}" />
<apex:inputField value="{!Expense_Line_Item__c.Merchant__c}" />
</apex:pageBlockSection>
<apex:pageBlockSection columns="2" title="Expense Details">
<apex:inputField value="{!Expense_Line_Item__c.Approved__c}" />
<apex:inputField value="{!Expense_Line_Item__c.Amount__c}" id="testAmount" />
<apex:inputField value="{!Expense_Line_Item__c.Cost_Head__c}" >
<apex:actionSupport event="onchange" rerender="t1" />
<apex:inputField value="{!Expense_Line_Item__c.Related_to_Campaign__c}" rendered="{!IF( Expense_Line_Item__c.Cost_Head__c== 'Campaign',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Related_to_Opportunity__c}" rendered="{!IF( Expense_Line_Item__c.Cost_Head__c== 'Opportunity',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Project__c}" rendered="{!IF( Expense_Line_Item__c.Cost_Head__c== 'Project',true,false )}" />
</apex:inputField>
<apex:inputField value="{!Expense_Line_Item__c.Payment_Type__c}" />
<apex:inputField value="{!Expense_Line_Item__c.Comments__c}" />
<!-- <apex:outputPanel id="ren">-->
<apex:inputField value="{!Expense_Line_Item__c.Expense_Head__c}" id="fetch1" >
<apex:actionSupport event="onchange" rerender="t1" />
</apex:inputField>
<!-- </apex:outputPanel>-->
</apex:pageBlockSection>
<!-- <apex:pageBlockTable value="{!Expense_Line_Item__c}" var="item" columns="2" >
<apex:column> <apex:outputLabel > <apex:inputField label="City" value="{!item.City__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" /></apex:outputLabel>
<apex:inputField label="Mode of travel" value="{!item.Mode_Of_Travel__c}" rendered="{!IF(Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField label="Location from" value="{!item.Location_From__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField label="Location to" value="{!item.Location_To__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" /> </apex:column>
<apex:column>
<apex:inputField value="{!item.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Food',true,false )}" /> </apex:column>
<apex:column> <apex:inputField value="{!item.Sub_Expense__c}" rendered="{!IF(Expense_Line_Item__c.Expense_Head__c== 'Entertainment',true,false )}" /> </apex:column>
<apex:column> <apex:inputField value="{!item.Sub_Expense__c}" rendered="{!IF(Expense_Line_Item__c.Expense_Head__c== 'Lodging',true,false )}" /> </apex:column>
<apex:column> <apex:inputField value="{!item.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Others',true,false )}" /> </apex:column>
</apex:pageBlockTable>-->
<apex:pageBlockSection columns="2">
<apex:inputField value="{!Expense_Line_Item__c.City__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Mode_Of_Travel__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Location_From__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Location_To__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Food',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Entertainment',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Lodging',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Others',true,false )}" />
</apex:pageBlockSection>
</apex:pageBlock>
<div align="center" draggable="false" >
<apex:commandButton action="{!Save}" value="Save" />
<apex:commandButton action="{!Cancel}" value="Cancel"/>
<apex:commandButton action="{!saveNew}" value="Save and New"/>
</div>
</apex:outputPanel>
</apex:form>
</div>
</apex:page>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<title>Google Maps API v3 Directions Example</title>
<script type="text/javascript" src="//maps.google.com/maps/api/js?sensor=true"></script>
</head><apex:form >
Origin: <apex:inputField value="{!Expense_Line_Item__c.Location_From__c }" id="origin"/>
Destination: <apex:inputField value="{!Expense_Line_Item__c.Location_To__c}" id="destination" />
<apex:commandButton rendered="ISPICVAL(Expense_Head__c==Travel)" value="Search" />
</apex:form>
<body style="font-family: Arial; font-size: 12px;">
<div style="width: 100%;" id="mapDiv">
<div id="map" style="width: 60%; height: 600px; float: left;margin:0px;color:black;"></div>
<div id="panel" style="width: 20%; float: left;margin:0px;"></div>
</div>
<script type="text/javascript">
var directionsService = new google.maps.DirectionsService();
var directionsDisplay = new google.maps.DirectionsRenderer();
var map = new google.maps.Map(document.getElementById('map'), {
zoom:4,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
directionsDisplay.setMap(map);
directionsDisplay.setPanel(document.getElementById('panel'));
document.getElementById("origin");
document.getElementById("destination");
var request = {
origin: "{!Expense_Line_Item__c.Location_From__c}",
destination:"{!Expense_Line_Item__c.Location_To__c}"
,
travelMode: google.maps.DirectionsTravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
}
});
//document.getElementById("origin");
//document.getElementById("destination");
</script>
</body>
</apex:page>
Here i am giving a sample code try this code
class
public class SectionHide
{
public boolean boole{set;get;}
public Practice2__c actcon {set;get;}
public SectionHide(ApexPages.StandardController controller)
{
actcon= new Practice2__c ();
boole=false;
}
public PageReference priorityChanged()
{
if(actcon.Customer_Priority__c == 'Low')
{
boole=true;
}
else
{
boole=false;
}
return null;
}
}
Page
<apex:page standardController="Practice2__c" extensions="SectionHide" sidebar="false" showHeader="false">
<apex:form >
<br/><br/>
<apex:pageblock >
<apex:pageBlockSection title="If you will select Low Customer Priority then only Other Account Details section will display " columns="1"> <apex:actionRegion >
<p>Customer Priority :
<apex:inputField value="{!actcon.Customer_Priority__c}">
<apex:actionSupport event="onchange" action="{!priorityChanged}"/>
</apex:inputField>
</p>
</apex:actionRegion>
</apex:pageblockSection>
<apex:pageblockSection title="Other Account Details" rendered="{!boole=true}" >
<apex:inputField value="{!actcon.Details__c}" required="true"/>
</apex:pageblockSection>
</apex:pageblock>
</apex:form>
</apex:page>
I use the same way I saved , But in preview, It showing Some error Like:
List index out of bounds: 1
An unexpected error has occurred. Your development organization has been notified.
This my code
{
public boolean boole{set;get;}
public Expense_Line_Item__c actcon {set;get;}
public SectionHide(ApexPages.StandardController controller)
{
actcon= new Expense_Line_Item__c();
boole=false;
}
public PageReference priorityChanged()
{
if(actcon.Expense_Head__c== 'Travel')
{
boole=true;
}
else
{
boole=false;
}
return null;
}
}
<apex:slds />
<div class="slds-scope">
<script>
function fetchAmount()
{
alert('Function Working');
CallApexMethod();
}
</script>
<apex:form >
<apex:actionFunction name="CallApexMethod" onComplete="alert('After apex method') ;" reRender="ren"/>
<apex:outputPanel id="t1">
<apex:pageBlock >
<apex:pageBlockSection columns="2" title="Information">
<apex:inputField value="{!Expense_Line_Item__c.Expense__c}" />
<apex:inputField value="{!Expense_Line_Item__c.Date__c}" />
<apex:inputField value="{!Expense_Line_Item__c.Name}" />
<apex:inputField value="{!Expense_Line_Item__c.Bill_Available__c}" />
<apex:inputField value="{!Expense_Line_Item__c.Merchant__c}" />
</apex:pageBlockSection>
<apex:pageBlockSection columns="2" title="Expense Details">
<apex:inputField value="{!Expense_Line_Item__c.Approved__c}" />
<apex:inputField value="{!Expense_Line_Item__c.Amount__c}" id="testAmount" />
<apex:inputField value="{!Expense_Line_Item__c.Cost_Head__c}" >
<apex:actionSupport event="onchange" rerender="t1" />
<apex:inputField value="{!Expense_Line_Item__c.Related_to_Campaign__c}" rendered="{!IF( Expense_Line_Item__c.Cost_Head__c== 'Campaign',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Related_to_Opportunity__c}" rendered="{!IF( Expense_Line_Item__c.Cost_Head__c== 'Opportunity',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Project__c}" rendered="{!IF( Expense_Line_Item__c.Cost_Head__c== 'Project',true,false )}" />
</apex:inputField>
<apex:inputField value="{!Expense_Line_Item__c.Payment_Type__c}" />
<apex:inputField value="{!Expense_Line_Item__c.Comments__c}" />
<!-- <apex:outputPanel id="ren">-->
<apex:inputField value="{!Expense_Line_Item__c.Expense_Head__c}" id="fetch1" >
<apex:actionSupport event="onchange" rerender="t1" />
</apex:inputField>
<!-- </apex:outputPanel>-->
</apex:pageBlockSection>
<!-- <apex:pageBlockTable value="{!Expense_Line_Item__c}" var="item" columns="2" >
<apex:column> <apex:outputLabel > <apex:inputField label="City" value="{!item.City__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" /></apex:outputLabel>
<apex:inputField label="Mode of travel" value="{!item.Mode_Of_Travel__c}" rendered="{!IF(Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField label="Location from" value="{!item.Location_From__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField label="Location to" value="{!item.Location_To__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" /> </apex:column>
<apex:column>
<apex:inputField value="{!item.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Food',true,false )}" /> </apex:column>
<apex:column> <apex:inputField value="{!item.Sub_Expense__c}" rendered="{!IF(Expense_Line_Item__c.Expense_Head__c== 'Entertainment',true,false )}" /> </apex:column>
<apex:column> <apex:inputField value="{!item.Sub_Expense__c}" rendered="{!IF(Expense_Line_Item__c.Expense_Head__c== 'Lodging',true,false )}" /> </apex:column>
<apex:column> <apex:inputField value="{!item.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Others',true,false )}" /> </apex:column>
</apex:pageBlockTable>-->
<apex:pageBlockSection columns="2">
<apex:inputField value="{!Expense_Line_Item__c.City__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Mode_Of_Travel__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Location_From__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Location_To__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Travel',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Food',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Entertainment',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Lodging',true,false )}" />
<apex:inputField value="{!Expense_Line_Item__c.Sub_Expense__c}" rendered="{!IF( Expense_Line_Item__c.Expense_Head__c== 'Others',true,false )}" />
</apex:pageBlockSection>
<apex:pageblockSection title="Map" rendered="{!boole=true}" >
<apex:inputField value="{!actcon.Location_From__c}" required="true"/>
</apex:pageblockSection>
</apex:pageBlock>
<div align="center" draggable="false" >
<apex:commandButton action="{!Save}" value="Save" />
<apex:commandButton action="{!Cancel}" value="Cancel"/>
<apex:commandButton action="{!saveNew}" value="Save and New"/>
</div>
</apex:outputPanel>
</apex:form>
</div>
</apex:page>
https://developer.salesforce.com/forums/?id=906F00000008yWaIAI