You need to sign in to do that
Don't have an account?
Victoria Riley
Visualforce Email Templates
I am trying to replace the standard values (I bolded the fields) with custom values for a picklist field, date field, an text field. There will be a range of 1 to 10 lines.
Template:
<messaging:emailTemplate recipientType="Contact"
relatedToType="Opportunity"
subject="Productline Items for Opportunity: {!relatedTo.name}"
replyTo="donate@hereforthegirls.org" >
<messaging:htmlEmailBody >
<html>
<body>
<STYLE type="text/css">
TH {font-size: 11px; font-face: arial;background: #CCCCCC; border-width: 1; text-align: center }
TD {font-size: 11px; font-face: verdana }
TABLE {border: solid #CCCCCC; border-width: 1}
TR {border: solid #CCCCCC; border-width: 1}
</STYLE>
<font face="arial" size="2">
<p>Dear {!recipient.name},</p>
<p>Below is a list of your day(s) for A Calendar to Live By 2018:<b> {!relatedTo.name}</b>.</p>
<br/>Account: <i> {!relatedTo.Account.name} </i>
<br/>Opportunity Amount: {!ROUND(relatedTo.Amount,0)}
<br/>Opportunity Close Date: {!relatedTo.CloseDate}
<p/>
<table border="0" >
<tr >
<th>Action</th><th>Product Name</th><th>Quantity</th><th>Unit Price</th><th>Total Price</th>
</tr>
<apex:repeat var="opp" value="{!relatedTo.OpportunityLineItems}">
<tr>
<td><a href="https://na1-blitz01.soma.salesforce.com/{!opp.id}">View</a> |
<a href="https://na1-blitz01.soma.salesforce.com/{!opp.id}/e">Edit</a></td>
<td>{!opp.PriceBookEntry.name}</td>
<td>{!ROUND(opp.Quantity,0)}</td>
<td>{!ROUND(opp.UnitPrice,0)}</td>
<td>{!ROUND(opp.TotalPrice,0)}</td>
</tr>
</apex:repeat>
</table>
<p />
</font>
</body>
</html>
</messaging:htmlEmailBody>
<messaging:plainTextEmailBody >
Dear {!recipient.name},
Below is a list of products related to the Opportunity: {!relatedTo.name}
Account: {!relatedTo.Account.name}
Opportunity Owner: {!relatedTo.owner.name}
Opportunity Amount: {!ROUND(relatedTo.Amount,0)}
Opportunity Close Date: {!relatedTo.CloseDate}
[ Product Name ] - [ Quantity ] - [ Units ] - [ Total Price ]
-------------------------------------------------------------------------
<apex:repeat var="opp" value="{!relatedTo.OpportunityLineItems}">
[ {!opp.PriceBookEntry.name} ] - [ {!ROUND(opp.Quantity,0)} ] - [ {!ROUND(opp.UnitPrice,0)} ] - [ {!ROUND(opp.TotalPrice,0)} ]
</apex:repeat>
</messaging:plainTextEmailBody>
</messaging:emailTemplate>
Template:
<messaging:emailTemplate recipientType="Contact"
relatedToType="Opportunity"
subject="Productline Items for Opportunity: {!relatedTo.name}"
replyTo="donate@hereforthegirls.org" >
<messaging:htmlEmailBody >
<html>
<body>
<STYLE type="text/css">
TH {font-size: 11px; font-face: arial;background: #CCCCCC; border-width: 1; text-align: center }
TD {font-size: 11px; font-face: verdana }
TABLE {border: solid #CCCCCC; border-width: 1}
TR {border: solid #CCCCCC; border-width: 1}
</STYLE>
<font face="arial" size="2">
<p>Dear {!recipient.name},</p>
<p>Below is a list of your day(s) for A Calendar to Live By 2018:<b> {!relatedTo.name}</b>.</p>
<br/>Account: <i> {!relatedTo.Account.name} </i>
<br/>Opportunity Amount: {!ROUND(relatedTo.Amount,0)}
<br/>Opportunity Close Date: {!relatedTo.CloseDate}
<p/>
<table border="0" >
<tr >
<th>Action</th><th>Product Name</th><th>Quantity</th><th>Unit Price</th><th>Total Price</th>
</tr>
<apex:repeat var="opp" value="{!relatedTo.OpportunityLineItems}">
<tr>
<td><a href="https://na1-blitz01.soma.salesforce.com/{!opp.id}">View</a> |
<a href="https://na1-blitz01.soma.salesforce.com/{!opp.id}/e">Edit</a></td>
<td>{!opp.PriceBookEntry.name}</td>
<td>{!ROUND(opp.Quantity,0)}</td>
<td>{!ROUND(opp.UnitPrice,0)}</td>
<td>{!ROUND(opp.TotalPrice,0)}</td>
</tr>
</apex:repeat>
</table>
<p />
</font>
</body>
</html>
</messaging:htmlEmailBody>
<messaging:plainTextEmailBody >
Dear {!recipient.name},
Below is a list of products related to the Opportunity: {!relatedTo.name}
Account: {!relatedTo.Account.name}
Opportunity Owner: {!relatedTo.owner.name}
Opportunity Amount: {!ROUND(relatedTo.Amount,0)}
Opportunity Close Date: {!relatedTo.CloseDate}
[ Product Name ] - [ Quantity ] - [ Units ] - [ Total Price ]
-------------------------------------------------------------------------
<apex:repeat var="opp" value="{!relatedTo.OpportunityLineItems}">
[ {!opp.PriceBookEntry.name} ] - [ {!ROUND(opp.Quantity,0)} ] - [ {!ROUND(opp.UnitPrice,0)} ] - [ {!ROUND(opp.TotalPrice,0)} ]
</apex:repeat>
</messaging:plainTextEmailBody>
</messaging:emailTemplate>
May I suggest you please check with below link which might help you to accelerate with above issue.
https://developer.salesforce.com/docs/atlas.en-us.pages.meta/pages/pages_email_templates_creating.htm
Hope this helps.
Regards,
Nagendra.