tag:blogger.com,1999:blog-41121207159573095582024-03-29T03:21:03.434-07:00SalesforceSalesforce, Surveryforce, Appexchange, LightningAMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.comBlogger31125tag:blogger.com,1999:blog-4112120715957309558.post-92167763155608273792023-01-25T11:19:00.002-08:002023-01-25T11:19:16.207-08:00Salesforce to Salesforce Integration using Composite API <p> </p><h1 class="helpHead1" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-3xl); margin: var(--dx-g-spacing-2xl) 0 var(--dx-g-spacing-md) 0;"><span class="ph" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; letter-spacing: -0.85px; word-break: break-word;"><span style="font-size: small;">Salesforce to Salesforce Integration using Composite API :</span></span></h1><div><span class="ph" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; letter-spacing: -0.85px; word-break: break-word;"><span style="font-size: small;"><b><br /></b></span></span></div><h1 class="helpHead1" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; color: var(--dx-g-blue-vibrant-20); font-family: var(--dx-g-font-display); font-size: var(--dx-g-text-3xl); letter-spacing: -0.85px; line-height: var(--dx-g-spacing-3xl); margin: var(--dx-g-spacing-2xl) 0 var(--dx-g-spacing-md) 0;"><span class="ph" id="topic-title" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; word-break: break-word;">Send Multiple Requests Using Composite</span></h1><div><span class="ph" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; word-break: break-word;"><br /></span></div><div><span class="ph" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; word-break: break-word;"><div class="shortdesc" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; color: #0b0b0b; font-family: "Salesforce Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span class="ph" id="summary" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; word-break: break-word;">Executes a series of REST API requests in a single call. You can use the output of one request as the input to a subsequent request. The response bodies and HTTP statuses of the requests are returned in a single response body. The entire series of requests counts as a single call toward your API limits.</span></div><p class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; color: #0b0b0b; font-family: "Salesforce Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-left: 0px; margin-right: 0px; margin-top: var(--dx-g-spacing-md);">The requests in a composite call are called <dfn class="term" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box;">subrequests</dfn>. All subrequests are executed in the context of the same user. In a subrequest’s body, you specify a reference ID that maps to the subrequest’s response. You can then refer to the ID in the <samp class="codeph nolang" style="border-color: rgb(226, 232, 240); border-radius: 4px; border-style: solid; border-width: 0px; box-sizing: border-box; color: #181818; font-family: var(--dx-g-font-mono); font-size: var(--dx-g-text-sm); letter-spacing: 0px; line-height: var(--dx-g-text-lg); padding: var(--dx-g-spacing-2xs);">url</samp> or <samp class="codeph nolang" style="border-color: rgb(226, 232, 240); border-radius: 4px; border-style: solid; border-width: 0px; box-sizing: border-box; color: #181818; font-family: var(--dx-g-font-mono); font-size: var(--dx-g-text-sm); letter-spacing: 0px; line-height: var(--dx-g-text-lg); padding: var(--dx-g-spacing-2xs);">body</samp> fields of later subrequests by using a JavaScript-like reference notation.</p><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; color: #0b0b0b; font-family: "Salesforce Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);">For example, the following composite request body includes two subrequests. The first creates an account and designates the output as <samp class="codeph nolang" style="border-color: rgb(226, 232, 240); border-radius: 4px; border-style: solid; border-width: 0px; box-sizing: border-box; color: #181818; font-family: var(--dx-g-font-mono); font-size: var(--dx-g-text-sm); letter-spacing: 0px; line-height: var(--dx-g-text-lg); padding: var(--dx-g-spacing-2xs);">refAccount</samp>. The second creates a contact parented under the new account by referencing <samp class="codeph nolang" style="border-color: rgb(226, 232, 240); border-radius: 4px; border-style: solid; border-width: 0px; box-sizing: border-box; color: #181818; font-family: var(--dx-g-font-mono); font-size: var(--dx-g-text-sm); letter-spacing: 0px; line-height: var(--dx-g-text-lg); padding: var(--dx-g-spacing-2xs);">refAccount</samp> in the subrequest body.</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; color: #0b0b0b; font-family: "Salesforce Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><br /></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; color: #0b0b0b; font-family: "Salesforce Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);">For more Detail Click here:</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; color: #0b0b0b; font-family: "Salesforce Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><br /></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; color: #0b0b0b; font-family: "Salesforce Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><a href="https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/resources_composite_composite_post.htm" target="_blank">Salesforce</a></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; color: #0b0b0b; font-family: "Salesforce Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><br /></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; font-family: "Salesforce Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="background-color: #f3f3f3;"><span style="color: #2b00fe;">Apex Trigger:</span></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; font-family: "Salesforce Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; font-size: 16px; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="background-color: #f3f3f3;"><span style="color: #2b00fe;"><br /></span></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;">trigger OnContact on Contact (after update) {</i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"> </i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"> if(trigger.isAfter && Trigger.isUpdate){</i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"> </i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"> for(Contact cont : Trigger.new) { </i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"> </i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"> if(trigger.oldMap.get(cont.id).primary_contact__c!=cont.primary_contact__c && cont.Primary_Contact__c==true){</i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"> ConnectToSalesforceRestApi.run(cont.id);</i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"> }</i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"> }</i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"> }</i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"><br /></i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;">}</i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;"><br /></i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i style="background-color: #f3f3f3;">Apex class:</i></span></div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="background-color: #f3f3f3;"><span style="color: #2b00fe; font-family: Salesforce Sans, system-ui, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;"><i><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);">public class ConnectToSalesforceRestApi {</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> @Future(callout=true)</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> public static void run(string contactid){</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> String endpoint='https://kreya2-dev-ed.develop.my.salesforce.com/services/oauth2/token';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> // or use this endpoint for a sandbox org:</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> // String endpoint='https://test.salesforce.com/services/oauth2/token';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> String username = 'amulhai@dev2.com';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> String password = 'reset12QRGoMnURJNigP0m0okBi6K';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> String CONSUMER_KEY = '3MVG9fe4g9fhX0E5Ejj.OX6.kBWke.eCBDa8RpIqaJlx.HhxRXUQYtmxJhs0VP6cPtJmXphhKEofq.qSFAyuu';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> String CONSUMER_SECRET = '5FC04C75E3C32C3E5F05FB1C661804E70F50D73B48194681BB35D9464D9CF2B3';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> Httprequest request = new HttpRequest();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setMethod('POST');</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setHeader('Content-Type','application/x-www-form-urlencoded');</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setBody(</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> 'grant_type=password' +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> '&client_id=' + CONSUMER_KEY +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> '&client_secret=' + CONSUMER_SECRET +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> '&username=' + username +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> '&password=' + password</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> );</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setEndpoint(endpoint);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> Http http = new Http();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> HttpResponse response;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> String accessToken;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> try {</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> response = http.send(request);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> System.debug('body: ' + response.getBody());</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> accessToken = parseResponseForAccessToken(response.getBody());</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> } catch(System.CalloutException error){</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> System.debug('error: ' + error);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> }</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> System.debug('access token: ' + accessToken);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> // be careful as the following line will print sensitive credentials to the logs</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> // System.debug(UserInfo.getOrganizationId().substring(0, 15) + ' ' + UserInfo.getSessionId().substring(15));</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> query(accessToken);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> PushContactToDev2(contactid,accessToken);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> //PushAccountToDev2(contactid,accessToken);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> }</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> private static String parseResponseForAccessToken(String responseBody) {</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> String accessToken;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> JSONParser parser = JSON.createParser(responseBody);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> while (parser.nextToken() != null) {</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> if ((parser.getCurrentToken() == JSONToken.FIELD_NAME) && (parser.getText() == 'access_token')) {</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> parser.nextToken();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> accessToken = parser.getText();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> }</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> }</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> return accessToken;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> }</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> private static void PushContactToDev2(String contactid,String accessToken){</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> Account acc=new Account();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> Contact cont=new Contact();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> if(contactid!=''){</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> list<contact> lstContact=[Select id, firstName, Lastname, Email,Phone,AccountId from contact where id=:contactid];</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> string accountId='';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> if(lstContact.size()>0){</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> accountId=lstContact[0].AccountId;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> cont=lstContact[0];</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> }</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> list<Account> lstAccount=[Select id, name, POS__c, Contracted_System__c, Credit_Status__c, AccountNumber from account where id=:accountId];</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> if(lstAccount.size()>0){</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> acc=lstAccount[0];</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> }</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> }</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> String endpoint = 'https://kreya2-dev-ed.develop.my.salesforce.com/services/data/v56.0/composite/';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> String JsonData='';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> string strAccountNumber=acc.AccountNumber;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> string POS=acc.POS__c;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> string ContractedSystem=acc.Contracted_System__c;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> string AccName=acc.Name;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> string CreditStatus=acc.Credit_Status__c;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> string contfirstName=cont.firstName;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> string contLastName=cont.LastName;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> string contEmail=cont.Email;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> string contPhone=cont.Phone;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> Httprequest request = new HttpRequest();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> Http http = new Http();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> HttpResponse response;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> JsonData=JSONBodyData(strAccountNumber,POS,ContractedSystem,CreditStatus,contfirstName,contLastName,contEmail,contPhone,AccName);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setEndpoint(endpoint);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setMethod('POST');</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> // we can use either of the two below lines for content Type.</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> // request.setHeader('Content-Type','application/json');</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setHeader('Content-Type','application/json');</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setHeader('Authorization','Bearer ' + accessToken);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setBody(JsonData);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> response = http.send(request);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> System.debug('body: ' + response.getBody());</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> }</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> public static string JSONBodyData(string strAccountNumber,string POS, string ContractedSystem</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> , string CreditStatus</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> , string contfirstName</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> , string contLastName</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> , string contEmail</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> , string contPhone</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> , string AccName) {</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>String json=<span style="white-space: pre;"> </span>'{'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "allOrNone" : true,'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "compositeRequest": [{'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "method": "PATCH",'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "url": "/services/data/v56.0/sobjects/Account/AccountNumber_External_id__c/' + strAccountNumber + '",' + </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "referenceId": "NewAccount",'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "body": {'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "POS__c": "'+ POS + '",' +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "Contracted_System__c": "'+ ContractedSystem + '",' +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> ' "Name": "'+ AccName + '",' +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "Credit_Status__c": "'+ CreditStatus + '"' +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' }'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' },{'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "method" : "PATCH",'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "url" : "/services/data/v56.0/sobjects/Contact/Email_External_Id__c/' + contEmail + '",'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "referenceId" : "newContact",'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "body" : {'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "firstName" : "'+ contfirstName + '",' +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "LastName" : "'+ contLastName + '",' +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "Email" : "'+ contEmail + '",' +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "Phone" : "'+ contPhone + '",' +</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' "AccountId" : "@{NewAccount.id}"'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' }'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>' }]'+</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>'}';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> return json;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"><span style="white-space: pre;"> </span>}</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> /* private static void PushAccountToDev2(String contactid,String accessToken){</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> String endpoint = 'https://kreya2-dev-ed.develop.my.salesforce.com/services/data/v42.0/query/?q=SELECT+name+from+account+limit+1';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> Httprequest request = new HttpRequest();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> Http http = new Http();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> HttpResponse response;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setEndpoint(endpoint);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setMethod('GET');</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> }</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);">*/</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> private static void query(String accessToken) {</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> // this endpoint allows us to append a SOQL query to retrieve specific data</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> // see the documentation for a complete list of endpoints</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> String endpoint = 'https://kreya2-dev-ed.develop.my.salesforce.com/services/data/v42.0/query/?q=SELECT+name+from+account+limit+1';</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> Httprequest request = new HttpRequest();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> Http http = new Http();</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> HttpResponse response;</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setEndpoint(endpoint);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setMethod('GET');</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> // we can use either of the two below lines for content Type.</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> // request.setHeader('Content-Type','application/json');</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setHeader('Content-Type','application/x-www-form-urlencoded');</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> request.setHeader('Authorization','Bearer ' + accessToken);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> response = http.send(request);</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> // => {"totalSize":1,"done":true,"records":[{"attributes":{"type":"Account","url":"/services/data/v20.0/sobjects/Account/0014000000xVKZgAAO"},"Name":"Jane Doe"}]}</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> System.debug('body: ' + response.getBody());</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> }</div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);"> </div><div class="p" style="border-color: rgb(226, 232, 240); border-style: solid; border-width: 0px; box-sizing: border-box; line-height: var(--dx-g-spacing-lg); margin-bottom: var(--dx-g-spacing-md); margin-top: var(--dx-g-spacing-md);">}</div></i></span></span></div></div><p><br /></p><p> </p></span></div>AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com2tag:blogger.com,1999:blog-4112120715957309558.post-21894334889457123262020-08-27T03:07:00.000-07:002020-08-27T03:09:49.918-07:00Salesforce CPQ Advance Approval Email Template<p> The purpose of this Blog is to create Advance Approval Email template:</p><p><br /></p><p>Follow the following steps to Create Advance approval Email Template:</p><ol style="background-color: white; border: 0px; box-sizing: border-box; color: #333333; font-family: "Salesforce Sans", Arial, sans-serif; font-size: 0.8125rem; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: inherit; list-style-image: initial; list-style-position: initial; margin: 0px 0px 0.75rem 1.5rem; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-variant: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Create a Salesforce email request template.</span><ol style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: 0.8125rem; font-stretch: inherit; font-variant: inherit; line-height: inherit; list-style: lower-alpha; margin: 0px 0px 0.75rem 1.5rem; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">From Setup, in the Quick Find box, enter <kbd style="background-color: transparent; border-radius: 0px; border: 0px; box-shadow: initial; box-sizing: border-box; color: #16325c; font-family: monospace, monospace; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Communication Templates</kbd>, and then select <span class="uicontrol" style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: 700; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Classic Email Templates</span>.</span></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Select <span class="uicontrol" style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: 700; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">New Template</span>.</span></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Select <span class="uicontrol" style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: 700; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Visualforce</span> as the email template type, and then click <span class="uicontrol" style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: 700; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Next</span>.</span></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Enter your email template information. For this example, we’ll use “Request Template.”</span></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Choose the folder where you want to store your email template.</span><div style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Make sure that the folder is publicly accessible if you want your email template to be publicly accessible.</div></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Select <span class="uicontrol" style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: 700; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Available For Use</span>.</span></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Enter your email template name and template unique name.</span></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Choose your encoding, description, and email subject, and then set User as your recipient type.</span></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Set Related To Type to <span class="uicontrol" style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: 700; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">sbaa__Approval__c</span>, and then save your changes.</span></li><li style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-variant: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">In your template, click <span class="uicontrol" style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: 700; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Edit Template</span> to add the text and any markup that you want to show in your approval email. The email template must contain a reference to the ID of your approval record.</span><div style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-variant: inherit; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="font-style: inherit; font-weight: inherit;">Because users don’t have to see this code, you can add style tags so that the text doesn’t appear on the approval email. We recommend styling the code’s text color as white, because most emails have a white background color. Write your code as follows: </span><code style="background-color: rgba(0, 0, 0, 0); border-radius: 4px; border: 0px; box-sizing: border-box; font-family: monospace, monospace; font-size: 1em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline;"><p> “style=color:white” ”apex:outputText” value=”{!relatedTo.ID}” </p> . </code><code style="background-color: rgba(0, 0, 0, 0); border-radius: 4px; border: 0px; box-sizing: border-box; font-family: monospace, monospace; font-size: 1em; font-stretch: inherit; font-variant: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline;"><b><u><i>see below point no. 3 for more Sample Email template.</i></u></b></code></div></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Repeat this process for your rejection, approval, and recall templates.</span></li></ol></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Create an Advanced Approval email template record.</span></li><ol style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: 0.8125rem; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; list-style: lower-alpha; margin: 0px 0px 0.75rem 1.5rem; padding: 0px; vertical-align: baseline;"><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">In your email templates object, click <span class="uicontrol" style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: 700; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">New</span>.</span></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Enter your email template name.</span><div style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Because you’re connecting this approval template to the template you made in Step 1, you can name it “Approval Request Template.”</div></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">In the Template ID field, enter the ID of the Salesforce request template you made in Step 1.</span><div style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">You can find the ID by going to your Salesforce approval request template, finding the URL in your browser, and copying the string of numbers and letters after <code style="background-color: rgba(0, 0, 0, 0); border-radius: 4px; border: 0px; box-sizing: border-box; font-family: monospace, monospace; font-size: 1em; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; padding: 2px 4px; vertical-align: baseline;">salesforce.com/</code>.</div></li><li style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;"><span style="border: 0px; box-sizing: border-box; font: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Click <span class="uicontrol" style="border: 0px; box-sizing: border-box; font-family: inherit; font-size: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: 700; line-height: inherit; margin: 0px; padding: 0px; vertical-align: baseline;">Save</span>.</span></li></ol><li><span style="font-size: 14px;">The following Email Template sample can be referenced. This sample includes :</span></li></ol><div><span style="color: #333333; font-family: Salesforce Sans, Arial, sans-serif;"><span style="font-size: 14px;"><br /></span></span></div><div><pre class="ckeditor_codeblock" style="background-color: rgb(245, 245, 245) !important; border-radius: 4px; border: 1px solid rgb(204, 204, 204); box-sizing: border-box; color: #333333; font-size: 13px !important; font-stretch: inherit; font-variant-east-asian: inherit; font-variant-numeric: inherit; line-height: 1.42857; margin-bottom: 10px; margin-top: 0px; max-width: 1140px; overflow-wrap: normal; overflow: auto; padding: 9.5px; vertical-align: baseline; word-break: break-all;"><messaging:emailTemplate subject="APPROVAL REQUEST SAMPLE: {!relatedTo.Quote__r.Name}, {!relatedTo.Quote__r.SBQQ__Opportunity2__r.Owner.Name}" relatedToType="sbaa__Approval__c">
<messaging:HtmlEmailBody >
<html>
<body>
Hello, You have been requested to approve the following:
<p>
<p><b>Quote Name:</b>&nbsp;<apex:outputLink value="https://[your URL here]/{!relatedTo.Quote__r.Id}" >{!relatedTo.Quote__r.Name}</apex:outputLink></p>
<p><b>Opportunity Name:</b>&nbsp;<apex:outputLink value="https://[your URL here]/{!relatedTo.Quote__r.SBQQ__Opportunity2__r.Id}" >{!relatedTo.Quote__r.SBQQ__Opportunity2__r.Name}</apex:outputLink></p>
<p><b>Opportunity Owner:</b>{!relatedTo.Quote__r.SBQQ__Opportunity2__r.Owner.Name}</p>
<p><b>Quote Total:</b>&nbsp;<apex:outputField value=" {!relatedTo.Quote__r.SBQQ__NetAmount__c}"/></p>
<p><b>Payment Terms:</b>&nbsp;<apex:outputField value=" {!relatedTo.Quote__r.SBQQ__PaymentTerms__c}"/></p>
<p style="color:white"><apex:outputText value="{!relatedTo.Id}"/></p>
</p>
</body>
</html>
</messaging:HtmlEmailBody>
</messaging:emailTemplate></pre></div><div><span style="color: #333333; font-family: Salesforce Sans, Arial, sans-serif;"><span style="font-size: 14px;"><br /></span></span></div><div><span style="background-color: white; color: #333333; font-family: "Salesforce Sans", Arial, sans-serif; font-size: 14px;">Note: This email template was designed to be used for an Approval Rule set up on the SBQQ__Quote__c object. The template includes examples of merge fields and creating links that reference related records. The URL samples include a "[your URL here]" that must be replaced with your specific Salesforce domain.</span></div><div><span style="color: #333333; font-family: Salesforce Sans, Arial, sans-serif;"><span style="font-size: 13px;"><br /></span></span></div>AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com17tag:blogger.com,1999:blog-4112120715957309558.post-79845219521709266522020-04-20T00:21:00.000-07:002020-04-20T00:21:24.062-07:00Salesforce CPQ: Theta Symbol in Quote PDF<div dir="ltr" style="text-align: left;" trbidi="on">
<b>Issue:</b><br />
<b><u><i>Unable to Display Theta in my CPQ Quote PDF and while Generate Quote PDF getting Bad ERROR Request.</i></u></b><br />
<br />
<b>Objective</b>:<br />
Theta Symbol in Quote PDF<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgE45K5419MHLAeP4Xdb5Ef-Go-H767bWWXLt0KNgiIDAOiXb1CEqf_rOnaKnbLmlgS-jczcpDuEYfxbGs1tPQRc4wdvAPjpRe45UgiF5RE_fLp3J9eTeRhFhU17AHTs14tbafLuDXypBlp/s1600/theta-pdf.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="24" data-original-width="176" height="43" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgE45K5419MHLAeP4Xdb5Ef-Go-H767bWWXLt0KNgiIDAOiXb1CEqf_rOnaKnbLmlgS-jczcpDuEYfxbGs1tPQRc4wdvAPjpRe45UgiF5RE_fLp3J9eTeRhFhU17AHTs14tbafLuDXypBlp/s320/theta-pdf.png" width="320" /></a></div>
<b>Solution:</b><br />
<b><br /></b>
<b>We have created a Text that carries our Engineer machine Information like degree, theta, etc.</b><br />
<b>so in the text field created on Product we have replaced the theta value in XSL-FO tag as below:</b><br />
<b><br /></b>
<b><Inline font-family="Arial"> </b><b style="background-color: white; color: #222222; font-family: Roboto, arial, sans-serif; font-size: 16px;">Θ</b><b></Inline></b><br />
<b><br /></b>
<b>see below image of the field created with value Setup.</b><br />
<b><br /></b>
<b><br /></b>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYXhdSmrYL80RZNK_rQispVdgEITFy_wpLi7WkUFY_u1P9xg0lGxLvRKPvCIJltG2EX72rfKTZvAldC9kb8bW995nyXhFSJJeBLrsqlHIcbI6YDGwtsYJf5-XZo4pzUoxc8Ix8W1IWLWSe/s1600/Capture.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="38" data-original-width="727" height="32" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiYXhdSmrYL80RZNK_rQispVdgEITFy_wpLi7WkUFY_u1P9xg0lGxLvRKPvCIJltG2EX72rfKTZvAldC9kb8bW995nyXhFSJJeBLrsqlHIcbI6YDGwtsYJf5-XZo4pzUoxc8Ix8W1IWLWSe/s640/Capture.JPG" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
</div>
<b><br /></b></div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com6tag:blogger.com,1999:blog-4112120715957309558.post-2857158488720834632020-03-15T09:29:00.001-07:002020-03-15T09:29:35.764-07:00Salesforce CPQ Data Migration<div dir="ltr" style="text-align: left;" trbidi="on">
Salesforce CPQ Data Migration using Salesforce to Salesforce Connection:<br />
<br />
Migrate Data from Production to Salesforce Development Environment Using Salesforce Connection.<br />
<br />
<br />
<div class="MsoNormal">
<span lang="EN-US" style="mso-ansi-language: EN-US;"><b>Destination
Org Connection:<o:p></o:p></b></span></div>
<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwzjQLJJfdAhKdRGlrcsNy_jtysi4oDKChk7R95YzFy1Pt4m9sSoMCvVn_fS_hv0pGFS1qZ0EswPa4GyT_QJg81oNsFDFxgjAoa0f7G483VPiePZ3YVvozZmaDjYMGRm-8fhlx4xz6nA-8/s1600/111.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="879" data-original-width="1600" height="350" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwzjQLJJfdAhKdRGlrcsNy_jtysi4oDKChk7R95YzFy1Pt4m9sSoMCvVn_fS_hv0pGFS1qZ0EswPa4GyT_QJg81oNsFDFxgjAoa0f7G483VPiePZ3YVvozZmaDjYMGRm-8fhlx4xz6nA-8/s640/111.png" width="640" /></a></div>
<br />
<br />
<div class="MsoNormal">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKtqINwjt8ej0a3l5a0OjEKWk_5wBg1c8rYj8kOOTuLE3wlX4BvXjxOgwc8jpHJb2i3S3ZUVcxjGYrqm8tfFhl70LnrDSqvBX3Daw17cz5uoJNgD73RIHukR-vmHE5-WP91uuz1P-McLlx/s1600/112.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKtqINwjt8ej0a3l5a0OjEKWk_5wBg1c8rYj8kOOTuLE3wlX4BvXjxOgwc8jpHJb2i3S3ZUVcxjGYrqm8tfFhl70LnrDSqvBX3Daw17cz5uoJNgD73RIHukR-vmHE5-WP91uuz1P-McLlx/s1600/112.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKtqINwjt8ej0a3l5a0OjEKWk_5wBg1c8rYj8kOOTuLE3wlX4BvXjxOgwc8jpHJb2i3S3ZUVcxjGYrqm8tfFhl70LnrDSqvBX3Daw17cz5uoJNgD73RIHukR-vmHE5-WP91uuz1P-McLlx/s1600/112.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKtqINwjt8ej0a3l5a0OjEKWk_5wBg1c8rYj8kOOTuLE3wlX4BvXjxOgwc8jpHJb2i3S3ZUVcxjGYrqm8tfFhl70LnrDSqvBX3Daw17cz5uoJNgD73RIHukR-vmHE5-WP91uuz1P-McLlx/s1600/112.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><br /></a><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiKtqINwjt8ej0a3l5a0OjEKWk_5wBg1c8rYj8kOOTuLE3wlX4BvXjxOgwc8jpHJb2i3S3ZUVcxjGYrqm8tfFhl70LnrDSqvBX3Daw17cz5uoJNgD73RIHukR-vmHE5-WP91uuz1P-McLlx/s1600/112.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"> </a><span lang="EN-US" style="mso-ansi-language: EN-US;"><b>Source Org
Connection:</b><o:p></o:p></span></div>
<div class="MsoNormal">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj763hBKep0xFBC_NjW-StUdgg-MvXAca6N1AYYKflhYC-eYhu33rCoiZxAtXLk2cuA2T8FDsNedkTv_AjPe5CE51HyX8BQR5sjzaLv9ADTP7RmvyQ5Y-A70Lx7lrSnlbWhc-scHfyyMk7v/s1600/112.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"><img border="0" data-original-height="799" data-original-width="1600" height="318" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj763hBKep0xFBC_NjW-StUdgg-MvXAca6N1AYYKflhYC-eYhu33rCoiZxAtXLk2cuA2T8FDsNedkTv_AjPe5CE51HyX8BQR5sjzaLv9ADTP7RmvyQ5Y-A70Lx7lrSnlbWhc-scHfyyMk7v/s640/112.png" width="640" /></a><span lang="EN-US" style="mso-ansi-language: EN-US;"><b><br /></b></span></div>
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<div class="MsoNormal">
<span lang="EN-US"><b>External
Sharing using Connection (From Source):</b><o:p></o:p></span></div>
<div class="MsoNormal">
<span lang="EN-US"><b><br /></b></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjuZo12JB1pcLSQ3tfci1GykCDiglbRciWYKk_AafZ13wK1ifl_zt5Fo-5GNYmcX_343w6Ajvwj2QE9jyZCwilWZzEvQVFLiLunk8FDveRsPsckGw4v3xDYM_A2XY3Viq0lwtg_-4KJfBo/s1600/113.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="801" data-original-width="1600" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhjuZo12JB1pcLSQ3tfci1GykCDiglbRciWYKk_AafZ13wK1ifl_zt5Fo-5GNYmcX_343w6Ajvwj2QE9jyZCwilWZzEvQVFLiLunk8FDveRsPsckGw4v3xDYM_A2XY3Viq0lwtg_-4KJfBo/s640/113.png" width="640" /></a></div>
<div class="MsoNormal">
<span lang="EN-US"><b><br /></b></span></div>
<div class="MsoNormal">
<span lang="EN-US"><b><br /></b></span></div>
<div class="MsoNormal">
<span lang="EN-US"></span></div>
<div class="MsoNormal">
<b><span lang="EN-US">Data Received
in Destination Org:<o:p></o:p></span></b></div>
<div class="MsoNormal">
<b><span lang="EN-US"><br /></span></b></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMoQD9KcEPRV2drG0bSQwsdvNkEmq0e7oXoFAoz4zp6G-nePGW19Dh0TbVEfqXHsF81DAB6rlZwjYxsbxwINz5XfiDw3AXdisCu9N5dXAiDt6tI89iXhbxWGtLwFLFBj-USa7f_q9U6aBl/s1600/114.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="709" data-original-width="1600" height="282" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiMoQD9KcEPRV2drG0bSQwsdvNkEmq0e7oXoFAoz4zp6G-nePGW19Dh0TbVEfqXHsF81DAB6rlZwjYxsbxwINz5XfiDw3AXdisCu9N5dXAiDt6tI89iXhbxWGtLwFLFBj-USa7f_q9U6aBl/s640/114.png" width="640" /></a></div>
<div class="MsoNormal">
<b><span lang="EN-US"><br /></span></b></div>
<div class="MsoNormal">
<b><span lang="EN-US"><br /></span></b></div>
<div class="MsoNormal">
<span lang="EN-US" style="font-family: "calibri" , sans-serif; font-size: 11.0pt; line-height: 107%;"><b>You
can automate this Record sharing using : queue and Apex Sharing</b></span></div>
<br /></div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com2tag:blogger.com,1999:blog-4112120715957309558.post-69033579608358488502020-03-04T02:19:00.001-08:002020-03-04T02:19:33.537-08:00lightning-datatable Vs table <div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<br />
<h2 style="text-align: center;">
<b>lightning-datatable Vs table </b></h2>
<b><br /></b>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK24v-L_wWDZiDrT6BXfICVGIM2IXd7C44tkYRAaEOvxbJiD5gGQDCq8_-fMLpE4jEVlZT-yJE6r-wovzqEXpoYuu999yPXT7wWcvIH4tiafuIlwHwQOb3fccJnFt9bH2Vev3fo6IL6u5e/s1600/Form+with+Table+and+Action+Button+-+Form+with+Table+and+Action+Button.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="466" data-original-width="1280" height="232" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhK24v-L_wWDZiDrT6BXfICVGIM2IXd7C44tkYRAaEOvxbJiD5gGQDCq8_-fMLpE4jEVlZT-yJE6r-wovzqEXpoYuu999yPXT7wWcvIH4tiafuIlwHwQOb3fccJnFt9bH2Vev3fo6IL6u5e/s640/Form+with+Table+and+Action+Button+-+Form+with+Table+and+Action+Button.png" width="640" /></a></div>
<b><br /></b>
<b><br /></b>
<b>Web Component:</b><br />
<br />
<br />
<span style="color: blue;"><div class="slds-media"></span><br />
<span style="color: blue;"> <div class="slds-media__figure"></span><br />
<span style="color: blue;"> <lightning-avatar alternative-text="" fallback-icon-name="standard:individual" size="slds-avatar_large" src="" variant="square"></lightning-avatar></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <div class="slds-media__body"></span><br />
<span style="color: blue;"> <div style="font-size: 0.8125rem;"></span><br />
<span style="color: blue;"> <p>Customer with Invoice</p></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <div class="slds-media__figure slds-media__figure_reverse"></div></span><br />
<span style="color: blue;"></div></span><br />
<span style="color: blue;"><lightning-layout></span><br />
<span style="color: blue;"> <lightning-layout-item size="4"></span><br />
<span style="color: blue;"> <lightning-input label="Input label" placeholder="Placeholder Text" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-file-upload label="Attachment" record-id=""></lightning-file-upload></span><br />
<span style="color: blue;"> </lightning-layout-item></span><br />
<span style="color: blue;"> <lightning-layout-item size="4"></span><br />
<span style="color: blue;"> <lightning-input label="Input label" placeholder="Placeholder Text" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="Input label" placeholder="Placeholder Text" type="date" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> </lightning-layout-item></span><br />
<span style="color: blue;"> <lightning-input label="Input label" placeholder="Placeholder Text" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-combobox label="Label" options={options} placeholder="Select an Option" dropdown-alignment="left" variant="standard"></lightning-combobox></span><br />
<span style="color: blue;"></lightning-layout></span><br />
<span style="color: blue;"><table class="slds-table slds-no-row-hover slds-table_bordered slds-table_striped slds-table_col-bordered"></span><br />
<span style="color: blue;"> <thead></span><br />
<span style="color: blue;"> <tr class="slds-text-title_caps"></span><br />
<span style="color: blue;"> <th></span><br />
<span style="color: blue;"> <div class="slds-truncate" title="Column 1">Column 1</div></span><br />
<span style="color: blue;"> </th></span><br />
<span style="color: blue;"> <th></span><br />
<span style="color: blue;"> <div class="slds-truncate" title="Column 1">Column 2</div></span><br />
<span style="color: blue;"> </th></span><br />
<span style="color: blue;"> <th></span><br />
<span style="color: blue;"> <div class="slds-truncate" title="Column 1">Column 3</div></span><br />
<span style="color: blue;"> </th></span><br />
<span style="color: blue;"> </tr></span><br />
<span style="color: blue;"> </thead></span><br />
<span style="color: blue;"> <tbody></span><br />
<span style="color: blue;"> <tr class="slds-hint-parent"></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> </tr></span><br />
<span style="color: blue;"> <tr class="slds-hint-parent"></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> </tr></span><br />
<span style="color: blue;"> <tr class="slds-hint-parent"></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> </tr></span><br />
<span style="color: blue;"> </tbody></span><br />
<span style="color: blue;"></table></span><br />
<span style="color: blue;"><lightning-datatable class="slds-m-around_small slds-p-around_large slds-container_center slds-theme_default slds-border_top slds-border_bottom slds-border_left slds-border_right" columns={columns} key-field="" data={data}></lightning-datatable></span><br />
<br />
<br />
LWC:<br />
<span style="color: blue;"><br /></span>
<span style="color: blue;"><div class="slds-media"></span><br />
<span style="color: blue;"> <div class="slds-media__figure"></span><br />
<span style="color: blue;"> <lightning:avatar alternativeText="" fallbackIconName="standard:individual" size="slds-avatar_large" src="" variant="square"></lightning:avatar></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <div class="slds-media__body"></span><br />
<span style="color: blue;"> <div style="font-size: 0.8125rem;"></span><br />
<span style="color: blue;"> <p>Customer with Invoice</p></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <div class="slds-media__figure slds-media__figure_reverse"></div></span><br />
<span style="color: blue;"></div></span><br />
<span style="color: blue;"><lightning:layout></span><br />
<span style="color: blue;"> <lightning:layoutItem size="4"></span><br />
<span style="color: blue;"> <lightning:input label="Input label" placeholder="Placeholder Text" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> <lightning:fileUpload label="Attachment" recordId=""></lightning:fileUpload></span><br />
<span style="color: blue;"> </lightning:layoutItem></span><br />
<span style="color: blue;"> <lightning:layoutItem size="4"></span><br />
<span style="color: blue;"> <lightning:input label="Input label" placeholder="Placeholder Text" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> <lightning:input label="Input label" placeholder="Placeholder Text" type="date" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> </lightning:layoutItem></span><br />
<span style="color: blue;"> <lightning:input label="Input label" placeholder="Placeholder Text" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> <aura:attribute name="options" type="List" default="[{'label':'Option One','value':'OptionOne'},{'label':'Option Two','value':'OptionTwo'},{'label':'Option Three','value':'OptionThree'}]" /></span><br />
<span style="color: blue;"> <lightning:combobox label="Label" options="{!v.options}" placeholder="Select an Option" dropdownAlignment="left" variant="standard"></lightning:combobox></span><br />
<span style="color: blue;"></lightning:layout></span><br />
<span style="color: blue;"><table class="slds-table slds-no-row-hover slds-table_bordered slds-table_striped slds-table_col-bordered"></span><br />
<span style="color: blue;"> <thead></span><br />
<span style="color: blue;"> <tr class="slds-text-title_caps"></span><br />
<span style="color: blue;"> <th></span><br />
<span style="color: blue;"> <div class="slds-truncate" title="Column 1">Column 1</div></span><br />
<span style="color: blue;"> </th></span><br />
<span style="color: blue;"> <th></span><br />
<span style="color: blue;"> <div class="slds-truncate" title="Column 1">Column 2</div></span><br />
<span style="color: blue;"> </th></span><br />
<span style="color: blue;"> <th></span><br />
<span style="color: blue;"> <div class="slds-truncate" title="Column 1">Column 3</div></span><br />
<span style="color: blue;"> </th></span><br />
<span style="color: blue;"> </tr></span><br />
<span style="color: blue;"> </thead></span><br />
<span style="color: blue;"> <tbody></span><br />
<span style="color: blue;"> <tr class="slds-hint-parent"></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> </tr></span><br />
<span style="color: blue;"> <tr class="slds-hint-parent"></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> </tr></span><br />
<span style="color: blue;"> <tr class="slds-hint-parent"></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> <td></td></span><br />
<span style="color: blue;"> </tr></span><br />
<span style="color: blue;"> </tbody></span><br />
<span style="color: blue;"></table></span><br />
<span style="color: blue;"><aura:attribute name="columns" type="List" default="[{'fieldName':'indexCol1','label':'Column Name','type':'text'},{'fieldName':'indexCol2','label':'Column Name','type':'text'},{'fieldName':'indexCol3','label':'Column Name','type':'text'}]" /></span><br />
<span style="color: blue;"><aura:attribute name="data" type="List" default="[{'indexCol1':'','indexCol2':'','indexCol3':''},{},{}]" /></span><br />
<span style="color: blue;"><lightning:datatable class="slds-m-around_small slds-p-around_large slds-container_center slds-theme_default slds-border_top slds-border_bottom slds-border_left slds-border_right" columns="{!v.columns}" keyField="" data="{!v.data}"></lightning:datatable></span></div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com2tag:blogger.com,1999:blog-4112120715957309558.post-66762023621497024282020-03-04T01:51:00.000-08:002020-03-04T01:51:29.050-08:00New Contact Creation 3 Column Layout LWC<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: center;">
<b>New Contact Creation 3 Column Layout LWC</b></div>
<div style="text-align: center;">
<b><br /></b></div>
<div style="text-align: left;">
<b><span id="goog_1712191946"></span><span id="goog_1712191947"></span><br /></b></div>
<div style="text-align: left;">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjB958u7quUgPAwkOLN8g48-YMV6Z7KxvWdDZ2pJwQwcXKmnjqkbRKZSPZzuQledkXQtxJVYxjRmc_r38E4OpJ_KDaARLD1zZAXzNzTU97nLTUhmQWNLZJIFknRiCwMbEOabqJi5m6IIUmJ/s1600/Contact+-+Contact+%25282%2529.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="298" data-original-width="1280" height="148" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjB958u7quUgPAwkOLN8g48-YMV6Z7KxvWdDZ2pJwQwcXKmnjqkbRKZSPZzuQledkXQtxJVYxjRmc_r38E4OpJ_KDaARLD1zZAXzNzTU97nLTUhmQWNLZJIFknRiCwMbEOabqJi5m6IIUmJ/s640/Contact+-+Contact+%25282%2529.png" width="640" /></a></div>
<b><br /></b></div>
<div style="text-align: left;">
<b>Web Component:</b></div>
<div style="text-align: left;">
<b><br /></b></div>
<span style="color: blue;"><lightning-card title="New Contact" icon-name="standard:contact" variant="base"></span><br />
<span style="color: blue;"> <div slot="actions"></span><br />
<span style="color: blue;"> <lightning-button class="slds-theme_brand" icon-position="left" variant="brand" label="Back to Contact" icon-name="standard:return_order"></lightning-button></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <div slot="footer"></span><br />
<span style="color: blue;"> <lightning-button class="slds-theme_inverse slds-button_outline-brand" variant="inverse" label="Submit"></lightning-button></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <div class="slds-card__body_inner"></span><br />
<span style="color: blue;"> <div style="font-size: 0.8125rem;"></span><br />
<span style="color: blue;"> <p>Please fill below form detail</p></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <lightning-layout class="slds-m-around_small slds-wrap" multiple-rows="true"></span><br />
<span style="color: blue;"> <lightning-layout-item size="4"></span><br />
<span style="color: blue;"> <lightning-input label="First Name" placeholder="First Name" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="Email" placeholder="Email" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> </lightning-layout-item></span><br />
<span style="color: blue;"> <lightning-layout-item size="4"></span><br />
<span style="color: blue;"> <lightning-input label="Last Name" placeholder="Last Name" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="Phone" placeholder="Phone" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> </lightning-layout-item></span><br />
<span style="color: blue;"> <lightning-layout-item size="4"></span><br />
<span style="color: blue;"> <lightning-input label="DOB" placeholder="DOB" type="date" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="Company Name" placeholder="Company Name" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> </lightning-layout-item></span><br />
<span style="color: blue;"> </lightning-layout></span><br />
<span style="color: blue;"> </div></span><br />
<br />
<span style="color: blue;"></lightning-card></span><br />
<span style="color: blue;"><br /></span>
<b>AURA Component:</b><br />
<b><br /></b>
<span style="color: blue;"><lightning:card title="New Contact" iconName="standard:contact" variant="base"></span><br />
<span style="color: blue;"> <aura:set attribute="actions"></span><br />
<span style="color: blue;"> <lightning:button class="slds-theme_brand" iconPosition="left" variant="brand" label="Back to Contact" iconName="standard:return_order"></lightning:button></span><br />
<span style="color: blue;"> </aura:set></span><br />
<span style="color: blue;"> <aura:set attribute="footer"></span><br />
<span style="color: blue;"> <lightning:button class="slds-theme_inverse slds-button_outline-brand" variant="inverse" label="Submit"></lightning:button></span><br />
<span style="color: blue;"> </aura:set></span><br />
<span style="color: blue;"> <div class="slds-card__body_inner"></span><br />
<span style="color: blue;"> <div style="font-size: 0.8125rem;"></span><br />
<span style="color: blue;"> <p>Please fill below form detail</p></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <lightning:layout class="slds-m-around_small slds-wrap" multipleRows="true"></span><br />
<span style="color: blue;"> <lightning:layoutItem size="4"></span><br />
<span style="color: blue;"> <lightning:input label="First Name" placeholder="First Name" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> <lightning:input label="Email" placeholder="Email" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> </lightning:layoutItem></span><br />
<span style="color: blue;"> <lightning:layoutItem size="4"></span><br />
<span style="color: blue;"> <lightning:input label="Last Name" placeholder="Last Name" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> <lightning:input label="Phone" placeholder="Phone" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> </lightning:layoutItem></span><br />
<span style="color: blue;"> <lightning:layoutItem size="4"></span><br />
<span style="color: blue;"> <lightning:input label="DOB" placeholder="DOB" type="date" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> <lightning:input label="Company Name" placeholder="Company Name" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> </lightning:layoutItem></span><br />
<span style="color: blue;"> </lightning:layout></span><br />
<span style="color: blue;"> </div></span><br />
<br />
<span style="color: blue;"></lightning:card></span><br />
<span style="color: blue;"><br /></span></div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com4tag:blogger.com,1999:blog-4112120715957309558.post-44586794276056180032020-03-04T01:01:00.003-08:002020-03-04T01:02:51.393-08:00Two Column Layout New Contact Creation in LWC<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: center;">
<b>Two Column Layout New Contact Creation in LWC</b></div>
<div style="text-align: center;">
<b><br /></b></div>
<div style="text-align: center;">
<b><br /></b></div>
<div style="text-align: left;">
<b>This is the LWC code for 2 Column Template:</b></div>
<div style="text-align: left;">
<b><br /></b></div>
<span style="color: blue;"><lightning-card title="New Contact" icon-name="standard:contact" variant="base"></span><br />
<span style="color: blue;"> <div slot="actions"></span><br />
<span style="color: blue;"> <lightning-button class="slds-theme_brand" icon-position="left" variant="brand" label="Back to Contact" icon-name="standard:return_order"></lightning-button></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <div slot="footer"></span><br />
<span style="color: blue;"> <lightning-button class="slds-theme_inverse slds-button_outline-brand" variant="inverse" label="Submit"></lightning-button></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <div class="slds-card__body_inner"></span><br />
<span style="color: blue;"> <div style="font-size: 0.8125rem;"></span><br />
<span style="color: blue;"> <p>Please fill below form detail</p></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <lightning-layout></span><br />
<span style="color: blue;"> <lightning-layout-item size="6"></span><br />
<span style="color: blue;"> <lightning-input label="First Name" placeholder="First Name" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="Email" placeholder="Email" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="DOB" placeholder="DOB" type="date" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> </lightning-layout-item></span><br />
<span style="color: blue;"> <lightning-layout-item size="6"></span><br />
<span style="color: blue;"> <lightning-input label="Last Name" placeholder="Last Name" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="Phone" placeholder="Phone" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="Company Name" placeholder="Company Name" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> </lightning-layout-item></span><br />
<span style="color: blue;"> </lightning-layout></span><br />
<span style="color: blue;"> </div></span><br />
<br />
<span style="color: blue;"></lightning-card></span><br />
<b><br /></b>
<b><br /></b>
<b><br /></b>
<b><br /></b>
<b>AURA Component:</b><br />
<span style="color: blue;"><br /></span>
<span style="color: blue;"><lightning:card title="New Contact" iconName="standard:contact" variant="base"></span><br />
<span style="color: blue;"> <aura:set attribute="actions"></span><br />
<span style="color: blue;"> <lightning:button class="slds-theme_brand" iconPosition="left" variant="brand" label="Back to Contact" iconName="standard:return_order"></lightning:button></span><br />
<span style="color: blue;"> </aura:set></span><br />
<span style="color: blue;"> <aura:set attribute="footer"></span><br />
<span style="color: blue;"> <lightning:button class="slds-theme_inverse slds-button_outline-brand" variant="inverse" label="Submit"></lightning:button></span><br />
<span style="color: blue;"> </aura:set></span><br />
<span style="color: blue;"> <div class="slds-card__body_inner"></span><br />
<span style="color: blue;"> <div style="font-size: 0.8125rem;"></span><br />
<span style="color: blue;"> <p>Please fill below form detail</p></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <lightning:layout></span><br />
<span style="color: blue;"> <lightning:layoutItem size="6"></span><br />
<span style="color: blue;"> <lightning:input label="First Name" placeholder="First Name" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> <lightning:input label="Email" placeholder="Email" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> <lightning:input label="DOB" placeholder="DOB" type="date" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> </lightning:layoutItem></span><br />
<span style="color: blue;"> <lightning:layoutItem size="6"></span><br />
<span style="color: blue;"> <lightning:input label="Last Name" placeholder="Last Name" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> <lightning:input label="Phone" placeholder="Phone" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> <lightning:input label="Company Name" placeholder="Company Name" type="text" variant="standard"></lightning:input></span><br />
<span style="color: blue;"> </lightning:layoutItem></span><br />
<span style="color: blue;"> </lightning:layout></span><br />
<span style="color: blue;"> </div></span><br />
<br />
<span style="color: blue;"></lightning:card></span><br />
<span style="color: blue;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuekts-lw5Av2C-dJMBtyciWXOTx5JJaWoVB8wz11Nn5Ab5KCbh6vY5O0-gYjH99lkRWZejaRYkXCBgkOVBBh8MKQSMYNMGf4JL6xr91EgXuLHOR5ue2uS6tprJk4FRP156Bl0L1Scfv7K/s1600/Contact+-+Contact+%25281%2529.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="330" data-original-width="1280" height="164" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjuekts-lw5Av2C-dJMBtyciWXOTx5JJaWoVB8wz11Nn5Ab5KCbh6vY5O0-gYjH99lkRWZejaRYkXCBgkOVBBh8MKQSMYNMGf4JL6xr91EgXuLHOR5ue2uS6tprJk4FRP156Bl0L1Scfv7K/s640/Contact+-+Contact+%25281%2529.png" width="640" /></a></div>
<span style="color: blue;"><br /></span></div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com3tag:blogger.com,1999:blog-4112120715957309558.post-8383646863764523692020-03-03T20:35:00.000-08:002020-03-04T01:03:04.586-08:00One Column Layout New Contact Creation LWC<div dir="ltr" style="text-align: left;" trbidi="on">
New Contact Creation LWC: One Column Layout<br />
<br />
<br />
Here is the Sample LWC Code:<br />
<br />
<span style="color: blue;"><lightning-card title="New Contact" icon-name="standard:contact" variant="base"></span><br />
<span style="color: blue;"> <div slot="actions"></span><br />
<span style="color: blue;"> <lightning-button class="slds-theme_brand" icon-position="left" variant="brand" label="Back to Contact" icon-name="standard:return_order"></lightning-button></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <div slot="footer"></span><br />
<span style="color: blue;"> <lightning-button class="slds-theme_inverse slds-button_outline-brand" variant="inverse" label="Submit"></lightning-button></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <div class="slds-card__body_inner"></span><br />
<span style="color: blue;"> <div style="font-size: 0.8125rem;"></span><br />
<span style="color: blue;"> <p>Please fill below form detail</p></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"> <lightning-input label="First Name" placeholder="First Name" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="Last Name" placeholder="Last Name" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="Email" placeholder="Email" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="Phone" placeholder="Phone" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="DOB" placeholder="DOB" type="date" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> <lightning-input label="Company Name" placeholder="Company Name" type="text" variant="standard"></lightning-input></span><br />
<span style="color: blue;"> </div></span><br />
<span style="color: blue;"></lightning-card></span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhf3uzkAT3G3MZEY5GCMsoH-hWFnx3hJ_-dmNSYHmX-Dg2xj6OMLcTgQtBuaHUfyi6OBGW9qqWoIDS8dhyphenhyphenfuk8pnP1bsxXt6Q4KqvUeatB1bjp7a2NfXnMX9yiTRNMNyuSlzbDQrdNfIrau/s1600/Contact+-+Contact.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="498" data-original-width="1280" height="248" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhf3uzkAT3G3MZEY5GCMsoH-hWFnx3hJ_-dmNSYHmX-Dg2xj6OMLcTgQtBuaHUfyi6OBGW9qqWoIDS8dhyphenhyphenfuk8pnP1bsxXt6Q4KqvUeatB1bjp7a2NfXnMX9yiTRNMNyuSlzbDQrdNfIrau/s640/Contact+-+Contact.png" width="640" /></a></div>
<span style="color: blue;"><br /></span>
<span style="color: blue;"><br /></span>
<span style="color: blue;"><br /></span>
<span style="color: blue;"><br /></span>
<br />
<br /></div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com15tag:blogger.com,1999:blog-4112120715957309558.post-37174966279743170342020-03-02T09:15:00.001-08:002020-03-02T21:22:30.356-08:00New Customer Creation Page web component Vs Aura Component<div dir="ltr" style="text-align: left;" trbidi="on">
<b>Below Sample Code will help of Understanding web component Vs Aura Component Tags.</b><br />
<div>
<b><br /></b></div>
<div>
<b>New Customer Creation:</b></div>
<div>
<b><br /></b></div>
<div>
<b>3 Column Layout: Web Component:</b></div>
<div>
<b><br /></b></div>
<div>
<div>
<span style="color: blue;"><lightning-card class="slds-p-around_small" title="New Contact" icon-name="standard:contact" variant="base"></span></div>
<div>
<span style="color: blue;"> <div slot="actions"></span></div>
<div>
<span style="color: blue;"> <lightning-button class="slds-theme_brand" variant="brand" label="Save"></lightning-button></span></div>
<div>
<span style="color: blue;"> </div></span></div>
<div>
<span style="color: blue;"> <div slot="footer"><a target="_blank" class="slds-text-link" href="">View All</a></div></span></div>
<div>
<span style="color: blue;"> <div class="slds-card__body_inner"></span></div>
<div>
<span style="color: blue;"> <div style="font-size: 0.8125rem;"></span></div>
<div>
<span style="color: blue;"> <p>Please fill the firm Name and person Incharge Detail</p></span></div>
<div>
<span style="color: blue;"> </div></span></div>
<div>
<span style="color: blue;"> <lightning-layout class="slds-wrap" multiple-rows="true"></span></div>
<div>
<span style="color: blue;"> <lightning-layout-item size="4"></span></div>
<div>
<span style="color: blue;"> <lightning-input label="First Name" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning-input></span></div>
<div>
<span style="color: blue;"> <lightning-input label="Email" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning-input></span></div>
<div>
<span style="color: blue;"> </lightning-layout-item></span></div>
<div>
<span style="color: blue;"> <lightning-layout-item size="4"></span></div>
<div>
<span style="color: blue;"> <lightning-input label="Last Name" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning-input></span></div>
<div>
<span style="color: blue;"> <lightning-input label="Mobile" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning-input></span></div>
<div>
<span style="color: blue;"> </lightning-layout-item></span></div>
<div>
<span style="color: blue;"> <lightning-input label="Firm Name" placeholder="Placeholder Text" type="text" variant="standard"></lightning-input></span></div>
<div>
<span style="color: blue;"> </lightning-layout></span></div>
<div>
<span style="color: blue;"> <lightning-file-upload label="Attachment" record-id=""></lightning-file-upload></span></div>
<div>
<span style="color: blue;"> </div></span></div>
<div>
<span style="color: blue;"></lightning-card></span></div>
</div>
<div>
<b><br /></b></div>
<div>
<b><br /></b></div>
<div>
<b>Aura Component:</b></div>
<div>
<span style="color: blue;"><br /></span></div>
<div>
<div>
<span style="color: blue;"><lightning:card class="slds-p-around_small" title="New Contact" iconName="standard:contact" variant="base"></span></div>
<div>
<span style="color: blue;"> <aura:set attribute="actions"></span></div>
<div>
<span style="color: blue;"> <lightning:button class="slds-theme_brand" variant="brand" label="Save"></lightning:button></span></div>
<div>
<span style="color: blue;"> </aura:set></span></div>
<div>
<span style="color: blue;"> <aura:set attribute="footer"><a target="_blank" class="slds-text-link" href="">View All</a></aura:set></span></div>
<div>
<span style="color: blue;"> <div class="slds-card__body_inner"></span></div>
<div>
<span style="color: blue;"> <div style="font-size: 0.8125rem;"></span></div>
<div>
<span style="color: blue;"> <p>Please fill the firm Name and person Incharge Detail</p></span></div>
<div>
<span style="color: blue;"> </div></span></div>
<div>
<span style="color: blue;"> <lightning:layout class="slds-wrap" multipleRows="true"></span></div>
<div>
<span style="color: blue;"> <lightning:layoutItem size="4"></span></div>
<div>
<span style="color: blue;"> <lightning:input label="First Name" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning:input></span></div>
<div>
<span style="color: blue;"> <lightning:input label="Email" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning:input></span></div>
<div>
<span style="color: blue;"> </lightning:layoutItem></span></div>
<div>
<span style="color: blue;"> <lightning:layoutItem size="4"></span></div>
<div>
<span style="color: blue;"> <lightning:input label="Last Name" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning:input></span></div>
<div>
<span style="color: blue;"> <lightning:input label="Mobile" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning:input></span></div>
<div>
<span style="color: blue;"> </lightning:layoutItem></span></div>
<div>
<span style="color: blue;"> <lightning:input label="Firm Name" placeholder="Placeholder Text" type="text" variant="standard"></lightning:input></span></div>
<div>
<span style="color: blue;"> </lightning:layout></span></div>
<div>
<span style="color: blue;"> <lightning:fileUpload label="Attachment" recordId=""></lightning:fileUpload></span></div>
<div>
<span style="color: blue;"> </div></span></div>
<div>
<span style="color: blue;"></lightning:card></span></div>
</div>
<div>
<b><br /></b></div>
<div>
<b><br /></b></div>
<div>
<b><br /></b></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCYuzaE8Gk021iZHezM29khrtgXuHA2ocp4gd7Vbi5PrE6LURtdfxzIxYbZ35X_0IOEz9R8Pn8VV65RWSKO6lWtY2JSEL6HX_s5yPREaF6uAnY0yAkHke4iSuaz8M06Ea3BZUHTI2EfYB6/s1600/Customer+Create+-+Customer+Create+%25281%2529.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="347" data-original-width="1280" height="172" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiCYuzaE8Gk021iZHezM29khrtgXuHA2ocp4gd7Vbi5PrE6LURtdfxzIxYbZ35X_0IOEz9R8Pn8VV65RWSKO6lWtY2JSEL6HX_s5yPREaF6uAnY0yAkHke4iSuaz8M06Ea3BZUHTI2EfYB6/s640/Customer+Create+-+Customer+Create+%25281%2529.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<b>2 Column Layout:</b></div>
<div class="separator" style="clear: both; text-align: left;">
<b><br /></b></div>
<div class="separator" style="clear: both; text-align: left;">
<b>Web Component:</b></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"><lightning-card class="slds-p-around_small" title="New Contact" icon-name="standard:contact" variant="base"></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <div slot="actions"></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <lightning-button class="slds-theme_brand" variant="brand" label="Save"></lightning-button></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> </div></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <div slot="footer"><a target="_blank" class="slds-text-link" href="">View All</a></div></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <div class="slds-card__body_inner"></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <div style="font-size: 0.8125rem;"></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <p>Please fill the firm Name and person Incharge Detail</p></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> </div></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <lightning-layout class="slds-wrap" multiple-rows="true"></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <lightning-layout-item size="6"></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <lightning-input label="First Name" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning-input></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <lightning-input label="Email" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning-input></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> </lightning-layout-item></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <lightning-layout-item size="6"></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <lightning-input label="Last Name" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning-input></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <lightning-input label="Mobile" placeholder="Placeholder Text" required="true" type="text" variant="standard"></lightning-input></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> </lightning-layout-item></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> </lightning-layout></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> <lightning-file-upload label="Attachment" record-id=""></lightning-file-upload></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"> </div></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"></lightning-card></span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQRu0EU3HQYgNEpLRgggXUZAbxiRgWfP1j0yI10HE7-jb5IhDOr0A7qvdAdUrOW05p5q2QpXe1U3RHwjfeahtdNZZ-4YAZeure_QR9F-WSHQBflltdCFUKY5cPy7LQG9UxRPITntmCGzC3/s1600/Customer+Create+-+Customer+Create-111.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="347" data-original-width="1280" height="172" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgQRu0EU3HQYgNEpLRgggXUZAbxiRgWfP1j0yI10HE7-jb5IhDOr0A7qvdAdUrOW05p5q2QpXe1U3RHwjfeahtdNZZ-4YAZeure_QR9F-WSHQBflltdCFUKY5cPy7LQG9UxRPITntmCGzC3/s640/Customer+Create+-+Customer+Create-111.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="color: blue;"><br /></span></div>
<div>
<b><br /></b></div>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com2tag:blogger.com,1999:blog-4112120715957309558.post-53413649928050228212020-02-24T02:50:00.000-08:002020-02-24T02:50:17.099-08:00Salesforce Survey using Apex<div dir="ltr" style="text-align: left;" trbidi="on">
<div style="text-align: center;">
<b>How to Customize Salesforce Survey</b></div>
<div style="text-align: center;">
<b><br /></b></div>
<div style="text-align: left;">
<b>Below are steps to enable Salesforce Survey and to use in LWC. Below Sample code will tell you how to Initiate a Salesforce Survey from Case Record. </b></div>
<div style="text-align: center;">
<b><br /></b></div>
<div style="text-align: left;">
Step-1: Enable Salesforce Survey in Salesforce.</div>
<div style="text-align: center;">
Setup-> quick find (Survey)->Survey Settings <b>Enable</b></div>
<div style="text-align: center;">
<b><br /></b></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEim2FKRPRGLDzRCmSZnnptUuUZHamde_n-jn6f7oCQRIBqq1eN_q9g54fpPeouVc1DN8QTSXyHBkW9vCFSOCGqA5ZOE9cQdnIqndVsK1QCOYKCYgxE1HJ5nARAbECDGcGKqfKOwbvXGPIko/s1600/Survey-1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="546" data-original-width="1335" height="162" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEim2FKRPRGLDzRCmSZnnptUuUZHamde_n-jn6f7oCQRIBqq1eN_q9g54fpPeouVc1DN8QTSXyHBkW9vCFSOCGqA5ZOE9cQdnIqndVsK1QCOYKCYgxE1HJ5nARAbECDGcGKqfKOwbvXGPIko/s400/Survey-1.JPG" width="400" /></a></div>
<div style="text-align: center;">
<b><br /></b></div>
<div style="text-align: left;">
Step-2: Enable Community and activate community and give guest user profile access of following Object: Survey(READ), Survey Invitation (READ), Survey Response(READ,CREATE, EDIT)</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
click on Community ->Builder ->Administration-> Pages-> Goto Force.com-> Click on Public Access Settings-> Edit the Profile and give Object Access</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgN3KHYT_yHh67ypGSE3yPzmOx8lF7YnsrzTgZDp71mqlZqzS77YkykfR4BufiUtIf50VzMB4LNmCuXo9x-Yi751SbTRkGYtoVGg4ixKEpHuMAT_gUf_uZHebar-eEBz5rjvzCv2JiOvpLf/s1600/Com-1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="244" data-original-width="1565" height="60" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgN3KHYT_yHh67ypGSE3yPzmOx8lF7YnsrzTgZDp71mqlZqzS77YkykfR4BufiUtIf50VzMB4LNmCuXo9x-Yi751SbTRkGYtoVGg4ixKEpHuMAT_gUf_uZHebar-eEBz5rjvzCv2JiOvpLf/s400/Com-1.JPG" width="400" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhghF2szLwcbrxJ_zmmGsgV0CISrxxschUQbWyOaQ5SrnnAxNe7c6HdN_44Jt7vZFbfLvHcJVj-z_9qCgKno9k3Nkl93DL3ctoElN4RracL_pAeyvaDl7tVoc-OgPEli3BG9LB2pFTzeWMv/s1600/com-2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="644" data-original-width="1576" height="161" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhghF2szLwcbrxJ_zmmGsgV0CISrxxschUQbWyOaQ5SrnnAxNe7c6HdN_44Jt7vZFbfLvHcJVj-z_9qCgKno9k3Nkl93DL3ctoElN4RracL_pAeyvaDl7tVoc-OgPEli3BG9LB2pFTzeWMv/s400/com-2.JPG" width="400" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglY_AGWvBISp9godo2QSmxgDssRiHfBClami3LgXL5XvMBMa3ies6HwiI1WLHB-ugkDLSGFja51cvSfIrjKZdTnzKIVIZHA535P05EJ0UZkuEtI2-gewffH7V3dIfeUQVGEGgGZFnu2sRO/s1600/com-3.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="587" data-original-width="1600" height="146" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEglY_AGWvBISp9godo2QSmxgDssRiHfBClami3LgXL5XvMBMa3ies6HwiI1WLHB-ugkDLSGFja51cvSfIrjKZdTnzKIVIZHA535P05EJ0UZkuEtI2-gewffH7V3dIfeUQVGEGgGZFnu2sRO/s400/com-3.JPG" width="400" /></a></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
Step-3: Data Model of Survey</div>
<div style="text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0tSExf9XxxaLwWWAkvmL8gDvGoB5UTytx2zOR85Qu0okM-Ac5bztAdPnR7R7g2zDYhIQ4lA0knSWn4ApvhuGpbV2AC3_jYiY-Ikt86el6O1YeiIBd1Waf8eU1LylizMUs-1BngHQqwP_4/s1600/C111.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="682" data-original-width="800" height="340" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh0tSExf9XxxaLwWWAkvmL8gDvGoB5UTytx2zOR85Qu0okM-Ac5bztAdPnR7R7g2zDYhIQ4lA0knSWn4ApvhuGpbV2AC3_jYiY-Ikt86el6O1YeiIBd1Waf8eU1LylizMUs-1BngHQqwP_4/s400/C111.png" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
Step-4: goto Survey Tab and create one Survey and make it active.</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaO8K_HGhHZ0h1MVuraBg-0MZ0WPkmnV7EoFNyE6DqEdbe-nGRhO6wNXAUlmgtKh5kYr6kkGeLY0_W5NEuzxHFuESYlrIEf660Dw6m1EmvRSE-p-z_yNCxFh7mlz_MpkmW8oFrPPcsoigl/s1600/cc112.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="272" data-original-width="1600" height="67" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjaO8K_HGhHZ0h1MVuraBg-0MZ0WPkmnV7EoFNyE6DqEdbe-nGRhO6wNXAUlmgtKh5kYr6kkGeLY0_W5NEuzxHFuESYlrIEf660Dw6m1EmvRSE-p-z_yNCxFh7mlz_MpkmW8oFrPPcsoigl/s400/cc112.JPG" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
Step-5: Create a Case(Lookup) on Survey Invitation Object.</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
Step-6: Create this Exception Class:</div>
<div style="text-align: left;">
<br /></div>
<div style="background-color: white; font-family: Consolas, "Courier New", monospace; font-size: 14px; line-height: 19px; white-space: pre;">
<div>
<span style="color: blue;">public</span> <span style="color: blue;">class</span> <span style="color: #267f99;">MyException</span> <span style="color: blue;">extends</span> <span style="color: #267f99;">Exception</span>{}</div>
<div>
<br /></div>
<div style="background-color: white; font-family: Consolas, "Courier New", monospace; font-size: 14px; line-height: 19px; white-space: pre;">
<br /></div>
Step-7: Create this LWC: sampleSurvey.html</div>
<div style="background-color: white; font-family: Consolas, "Courier New", monospace; font-size: 14px; line-height: 19px; white-space: pre;">
<br /></div>
<div style="background-color: white; font-family: Consolas, "Courier New", monospace; font-size: 14px; line-height: 19px; white-space: pre;">
<br /></div>
<div style="background-color: white; line-height: 19px;">
<div style="line-height: 19px;">
<div style="font-family: Consolas, "Courier New", monospace; font-size: 14px; white-space: pre;">
<span style="color: maroon;"><template></span></div>
<div style="font-family: Consolas, "Courier New", monospace; font-size: 14px; white-space: pre;">
<span style="color: maroon;"><lightning-button</span> <span style="color: red;">title</span>=<span style="color: blue;">"Click me"</span> <span style="color: red;">label</span>=<span style="color: blue;">"Click me"</span> <span style="color: red;">onclick</span>=<span style="color: blue;">{Opensurvey}</span><span style="color: maroon;">></lightning-button></span></div>
<div style="font-family: Consolas, "Courier New", monospace; font-size: 14px; white-space: pre;">
<span style="color: maroon;"></template></span></div>
<div style="font-family: Consolas, "Courier New", monospace; font-size: 14px; white-space: pre;">
<span style="color: maroon;"><br /></span></div>
<div>
<span style="color: maroon; font-family: Consolas, "Courier New", monospace; font-size: 14px; white-space: pre;">Step-8: Create JS: </span><span style="color: maroon; font-family: Consolas, Courier New, monospace;"><span style="font-size: 14px; white-space: pre;">sampleSurvey.js</span></span></div>
<div>
<span style="color: maroon; font-family: Consolas, Courier New, monospace;"><span style="font-size: 14px; white-space: pre;"><br /></span></span></div>
<div>
<div style="font-family: Consolas, "Courier New", monospace; font-size: 14px; line-height: 19px; white-space: pre;">
<div>
<span style="color: #af00db;">import</span> { <span style="color: #001080;">LightningElement</span>, <span style="color: #001080;">track</span>, <span style="color: #001080;">api</span>, <span style="color: #001080;">wire</span> } <span style="color: #af00db;">from</span> <span style="color: #a31515;">'lwc'</span>;</div>
<div>
<span style="color: #af00db;">import</span> <span style="color: #001080;">CreateSurveyInvWrpResult</span> <span style="color: #af00db;">from</span> <span style="color: #a31515;">'@salesforce/apex/SampleSurveyController.CreateSurveyInvWrpResult'</span>;</div>
<br /><div>
<span style="color: #af00db;">export</span> <span style="color: #af00db;">default</span> <span style="color: blue;">class</span> <span style="color: #267f99;">SampleSurvey</span> <span style="color: blue;">extends</span> <span style="color: #267f99;">LightningElement</span> {</div>
<div>
@<span style="color: #001080;">track</span> <span style="color: #001080;">weburl</span>;</div>
<div>
@<span style="color: #001080;">track</span> <span style="color: #001080;">error</span>;</div>
<div>
@<span style="color: #001080;">track</span> <span style="color: #001080;">msg</span>;</div>
<div>
@<span style="color: #001080;">api</span> <span style="color: #001080;">recordId</span>;</div>
<br /><div>
<span style="color: #795e26;">Opensurvey</span>() {</div>
<br /><div>
<span style="color: #795e26;">CreateSurveyInvWrpResult</span>({ <span style="color: #001080;">CaseId:</span> <span style="color: blue;">this</span>.<span style="color: #001080;">recordId</span> })</div>
<div>
.<span style="color: #795e26;">then</span>(<span style="color: #001080;">result</span> <span style="color: blue;">=></span> {</div>
<div>
<span style="color: blue;">this</span>.<span style="color: #001080;">msg</span> = <span style="color: #001080;">result</span>;</div>
<div>
<span style="color: blue;">var</span> <span style="color: #001080;">obj</span> = <span style="color: #267f99;">JSON</span>.<span style="color: #795e26;">parse</span>(<span style="color: #267f99;">JSON</span>.<span style="color: #795e26;">stringify</span>(<span style="color: blue;">this</span>.<span style="color: #001080;">msg</span>));</div>
<div>
<span style="color: #af00db;">if</span> (<span style="color: #001080;">obj</span>.<span style="color: #001080;">bError</span> == <span style="color: blue;">true</span>) {</div>
<div>
<span style="color: #795e26;">alert</span>(<span style="color: #001080;">obj</span>.<span style="color: #001080;">strMsg</span>);</div>
<div>
}</div>
<div>
<span style="color: #af00db;">if</span> (<span style="color: #001080;">obj</span>.<span style="color: #001080;">bError</span> == <span style="color: blue;">false</span>) {</div>
<div>
<span style="color: #001080;">window</span>.<span style="color: #795e26;">open</span>(<span style="color: #001080;">obj</span>.<span style="color: #001080;">strMsg</span>);</div>
<div>
}</div>
<div>
<span style="color: blue;">this</span>.<span style="color: #001080;">error</span> = <span style="color: blue;">undefined</span>;</div>
<div>
})</div>
<div>
.<span style="color: #795e26;">catch</span>(<span style="color: #001080;">error</span> <span style="color: blue;">=></span> {</div>
<div>
<span style="color: blue;">this</span>.<span style="color: #001080;">msg</span> = <span style="color: #001080;">error</span>;</div>
<div>
<span style="color: blue;">this</span>.<span style="color: #001080;">error</span> = <span style="color: blue;">undefined</span>;</div>
<div>
<span style="color: #795e26;">alert</span>(<span style="color: #a31515;">'In error'</span> + <span style="color: blue;">this</span>.<span style="color: #001080;">msg</span>);</div>
<div>
});</div>
<div>
}</div>
<br /><div>
}</div>
<div>
<br /></div>
<div>
Step-9: Create Apex class : <span style="color: #267f99;">SampleSurveyController.cls</span></div>
<div>
<span style="color: #267f99;"><br /></span></div>
<div>
<span style="color: #267f99;"><br /></span></div>
<div>
<div style="line-height: 19px;">
<div>
<span style="color: blue;">public</span> with sharing <span style="color: blue;">class</span> <span style="color: #267f99;">SampleSurveyController</span> {</div>
<div>
<span style="color: blue;">public</span> <span style="color: #795e26;">SampleSurveyController</span>() {</div>
<div>
}</div>
<div>
<span style="color: blue;">@AuraEnabled</span></div>
<div>
<span style="color: blue;">public</span> <span style="color: blue;">static</span> <span style="color: blue;">WrapperResult</span> <span style="color: #795e26;">CreateSurveyInvWrpResult</span>(<span style="color: blue;">String</span> <span style="color: #001080;">CaseId</span>) {</div>
<div>
<span style="color: blue;">string</span> <span style="color: #001080;">CaseNumber</span>;</div>
<div>
<span style="color: blue;">string</span> <span style="color: #001080;">communityId</span>;</div>
<div>
<span style="color: blue;">string</span> <span style="color: #001080;">SurveyId</span>;</div>
<div>
<span style="color: blue;">string</span> <span style="color: #001080;">ContactEmail</span>;</div>
<div>
<span style="color: blue;">string</span> <span style="color: #001080;">ContactId</span>;</div>
<div>
<span style="color: blue;">string</span> <span style="color: #001080;">surveyInvd</span>;</div>
<div>
<span style="color: blue;">string</span> <span style="color: #001080;">strSurveyURL</span>;</div>
<br /><div>
<span style="color: #001080;">communityId</span> = [<span style="color: #001080;">select</span> <span style="color: #001080;">Id</span> <span style="color: #001080;">from</span> <span style="color: #001080;">Network</span> <span style="color: #001080;">where</span> <span style="color: #001080;">Name</span> = <span style="color: #a31515;">'survey'</span>].<span style="color: #001080;">Id</span>;</div>
<div>
<span style="color: #001080;">SurveyId</span> = [<span style="color: #001080;">Select</span> <span style="color: #001080;">Id</span> <span style="color: #001080;">from</span> <span style="color: #001080;">Survey</span> <span style="color: #001080;">where</span> <span style="color: #001080;">Name</span> = <span style="color: #a31515;">'samplesurvey'</span>].<span style="color: #001080;">Id</span>;</div>
<div>
<span style="color: blue;">WrapperResult</span> <span style="color: #001080;">WrpResult</span> = <span style="color: #af00db;">new</span> <span style="color: blue;">WrapperResult</span>(<span style="color: blue;">null</span>, <span style="color: blue;">null</span>);</div>
<br /><br /><div>
<span style="color: #af00db;">try</span> {</div>
<div>
<span style="color: blue;">list</span><<span style="color: blue;">SurveyInvitation</span>> <span style="color: #001080;">lstSurveyInv</span> = [<span style="color: #001080;">select</span> <span style="color: #001080;">id</span> <span style="color: #001080;">from</span> <span style="color: #001080;">SurveyInvitation</span> <span style="color: #001080;">where</span> <span style="color: #001080;">Case__c</span> = :<span style="color: #001080;">CaseId</span>];</div>
<div>
<span style="color: #af00db;">if</span>(<span style="color: #001080;">lstSurveyInv</span>.<span style="color: #795e26;">size</span>() > <span style="color: #09885a;">0</span>) {</div>
<div>
<span style="color: #af00db;">throw</span> <span style="color: #af00db;">new</span> <span style="color: blue;">MyException</span>(<span style="color: #a31515;">'Survey for this case is already completed.'</span>);</div>
<div>
}</div>
<br /><div>
<span style="color: blue;">SurveyInvitation</span> <span style="color: #001080;">SInv</span> = <span style="color: #001080;">New</span> <span style="color: #795e26;">SurveyInvitation</span>();</div>
<div>
<span style="color: #001080;">Sinv</span>.<span style="color: #001080;">CommunityId</span> = <span style="color: #001080;">communityId</span>;</div>
<div>
<span style="color: #001080;">SInv</span>.<span style="color: #001080;">Name</span> = <span style="color: #001080;">caseId</span>;</div>
<div>
<span style="color: #001080;">SInv</span>.<span style="color: #001080;">Case__c</span> = <span style="color: #001080;">CaseId</span>;</div>
<div>
<span style="color: green;">//SInv.ParticipantId='0036g00000A04uWAAR';//userInfo.getUserId();</span></div>
<div>
<span style="color: #001080;">SInv</span>.<span style="color: #001080;">OptionsCollectAnonymousResponse</span> = <span style="color: blue;">true</span>;</div>
<div>
<span style="color: #001080;">SInv</span>.<span style="color: #001080;">OptionsAllowGuestUserResponse</span> = <span style="color: blue;">true</span>;</div>
<div>
<span style="color: #001080;">SInv</span>.<span style="color: #001080;">SurveyId</span> = <span style="color: #001080;">SurveyId</span>;</div>
<div>
<span style="color: #795e26;">insert</span> <span style="color: #001080;">SInv</span>;</div>
<br /><div>
<span style="color: blue;">SurveySubject</span> <span style="color: #001080;">SS</span> = <span style="color: #af00db;">new</span> <span style="color: blue;">SurveySubject</span>();</div>
<div>
<span style="color: #001080;">SS</span>.<span style="color: #001080;">SubjectId</span> = <span style="color: #001080;">CaseId</span>;</div>
<div>
<span style="color: #001080;">SS</span>.<span style="color: #001080;">ParentId</span> = <span style="color: #001080;">SInv</span>.<span style="color: #001080;">Id</span>;</div>
<div>
<span style="color: #001080;">SS</span>.<span style="color: #001080;">Name</span> = <span style="color: #001080;">CaseId</span>;</div>
<div>
<span style="color: #795e26;">insert</span> <span style="color: #001080;">SS</span>;</div>
<br /><div>
<span style="color: blue;">SurveyInvitation</span> <span style="color: #001080;">sInvRecord</span> = [<span style="color: #001080;">Select</span> <span style="color: #001080;">id</span>, <span style="color: #001080;">UUID</span> <span style="color: #001080;">from</span> <span style="color: #001080;">SurveyInvitation</span> <span style="color: #001080;">where</span> <span style="color: #001080;">id</span> = :<span style="color: #001080;">SInv</span>.<span style="color: #001080;">id</span>];</div>
<div>
<span style="color: blue;">string</span> <span style="color: #001080;">UniquieInviteId</span> = <span style="color: #001080;">sInvRecord</span>.<span style="color: #001080;">UUID</span>;</div>
<div>
<span style="color: green;">//https://surveyamul-developer-edition.na174.force.com/survey/survey/runtimeApp.app?invitationId=0Ki6g000000DqqM&surveyName=samplesurvey&UUID=da11d795-ff3d-486e-819a-ffc08056234a</span></div>
<br /><div>
<span style="color: #001080;">strSurveyURL</span>= <span style="color: #001080;">system</span>.<span style="color: #001080;">label</span>.<span style="color: #001080;">Survey_Base_URL</span> + <span style="color: #a31515;">''</span> + <span style="color: #001080;">SInvRecord</span>.<span style="color: #001080;">id</span> + <span style="color: #a31515;">'&surveyName=samplesurvey&UUID='</span> + <span style="color: #001080;">UniquieInviteId</span>;</div>
<div>
<span style="color: #001080;">system</span>.<span style="color: #795e26;">debug</span>(<span style="color: #a31515;">'survey url'</span> + <span style="color: #001080;">json</span>.<span style="color: #795e26;">serialize</span>(<span style="color: #001080;">strSurveyURL</span>));</div>
<div>
<span style="color: #001080;">WrpResult</span>= <span style="color: #af00db;">new</span> <span style="color: blue;">WrapperResult</span>(<span style="color: blue;">false</span>, <span style="color: #001080;">strSurveyURL</span>);</div>
<div>
<span style="color: #af00db;">return</span> <span style="color: #001080;">WrpResult</span>;</div>
<div>
} <span style="color: #af00db;">catch</span>(<span style="color: blue;">exception</span> <span style="color: #001080;">e</span>) {</div>
<div>
<span style="color: #267f99;">System</span>.<span style="color: #795e26;">debug</span>(<span style="color: #a31515;">'The following exception has occurred while inserting SurveySubject: '</span> + <span style="color: #001080;">e</span>.<span style="color: #795e26;">getMessage</span>());</div>
<div>
<span style="color: #001080;">strSurveyURL</span>= <span style="color: #001080;">e</span>.<span style="color: #795e26;">getMessage</span>();</div>
<div>
<span style="color: #001080;">WrpResult</span>= <span style="color: #af00db;">new</span> <span style="color: blue;">WrapperResult</span>(<span style="color: blue;">true</span>, <span style="color: #001080;">e</span>.<span style="color: #795e26;">getMessage</span>());</div>
<div>
<span style="color: #af00db;">return</span> <span style="color: #001080;">WrpResult</span>;</div>
<div>
} <span style="color: #af00db;">finally</span> {</div>
<div>
<span style="color: #af00db;">return</span> <span style="color: #001080;">WrpResult</span>;</div>
<div>
}</div>
<div>
}</div>
<br /><br /><br /><div>
<span style="color: blue;">public</span> <span style="color: blue;">class</span> <span style="color: #267f99;">WrapperResult</span> {</div>
<div>
<span style="color: blue;">@AuraEnabled</span> <span style="color: #001080;">public</span> <span style="color: #001080;">boolean</span> <span style="color: #001080;">bError</span> { <span style="color: #001080;">get</span>; <span style="color: #001080;">set</span>; }</div>
<div>
<span style="color: blue;">@AuraEnabled</span> <span style="color: #001080;">public</span> <span style="color: #001080;">string</span> <span style="color: #001080;">strMsg</span> { <span style="color: #001080;">get</span>; <span style="color: #001080;">set</span>; }</div>
<div>
<span style="color: blue;">public</span> <span style="color: #795e26;">WrapperResult</span>(<span style="color: blue;">boolean</span> <span style="color: #001080;">bErr</span>, <span style="color: blue;">string</span> <span style="color: #001080;">strMessage</span>) {</div>
<div>
<span style="color: blue;">this</span>.<span style="color: #001080;">bError</span> = <span style="color: #001080;">bErr</span>;</div>
<div>
<span style="color: blue;">this</span>.<span style="color: #001080;">strMsg</span> = <span style="color: #001080;">strMessage</span>;</div>
<div>
}</div>
<div>
}</div>
<br /><div>
}</div>
</div>
</div>
<div>
<br /></div>
</div>
</div>
<div style="font-family: Consolas, "Courier New", monospace; font-size: 14px; white-space: pre;">
Step-10: Enable the Above LWC page in Case Page Layout.</div>
<div style="font-family: Consolas, "Courier New", monospace; font-size: 14px; white-space: pre;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj18EAvfwuhgLZN5aVXTWC6tt9ND3mEBPhW9v59W5aW0PEIixyWpwK8Dx1WJdvlda_9T2la0x-IW6jE-16WmqDioWXc0gkgUSzCsrN0mDylt8ewbjqO4YigspdDRAZ_yQcEs4CH3nf2SpLr/s1600/case1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="217" data-original-width="1600" height="86" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj18EAvfwuhgLZN5aVXTWC6tt9ND3mEBPhW9v59W5aW0PEIixyWpwK8Dx1WJdvlda_9T2la0x-IW6jE-16WmqDioWXc0gkgUSzCsrN0mDylt8ewbjqO4YigspdDRAZ_yQcEs4CH3nf2SpLr/s640/case1.JPG" width="640" /></a></div>
<div style="font-family: Consolas, "Courier New", monospace; font-size: 14px; white-space: pre;">
<br /></div>
</div>
</div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
Step-11: On Click Me your Survey URL will open:</div>
<div style="text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitfI-QK7A_3pQ6tQiPFiYHefeVU4YBEzn3eKCxgVXvSFFPaeIBnE81J_e6Qz9oRM8SxX9u3J9oa4SWtVymImIhVLTrEcoXml5jnQE6wAUQrNk5Qhf8is80zjS7ijoLxm65gGpTU2cZeYHO/s1600/surveyURL.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="553" data-original-width="1600" height="220" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEitfI-QK7A_3pQ6tQiPFiYHefeVU4YBEzn3eKCxgVXvSFFPaeIBnE81J_e6Qz9oRM8SxX9u3J9oa4SWtVymImIhVLTrEcoXml5jnQE6wAUQrNk5Qhf8is80zjS7ijoLxm65gGpTU2cZeYHO/s640/surveyURL.JPG" width="640" /></a></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
<div style="text-align: left;">
<br /></div>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com2Sector MU, Greater Noida, Uttar Pradesh 201310, India28.4791012 77.56050928.465144199999997 77.540339 28.4930582 77.580678999999989tag:blogger.com,1999:blog-4112120715957309558.post-13593855226166656192020-01-07T04:07:00.002-08:002020-01-07T04:07:09.785-08:00Salesforce CPQ Product Rule Vs Price Rule<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="color: #00194c; font-family: Calibri; font-size: 44.0pt; font-weight: bold; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-bidi-theme-font: major-bidi; mso-color-index: 4; mso-fareast-theme-font: major-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #00194C; mso-style-textfill-fill-themecolor: accent1; mso-style-textfill-type: solid;">CPQ: Product Rule </span><span style="color: #00194c; font-family: Calibri; font-size: 44.0pt; font-weight: bold; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-bidi-theme-font: major-bidi; mso-color-index: 4; mso-fareast-theme-font: major-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #00194C; mso-style-textfill-fill-themecolor: accent1; mso-style-textfill-type: solid;">Vs</span><span style="color: #00194c; font-family: Calibri; font-size: 44.0pt; font-weight: bold; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-bidi-theme-font: major-bidi; mso-color-index: 4; mso-fareast-theme-font: major-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #00194C; mso-style-textfill-fill-themecolor: accent1; mso-style-textfill-type: solid;">
Price Rule</span><br />
<span style="color: #00194c; font-family: Calibri; font-size: 44.0pt; font-weight: bold; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-bidi-theme-font: major-bidi; mso-color-index: 4; mso-fareast-theme-font: major-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #00194C; mso-style-textfill-fill-themecolor: accent1; mso-style-textfill-type: solid;"><br /></span>
<span style="color: #00194c; font-family: Calibri; font-size: 44.0pt; font-weight: bold; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-bidi-theme-font: major-bidi; mso-color-index: 4; mso-fareast-theme-font: major-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #00194C; mso-style-textfill-fill-themecolor: accent1; mso-style-textfill-type: solid;">Product Rule:</span><br />
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="font-size: 18.0pt;">1.</span><span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;">Hide/Show Product</span></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="font-size: 18.0pt;">2.</span><span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;">Add or remove Product</span></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="font-size: 18.0pt;">3.</span><span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;">Validation Rule</span></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="font-size: 18.0pt;">4.</span><span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;">Alert Message</span></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="font-size: 18.0pt;">5.</span><span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;">Dynamic Product Filter</span></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;"><br /></span></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="color: #00194c; font-family: Calibri; font-size: 58.6667px; font-weight: 700; text-indent: 0px;">Price Rule:</span></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="font-size: 18.0pt;">1.</span><span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;">Override the Quantity</span></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="font-size: 18.0pt;">2.</span><span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;">Override the Price</span></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="font-size: 18.0pt;">3.</span><span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;">Calculate and use for Rollup field value
on Quote.</span></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="font-size: 18.0pt;">4.</span><span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;">Used for Discounting</span></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYtrEOQWhCEwl9PQSKMY6ue4hMUooV88WapGyy14EUrEekOakmUBoKgWDw9ORr1EAtHyzXsTqDlrHhP3341k0FLkzc9I0ocnY-27VYAGrkCUpPdYCVk39RZzXwtRMtQtUoTsw0B1GkaLJU/s1600/Capture.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="568" data-original-width="1378" height="260" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhYtrEOQWhCEwl9PQSKMY6ue4hMUooV88WapGyy14EUrEekOakmUBoKgWDw9ORr1EAtHyzXsTqDlrHhP3341k0FLkzc9I0ocnY-27VYAGrkCUpPdYCVk39RZzXwtRMtQtUoTsw0B1GkaLJU/s640/Capture.PNG" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
See Below Link for more Detail:</div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://drive.google.com/file/d/1MQyVmykfDdoFZjfFtiApdGJ3IJKvHKgz/view?usp=sharing">Click Here</a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://drive.google.com/file/d/1MQyVmykfDdoFZjfFtiApdGJ3IJKvHKgz/view?usp=sharing">https://drive.google.com/file/d/1MQyVmykfDdoFZjfFtiApdGJ3IJKvHKgz/view?usp=sharing</a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div style="direction: ltr; margin-bottom: 0pt; margin-left: 0.38in; margin-top: 0pt; text-indent: -0.38in; unicode-bidi: embed; word-break: normal;">
<span style="color: #3f3f3f; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 1; mso-effects-shadow-align: topleft; mso-effects-shadow-alpha: 40.0%; mso-effects-shadow-angledirection: 2700000; mso-effects-shadow-anglekx: 0; mso-effects-shadow-angleky: 0; mso-effects-shadow-color: #3F3F3F; mso-effects-shadow-dpidistance: 1.5pt; mso-effects-shadow-dpiradius: 3.0pt; mso-effects-shadow-pctsx: 100.0%; mso-effects-shadow-pctsy: 100.0%; mso-effects-shadow-themecolor: dark1; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #3F3F3F; mso-style-textfill-fill-themecolor: text1; mso-style-textfill-type: solid; mso-style-textoutline-type: none; text-shadow: auto;"><br /></span></div>
<div style="direction: ltr; language: en-IN; margin-bottom: 0pt; margin-left: .38in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: center; text-indent: -.38in; unicode-bidi: embed; word-break: normal;">
<br /></div>
<div style="direction: ltr; language: en-IN; margin-bottom: 0pt; margin-left: .38in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: center; text-indent: -.38in; unicode-bidi: embed; word-break: normal;">
<br /></div>
<div style="direction: ltr; language: en-IN; margin-bottom: 0pt; margin-left: .38in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: center; text-indent: -.38in; unicode-bidi: embed; word-break: normal;">
<br /></div>
</div>
<div style="direction: ltr; language: en-IN; margin-bottom: 0pt; margin-left: .38in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: center; text-indent: -.38in; unicode-bidi: embed; word-break: normal;">
<span style="font-size: 18.0pt;"><br /></span></div>
<div style="direction: ltr; language: en-IN; margin-bottom: 0pt; margin-left: .38in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: center; text-indent: -.38in; unicode-bidi: embed; word-break: normal;">
<span style="font-size: 18.0pt;"><br /></span></div>
<div style="direction: ltr; language: en-IN; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: center; unicode-bidi: embed; word-break: normal;">
<span style="color: white; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 14; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: white; mso-style-textfill-fill-themecolor: light1; mso-style-textfill-type: solid;">Product Rule:</span></div>
<br />
<div style="direction: ltr; language: en-IN; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: center; unicode-bidi: embed; word-break: normal;">
<span style="color: white; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 14; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: white; mso-style-textfill-fill-themecolor: light1; mso-style-textfill-type: solid;">Validation, alert, selection &
Filter</span></div>
<div style="direction: ltr; language: en-IN; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: center; unicode-bidi: embed; word-break: normal;">
<span style="color: white; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 14; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: white; mso-style-textfill-fill-themecolor: light1; mso-style-textfill-type: solid;">Product Rule:</span></div>
<br />
<div style="direction: ltr; language: en-IN; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: center; unicode-bidi: embed; word-break: normal;">
<span style="color: white; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 14; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: white; mso-style-textfill-fill-themecolor: light1; mso-style-textfill-type: solid;">Validation, alert, selection &
Filter</span></div>
<br />
<div style="direction: ltr; language: en-IN; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: center; unicode-bidi: embed; word-break: normal;">
<span style="color: white; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 14; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: white; mso-style-textfill-fill-themecolor: light1; mso-style-textfill-type: solid;">Product Rule:</span></div>
<div style="direction: ltr; language: en-IN; margin-bottom: 0pt; margin-left: 0in; margin-top: 0pt; mso-line-break-override: none; punctuation-wrap: hanging; text-align: center; unicode-bidi: embed; word-break: normal;">
<span style="color: white; font-family: Calibri; font-size: 18.0pt; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-bidi-theme-font: minor-bidi; mso-color-index: 14; mso-fareast-theme-font: minor-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: white; mso-style-textfill-fill-themecolor: light1; mso-style-textfill-type: solid;">Validation, alert, selection &
Filter</span></div>
<span style="color: #00194c; font-family: Calibri; font-size: 44.0pt; font-weight: bold; language: en-US; mso-ascii-font-family: Calibri; mso-ascii-theme-font: major-latin; mso-bidi-theme-font: major-bidi; mso-color-index: 4; mso-fareast-theme-font: major-fareast; mso-font-kerning: 12.0pt; mso-style-textfill-fill-alpha: 100.0%; mso-style-textfill-fill-color: #00194C; mso-style-textfill-fill-themecolor: accent1; mso-style-textfill-type: solid;"></span></div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com3tag:blogger.com,1999:blog-4112120715957309558.post-73692439723471888652019-06-01T02:46:00.000-07:002019-06-01T02:46:10.900-07:00lightning:pillContainer and dialog(openModel or openPopup)<div dir="ltr" style="text-align: left;" trbidi="on">
<div dir="ltr" style="text-align: left;" trbidi="on">
<b><span style="font-size: large;">lightning:pillContainer and dialog(openModel or openPopup)</span></b><br />
<b><span style="font-size: large;"><br /></span></b>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW3BxPNikkfBx7z6O-wA8WrHLAlrnKDYKUE0IRlzEvtpLD8V0e-iVX11Iu2AqTsNPGkRLjxV7Cy5Unw67MmvsJ5vIhyWVB3yzDrGDEgqjXpoYkyM5t_nDduKd_Qc0NoZP6N7qBEidv1lIS/s1600/pillscontainer.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="484" data-original-width="1600" height="192" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiW3BxPNikkfBx7z6O-wA8WrHLAlrnKDYKUE0IRlzEvtpLD8V0e-iVX11Iu2AqTsNPGkRLjxV7Cy5Unw67MmvsJ5vIhyWVB3yzDrGDEgqjXpoYkyM5t_nDduKd_Qc0NoZP6N7qBEidv1lIS/s640/pillscontainer.PNG" width="640" /></a></div>
<b><span style="font-size: large;"><br /></span></b>
<br />
<br /></div>
<b>AddAttendees.cmp
</b><br />
<br />
<aura:component controller="AddAttendeesController" implements="force:appHostable,flexipage:availableForAllPageTypes,flexipage:availableForRecordHome,force:hasRecordId,force:lightningQuickAction" access="global" ><br />
<aura:attribute name="items" type="List" default="[<br />
{<br />
type: 'avatar',<br />
href: '',<br />
id: 'XX001',<br />
label: 'Avatar Pill',<br />
src: '/docs/component-library/app/images/examples/avatar2.jpg',<br />
fallbackIconName: 'standard:user',<br />
variant: 'circle',<br />
alternativeText: 'User avatar',<br />
},<br />
{<br />
type: 'icon',<br />
href: '',<br />
id: 'XX002',<br />
label: 'Icon Pill',<br />
iconName: 'standard:account',<br />
alternativeText: 'Account',<br />
},<br />
]"/><br />
<aura:attribute name="isOpen" type="boolean" default="false"/><br />
<aura:attribute name="issearching" type="Boolean" default="false"/><br />
<aura:attribute name="AttendeesList" type="List" /><br />
<aura:attribute name="Message" type="string" /><br />
<div class="slds-container_center slds-theme_shade"><br />
<lightning:card footer="Card Footer" title="Add Attendees"><br />
<aura:set attribute="actions"><br />
<lightning:button label="Add Attendees" onclick="{! c.openModel }" variant="brand"/><br />
</aura:set><br />
<p class="slds-p-horizontal_small"><br />
Attendees List<br />
<lightning:pillContainer items="{!v.items}" onitemremove="{!c.onRemovePill}"></lightning:pillContainer><br />
</p><br />
</lightning:card><br />
<aura:if isTrue="{!v.isOpen}"><br />
<br />
<!--###### MODAL BOX Start######--><br />
<section role="dialog" tabindex="-1" aria-labelledby="modal-heading-01" aria-modal="true" aria-describedby="modal-content-id-1" class="slds-modal slds-fade-in-open"><br />
<div class="slds-modal__container"><br />
<!-- ###### MODAL BOX HEADER Start ######--><br />
<header class="slds-modal__header"><br />
<lightning:buttonIcon iconName="utility:close"<br />
onclick="{! c.closeModel }"<br />
alternativeText="close"<br />
variant="bare-inverse"<br />
class="slds-modal__close"/><br />
<h2 id="modal-heading-01" class="slds-text-heading_medium slds-hyphenate">Search Attendees</h2><br />
</header><br />
<!--###### MODAL BOX BODY Part Start######--><br />
<div class="slds-modal__content slds-p-around_medium" id="modal-content-id-1"><br />
<p><div onkeyup="{! c.handleKeyUp }"><br />
<lightning:input<br />
aura:id="enter-search"<br />
name="enter-search"<br />
label="Search when user hits the 'enter' key"<br />
isLoading="{! v.issearching }"<br />
type="search"<br />
/><br />
</div><br />
</p><br />
<div class="c-container"><br />
<aura:iteration items="{!v.AttendeesList}" var="item" indexVar="count"><br />
<br />
<lightning:card title="{!item.RecordName}" iconName="{!item.IconName}"><br />
<aura:set attribute="actions"><br />
<lightning:button title="{!item.IconName}" name="{!item.RecordName}" onclick="{! c.AddRecordItem}" value="{!item.RecordId}" label="Add" iconName="action:new" iconPosition="left" variant="brand" /><br />
</aura:set><br />
</lightning:card><br />
<br />
<!--<lightning:card title="Hello" iconName="standard:avatar"><br />
<aura:set attribute="actions"><br />
<lightning:button name="name1" value="value1" title="title1" label="Add" aura:Id="myId" iconName="action:new" iconPosition="left" variant="brand" /><br />
</aura:set><br />
</lightning:card><br />
<br />
<lightning:card title="Hello" iconName="standard:groups"><br />
<aura:set attribute="actions"><br />
<lightning:button label="Add" iconName="action:new" iconPosition="left" variant="brand" /><br />
</aura:set><br />
</lightning:card>--><br />
</aura:iteration><br />
</div><br />
</div><br />
<!--###### MODAL BOX FOOTER Part Start ######--><br />
<footer class="slds-modal__footer"><br />
<lightning:button variant="neutral"<br />
label="Close"<br />
title="Close"<br />
onclick="{! c.closeModel }"/><br />
<br />
</footer><br />
</div><br />
</section><br />
<div class="slds-backdrop slds-backdrop_open"></div><br />
<!--###### MODAL BOX Part END Here ######--><br />
<br />
</aura:if><br />
<div class="row"><br />
<lightning:textarea aura:id="TextMessage" class="slds-container_center slds-theme_shade slds-border_top slds-border_bottom slds-border_left slds-border_right" label="Message" placeholder="Message" variant="standard"></lightning:textarea><br />
</div><br />
<br></br><br />
<lightning:button class="slds-m-bottom_small slds-theme_brand slds-size_1-of-1" variant="brand" label="Save" onclick="{!c.SaveEvent}"></lightning:button><br />
</div><br />
</aura:component><br />
<br />
=======================================================================<br />
<br />
<br />
<b>AddAttendees.js</b><br />
<br />
<br />
<br />
({<br />
openModel: function(component, event, helper) {<br />
// for Display Model,set the "isOpen" attribute to "true"<br />
component.set("v.isOpen", true);<br />
},<br />
<br />
closeModel: function(component, event, helper) {<br />
// for Hide/Close Model,set the "isOpen" attribute to "Fasle" <br />
component.set("v.isOpen", false);<br />
},<br />
<br />
likenClose: function(component, event, helper) {<br />
// Display alert message on the click on the "Like and Close" button from Model Footer<br />
// and set set the "isOpen" attribute to "False for close the model Box.<br />
alert('thanks for like Us :)');<br />
component.set("v.isOpen", false);<br />
<br />
<br />
<br />
},<br />
<br />
onRemovePill:function(component,event,helper){<br />
var pillId = event.getParam('item').id;<br />
var myJSON = JSON.stringify(pillId);<br />
var pills = component.get('v.items');<br />
//alert(pillId);<br />
for (var i = 0; i < pills.length; i++) {<br />
<br />
if (pillId === pills[i].id) {<br />
pills.splice(i, 1);<br />
break;<br />
}<br />
}<br />
<br />
component.set('v.items', pills);<br />
},<br />
AddRecordItem: function(component,event,helper){<br />
//items<br />
//event.<br />
var btn=event.getSource();<br />
var recordname=btn.get('v.name');<br />
var recordId=btn.get('v.value');<br />
var varIconName=btn.get('v.title');<br />
<br />
//alert(recordname);<br />
var pills = component.get('v.items');<br />
<br />
var AlreadyAdded='';<br />
for (var i = 0; i < pills.length; i++) {<br />
if (recordId === pills[i].id) {<br />
AlreadyAdded='true';<br />
break;<br />
}<br />
}<br />
<br />
if(AlreadyAdded==''){<br />
pills.push({<br />
type: 'icon',<br />
id: recordId,<br />
label: recordname,<br />
iconName: varIconName<br />
});<br />
<br />
component.set('v.items', pills);<br />
<br />
var toastEvent = $A.get("e.force:showToast");<br />
toastEvent.setParams({<br />
title : 'Success Message',<br />
message:'Item added successfully.',<br />
messageTemplate: 'Item added successfully.',<br />
duration:' 5000',<br />
key: 'info_alt',<br />
type: 'success',<br />
mode: 'pester'<br />
});<br />
toastEvent.fire();<br />
}else if(AlreadyAdded=='true'){<br />
var toastEvent = $A.get("e.force:showToast");<br />
toastEvent.setParams({<br />
title : 'Error Message',<br />
message:'Item already added.',<br />
messageTemplate: 'Item already added.',<br />
duration:' 1000',<br />
key: 'info_alt',<br />
type: 'error',<br />
mode: 'pester'<br />
});<br />
toastEvent.fire();<br />
} <br />
<br />
<br />
},<br />
SaveEvent: function(component,event,helper){<br />
<br />
var varMessage=component.find('TextMessage').get('v.value');<br />
var action= component.get("c.SaveRecord");<br />
var pills = component.get('v.items');<br />
<br />
action.setParams({<br />
'strMessage':varMessage<br />
});<br />
<br />
action.setCallback(this,function(response){<br />
var state = response.getState();<br />
if (state === "SUCCESS") {<br />
var storeResponse = response.getReturnValue();<br />
var varIsSuccess=storeResponse.bIsSuccess;<br />
var varMessage=storeResponse.Message;<br />
var varRecordId=storeResponse.RecordId;<br />
if(varIsSuccess==true){<br />
helper.helperToastMessage(varMessage,'success');<br />
}else{<br />
helper.helperToastMessage(varMessage,'error');<br />
}<br />
}else if (state === "INCOMPLETE") {<br />
alert('Response is Incompleted');<br />
}else if (state === "ERROR") {<br />
var errors = response.getError();<br />
if (errors) {<br />
if (errors[0] && errors[0].message) {<br />
alert("Error message: " +<br />
errors[0].message);<br />
}<br />
} else {<br />
alert("Unknown error");<br />
}<br />
}<br />
});<br />
$A.enqueueAction(action);<br />
},<br />
handleKeyUp: function (component, event) {<br />
var isEnterKey = event.keyCode === 13;<br />
var queryTerm = component.find('enter-search').get('v.value');<br />
if (isEnterKey) {<br />
<br />
component.set('v.issearching', true);<br />
var action = component.get("c.fetchData");<br />
action.setParams({<br />
'searchKeyWord':queryTerm<br />
});<br />
action.setCallback(this, function(response) {<br />
<br />
var state = response.getState();<br />
<br />
if (state === "SUCCESS") {<br />
var storeResponse = response.getReturnValue();<br />
<br />
// if storeResponse size is 0 ,display no record found message on screen.<br />
if (storeResponse.length == 0) {<br />
component.set("v.Message", true);<br />
} else {<br />
component.set("v.Message", false);<br />
}<br />
<br />
<br />
<br />
// set searchResult list with return value from server.<br />
component.set("v.AttendeesList", storeResponse);<br />
<br />
<br />
}else if (state === "INCOMPLETE") {<br />
alert('Response is Incompleted');<br />
}else if (state === "ERROR") {<br />
var errors = response.getError();<br />
if (errors) {<br />
if (errors[0] && errors[0].message) {<br />
alert("Error message: " +<br />
errors[0].message);<br />
}<br />
} else {<br />
alert("Unknown error");<br />
}<br />
}<br />
});<br />
$A.enqueueAction(action);<br />
setTimeout(function() {<br />
//alert('Searched for "' + queryTerm + '"!');<br />
component.set('v.issearching', false);<br />
}, 1000);<br />
<br />
}<br />
}<br />
})<br />
<br />
<br />
========================================================================<br />
<br />
<b>AddAttendeesHelper.js</b><br />
<br />
<br />
<br />
({<br />
<span style="white-space: pre;"> </span>helperToastMessage : function(strmessage,strtype) {<br />
<span style="white-space: pre;"> </span>var toastEvent = $A.get("e.force:showToast");<br />
toastEvent.setParams({<br />
title : 'Error Message',<br />
message:strmessage,<br />
messageTemplate: 'Item already added.',<br />
duration:' 1000',<br />
key: 'info_alt',<br />
type: strtype,<br />
mode: 'pester'<br />
});<br />
toastEvent.fire();<br />
<span style="white-space: pre;"> </span>}<br />
})<br />
<br />
<br />
<br />
========================================================================<br />
<b>Apex class: AddAttendeesController </b><br />
<br />
public class AddAttendeesController {<br />
<br />
@AuraEnabled<br />
public static List <WrapperResult> fetchData(String searchKeyWord) {<br />
<br />
List <WrapperResult> LstWrapperResult=new List <WrapperResult>();<br />
string groupType='Regular';<br />
String newSearchText = '%'+searchKeyWord+'%';<br />
<br />
<br />
string SOQLUser='Select id, Name from User';<br />
SOQLUser=SOQLUser +' WHERE NAME LIKE:newSearchText';<br />
SOQLUser=SOQLUser +' LIMIT 5' ;<br />
<br />
string SOQLContact='Select id, Name from Contact';<br />
SOQLContact=SOQLContact +' WHERE NAME LIKE:newSearchText';<br />
SOQLContact=SOQLContact +' LIMIT 5' ;<br />
<br />
string SOQLPublicGroup='SELECT Id, Name FROM Group where Type=:groupType';<br />
SOQLPublicGroup=SOQLPublicGroup +' AND NAME LIKE:newSearchText';<br />
SOQLPublicGroup=SOQLPublicGroup +' LIMIT 5' ;<br />
<br />
<br />
<br />
List<sObject> sobjListUser = Database.query(SOQLUser);<br />
List<sObject> sobjListContact = Database.query(SOQLContact);<br />
List<sObject> sobjListGroup = Database.query(SOQLPublicGroup);<br />
<br />
for(Object objUser:sobjListUser){<br />
WrapperResult WrpObj=new WrapperResult();<br />
User usr=(User)objUser;<br />
<br />
WrpObj.RecordId=usr.id;<br />
WrpObj.RecordName=usr.Name;<br />
WrpObj.IconName='standard:avatar';<br />
<br />
LstWrapperResult.add(WrpObj);<br />
}<br />
for(Object objContact:sobjListContact){<br />
WrapperResult WrpObj=new WrapperResult();<br />
<br />
Contact cont=(Contact)objContact;<br />
<br />
WrpObj.RecordId=cont.id;<br />
WrpObj.RecordName=cont.Name;<br />
WrpObj.IconName='standard:contact';<br />
LstWrapperResult.add(WrpObj);<br />
}<br />
for(Object ObjGroup:sobjListGroup){<br />
WrapperResult WrpObj=new WrapperResult();<br />
<br />
Group grp=(Group)ObjGroup;<br />
<br />
WrpObj.RecordId=grp.id;<br />
WrpObj.RecordName=grp.Name;<br />
WrpObj.IconName='standard:groups';<br />
LstWrapperResult.add(WrpObj);<br />
}<br />
return LstWrapperResult;<br />
<br />
}<br />
<br />
@AuraEnabled<br />
public static WrapperDataSaveResult SaveRecord(string strMessage){<br />
WrapperDataSaveResult SaveResult=new WrapperDataSaveResult();<br />
try{<br />
<br />
Event eve=new Event();<br />
eve.StartDateTime=system.now();<br />
eve.EndDateTime=system.now();<br />
eve.Subject='TEST 1223';<br />
eve.Description=strMessage;<br />
eve.WhatId='0010o00002MsOOSAA3';<br />
<br />
insert eve;<br />
SaveResult.RecordId=eve.Id;<br />
<br />
SaveResult.bIsSuccess=true;<br />
SaveResult.Message='Record created successfully.';<br />
<br />
}catch(exception ex){<br />
SaveResult.bIsSuccess=false;<br />
SaveResult.Message=ex.getMessage();<br />
}<br />
<br />
return SaveResult;<br />
<br />
<br />
}<br />
<br />
<br />
public class WrapperDataSaveResult{<br />
@AuraEnabled<br />
public string RecordId{get;set;}<br />
@AuraEnabled<br />
public string Message{get;set;}<br />
@AuraEnabled<br />
public boolean bIsSuccess{get;set;}<br />
}<br />
<br />
Public Class WrapperResult{<br />
<br />
@AuraEnabled<br />
public string RecordId{get;set;}<br />
@AuraEnabled<br />
public string RecordName{get;set;}<br />
@AuraEnabled<br />
public string IconName{get;set;}<br />
<br />
<br />
}<br />
}<br />
<br />
<br /></div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com9tag:blogger.com,1999:blog-4112120715957309558.post-53827701369800313092018-12-11T21:18:00.000-08:002018-12-11T21:18:52.923-08:00Lightning component button Create Child Record using Standard Layout<div dir="ltr" style="text-align: left;" trbidi="on">
The purpose of this blog is to share you detail how to load Create child Record using Standard Layout using Lightning Action Button.<br />
<br />
<br />
Here are the Relationship with Objects.<br />
<br />
We are using following 3 Objects:<br />
1. Account<br />
2. Project<br />
3. Invoice<br />
<br />
Invoice has following relationship fields:<br />
<br />
Account --Master -Detail<br />
Project --Lookup<br />
<br />
Project has following relationship fields:<br />
Account--Lookup<br />
<br />
So User can create Invoice Records from Project's Invoice Related list so while clicking on New Invoice button Project Lookup is filled but Account lookup is not autofilled. So in order to Create Invoice from Project and that new Invoice Record Layout must be defaulted with Project, Account and other detal from Project Record we will be create one Lightning Action button Project Object with following Lightning component. so without creating any server side apex controller we can use lightning data service to Read the records and then we can invoke the CreateRecord lightning enque action in JS. rest Salesforce will take care of it.<br />
<br />
Please create following component.<br />
<br />
CreateInvoice.cmp<br />
<br />
<aura:component implements="force:lightningQuickActionWithoutHeader,force:hasRecordId" access="global" ><br />
<span style="white-space: pre;"> </span><aura:attribute name="project" type="Project_Custom__c"/><br />
<aura:attribute name="projectObj" type="Project_Custom__c"/><br />
<aura:attribute name="errorMessage" type="String"/><br />
<force:recordData aura:id="accountRecordLoader"<br />
recordId="{!v.recordId}"<br />
fields="Customer__c,CurrencyIsoCode"<br />
targetRecord="{!v.project}"<br />
targetFields="{!v.projectObj}"<br />
targetError="{!v.errorMessage}"<br />
recordUpdated="{!c.doInit}"<br />
/> <br />
</aura:component><br />
<br />
<br />
CreaInvoiceController.js<br />
<br />
({<br />
<span style="white-space: pre;"> </span>doInit : function(component, event, helper) {<br />
$A.get("e.force:closeQuickAction").fire();<br />
var eventParams = event.getParams();<br />
if(eventParams.changeType === "LOADED") {<br />
//console.log("account loaded:::::" + JSON.stringify(component.get("v.project")));<br />
<br />
var createRecordEvent = $A.get("e.force:createRecord");<br />
createRecordEvent.setParams({<br />
"entityApiName": "Invoice__c",<br />
"defaultFieldValues":{<br />
"Account__c" : component.get("v.projectObj.Customer__c"),<br />
"CurrencyIsoCode" : component.get("v.projectObj.CurrencyIsoCode"),<br />
"Project__c" : component.get("v.recordId")<br />
}<br />
});<br />
createRecordEvent.fire();<br />
<br />
} else if(eventParams.changeType === "REMOVED") {<br />
// record is deleted and removed from the cache<br />
} else if(eventParams.changeType === "ERROR") {<br />
// there’s an error while loading, saving or deleting the record<br />
}<br />
<span style="white-space: pre;"> </span>}<br />
})<br />
<br />
Create Lightning Action button on Project and select the component that you above has defined. and enable this new button on the Project Page Layout. Thanks<br />
<br />
<br /></div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com9tag:blogger.com,1999:blog-4112120715957309558.post-36942428535866627962018-12-07T01:03:00.001-08:002018-12-07T01:03:45.787-08:00generate Access Token using Salesforce Connected App in SOAP UI Tool<div dir="ltr" style="text-align: left;" trbidi="on">
Grab following detail from Salesforce connected app<div>
<br /></div>
<div>
<div>
<b>Consumer Key</b><span style="white-space: pre;"> </span></div>
<div>
3MVG959Nd8JMmavT2IGqAtf_hIU.FqAPV7AEZHprq45mu1osf5eKlf.I7sUzaw3uafpK9CnpWQFr.vRWGqnkc</div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<b>Consumer Secret</b><span style="white-space: pre;"> </span></div>
<div>
3083125027275927680</div>
</div>
<div>
<br /></div>
<div>
<b>UserName:</b></div>
<div>
UX@ux.com</div>
<div>
<br /></div>
<div>
<b>password: </b></div>
<div>
PX00</div>
<div>
<br /></div>
<div>
Assuming login Access token for Sandbox:</div>
<div>
<br /></div>
<div>
<b>Prepare following URL:</b></div>
<div>
<br /></div>
<div>
<div>
<br /></div>
<div>
https://test.salesforce.com/services/oauth2/token?grant_type=password&client_id=3asdasdG959Nd8JMmavT2IGqAtf_hIU.FqAPV7AEZHprq45mu1osf5eKlf.vRWGqnkc&client_secret=3083125027275927680&username=UX@ux.compassword=PX00</div>
</div>
<div>
<br /></div>
<div>
<br /></div>
<div>
Open your SOAP UI tool and Paste this URL in REST Project , choose POST method and hit run buton:</div>
<div>
<br /></div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbNlkBur1Iw-E_QB-DL7Z_HAGqJ2GYKltEGpGMzFY7G9wfguu8CnatJ4YMM66f8qIGxOxEscYSsRIAdCVYfvZ4-04bJpy2elYAS2NL2EMnSGwruIx1Sl_rTRpfvIt8Y-03kfSIvgXN8BCT/s1600/Capture.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="791" data-original-width="1600" height="316" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhbNlkBur1Iw-E_QB-DL7Z_HAGqJ2GYKltEGpGMzFY7G9wfguu8CnatJ4YMM66f8qIGxOxEscYSsRIAdCVYfvZ4-04bJpy2elYAS2NL2EMnSGwruIx1Sl_rTRpfvIt8Y-03kfSIvgXN8BCT/s640/Capture.PNG" width="640" /></a></div>
<div>
<br /></div>
<div>
<br /></div>
<div>
<br /></div>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com1tag:blogger.com,1999:blog-4112120715957309558.post-259049550804255822018-11-17T02:11:00.003-08:002018-11-17T02:11:58.372-08:00Custom Template Salesforce CPQ. Visualforce CPQ custom Quote Template<div dir="ltr" style="text-align: left;" trbidi="on">
<div dir="ltr" style="text-align: left;" trbidi="on">
<b>Custom Template Salesforce CPQ: </b>Visualforce CPQ custom Quote Template<br />
<div>
<br /></div>
<div>
In Salesforce while defining quote Template Admin can choose following type of template content:</div>
<div>
<br /></div>
<div>
<table role="presentation" style="background-color: #f8f8f8; color: black; font-family: Arial, Helvetica, sans-serif; font-size: 12px;"><tbody>
<tr><td style="margin: 0px; vertical-align: top;"><label for="j_id0:j_id28:j_id29:j_id35:0"> HTML</label></td></tr>
<tr><td style="margin: 0px; vertical-align: top;"><input id="j_id0:j_id28:j_id29:j_id35:1" name="j_id0:j_id28:j_id29:j_id35" style="padding-top: 0px;" type="radio" value="Line Items" /><label for="j_id0:j_id28:j_id29:j_id35:1"> Line Items</label></td></tr>
<tr><td style="margin: 0px; vertical-align: top;"><input id="j_id0:j_id28:j_id29:j_id35:2" name="j_id0:j_id28:j_id29:j_id35" style="padding-top: 0px;" type="radio" value="Quote Terms" /><label for="j_id0:j_id28:j_id29:j_id35:2"> Quote Terms</label></td></tr>
<tr><td style="margin: 0px; vertical-align: top;"><input id="j_id0:j_id28:j_id29:j_id35:3" name="j_id0:j_id28:j_id29:j_id35" style="padding-top: 0px;" type="radio" value="Custom" /><label for="j_id0:j_id28:j_id29:j_id35:3"> Custom</label></td></tr>
<tr><td style="margin: 0px; vertical-align: top;"><input id="j_id0:j_id28:j_id29:j_id35:4" name="j_id0:j_id28:j_id29:j_id35" style="padding-top: 0px;" type="radio" value="0156F00000FkGF8QAN" /><label for="j_id0:j_id28:j_id29:j_id35:4"> Template Bottom</label></td></tr>
<tr><td style="margin: 0px; vertical-align: top;"><input id="j_id0:j_id28:j_id29:j_id35:5" name="j_id0:j_id28:j_id29:j_id35" style="padding-top: 0px;" type="radio" value="0156F00000FkGF9QAN" /><label for="j_id0:j_id28:j_id29:j_id35:5"> Template Top</label></td></tr>
</tbody></table>
</div>
<div>
<br /></div>
<div>
In this Blog, we will learn and see how this custom Quote Template content will help in order to generate custom table, graphics in the same quote pdf doc file.</div>
<div>
<br /></div>
<div>
Definition from Salesforce CPQ( see Salesforce guide Book. Taken Reference from https://help.salesforce.com/articleView?id=cpq_template_content.htm&type=5)</div>
<div>
<br /></div>
<div>
<br />
<br />
<dt style="background-color: white; border: 0px; box-sizing: border-box; color: #333333; font-family: "Salesforce Sans", Arial, sans-serif; font-size: 0.8125rem; font-weight: bold; line-height: 1.42857; margin: 0px; padding: 0.25rem 0px 0px; vertical-align: baseline;"> Custom</dt>
<dd style="background-color: white; border: 0px; box-sizing: border-box; color: #333333; font-family: "Salesforce Sans", Arial, sans-serif; font-size: 0.8125rem; line-height: 1.42857; margin: 0px; padding: 0px 0px 0.5rem 1.5rem; vertical-align: baseline;">Select this option to use a Visualforce component in the Custom Source field that you want to show in this section of your quote template. Enter the full URL for the Visualforce page that generates this content, using the following format (page name must end with the “c__” prefix): https://c.<instance>.force.com/apex/c__OptivTemplateSectionComponent. The Visualforce component must be compatible with XML (specifically XSL-FO) to work with Salesforce QTC document output.</dd><dd style="background-color: white; border: 0px; box-sizing: border-box; color: #333333; font-family: "Salesforce Sans", Arial, sans-serif; font-size: 0.8125rem; line-height: 1.42857; margin: 0px; padding: 0px 0px 0.5rem 1.5rem; vertical-align: baseline;"><br /></dd><dd style="background-color: white; border: 0px; box-sizing: border-box; color: #333333; font-family: "Salesforce Sans", Arial, sans-serif; font-size: 0.8125rem; line-height: 1.42857; margin: 0px; padding: 0px 0px 0.5rem 1.5rem; vertical-align: baseline;">XSL-FO is just like HTML encoded language and we need undersatand how this language will help us in desining and defining custom tamplate. For more XSL-FO you can dig into following URL:</dd><dd style="background-color: white; border: 0px; box-sizing: border-box; color: #333333; font-family: "Salesforce Sans", Arial, sans-serif; font-size: 0.8125rem; line-height: 1.42857; margin: 0px; padding: 0px 0px 0.5rem 1.5rem; vertical-align: baseline;"><br /></dd><dd style="border: 0px; box-sizing: border-box; line-height: 1.42857; margin: 0px; padding: 0px 0px 0.5rem 1.5rem; vertical-align: baseline;"><ol style="background-color: white; text-align: left;">
<li>https://www.webucator.com/tutorial/learn-xsl-fo/tables.cfm</li>
<li>http://w3schools.sinsixx.com/xslfo/obj_table-header.asp.htm</li>
<li>https://www.antennahouse.com/support/v2qa/QA-fo.html#QA2003082203</li>
</ol>
<div style="background-color: white;">
In this CPQ Custom template Blog page i would take one example and will see how this XSL-FO Santax we can use in Visualforce Page to generate pdf document: This pdf will show custom table as well as image while generating Quote pdf.</div>
<div>
<div style="background-color: white;">
<br /></div>
<div style="background-color: white;">
Sample VF Page:</div>
<div style="background-color: white;">
<br /></div>
<div style="background-color: white;">
This will display one Image on Top Right with Two Table</div>
<div style="background-color: white;">
<br /></div>
<pre class="codeBlock" style="font-family: "Courier New", Courier, mono; font-size: 12px;"><span style="background-color: #f8f8f8;"><apex:page showHeader="false" sidebar="false" cache="false" contentType="text/xml" controller="CustomQuoteLineCtrl" action="{!init}">
<block-container>
<block text-align="right">
<external-graphic src="</span><span style="background-color: yellow;">https://cpqsep-dev-ed--c.ap4.content.force.com/servlet/servlet.ImageServer?id=0156F00000G41n0&oid=00D6F000002W0zo&lastMod=1541150013000</span><span style="background-color: #f8f8f8;">" content-height="scale-to-fit" height="1.5in" content-width="2.00in" scaling="non-uniform"/>
</block>
<table border-bottom-style="solid" table-layout="fixed" width="100%" margin-top="10pt">
<table-header text-align="center" background-color="silver">
<table-cell display-align="center" padding="5" border="1pt solid #800000" number-columns-spanned="2">
<block font-weight="bold" text-align="left"><inline color="#FFFFFF">ANNUAL SERVICES</inline></block>
</table-cell>
</table-header>
<table-body>
<table-row border="1pt solid #800000">
<table-cell display-align="center" padding="5" border="1pt solid #800000" background-color="#800000" >
<block font-weight="bold" text-align="left"><inline color="#FFFFFF">TierName Column Heading </inline></block>
</table-cell>
<table-cell display-align="center" padding="5" border="1pt solid #800000" background-color="#800000">
<block font-weight="bold" text-align="left"><inline color="#FFFFFF">TierPrice Column Heading </inline></block>
</table-cell>
</table-row>
<table-row border="1pt solid #800000">
<table-cell display-align="center" padding="5" border="1pt solid #800000">
<block text-align="left">TierName Column Heading </block>
</table-cell>
<table-cell display-align="center" padding="5" border="1pt solid #800000">
<block text-align="left">TierPrice Column Heading </block>
</table-cell>
</table-row>
<table-row border="1pt solid #800000">
<table-cell display-align="center" padding="5" border="1pt solid #800000">
<block text-align="left">TierName Column Heading </block>
</table-cell>
<table-cell display-align="center" padding="5" border="1pt solid #800000">
<block text-align="left">TierPrice Column Heading </block>
</table-cell>
</table-row>
<table-row border="1pt solid #800000" >
<table-cell display-align="center" padding="5" border="1pt solid #800000" number-columns-spanned="2">
<block text-align="left">TierName Column Heading </block>
</table-cell>
</table-row>
</table-body>
</table>
</block-container>
<block-container margin-top="40pt">
<table border-bottom-style="solid" table-layout="fixed" width="100%" >
<table-header text-align="center" background-color="silver">
<table-cell display-align="center" padding="5" border="1pt solid #800000" number-columns-spanned="2">
<block font-weight="bold" text-align="left"><inline color="#FFFFFF">PROFESSIONAL SERVICES</inline></block>
</table-cell>
</table-header>
<table-body>
<table-row border="1pt solid #800000">
<table-cell display-align="center" padding="5" border="1pt solid #800000" background-color="#800000" >
<block font-weight="bold" text-align="left"><inline color="#FFFFFF">TierName Column Heading </inline></block>
</table-cell>
<table-cell display-align="center" padding="5" border="1pt solid #800000" background-color="#800000">
<block font-weight="bold" text-align="left"><inline color="#FFFFFF">TierPrice Column Heading </inline></block>
</table-cell>
</table-row>
<table-row border="1pt solid #800000">
<table-cell display-align="center" padding="5" border="1pt solid #800000">
<block text-align="left">TierName Column Heading </block>
</table-cell>
<table-cell display-align="center" padding="5" border="1pt solid #800000">
<block text-align="left">TierPrice Column Heading </block>
</table-cell>
</table-row>
<table-row border="1pt solid #800000">
<table-cell display-align="center" padding="5" border="1pt solid #800000">
<block text-align="left">TierName Column Heading </block>
</table-cell>
<table-cell display-align="center" padding="5" border="1pt solid #800000">
<block text-align="left">TierPrice Column Heading </block>
</table-cell>
</table-row>
<table-row border="1pt solid #800000" >
<table-cell display-align="center" padding="5" border="1pt solid #800000" number-columns-spanned="2">
<block text-align="left">TierName Column Heading </block>
</table-cell>
</table-row>
</table-body>
</table>
</block-container>
</apex:page>
</span></pre>
</div>
<div style="background-color: white;">
<br />
Note: Plase save your images in document, and then copy the address of document Image and replace it with source Image Address. src.<br />
<br />
<pre class="codeBlock" style="font-family: "Courier New", Courier, mono; font-size: 12px;"><span style="background-color: #f8f8f8;"><external-graphic src="</span><span style="background-color: yellow;">https://cpqsep-dev-ed--c.ap4.content.force.com/servlet/servlet.ImageServer?id=0156F00000G41n0&oid=00D6F000002W0zo&lastMod=1541150013000</span><span style="background-color: #f8f8f8;">" content-height="scale-to-fit" height="1.5in" content-width="2.00in" scaling="non-uniform"/>
</span></pre>
<div>
<span style="background-color: #f8f8f8;"><br /></span></div>
<span style="color: #333333; font-family: "salesforce sans", arial, sans-serif; font-size: 13px;">Here is the Sample output:</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiu3bIajrg9K4jNCrt7jubqolyq8pbsIUbuKjYzGlCzeuuBAEEVFRG4DjKT9JxhD6h16WmTjypuXgvNDAcOGwLTuAMSVISeW_6LO4hrDzaFdd51fVaJMrvbaal_6YndndMR3x-3Z_3GLYU-/s1600/Capture2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="702" data-original-width="736" height="305" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiu3bIajrg9K4jNCrt7jubqolyq8pbsIUbuKjYzGlCzeuuBAEEVFRG4DjKT9JxhD6h16WmTjypuXgvNDAcOGwLTuAMSVISeW_6LO4hrDzaFdd51fVaJMrvbaal_6YndndMR3x-3Z_3GLYU-/s320/Capture2.PNG" width="320" /></a></div>
<br />
For more help click here and subscribe my Youtube channel:<br />
<br />
<a href="https://www.youtube.com/channel/UCrlef7SIYLIS7FKdtPBqDUw?view_as=subscriber" target="_blank">Salesforce CPQ AMUL BARANWAL</a><br />
<br /></div>
</dd><dd style="background-color: white; border: 0px; box-sizing: border-box; color: #333333; font-family: "Salesforce Sans", Arial, sans-serif; font-size: 0.8125rem; line-height: 1.42857; margin: 0px; padding: 0px 0px 0.5rem 1.5rem; vertical-align: baseline;"><br />
<br />
<br />
<br /></dd></div>
</div>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com16tag:blogger.com,1999:blog-4112120715957309558.post-9159989721211000752018-04-18T02:14:00.002-07:002018-04-18T02:15:11.498-07:00Salesforce Spring ’18 Release Exam<div dir="ltr" style="text-align: left;" trbidi="on">
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRAtHqyhxNT38IB9XvZFi1NKJCxs22cSSNopV11ne9_qmhXrtUZ1rmZvQ0fHie6CYwSIPaD4KQxVC6T3O9vAGDIqw2K4mQIepI5VXCSGOoPteOm54T1lvEV50wHUNeDqXFfox58TcxihIx/s1600/Capture.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="285" data-original-width="792" height="115" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjRAtHqyhxNT38IB9XvZFi1NKJCxs22cSSNopV11ne9_qmhXrtUZ1rmZvQ0fHie6CYwSIPaD4KQxVC6T3O9vAGDIqw2K4mQIepI5VXCSGOoPteOm54T1lvEV50wHUNeDqXFfox58TcxihIx/s320/Capture.GIF" width="320" /></a></div>
<div align="center">
<table border="0" cellpadding="0" cellspacing="0" class="MsoNormalTable">
<tbody>
<tr>
<td style="padding: 0in 0in 0in 0in;"><div align="center" class="MsoNormal" style="line-height: normal; margin-bottom: 3.75pt; margin-left: 0in; margin-right: 0in; margin-top: 7.5pt; mso-outline-level: 2; text-align: center;">
<b><span style="font-family: "verdana" , sans-serif; font-size: 13.0pt;"><br /></span></b></div>
<div align="center" class="MsoNormal" style="line-height: normal; margin-bottom: 3.75pt; margin-left: 0in; margin-right: 0in; margin-top: 7.5pt; mso-outline-level: 2; text-align: center;">
<b><span style="font-family: "verdana" , sans-serif; font-size: 13.0pt;"><br /></span></b></div>
<div align="center" class="MsoNormal" style="line-height: normal; margin-bottom: 3.75pt; margin-left: 0in; margin-right: 0in; margin-top: 7.5pt; mso-outline-level: 2; text-align: center;">
<b><span style="font-family: "verdana" , sans-serif; font-size: 13.0pt;">Salesforce Certified Administrator - Spring '18 Release Exam<o:p></o:p></span></b></div>
</td>
</tr>
</tbody></table>
</div>
<div class="MsoNormal" style="background: white; line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 10pt;">Time Remaining: 27:42<o:p></o:p></span></div>
<div style="border-bottom: solid windowtext 1.0pt; border: none; mso-border-bottom-alt: solid windowtext .75pt; mso-element: para-border-div; padding: 0in 0in 1.0pt 0in;">
<div align="center" class="MsoNormal" style="border: none; line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; mso-border-bottom-alt: solid windowtext .75pt; mso-padding-alt: 0in 0in 1.0pt 0in; padding: 0in; text-align: center;">
<span style="display: none; font-family: "arial" , sans-serif; font-size: 8.0pt;">Top of Form<o:p></o:p></span></div>
</div>
<br />
<table border="0" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="mso-cellspacing: 0in; mso-padding-alt: 0in 7.5pt 0in 7.5pt; mso-yfti-tbllook: 1184; width: 940px;">
<tbody>
<tr style="height: 300.0pt; mso-yfti-firstrow: yes; mso-yfti-irow: 0; mso-yfti-lastrow: yes;">
<td style="height: 300.0pt; padding: 0in 0in 0in 0in;" valign="top"><table border="0" cellpadding="0" cellspacing="3" class="MsoNormalTable">
<tbody>
<tr>
<td colspan="2" style="padding: 2.25pt 7.5pt 0in 0in;" valign="top"><div align="center" class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; text-align: center;">
<b><span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">1 of 6.<o:p></o:p></span></b></div>
</td>
<td colspan="2" style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">What are the path steps based upon when creating a campaign path?<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td colspan="2" style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
</td>
<td colspan="2" style="padding: 2.25pt 0in 0in 0in;"><table border="0" cellpadding="0" cellspacing="3" class="MsoNormalTable">
<tbody>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">A.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969043" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Picklist field values<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">B.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969045" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Business processes<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">C.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969047" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Lead record types<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">D.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969049" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Campaign responses<o:p></o:p></span></div>
</td>
</tr>
</tbody></table>
</td>
</tr>
<tr>
<td style="padding: 0in 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="reviewItem" type="checkbox" /><o:p></o:p></span></div>
</td>
<td colspan="2" style="padding: 0in 0in 2.25pt 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 7.5pt;">Mark this item for later review.<o:p></o:p></span></div>
</td>
</tr>
<!--[if !supportMisalignedColumns]-->
<tr height="0">
<td style="border: none;" width="85"></td>
<td style="border: none;" width="3"></td>
<td style="border: none;" width="352"><br />
<table border="0" cellpadding="0" cellspacing="3" class="MsoNormalTable">
<tbody>
<tr>
<td style="padding: 2.25pt 7.5pt 0in 0in;" valign="top"><div align="center" class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; text-align: center;">
<b><span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">2 of 6.<o:p></o:p></span></b></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Which three functions are available with chart enhancements in Lightning Experience?<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Choose 3 answers<o:p></o:p></span></div>
</td>
</tr>
<tr style="height: 100.95pt; mso-yfti-irow: 2; mso-yfti-lastrow: yes;">
<td style="height: 100.95pt; padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
</td>
<td style="height: 100.95pt; padding: 2.25pt 0in 0in 0in;"><table border="0" cellpadding="0" cellspacing="3" class="MsoNormalTable">
<tbody>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">A.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="checkbox" value="2969071" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Set chart legend position.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">B.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="checkbox" value="2969067" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="background: yellow; font-family: "verdana" , sans-serif; font-size: 12.0pt;">Show total in the center of donut charts.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">C.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="checkbox" value="2969069" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="background: yellow; font-family: "verdana" , sans-serif; font-size: 12.0pt;">Combine small groups into "Others" on any chart.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">D.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="checkbox" value="2969075" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Display up to 2,000 groups in line and bar charts in dashboards.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">E.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="checkbox" value="2969073" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="background: yellow; font-family: "verdana" , sans-serif; font-size: 12.0pt;">Download chart images from dashboard components.<o:p></o:p></span></div>
</td>
</tr>
</tbody></table>
</td>
</tr>
</tbody></table>
<div class="MsoNormal" style="background: white; line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
<table border="0" cellpadding="0" cellspacing="0" class="MsoNormalTable">
<tbody>
<tr>
<td style="padding: 0in 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="reviewItem" type="checkbox" /><o:p></o:p></span></div>
</td>
<td style="padding: 0in 0in 2.25pt 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 7.5pt;">Mark this item for later review.<o:p></o:p></span></div>
</td>
</tr>
</tbody></table>
<table border="0" cellpadding="0" cellspacing="3" class="MsoNormalTable" style="background: white; mso-cellspacing: 1.5pt; mso-padding-alt: 0in 0in 0in 6.0pt; mso-yfti-tbllook: 1184;">
<tbody>
<tr>
<td style="padding: 2.25pt 7.5pt 0in 0in;" valign="top"><div align="center" class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; text-align: center;">
<b><span style="font-family: "verdana" , sans-serif; font-size: 10.5pt;">3 of 6.<o:p></o:p></span></b></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 10.5pt;">Which three features are available with Salesforce Files?<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 10.5pt;">Choose 3 answers<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><table border="0" cellpadding="0" cellspacing="3" class="MsoNormalTable">
<tbody>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">A.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="checkbox" value="2969041" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Automatically upload .pdf files from an email attachment.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">B.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="checkbox" value="2969033" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Access files with the view list of assets feature.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">C.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="checkbox" value="2969039" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Create Asset Files for Unauthenticated users.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">D.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="checkbox" value="2969037" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Allow Standard Users to create and delete content assets.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">E.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="checkbox" value="2969035" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Integrate Quip to chat and collaborate on Files.<o:p></o:p></span></div>
</td>
</tr>
</tbody></table>
</td>
</tr>
</tbody></table>
<div class="MsoNormal" style="background: white; line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="color: red; font-family: "verdana" , sans-serif; font-size: 10.5pt;">You must select exactly 3 responses.<o:p></o:p></span></div>
<table border="0" cellpadding="0" cellspacing="3" class="MsoNormalTable">
<tbody>
<tr>
<td style="padding: 2.25pt 7.5pt 0in 0in;" valign="top"><div align="center" class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; text-align: center;">
<b><span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">4 of 6.<o:p></o:p></span></b></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">The Administrator for Universal Containers is asked to provide the Sales teams with Opportunity Splits so that the opportunity owner has better visibility into their share of the deal. Which funtionality is available with Opportunity Splits?<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><table border="0" cellpadding="0" cellspacing="3" class="MsoNormalTable">
<tbody>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">A.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969051" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Create a new Opportunity Split directly from the account record.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">B.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969055" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Send Opportunity Split notifications automatically.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">C.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969057" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Add or adjust splits from the Opportunity Splits related list.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">D.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969053" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Assign a dedicated opportunity owner to the split.<o:p></o:p></span></div>
</td>
</tr>
</tbody></table>
</td>
</tr>
</tbody></table>
<div class="MsoNormal" style="background: white; line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
<table border="0" cellpadding="0" cellspacing="0" class="MsoNormalTable">
<tbody>
<tr>
<td style="padding: 0in 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="reviewItem" type="checkbox" /><o:p></o:p></span></div>
</td>
<td style="padding: 0in 0in 2.25pt 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 7.5pt;">Mark this item for later review.<o:p></o:p></span></div>
</td>
</tr>
</tbody></table>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="background: white; line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 10pt;">Time Remaining: 17:04<o:p></o:p></span></div>
<div style="border-bottom: solid windowtext 1.0pt; border: none; mso-border-bottom-alt: solid windowtext .75pt; mso-element: para-border-div; padding: 0in 0in 1.0pt 0in;">
<div align="center" class="MsoNormal" style="border: none; line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; mso-border-bottom-alt: solid windowtext .75pt; mso-padding-alt: 0in 0in 1.0pt 0in; padding: 0in; text-align: center;">
<span style="display: none; font-family: "arial" , sans-serif; font-size: 8.0pt;">Top of Form<o:p></o:p></span></div>
</div>
<table border="0" cellpadding="0" cellspacing="0" class="MsoNormalTable" style="mso-cellspacing: 0in; mso-padding-alt: 0in 7.5pt 0in 7.5pt; mso-yfti-tbllook: 1184; width: 940px;">
<tbody>
<tr style="height: 300.0pt; mso-yfti-firstrow: yes; mso-yfti-irow: 0; mso-yfti-lastrow: yes;">
<td style="height: 300.0pt; padding: 0in 0in 0in 0in;" valign="top"><table border="0" cellpadding="0" cellspacing="3" class="MsoNormalTable">
<tbody>
<tr>
<td colspan="2" style="padding: 2.25pt 7.5pt 0in 0in;" valign="top"><div align="center" class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in; text-align: center;">
<b><span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">5 of 6.<o:p></o:p></span></b></div>
</td>
<td colspan="2" style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">What must the administrator consider when enabling Themes?<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td colspan="2" style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<br /></div>
</td>
<td colspan="2" style="padding: 2.25pt 0in 0in 0in;"><table border="0" cellpadding="0" cellspacing="3" class="MsoNormalTable">
<tbody>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">A.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969063" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Any user can select a theme and avatar based on their role.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">B.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969059" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Only one theme can be active at a time and is applied to the entire org.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">C.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969065" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">Chatter External Users also see the custom theme.<o:p></o:p></span></div>
</td>
</tr>
<tr>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">D.<o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;" valign="top"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="response" type="radio" value="2969061" /><o:p></o:p></span></div>
</td>
<td style="padding: 2.25pt 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;">There is no built-in theme if a custom theme is not created.<o:p></o:p></span></div>
</td>
</tr>
</tbody></table>
</td>
</tr>
<tr>
<td style="padding: 0in 0in 0in 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 12.0pt;"><input name="reviewItem" type="checkbox" /><o:p></o:p></span></div>
</td>
<td colspan="2" style="padding: 0in 0in 2.25pt 0in;"><div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 7.5pt;">Mark this item for later review.<o:p></o:p></span></div>
<div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 7.5pt;"><br /></span></div>
<div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 7.5pt;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR_jQbtLHlNK2SNEEBj4BFVvN9SEO2kzuq5j9XV0Y8pZHb6kXAM6Gjp3RkjdbStGHKVWl9T1eZzTosBva6WPgwF8dlr_7Ra6q2zPoHGLnvwPM0yS6-m5fPs5lcVZzyB14MGgM7C4A2kOo2/s1600/Capture.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="285" data-original-width="792" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgR_jQbtLHlNK2SNEEBj4BFVvN9SEO2kzuq5j9XV0Y8pZHb6kXAM6Gjp3RkjdbStGHKVWl9T1eZzTosBva6WPgwF8dlr_7Ra6q2zPoHGLnvwPM0yS6-m5fPs5lcVZzyB14MGgM7C4A2kOo2/s1600/Capture.GIF" /></a></div>
<div class="MsoNormal" style="line-height: normal; margin-bottom: .0001pt; margin-bottom: 0in;">
<span style="font-family: "verdana" , sans-serif; font-size: 7.5pt;"><br /></span></div>
</td>
</tr>
<!--[if !supportMisalignedColumns]-->
<tr height="0">
<td style="border: none;" width="85"></td>
<td style="border: none;" width="3"></td>
<td style="border: none;" width="395"></td>
<td style="border: none;" width="396"></td>
</tr>
<!--[endif]-->
</tbody></table>
</td>
</tr>
</tbody></table>
</td>
<td style="border: none;" width="353"></td>
</tr>
<!--[endif]-->
</tbody></table>
</td>
</tr>
</tbody></table>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com5tag:blogger.com,1999:blog-4112120715957309558.post-77270116294825028842018-03-27T01:59:00.001-07:002018-03-27T02:10:46.214-07:00How to use Surveyforce for Custom Object(Any Object)<div dir="ltr" style="text-align: left;" trbidi="on">
<div dir="ltr" style="text-align: left;" trbidi="on">
<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<div style="text-align: center;">
<b>Title: How to use Surveyforce for Custom Object(Any Object)</b>
<br />
<b><br /></b>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguMp0gyG8FevglEqvRccDrIQSaBotaCrRyKJNeFxkqsOoxTglOTYFUAIiqV0Vn6quYYejqL5sQkAouEA6cvstozah80xZrjOprB8-Da-VzVwl2rjGzoY6nksSlTCSPhyphenhyphen3B1j4nk5g5ZY38/s1600/Survey.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="874" data-original-width="834" height="200" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguMp0gyG8FevglEqvRccDrIQSaBotaCrRyKJNeFxkqsOoxTglOTYFUAIiqV0Vn6quYYejqL5sQkAouEA6cvstozah80xZrjOprB8-Da-VzVwl2rjGzoY6nksSlTCSPhyphenhyphen3B1j4nk5g5ZY38/s200/Survey.GIF" width="190" /></a></div>
<b><br /></b></div>
<b><br /></b> <b>Requirement(Use Case): </b>How to send a Survey Link to customer/consumer once the order is delivered to the Customer. So one manufacturing company( <b>THE INDIA AMUL TEA</b>) would like to capture the feedback from the customer corresponding to the recent order which is being completed by the Manufacturing company with help of some short of Questionnaire. <b>THE INDIA AMUL TEA </b>company is already using salesforce to capture the Primary Order as well as Secondary Order from the Customer. So <b>THE INDIA AMUL TEA </b>company would like to use some native application to gather feedback from Customer.<br />
<br />
<b>Solution: </b>In this Solution, let's Assume <b>THE INDIA AMUL TEA</b> is using Order using Custom Object Name Called Order__c.<br />
<br />
and Order__c object following fields are there<br />
<div style="text-align: left;">
</div>
<ul style="text-align: left;">
<li>Order amount----Currency Field</li>
<li>Order Primary Person Email Id---Email Field</li>
<li>Order Number--Auto Number field</li>
<li>Order Stage--Picklist(Draft, Accepted, Shipped, Delivered)</li>
</ul>
<b>Step 1. </b>Install surveyforce app in your Org. https://appexchange.salesforce.com/appxListingDetail?listingId=a0N30000003I2gDEAS<br />
<br />
<h1 style="background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; line-height: 1.25; margin-bottom: 16px; margin-left: 0px; margin-right: 0px; margin-top: 0px !important; padding-bottom: 0.3em;">
<span style="font-size: small;">Post Install Guide - Public Facing Surveys</span></h1>
<ol>
<li>
<h2 style="background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;">
<a aria-hidden="true" class="anchor" href="https://github.com/ForceDotComLabs/survey-force/wiki#general-surveys" id="user-content-general-surveys" style="background-color: transparent; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;"> <span style="font-size: small;"><svg aria-hidden="true" class="octicon octicon-link" height="16" version="1.1" viewbox="0 0 16 16" width="16"> <path d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z" fill-rule="evenodd"></path> </svg> </span></a><span style="font-size: small;"> General Surveys</span></h2>
<ol style="background-color: white; box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; font-size: 16px; margin-bottom: 16px; margin-top: 0px; padding-left: 2em;">
<li style="box-sizing: border-box;">Create a Force.com Site. <a href="http://wiki.developerforce.com/page/An_Introduction_to_Force.com_Sites" rel="nofollow" style="background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;">Details, including "Creating a Force.com Site"</a></li>
<li style="box-sizing: border-box; margin-top: 0.25em;">Modify your Site's <a href="https://login.salesforce.com/help/doc/en/sites_public_access_settings.htm" rel="nofollow" style="background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;">"Public Access Settings"</a></li>
<li style="box-sizing: border-box; margin-top: 0.25em;">Check "Read" access to "Survey" and "Survey Question" object.</li>
<li style="box-sizing: border-box; margin-top: 0.25em;">Check "Read" and "Create" access for "Surveys Taken" and "Survey Question Responses"</li>
<li style="box-sizing: border-box; margin-top: 0.25em;">Add the Visualforce page, "Take Survey" to the list of enabled Visualforce pages.</li>
</ol>
<h2 style="background-color: white; border-bottom: 1px solid rgb(234, 236, 239); box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; line-height: 1.25; margin-bottom: 16px; margin-top: 24px; padding-bottom: 0.3em;">
<a aria-hidden="true" class="anchor" href="https://github.com/ForceDotComLabs/survey-force/wiki#survey-connecting-to-contact-or-case-records" id="user-content-survey-connecting-to-contact-or-case-records" style="background-color: transparent; box-sizing: border-box; color: #0366d6; float: left; line-height: 1; margin-left: -20px; padding-right: 4px; text-decoration-line: none;"> <span style="font-size: small;"><svg aria-hidden="true" class="octicon octicon-link" height="16" version="1.1" viewbox="0 0 16 16" width="16"> <path d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z" fill-rule="evenodd"></path> </svg> </span></a><span style="font-size: small;"> Survey Connecting to Contact or Case Records</span></h2>
<ol style="background-color: white; box-sizing: border-box; color: #24292e; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; font-size: 16px; margin-bottom: 0px !important; margin-top: 0px; padding-left: 2em;">
<li style="box-sizing: border-box;">Complete "General Surveys" steps.</li>
<li style="box-sizing: border-box; margin-top: 0.25em;">Check "Read" access for "Contact" object.</li>
<li style="box-sizing: border-box; margin-top: 0.25em;">Check "Read" access for "Case" object.</li>
<li style="box-sizing: border-box; margin-top: 0.25em;">Private OWD? <a href="http://boards.developerforce.com/t5/Force-com-Labs-Development-and/Survey-Force-Question/m-p/407457#M1197" rel="nofollow" style="background-color: transparent; box-sizing: border-box; color: #0366d6; text-decoration-line: none;">Check this thread.</a></li>
</ol>
</li>
</ol>
<b>Note: This guide will help you how to use Surveyforce "Surveyforce User Guide"</b><br />
<b>https://appexchange.salesforce.com/servlet/servlet.FileDownload?file=00P3A00000VpvvJUAR</b><br />
<b><br /></b>
<br />
<br />
<span style="background-color: white; color: #24292e; font-size: 16px;"><b>Step 2: </b>Now create a relationship with Case object and Order Object. Create a Lookup field on Case object of Order Object.</span><br />
<span style="background-color: white; color: #24292e; font-size: 16px;">and also Create Formula Field on Case</span><br />
<span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDC0LjbadBCJIZDQvAHla-ACwgvMalFJWMzkK588A0gFsIUPTzsadts6rAdwjW787epOZXJSRNwvAlqXkVv-NDCMovEkUXhhrw1l2ZDVEm1TisR1eAAAxHQSuqFXWgRDXLNCVCpz2iRV25/s1600/field-on-Case.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="100" data-original-width="1499" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiDC0LjbadBCJIZDQvAHla-ACwgvMalFJWMzkK588A0gFsIUPTzsadts6rAdwjW787epOZXJSRNwvAlqXkVv-NDCMovEkUXhhrw1l2ZDVEm1TisR1eAAAxHQSuqFXWgRDXLNCVCpz2iRV25/s1600/field-on-Case.GIF" /></a></div>
<span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI7oQ_RIREql6WN0uo18_d9-mEP7u99_vm4-53mnGArngWHbVdofvhIb8h9rlnbihFFIU5zzlLKNc33o2uqR6yb0zBQNOKOFede-SsUnmV-95td0VAQBei9nsc4w4_t8JTxQyVOYoZjbjS/s1600/Order+Number.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="72" data-original-width="1600" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgI7oQ_RIREql6WN0uo18_d9-mEP7u99_vm4-53mnGArngWHbVdofvhIb8h9rlnbihFFIU5zzlLKNc33o2uqR6yb0zBQNOKOFede-SsUnmV-95td0VAQBei9nsc4w4_t8JTxQyVOYoZjbjS/s1600/Order+Number.GIF" /></a></div>
<span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="background-color: white; color: #24292e; font-size: 16px;"><b>Note:</b> In SurveyForce app Contact and Case object is default field to capture the survey input on contact or Case or both Object but not for the Custom object.</span><br />
<br />
<br />
<b style="color: #24292e; font-size: 16px;">Step 3: </b><span style="background-color: white; color: #24292e; font-size: 16px;">Now we need to show Order Number on survey form so that consumer can see for which order number he is submitting the survey. after Adding a field on Case Object now we need to do some changes in the Apex Class component and VF Page. This Apex class is the Part of Survey force App.</span><br />
<br />
<br />
<b>Apex class Name: <span style="background-color: #f0f0f0; font-family: "arial"; font-size: 12px;">ViewSurveyController </span></b><br />
<b><br /></b>
</div>
This is the Apex Class change see line no. 17 add this line and line no 99 to 102<br />
<span style="background-color: yellow;">public string PrimaryOrderNo<span style="white-space: pre;"> </span>{get;set;}</span><br />
<br />
<span style="background-color: yellow;">List<Case> lstcases=[Select id, Order_Number__c from Case where id=:caseId];</span><br />
<span style="background-color: yellow;"> if(lstcases.size()>0){</span><br />
<span style="background-color: yellow;"> <span style="white-space: pre;"> </span>PrimaryOrderNo= lstcases[0].Order_Number__c; </span><br />
<span style="background-color: yellow;"> }</span><br />
<br />
<pre style="background: #f0f0f0; border: 1px dashed #cccccc; color: black; font-family: "arial"; font-size: 12px; height: 150px; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;">1: /* Controller associated with pages rendering the survey.
2: * Used by SurveyPage, ResultsPage, TakeSurvey
3: */
4: global virtual without sharing class ViewSurveyController {
5: public String qQuestion {get; set;}
6: public Boolean qRequired {get; set;}
7: public String qChoices {get; set;}
8: public String surveyName {get; set;}
9: public String surveyHeader {get; set;}
10: public String surveyId {get;
11: set{
12: this.surveyId = value;
13: init();
14: }
15: }
16: public String renderSurveyPreview {get; set;}
17: public string PrimaryOrderNo {get;set;}
18: public String questionName {get; set;}
19: public String questionType {get; set;}
20: public Boolean questionRequired {get; set;}
21: public List<SelectOption> singleOptions {get; set;}
22: public List<SFQuestion> allQuestions {get; set;}
23: public List<String> responses {get; set;}
24: public Integer allQuestionsSize {get; set;}
25: public String templateURL {get; set;}
26: public String surveyThankYouText {get; set;}
27: public String surveyContainerCss {get; set;}
28: public String surveyThankYouURL {get; set;}
29: public String caseId {get; set;}
30: public String contactId {get;set;}
31: public String anonymousAnswer {get;set;}
32: public List<SelectOption> anonymousOrUser {get;set;}
33: public Boolean isInternal {get;set;}
34: public String baseURL {get;set;}
35: public String userId{get;set;}
36: public String userName{get;set;}
37: public String surveyTakerId {get;set;}
38: public Boolean thankYouRendered{get;set;}
39: public List<String> newOrder {get;set;}
40: /* Retrieves the list of questions, the survey name, after retrieving the
41: necessary parameters from the url.
42: */
43: //------------------------------------------------------------------------------//
44: public ViewSurveyController(ApexPages.StandardController stdController) {
45: // Get url parameters
46: surveyId = Apexpages.currentPage().getParameters().get('id');
47: caseId = Apexpages.currentPage().getParameters().get('caId');
48: contactId = Apexpages.currentPage().getParameters().get('cId');
49: if(caseId ==null || caseId.length()<15){
50: caseId = 'none';
51: }
52: if(contactId ==null || contactId.length()<15){
53: contactId = 'none';
54: }
55: // By default the preview is not showing up
56: renderSurveyPreview = 'false';
57: init();
58: }
59: public ViewSurveyController(viewShareSurveyComponentController controller)
60: {
61: surveyId = Apexpages.currentPage().getParameters().get('id');
62: caseId = Apexpages.currentPage().getParameters().get('caId');
63: contactId = Apexpages.currentPage().getParameters().get('cId');
64: if(caseId ==null || caseId.length()<15){
65: caseId = 'none';
66: }
67: if(contactId ==null || contactId.length()<15){
68: contactId = 'none';
69: }
70: // By default the preview is not showing up
71: renderSurveyPreview = 'false';
72: init();
73: }
74: public void init()
75: {
76: if (surveyId != null){
77: // Retrieve all necessary information to be displayed on the page
78: allQuestions = new List<SFQuestion>();
79: setupQuestionList();
80: setSurveyNameAndThankYou(surveyId);
81: anonymousOrUser = new List<SelectOption>();
82: anonymousOrUser.add(new SelectOption('Anonymous',System.Label.LABS_SF_Anonymous));
83: anonymousOrUser.add(new SelectOption('User','User ' + UserInfo.getFirstName() + ' ' + UserInfo.getLastName()));
84: anonymousAnswer = 'Anonymous';
85: isInternal =true;
86: newOrder = new List<String>();
87: String urlBase = URL.getSalesforceBaseUrl().toExternalForm();
88: baseURL = urlBase;
89: userId = UserInfo.getUserId();
90: userName = UserInfo.getName();
91: List<Case> lstcases=[Select id, Order_Number__c from Case where id=:caseId];
92: if(lstcases.size()>0){
93: PrimaryOrderNo= lstcases[0].Order_Number__c;
94: }
95: String profileId = UserInfo.getProfileId();
96: try
97: {
98: Profile p = [select Id, UserType from Profile where Id=:profileId];
99: if (p.UserType == 'Guest')
100: {
101: isInternal = false;
102: }
103: else
104: {
105: isInternal = true;
106: }
107: }
108: catch (Exception e){
109: isInternal = false;
110: }
111: thankYouRendered=false;
112: }
113: }
114: //----------------------------------------------------------------------------//
115: /* Called during the setup of the page.
116: Retrieve questions and responses from DB and inserts them in 2 lists. */
117: public Integer setupQuestionList(){
118: getAQuestion();
119: return allQuestions.size();
120: }
121: /** Sets the survey's name variable
122: * param: sID The survey ID as specified in the DB
123: */
124: public void setSurveyNameAndThankYou(String sId){
125: Survey__c s = [SELECT Name, Id, URL__c, Thank_You_Text__c, thankYouText__c, thankYouLink__c, Survey_Header__c, Survey_Container_CSS__c FROM Survey__c WHERE Id =:sId];
126: surveyName = s.Name;
127: surveyHeader = s.Survey_Header__c;
128: templateURL = s.URL__c+'id='+sId;//+'&cId={!Contact.Id}'+'&caId='+'{!Case.id}';
129: surveyThankYouText = s.Thank_You_Text__c;
130: if (surveyThankYouText == null)
131: {
132: surveyThankYouText = System.Label.LABS_SF_Survey_Submitted_Thank_you;
133: }
134: surveyThankYouURL = s.thankYouLink__c;
135: surveyContainerCss = s.Survey_Container_CSS__c;
136: }
137: //------------------------------------------------------------------------------//
138: public Pagereference updateSurveyName(){
139: Survey__c s = [SELECT Name, Id, URL__c, thankYouText__c, thankYouLink__c FROM Survey__c WHERE Id =:surveyId];
140: s.Name = surveyName;
141: try{
142: update s;
143: }catch (Exception e){
144: Apexpages.addMessages(e);
145: }
146: return null;
147: }
148: //------------------------------------------------------------------------------//
149: public Pagereference updateSurveyThankYouAndLink(){
150: Survey__c s = [SELECT Name, Id, URL__c, thankYouText__c, thankYouLink__c FROM Survey__c WHERE Id =:surveyId];
151: s.thankYouText__c = surveyThankYouText;
152: s.thankYouLink__c = surveyThankYouURL;
153: try{
154: update s;
155: }catch(Exception e){
156: Apexpages.addMessages(e);
157: }
158: return null;
159: }
160: //------------------------------------------------------------------------------//
161: /** When requested from the page - when the user clicks on 'Update Order' -
162: this function will reorganize the list so that it is displayed in the new order
163: */
164: public Pagereference refreshQuestionList(){
165: setupQuestionList();
166: return null;
167: }
168: //------------------------------------------------------------------------------//
169: //------------------------------------------------------------------------------//
170: private static boolean checkRequired(String response, Survey_Question__c question){
171: if(question.Required__c == true){
172: if(response == null || response =='NO RESPONSE')
173: return false;
174: }
175: return true;
176: }
177: /** Redirects the page that displays the detailed results of the survey,
178: from all users who took the survey.
179: */
180: public PageReference resultPage() {
181: return new PageReference('/apex/ResultsPage?id='+surveyId);
182: }
183: //------------------------------------------------------------------------------//
184: //------------------------------------------------------------------------------//
185: /**
186: */
187: public List<String> getResponses() {
188: List<SurveyQuestionResponse__c> qr = [Select Survey_Question__c, SurveyTaker__c, Response__c, Name From SurveyQuestionResponse__c limit 100];
189: List<String> resp = new List<String>();
190: for (SurveyQuestionResponse__c r : qr) {
191: resp.add(r.Response__c);
192: }
193: return resp;
194: }
195: /** Fills up the List of questions to be displayed on the Visualforce page
196: */
197: public List<SFQuestion> getAQuestion() {
198: qQuestion = '';
199: qChoices ='';
200: List<Survey_Question__c> allQuestionsObject =
201: [Select s.Type__c, s.Id, s.Survey__c, s.Required__c, s.Question__c,
202: s.OrderNumber__c, s.Name, s.Choices__c
203: From Survey_Question__c s
204: WHERE s.Survey__c =: surveyId ORDER BY s.OrderNumber__c];
205: System.debug(allQuestionsObject);
206: allQuestions = new List<SFQuestion>();
207: Double old_OrderNumber = 0;
208: Double new_OrderNumber;
209: Double difference = 0;
210: /* Make sure that the order number follow each other (after deleting a question, orders might not do so) */
211: for (Survey_Question__c q : allQuestionsObject){
212: new_OrderNumber = q.OrderNumber__c;
213: difference = new_OrderNumber - old_OrderNumber - 1;
214: if (difference > 0) {
215: Double dd = double.valueOf(difference);
216: Integer newOrderInt = dd.intValue();
217: q.OrderNumber__c -= Integer.valueOf(newOrderInt);
218: }
219: old_OrderNumber = q.OrderNumber__c;
220: SFQuestion theQ = new SFQuestion(q);
221: allQuestions.add(theQ);
222: }
223: allQuestionsSize = allQuestions.size();
224: return allQuestions;
225: }
226: public void submitResults()
227: {
228: try {
229: List <SurveyQuestionResponse__c> sqrList = new List<SurveyQuestionResponse__c>();
230: System.debug('Here 1');
231: for (SFQuestion q : allQuestions) {
232: System.debug('Here 2');
233: SurveyQuestionResponse__c sqr = new SurveyQuestionResponse__c();
234: if (q.renderSelectRadio == 'true') {
235: if (q.required && (q.selectedOption == null || q.selectedOption == '')) {
236: Apexpages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, 'Please fill out all required fields'));
237: return;
238: }
239: if (q.selectedOption == null || q.selectedOption == '') {
240: sqr.Response__c = '';
241: } else {
242: sqr.Response__c = q.singleOptions.get(Integer.valueOf(q.selectedOption)).getLabel();
243: }
244: sqr.Survey_Question__c = q.Id;
245: sqrList.add(sqr);
246: } else if (q.renderFreeText == 'true') {
247: if (q.required && q.choices == '') {
248: Apexpages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, 'Please fill out all required fields'));
249: return;
250: }
251: System.debug('*****Select Radio ' + q.choices);
252: sqr.Response__c = q.choices;
253: sqr.Survey_Question__c = q.Id;
254: sqrList.add(sqr);
255: } else if (q.renderSelectCheckboxes == 'true') {
256: if (q.required && (q.selectedOptions == null || q.selectedOptions.size() == 0)) {
257: Apexpages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, 'Please fill out all required fields'));
258: return;
259: }
260: for (String opt : q.selectedOptions) {
261: sqr = new SurveyQuestionResponse__c();
262: if (opt == '' || opt == null) {
263: sqr.Response__c = '';
264: } else {
265: sqr.Response__c = q.multiOptions.get(Integer.valueOf(opt)).getLabel();
266: }
267: sqr.Survey_Question__c = q.Id;
268: sqrList.add(sqr);
269: }
270: } else if (q.renderSelectRow == 'true') {
271: if (q.required && (q.selectedOption == null || q.selectedOption == '')) {
272: Apexpages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, 'Please fill out all required fields'));
273: return;
274: }
275: if (q.selectedOption == null || q.selectedOption == '') {
276: sqr.Response__c = '';
277: } else {
278: sqr.Response__c = q.rowOptions.get(Integer.valueOf(q.selectedOption)).getLabel();
279: }
280: sqr.Survey_Question__c = q.Id;
281: sqrList.add(sqr);
282: }
283: }
284: if(AddSurveyTaker())
285: {
286: System.debug('Here 3');
287: for (SurveyQuestionResponse__c sqr : sqrList)
288: {
289: sqr.SurveyTaker__c = surveyTakerId;
290: }
291: System.debug('Here 4');
292: insert sqrList;
293: thankYouRendered=true;
294: }
295: }catch(Exception e){
296: if(isInternal) {
297: Apexpages.addMessages(e);
298: }else{
299: System.debug('Exception: ' + e.getMessage());
300: Apexpages.addMessage(new ApexPages.Message(ApexPages.Severity.Error, 'Some error occured while saving response'));
301: }
302: }
303: }
304: private Boolean AddSurveyTaker()
305: {
306: String userId;
307: if (surveyId == null)
308: {
309: return false;
310: }
311: if(caseId.toUpperCase() =='NONE'|| caseId.length()<5)
312: caseId = null;
313: if(contactId.toUpperCase() =='NONE'|| contactId.length()<5)
314: contactId = null;
315: if (anonymousAnswer != 'Anonymous')
316: {
317: userId = UserInfo.getUserId();
318: }
319: else
320: {
321: userId = null;
322: }
323: if(anonymousAnswer != 'Anonymous' && (contactId != null || caseId != null))
324: {
325: List<SurveyTaker__c> check = [Select Contact__c, Survey__c, Case__c, User__c From SurveyTaker__c Where Contact__c=:contactId and Survey__c=:surveyId and Case__c = :caseId and User__c=:UserId];
326: if(check != null && check.size()>0){
327: Apexpages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR, System.Label.LABS_SF_You_have_already_taken_this_survey));
328: return false;
329: }
330: }
331: SurveyTaker__c st = new SurveyTaker__c();
332: st.Contact__c = contactId;
333: st.Survey__c = surveyId;
334: st.Taken__c = 'false';
335: st.Case__c = caseId;
336: st.User__c = userId;
337: insert st;
338: surveyTakerId = st.Id;
339: return true;
340: }
341: }
</code></pre>
<br />
<b>In VF Page : </b><br />
<table border="0" cellpadding="0" cellspacing="0" class="detailList" style="color: black; font-family: Arial, Helvetica, sans-serif; font-size: 11.36px; width: 1404px;"><tbody>
<tr><td class="dataCol first " style="border-bottom: 1px solid rgb(236, 236, 236); border-left-color: rgb(236, 236, 236); border-right-color: rgb(255, 255, 255); border-top-color: rgb(236, 236, 236); margin: 0px; padding: 3px 2px 3px 10px; vertical-align: top; width: 437.6px;"><span id="j_id0:theTemplate:j_id8:j_id9:j_id15:j_id16"><b>TakeSurvey</b></span></td></tr>
</tbody></table>
<br />
Add following changes to display Order Number<br />
see line no 27 and add the same in VF Page.<br />
<br />
<span style="background-color: yellow;"><div class="slds-text-heading--medium">Order No: {!PrimaryOrderNo}</div></span><br />
<span style="white-space: pre;"> </span><br />
<br />
<br /></div>
<pre style="background: #f0f0f0; border: 1px dashed #cccccc; color: black; font-family: "arial"; font-size: 12px; height: 150px; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;">1: <apex:page standardcontroller="Survey__c" extensions="ViewSurveyController" cache="false" sidebar="false" showheader="false">
2: <apex:includeScript value="{! $Resource.SurveyForce_jquery}"/>
3: <!-- convertCheckBoxToLDS() is in surveyforce.js -->
4: <apex:includeScript value="{! $Resource.SurveyForce + '/surveyforce.js'}"/>
5: <apex:stylesheet value="{! $Resource.SurveyForce + '/surveyforce.css'}"/>
6: <apex:stylesheet value="{! $Resource.SurveyForce + '/surveyforce_pagemessage_override.css'}"/>
7: <apex:stylesheet value="{! $Resource.SurveyForce_SLDS + '/assets/styles/salesforce-lightning-design-system-vf.min.css'}"/>
8: <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
9: <script>
10: $(document).ready(function(){
11: //Convert any elements with "convertToLDS" style to SLDS styles
12: //Used in certain places where it's not easy to use SLDS for those elements like "apex:selectCheckboxes"
13: convertCheckBoxToLDS();
14: });
15: </script>
16: <!-- Custom CSS added by survey admin -->
17: <style>
18: <apex:outputText value="{!HTMLENCODE(surveyContainerCss)}" escape="false"/>
19: </style>
20: <div id="survey_container" class="surveyforce">
21: <apex:form id="theForm" >
22: <apex:outputPanel id="seeSurvey" rendered="{! If((Survey__c.Hide_Survey_Name__c == false || Survey__c.Survey_Header__c != ''), True, False )}" >
23: <div class="slds-box slds-theme--shade">
24: <div class="slds-text-heading--large"><apex:outputText value="{!Survey__c.Survey_Header__c}" escape="false" /> </div>
25: <apex:outputPanel rendered="{!Survey__c.Hide_Survey_Name__c == false}">
26: <div class="slds-text-heading--medium">{!Survey__c.Name}</div>
27: <div class="slds-text-heading--medium">Order No: {!PrimaryOrderNo}</div>
28: </apex:outputPanel>
29: </div>
30: </apex:outputPanel>
31: <script>
32: $(document).ready(function(){
33: overridePageMessages();
34: });
35: </script>
36: <apex:pageMessages />
37: <c:uiMessage severity="success" message="{!surveyThankYouText}" renderMe="{!thankYouRendered == true}" />
38: <apex:outputPanel rendered="{!thankYouRendered == false}">
39: <div class="slds-form--stacked">
40: <apex:repeat value="{!allQuestions}" var="qPreview" id="aQPreview">
41: <div class="slds-box slds-theme--default">
42: <div class="slds-form-element">
43: <label class="slds-form-element__label">
44: {!qPreview.orderNumber + ': ' + qPreview.question}
45: <apex:outputText rendered="{! qPreview.required}" value="({!$Label.LABS_SF_Required})" />
46: </label>
47: </div>
48: <apex:outputPanel rendered="{!qPreview.renderSelectRadio}">
49: <apex:selectRadio styleClass="convertToLDS" layout="pageDirection" rendered="{!qPreview.renderSelectRadio}" value="{!qPreview.selectedOption}" >
50: <apex:selectOptions value="{!qPreview.singleOptions}"/>
51: </apex:selectRadio>
52: </apex:outputPanel>
53: <apex:outputPanel rendered="{!qPreview.renderSelectCheckboxes}">
54: <apex:selectCheckboxes styleClass="convertToLDS" layout="pageDirection" rendered="{!qPreview.renderSelectCheckboxes}" value="{!qPreview.selectedOptions}" >
55: <apex:selectOptions value="{!qPreview.multiOptions}"/>
56: </apex:selectCheckboxes>
57: </apex:outputPanel>
58: <apex:outputPanel rendered="{!qPreview.renderFreeText}">
59: <div class="slds-form-element">
60: <div class="slds-form-element__control" >
61: <apex:inputTextArea styleClass="slds-textarea" cols="" rows="{!qPreview.noOfRowsForTextArea}" rendered="{!qPreview.renderFreeText}" value="{!qPreview.choices}"/>
62: </div>
63: </div>
64: </apex:outputPanel>
65: <apex:outputPanel rendered="{!qPreview.renderSelectRow}">
66: <apex:selectRadio styleClass="convertToLDS" rendered="{!qPreview.renderSelectRow}" value="{!qPreview.selectedOption}">
67: <apex:selectOptions value="{!qPreview.rowOptions}"/>
68: </apex:selectRadio>
69: </apex:outputPanel>
70: </div>
71: </apex:repeat>
72: </div>
73: </apex:outputPanel>
74: <apex:outputPanel rendered="{!thankYouRendered == false}">
75: <div class="slds-box slds-theme--default">
76: <apex:outputPanel rendered="{!isInternal}" >
77: <span class="slds-text-body--regular">{!$Label.LABS_SF_Answer_as}:</span>
78: <apex:selectRadio styleClass="convertToLDS" value="{!anonymousAnswer}">
79: <apex:selectOptions value="{!anonymousOrUser}" />
80: <apex:actionSupport event="onchange" rerender="hiddenAnonymousAnswer"/>
81: </apex:selectRadio>
82: <apex:inputHidden value="{!anonymousAnswer}" id="hiddenAnonymousAnswer"/>
83: <br />
84: </apex:outputPanel>
85: <apex:commandButton styleClass="slds-button slds-button--brand" action="{!submitResults}" value="{!$Label.LABS_SF_SubmitSurvey}" rerender="theForm,seeSurvey" />
86: </div>
87: </apex:outputPanel>
88: </apex:form>
89: </div>
90: </apex:page>
</code></pre>
<b style="color: #24292e; font-size: 16px;">Step 4: </b><span style="color: #24292e; font-size: 16px;">We have to write a Process Builder to generate Case/Create Case once order stage is Changed to Delivered. we will also populate the Order Lookup field on Case while creating Case Record.</span><br />
<span style="color: #24292e; font-size: 16px;"><br /></span> <span style="color: #24292e; font-size: 16px;">See Salesforce for more detail</span><br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-np_sJM4i3TNP_8KEh5RiAYMEWxV0rnP7Estw5PJgyySEHl4RQ2e62jBQBnWMnRL7uJUov6KFaATNZfjw1SkAe22lN1hKjy7uWMvEjRd4dFOcftyiP-QhD8ZVLl5ob6Q8_XQxFhZ0BxWw/s1600/Create+Case+using+Process+Builder.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="647" data-original-width="1600" height="258" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg-np_sJM4i3TNP_8KEh5RiAYMEWxV0rnP7Estw5PJgyySEHl4RQ2e62jBQBnWMnRL7uJUov6KFaATNZfjw1SkAe22lN1hKjy7uWMvEjRd4dFOcftyiP-QhD8ZVLl5ob6Q8_XQxFhZ0BxWw/s640/Create+Case+using+Process+Builder.GIF" width="640" /></a></div>
<span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="background-color: white; color: #24292e; font-size: 16px;"><b>Step 5: </b></span><span style="background-color: white; color: #24292e; font-size: 16px;">Now we have to generate the Survey Link and create email template as well as create Workflow rule send the Survey link to Contact Person. This email alert we have to write </span>on<span style="background-color: white; color: #24292e; font-size: 16px;"> Case Object.</span><br />
<span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span>
<br />
<ul style="text-align: left;">
<li><span style="color: #24292e;">Open the surveyforce app</span></li>
<li><span style="color: #24292e;">Choose <b>Surveys </b>Tab</span></li>
<li><span style="color: #24292e;">Select required Surveys that you have created.</span></li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEadqH3ZQ7n6oavKvk4bdW9pXhcYoiyWuYZgIooFMnA9XbXVy8drKpSj-e_2rkBz72xbxl_eMbJu0j3nT5Rf0MDl-AjIpozmC4XQfokAucWKptHrCF3EJteARk0ZsilmWATMp702y8n36w/s1600/Survey-Link.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="207" data-original-width="1600" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiEadqH3ZQ7n6oavKvk4bdW9pXhcYoiyWuYZgIooFMnA9XbXVy8drKpSj-e_2rkBz72xbxl_eMbJu0j3nT5Rf0MDl-AjIpozmC4XQfokAucWKptHrCF3EJteARk0ZsilmWATMp702y8n36w/s1600/Survey-Link.GIF" /></a></div>
<div>
<span style="color: #24292e;"><br /></span></div>
<ul style="text-align: left;">
<li><span style="color: #24292e;">Choose an appropriate site and copy the link to Further use in email template. </span></li>
</ul>
<span style="background-color: white; color: #24292e; font-size: 16px;">Create Email Template on Case and update Email body with that Survey Link. See Below.</span><br />
<span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8FA5BlLmvtk2sg1XnB13tcQHUVuDPELagJIqm4bKuuC03NB07eMj_PRNz4Bgbox2Pj_yhY2iG1vYOAAWWbrvyHqJYhoDRjyl06Q1syHQSuqTgK8LboS44vcs_qbAUWOvXD_mf3YpUfXKJ/s1600/Email+Template.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="679" data-original-width="1355" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8FA5BlLmvtk2sg1XnB13tcQHUVuDPELagJIqm4bKuuC03NB07eMj_PRNz4Bgbox2Pj_yhY2iG1vYOAAWWbrvyHqJYhoDRjyl06Q1syHQSuqTgK8LboS44vcs_qbAUWOvXD_mf3YpUfXKJ/s640/Email+Template.GIF" width="640" /></a><span style="background-color: white; color: #24292e; font-size: 16px; text-align: left;">Write a workflow rule email alert.</span></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="background-color: white; color: #24292e; font-size: 16px; text-align: left;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhm63lUixddtAWa-oxVlHnUXL8T-HMekyAdu5Do4Md4zyL6O0bS3bZADFJPs3ofbSy_dlBVHxsSUmPRrr2nEKuXPx7vkKSr76KTg8US1pyinJZZdiaEO-QwJ4g9fHRmxL_PYu-GOs6xKKhO/s1600/Email+alert.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="560" data-original-width="1600" height="224" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhm63lUixddtAWa-oxVlHnUXL8T-HMekyAdu5Do4Md4zyL6O0bS3bZADFJPs3ofbSy_dlBVHxsSUmPRrr2nEKuXPx7vkKSr76KTg8US1pyinJZZdiaEO-QwJ4g9fHRmxL_PYu-GOs6xKKhO/s640/Email+alert.GIF" width="640" /></a></div>
<span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="background-color: white; color: #24292e; font-size: 16px;">END.</span><br />
<span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="background-color: white; color: #24292e; font-size: 16px;">Survey Form will look like this</span><br />
<span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkAQMvNV5z4McL5DTIUjKhAYcWCb_TJsMiscjJEtHlmoQPE6_-xhAzbGcBx2onbZAolSk2Q9kp_PS1NJ3qvrNseLGOg1Y8bBpbDvZGvCBg4EtN_Km7D2V9AOFS6aoZrpg41QBf535H9_FZ/s1600/Survey.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="874" data-original-width="834" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgkAQMvNV5z4McL5DTIUjKhAYcWCb_TJsMiscjJEtHlmoQPE6_-xhAzbGcBx2onbZAolSk2Q9kp_PS1NJ3qvrNseLGOg1Y8bBpbDvZGvCBg4EtN_Km7D2V9AOFS6aoZrpg41QBf535H9_FZ/s640/Survey.GIF" width="610" /></a></div>
<span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="color: #24292e;"><span style="background-color: white;">Hiccups and Solution:</span></span><br />
<span style="background-color: white; color: #24292e; font-size: 16px;"><b>1.</b> Header and Image was not displaying while opening Survey Link</span><br />
<span style="background-color: white; color: #24292e; font-size: 16px;"><b>Solution: </b>Open guest profile user and add all Field level security Read only for Survey Taken and Survey Object.</span><br />
<span style="background-color: white; color: #24292e; font-size: 16px;"><b><br /></b></span> <span style="background-color: white; color: blue; font-size: x-large;"><b>For further query please email us at <a href="mailto:amulhai@gmail.com">amulhai@gmail.com</a></b></span><br />
<span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span> <span style="background-color: white; color: #24292e; font-size: 16px;"><br /></span></div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com6tag:blogger.com,1999:blog-4112120715957309558.post-58777039828663392082018-01-10T00:22:00.000-08:002018-03-27T02:11:10.236-07:00Close the action panel | dismiss Action Panel | dismiss action component popup<div dir="ltr" style="text-align: left;" trbidi="on">
<div dir="ltr" style="text-align: left;" trbidi="on">
<div dir="ltr" style="text-align: left;" trbidi="on">
<b><span style="font-size: large;">dismiss action component popup using javascript in Lightning</span></b><br />
<b><span style="font-size: large;"><br /></span></b> <span style="font-size: large;"><b>Component Name:</b></span><br />
<span style="font-size: large;"><b>ListBuilder.cmp</b></span><br />
<span style="font-size: large;"><b><br /></b></span> <span style="font-size: large;"><b><br /></b></span></div>
<pre style="background: #f0f0f0; border: 1px dashed #cccccc; color: black; font-family: "arial"; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;"> <aura:component implements="force:lightningQuickAction" >
<div class="demo-only" style="height: 640px;" aura:id="MainDiv">
<section role="dialog" tabindex="-1" class="slds-modal slds-fade-in-open slds-modal_large" aria-labelledby="id-of-modalheader-h2" aria-modal="true" aria-describedby="modal-content-id-1">
<div class="slds-modal__container">
<header class="slds-modal__header">
<button class="slds-button slds-button_icon slds-modal__close slds-button_icon-inverse" title="Close" onclick="{!c.cancelBtn}">
<!--<svg class="slds-button__icon slds-button__icon_large" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/assets/icons/utility-sprite/svg/symbols.svg#close" />
</svg>-->
<lightning:icon iconName="utility:close" class="slds-button__icon slds-button__icon_large"/>
<span class="slds-assistive-text">Close</span>
</button>
<!--<lightning:button variant="inverse" label="Close" iconName="utility:close" iconPosition="left" onclick="{! c.handleClick }" />
-->
<h2 id="id-of-modalheader-h2" class="slds-text-heading_medium">Add Products</h2>
<p class="slds-m-top_x-small">Pricebook: Salesforce Products</p>
</header>
<div class="slds-modal__content slds-grid slds-nowrap" id="modal-content-id-1">
<div class="slds-col slds-grid slds-grid_vertical slds-nowrap">
<div class="slds-p-vertical_x-small slds-p-horizontal_large slds-shrink-none slds-theme_shade">
<div class="slds-form-element">
<label class="slds-form-element__label slds-assistive-text" for="combobox-unique-id">Search</label>
<div class="slds-form-element__control">
<div class="slds-combobox_container">
<div class="slds-combobox slds-dropdown-trigger slds-dropdown-trigger_click" aria-expanded="false" aria-haspopup="listbox" role="combobox">
<div class="slds-combobox__form-element slds-input-has-icon slds-input-has-icon_right" role="none">
<input type="text" class="slds-input slds-combobox__input" id="combobox-unique-id" aria-autocomplete="list" aria-controls="listbox-unique-id" autocomplete="off" role="textbox" placeholder="Search Salesforce" />
<span class="slds-icon_container slds-icon-utility-search slds-input__icon slds-input__icon_right">
<!-- <svg class="slds-icon slds-icon slds-icon_x-small slds-icon-text-default" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/assets/icons/utility-sprite/svg/symbols.svg#search" />
</svg>-->
<lightning:icon iconName="utility:search" class="slds-icon slds-icon slds-icon_x-small slds-icon-text-default"/>
</span>
</div>
<div id="listbox-unique-id" role="listbox">
<ul class="slds-listbox slds-listbox_vertical slds-dropdown slds-dropdown_fluid" role="presentation">
<li role="presentation" class="slds-listbox__item">
<span id="listbox-option-unique-id-01" class="slds-media slds-listbox__option slds-listbox__option_entity slds-listbox__option_has-meta" role="option">
<span class="slds-media__figure">
<span class="slds-icon_container slds-icon-standard-account" title="Description of icon when needed">
<!--<svg class="slds-icon slds-icon_small" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/assets/icons/standard-sprite/svg/symbols.svg#account" />
</svg>-->
<lightning:icon iconName="standard:account" class="slds-icon slds-icon_small"/>
<span class="slds-assistive-text">Description of icon</span>
</span>
</span>
<span class="slds-media__body">
<span class="slds-listbox__option-text slds-listbox__option-text_entity">Acme</span>
<span class="slds-listbox__option-meta slds-listbox__option-meta_entity">Account • San Francisco</span>
</span>
</span>
</li>
<li role="presentation" class="slds-listbox__item">
<span id="listbox-option-unique-id-02" class="slds-media slds-listbox__option slds-listbox__option_entity slds-listbox__option_has-meta" role="option">
<span class="slds-media__figure">
<span class="slds-icon_container slds-icon-standard-account" title="Description of icon when needed">
<!--<svg class="slds-icon slds-icon_small" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/assets/icons/standard-sprite/svg/symbols.svg#account" />
</svg>-->
<lightning:icon iconName="standard:account" class="slds-icon slds-icon_small"/>
<span class="slds-assistive-text">Description of icon</span>
</span>
</span>
<span class="slds-media__body">
<span class="slds-listbox__option-text slds-listbox__option-text_entity">Salesforce.com, Inc.</span>
<span class="slds-listbox__option-meta slds-listbox__option-meta_entity">Account • San Francisco</span>
</span>
</span>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class="slds-pill_container slds-pill_container_bare">
<div id="listbox-unique-id" role="listbox">
<ul class="slds-listbox" role="presentation">
<li role="presentation" class="slds-listbox__item">
<span class="slds-pill" role="option" tabindex="0" aria-selected="true">
<span class="slds-pill__label" title="Analytics">Analytics</span>
<span class="slds-icon_container slds-pill__remove" title="Remove">
<!--<svg class="slds-icon slds-icon_x-small slds-icon-text-default" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/assets/icons/utility-sprite/svg/symbols.svg#close" />
</svg>-->
<lightning:icon iconName="utility:close" class="slds-icon slds-icon_x-small slds-icon-text-default"/>
<span class="slds-assistive-text">Press delete or backspace to remove</span>
</span>
</span>
</li>
</ul>
</div>
</div>
<div class="slds-text-title slds-m-top_x-small" aria-live="polite">1 Item(s) Selected</div>
</div>
<div class="slds-scrollable slds-grow">
<table role="grid" class="slds-table slds-table_fixed-layout slds-table_bordered slds-table_resizable-cols slds-no-row-hover slds-scrollable_none">
<thead>
<tr class="slds-line-height_reset">
<th scope="col" style="width: 3.75rem;"></th>
<th aria-label="Name" aria-sort="none" class="slds-is-sortable slds-is-resizable slds-text-title_caps" scope="col">
<a class="slds-th__action slds-text-link_reset" href="javascript:void(0);" role="button" tabindex="-1">
<span class="slds-assistive-text">Sort by: </span>
<span class="slds-truncate" title="Name">Name</span>
<div class="slds-icon_container">
<!-- <svg class="slds-icon slds-icon_x-small slds-icon-text-default slds-is-sortable__icon" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/assets/icons/utility-sprite/svg/symbols.svg#arrowdown" />
</svg>-->
<lightning:icon iconName="utility:arrowdown" class="slds-icon slds-icon_x-small slds-icon-text-default slds-is-sortable__icon"/>
</div>
</a>
<span class="slds-assistive-text" aria-live="assertive" aria-atomic="true">Sorted none</span>
<div class="slds-resizable">
<input type="range" min="20" max="1000" aria-label="Name column width" class="slds-resizable__input slds-assistive-text" id="cell-resize-handle-17" tabindex="-1" />
<span class="slds-resizable__handle">
<span class="slds-resizable__divider"></span>
</span>
</div>
</th>
<th aria-label="Product Code" aria-sort="none" class="slds-is-sortable slds-is-resizable slds-text-title_caps" scope="col">
<a class="slds-th__action slds-text-link_reset" href="javascript:void(0);" role="button" tabindex="-1">
<span class="slds-assistive-text">Sort by: </span>
<span class="slds-truncate" title="Product Code">Product Code</span>
<div class="slds-icon_container">
<!-- <svg class="slds-icon slds-icon_x-small slds-icon-text-default slds-is-sortable__icon" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/assets/icons/utility-sprite/svg/symbols.svg#arrowdown" />
</svg>-->
<lightning:icon iconName="utility:arrowdown" class="slds-icon slds-icon_x-small slds-icon-text-default slds-is-sortable__icon"/>
</div>
</a>
<span class="slds-assistive-text" aria-live="assertive" aria-atomic="true">Sorted none</span>
<div class="slds-resizable">
<input type="range" min="20" max="1000" aria-label="Product Code column width" class="slds-resizable__input slds-assistive-text" id="cell-resize-handle-18" tabindex="-1" />
<span class="slds-resizable__handle">
<span class="slds-resizable__divider"></span>
</span>
</div>
</th>
<th aria-label="List Price" aria-sort="none" class="slds-is-sortable slds-is-resizable slds-text-title_caps" scope="col">
<a class="slds-th__action slds-text-link_reset" href="javascript:void(0);" role="button" tabindex="-1">
<span class="slds-assistive-text">Sort by: </span>
<span class="slds-truncate" title="List Price">List Price</span>
<div class="slds-icon_container">
<!--<svg class="slds-icon slds-icon_x-small slds-icon-text-default slds-is-sortable__icon" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/assets/icons/utility-sprite/svg/symbols.svg#arrowdown" />
</svg>-->
<lightning:icon iconName="utility:arrowdown" class="slds-icon slds-icon_x-small slds-icon-text-default slds-is-sortable__icon"/>
</div>
</a>
<span class="slds-assistive-text" aria-live="assertive" aria-atomic="true">Sorted none</span>
<div class="slds-resizable">
<input type="range" min="20" max="1000" aria-label="List Price column width" class="slds-resizable__input slds-assistive-text" id="cell-resize-handle-19" tabindex="-1" />
<span class="slds-resizable__handle">
<span class="slds-resizable__divider"></span>
</span>
</div>
</th>
<th aria-label="Product Family" aria-sort="none" class="slds-is-sortable slds-is-resizable slds-text-title_caps" scope="col">
<a class="slds-th__action slds-text-link_reset" href="javascript:void(0);" role="button" tabindex="-1">
<span class="slds-assistive-text">Sort by: </span>
<span class="slds-truncate" title="Product Family">Product Family</span>
<div class="slds-icon_container">
<!-- <svg class="slds-icon slds-icon_x-small slds-icon-text-default slds-is-sortable__icon" aria-hidden="true">
<use xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="/assets/icons/utility-sprite/svg/symbols.svg#arrowdown" />
</svg>-->
<lightning:icon iconName="utility:arrowdown" class="slds-icon slds-icon_x-small slds-icon-text-default slds-is-sortable__icon"/>
</div>
</a>
<span class="slds-assistive-text" aria-live="assertive" aria-atomic="true">Sorted none</span>
<div class="slds-resizable">
<input type="range" min="20" max="1000" aria-label="Product Family column width" class="slds-resizable__input slds-assistive-text" id="cell-resize-handle-20" tabindex="-1" />
<span class="slds-resizable__handle">
<span class="slds-resizable__divider"></span>
</span>
</div>
</th>
</tr>
</thead>
<tbody>
<tr class="slds-hint-parent" aria-selected="true">
<td role="gridcell" tabindex="0" class="slds-text-align_right" style="width: 3.75rem;">
<div class="slds-checkbox_add-button">
<input type="checkbox" class="slds-assistive-text" id="add-checkbox-26" tabindex="-1" value="on" />
<label for="add-checkbox-26" class="slds-checkbox_faux">
<span class="slds-assistive-text">Select item 1</span>
</label>
</div>
</td>
<th scope="row">
<div class="slds-truncate" title="Analytics">Analytics</div>
</th>
<td role="gridcell">
<div class="slds-truncate" title="ANTLY">ANTLY</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="5000.00">5000.00</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="Analytics Product">Analytics Product</div>
</td>
</tr>
<tr class="slds-hint-parent">
<td role="gridcell" tabindex="-1" class="slds-text-align_right" style="width: 3.75rem;">
<div class="slds-checkbox_add-button">
<input type="checkbox" class="slds-assistive-text" id="add-checkbox-27" tabindex="-1" value="on" />
<label for="add-checkbox-27" class="slds-checkbox_faux">
<span class="slds-assistive-text">Select item 2</span>
</label>
</div>
</td>
<th scope="row">
<div class="slds-truncate" title="Analytics">Analytics</div>
</th>
<td role="gridcell">
<div class="slds-truncate" title="ANTLY">ANTLY</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="5000.00">5000.00</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="Analytics Product">Analytics Product</div>
</td>
</tr>
<tr class="slds-hint-parent">
<td role="gridcell" tabindex="-1" class="slds-text-align_right" style="width: 3.75rem;">
<div class="slds-checkbox_add-button">
<input type="checkbox" class="slds-assistive-text" id="add-checkbox-28" tabindex="-1" value="on" />
<label for="add-checkbox-28" class="slds-checkbox_faux">
<span class="slds-assistive-text">Select item 3</span>
</label>
</div>
</td>
<th scope="row">
<div class="slds-truncate" title="Analytics">Analytics</div>
</th>
<td role="gridcell">
<div class="slds-truncate" title="ANTLY">ANTLY</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="5000.00">5000.00</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="Analytics Product">Analytics Product</div>
</td>
</tr>
<tr class="slds-hint-parent">
<td role="gridcell" tabindex="-1" class="slds-text-align_right" style="width: 3.75rem;">
<div class="slds-checkbox_add-button">
<input type="checkbox" class="slds-assistive-text" id="add-checkbox-29" tabindex="-1" value="on" />
<label for="add-checkbox-29" class="slds-checkbox_faux">
<span class="slds-assistive-text">Select item 4</span>
</label>
</div>
</td>
<th scope="row">
<div class="slds-truncate" title="Analytics">Analytics</div>
</th>
<td role="gridcell">
<div class="slds-truncate" title="ANTLY">ANTLY</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="5000.00">5000.00</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="Analytics Product">Analytics Product</div>
</td>
</tr>
<tr class="slds-hint-parent">
<td role="gridcell" tabindex="-1" class="slds-text-align_right" style="width: 3.75rem;">
<div class="slds-checkbox_add-button">
<input type="checkbox" class="slds-assistive-text" id="add-checkbox-30" tabindex="-1" value="on" />
<label for="add-checkbox-30" class="slds-checkbox_faux">
<span class="slds-assistive-text">Select item 5</span>
</label>
</div>
</td>
<th scope="row">
<div class="slds-truncate" title="Analytics">Analytics</div>
</th>
<td role="gridcell">
<div class="slds-truncate" title="ANTLY">ANTLY</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="5000.00">5000.00</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="Analytics Product">Analytics Product</div>
</td>
</tr>
<tr class="slds-hint-parent">
<td role="gridcell" tabindex="-1" class="slds-text-align_right" style="width: 3.75rem;">
<div class="slds-checkbox_add-button">
<input type="checkbox" class="slds-assistive-text" id="add-checkbox-31" tabindex="-1" value="on" />
<label for="add-checkbox-31" class="slds-checkbox_faux">
<span class="slds-assistive-text">Select item 6</span>
</label>
</div>
</td>
<th scope="row">
<div class="slds-truncate" title="Analytics">Analytics</div>
</th>
<td role="gridcell">
<div class="slds-truncate" title="ANTLY">ANTLY</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="5000.00">5000.00</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="Analytics Product">Analytics Product</div>
</td>
</tr>
<tr class="slds-hint-parent">
<td role="gridcell" tabindex="-1" class="slds-text-align_right" style="width: 3.75rem;">
<div class="slds-checkbox_add-button">
<input type="checkbox" class="slds-assistive-text" id="add-checkbox-32" tabindex="-1" value="on" />
<label for="add-checkbox-32" class="slds-checkbox_faux">
<span class="slds-assistive-text">Select item 7</span>
</label>
</div>
</td>
<th scope="row">
<div class="slds-truncate" title="Analytics">Analytics</div>
</th>
<td role="gridcell">
<div class="slds-truncate" title="ANTLY">ANTLY</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="5000.00">5000.00</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="Analytics Product">Analytics Product</div>
</td>
</tr>
<tr class="slds-hint-parent">
<td role="gridcell" tabindex="-1" class="slds-text-align_right" style="width: 3.75rem;">
<div class="slds-checkbox_add-button">
<input type="checkbox" class="slds-assistive-text" id="add-checkbox-33" tabindex="-1" value="on" />
<label for="add-checkbox-33" class="slds-checkbox_faux">
<span class="slds-assistive-text">Select item 8</span>
</label>
</div>
</td>
<th scope="row">
<div class="slds-truncate" title="Analytics">Analytics</div>
</th>
<td role="gridcell">
<div class="slds-truncate" title="ANTLY">ANTLY</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="5000.00">5000.00</div>
</td>
<td role="gridcell">
<div class="slds-truncate" title="Analytics Product">Analytics Product</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<footer class="slds-modal__footer">
<button class="slds-button slds-button_neutral" onclick="{!c.cancelBtn}">Cancel</button>
<button class="slds-button slds-button_brand">Next</button>
</footer>
</div>
</section>
<div class="slds-backdrop slds-backdrop_open"></div>
</div>
</aura:component>
</code></pre>
<b>ListBuilderController.js </b><br />
<b><br /></b>
<b>below code line will dismiss the action button component popup.</b> <b><br /></b> <b><br /></b> <b><br /></b></div>
<pre style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 1px dashed rgb(204, 204, 204); color: black; font-family: arial; font-size: 12px; height: auto; line-height: 20px; overflow: auto; padding: 0px; text-align: left; width: 99%;"><code style="color: black; word-wrap: normal;"><span style="background-color: #f0f0f0;"> ({
cancelBtn : function(component, event, helper) {
//Close the action panel
</span><span style="background-color: yellow;">var dismissActionPanel = $A.get("e.force:closeQuickAction");
dismissActionPanel.fire(); </span><span style="background-color: #f0f0f0;">
}
})
</span></code></pre>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com4tag:blogger.com,1999:blog-4112120715957309558.post-76898577629252714172017-12-20T01:00:00.000-08:002018-03-27T02:11:32.384-07:00checkIn and Checkout feature with geolocation and time in salesforce <div dir="ltr" style="text-align: left;" trbidi="on">
<img height="236" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5paE0-gxxalYZ6xMkyyCyyIl0914e6cQmbAUvuLgMwrEHkU8zF96JDn92-5eGB_bO2v9JgXEXaII9NDc52r6_R-DffQf78_eqZIbTZAXSrYGhWjTEZ_sWvlgo2gcaaTshCXbRjX0pW2DE/s640/oppty+Checkin+Page.png" width="640" /><br />
<b><br /></b>
<b>Requirement</b>:<br />
Let's Suppose there is manufacturer industry and in this industry, there are 40 Sales Rep who do Sales activity for the company. so Each Sales Rep has there PJP( Permanent journey Plan). In this journey, each Sales Rep has to go and follow the Route Planned from start point to end point for Order Booking from Retailer.<br />
<br />
<b>Problem:</b><br />
Regional Sales Manager would like to track the position(geolocation) of the Sales Rep. By what time he has started the journey and where has ended with the order booking. as well as there checkIn Time and CheckOut Time with geolocation.<br />
<br />
<b>Solution:</b><br />
In my solution, I would like to show how CheckIn and CheckOut will work through visualforce page.<br />
This checkIn , Checkout feature is to tag the Geolocation of the user.<br />
<br />
<b>Solution Step by Step:</b><br />
<b><br /></b> <b>1. Create </b><span style="background-color: white; color: #2b2826; font-family: "salesforce sans" , "arial" , sans-serif; font-size: 14px;">Contact Check In <b>Object API Name </b></span><span style="background-color: white; color: #2b2826; font-family: "salesforce sans" , "arial" , sans-serif; font-size: 14px;">Contact_Check_In__c</span><br />
<span style="background-color: white; color: #2b2826; font-family: "salesforce sans" , "arial" , sans-serif; font-size: 14px;"><b>2.</b> Define following field on this Object</span><br />
<span style="background-color: white; color: #2b2826; font-family: "salesforce sans" , "arial" , sans-serif; font-size: 14px;"><br /></span>
<br />
<table border="0" cellpadding="0" cellspacing="0" data-aura-class="uiVirtualDataGrid--default uiVirtualDataGrid" data-aura-rendered-by="165:640;a" style="border-collapse: inherit; border-spacing: 0px; box-sizing: border-box; width: 729px;">
<colgroup><col style="mso-width-alt: 7253; mso-width-source: userset; width: 153pt;" width="204"></col> <col style="mso-width-alt: 7736; mso-width-source: userset; width: 163pt;" width="218"></col> <col style="mso-width-alt: 10922; mso-width-source: userset; width: 230pt;" width="307"></col> </colgroup><tbody>
<tr height="39" style="box-sizing: border-box; counter-increment: row-number 1; height: 29.4pt;">
<td class="xl65" height="39" style="box-sizing: border-box; height: 29.4pt; padding: 0.5rem; white-space: pre-line; width: 153pt;" width="204"><span data-aura-class="uiOutputText" data-aura-rendered-by="174:640;a" style="box-sizing: border-box;"><a data-aura-rendered-by="177:640;a" href="https://ap5.lightning.force.com/one/one.app#/setup/object/01I7F000001YwUT/FieldsAndRelationships/page?nodeId=ObjectManager&address=%2F00N7F00000B7PMp%3Fsetupid%3DCustomObjects%26retURL%3D%252Fsetup%252Fobject%252F01I7F000001YwUT%252Fall%252FFieldsAndRelationships" style="box-sizing: border-box; transition: color 0.1s linear;">Address</a></span></td>
<td class="xl66" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 163pt;" width="218"><span data-aura-class="uiOutputText" data-aura-rendered-by="181:640;a" style="box-sizing: border-box;">Address__c</span></td>
<td class="xl66" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 230pt;" width="307"><span data-aura-class="uiOutputText" data-aura-rendered-by="184:640;a" style="box-sizing: border-box;">Text Area(255)</span></td>
</tr>
<tr height="58" style="box-sizing: border-box; counter-increment: row-number 1; height: 43.8pt;">
<td class="xl65" height="58" style="box-sizing: border-box; height: 43.8pt; padding: 0.5rem; white-space: pre-line; width: 153pt;" width="204"><span data-aura-class="uiOutputText" data-aura-rendered-by="174:640;a" style="box-sizing: border-box;"><a data-aura-rendered-by="177:640;a" href="https://ap5.lightning.force.com/one/one.app#/setup/object/01I7F000001YwUT/FieldsAndRelationships/page?nodeId=ObjectManager&address=%2F00N7F00000B7DDD%3Fsetupid%3DCustomObjects%26retURL%3D%252Fsetup%252Fobject%252F01I7F000001YwUT%252Fall%252FFieldsAndRelationships" style="box-sizing: border-box; transition: color 0.1s linear;">CheckIn Date Time</a></span></td>
<td class="xl66" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 163pt;" width="218"><span data-aura-class="uiOutputText" data-aura-rendered-by="181:640;a" style="box-sizing: border-box;">CheckIn_Date_Time__c</span></td>
<td class="xl66" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 230pt;" width="307"><span data-aura-class="uiOutputText" data-aura-rendered-by="184:640;a" style="box-sizing: border-box;">Date/Time</span></td>
</tr>
<tr height="39" style="box-sizing: border-box; counter-increment: row-number 1; height: 29.4pt;">
<td class="xl65" height="39" style="box-sizing: border-box; height: 29.4pt; padding: 0.5rem; white-space: pre-line; width: 153pt;" width="204"><span data-aura-class="uiOutputText" data-aura-rendered-by="174:640;a" style="box-sizing: border-box;"><a data-aura-rendered-by="177:640;a" href="https://ap5.lightning.force.com/one/one.app#/setup/object/01I7F000001YwUT/FieldsAndRelationships/page?nodeId=ObjectManager&address=%2F00N7F00000B7SA5%3Fsetupid%3DCustomObjects%26retURL%3D%252Fsetup%252Fobject%252F01I7F000001YwUT%252Fall%252FFieldsAndRelationships" style="box-sizing: border-box; transition: color 0.1s linear;">Checkout Address</a></span></td>
<td class="xl66" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 163pt;" width="218"><span data-aura-class="uiOutputText" data-aura-rendered-by="181:640;a" style="box-sizing: border-box;">Checkout_Address__c</span></td>
<td class="xl66" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 230pt;" width="307"><span data-aura-class="uiOutputText" data-aura-rendered-by="184:640;a" style="box-sizing: border-box;">Text Area(255)</span></td>
</tr>
<tr height="58" style="box-sizing: border-box; counter-increment: row-number 1; height: 43.8pt;">
<td class="xl65" height="58" style="box-sizing: border-box; height: 43.8pt; padding: 0.5rem; white-space: pre-line; width: 153pt;" width="204"><span data-aura-class="uiOutputText" data-aura-rendered-by="174:640;a" style="box-sizing: border-box;"><a data-aura-rendered-by="177:640;a" href="https://ap5.lightning.force.com/one/one.app#/setup/object/01I7F000001YwUT/FieldsAndRelationships/page?nodeId=ObjectManager&address=%2F00N7F00000B7S9v%3Fsetupid%3DCustomObjects%26retURL%3D%252Fsetup%252Fobject%252F01I7F000001YwUT%252Fall%252FFieldsAndRelationships" style="box-sizing: border-box; transition: color 0.1s linear;">Checkout Date time</a></span></td>
<td class="xl66" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 163pt;" width="218"><span data-aura-class="uiOutputText" data-aura-rendered-by="181:640;a" style="box-sizing: border-box;">Checkout_Date_time__c</span></td>
<td class="xl66" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 230pt;" width="307"><span data-aura-class="uiOutputText" data-aura-rendered-by="184:640;a" style="box-sizing: border-box;">Date/Time</span></td>
</tr>
<tr height="39" style="box-sizing: border-box; counter-increment: row-number 1; height: 29.4pt; outline: 0px;">
<td class="xl67" height="39" style="box-sizing: border-box; height: 29.4pt; padding: 0.5rem; white-space: pre-line; width: 153pt;" width="204"><span data-aura-class="uiOutputText" data-aura-rendered-by="174:640;a" style="box-sizing: border-box;"><a data-aura-rendered-by="177:640;a" href="https://ap5.lightning.force.com/one/one.app#/setup/object/01I7F000001YwUT/FieldsAndRelationships/page?nodeId=ObjectManager&address=%2F00N7F00000B7DDI%3Fsetupid%3DCustomObjects%26retURL%3D%252Fsetup%252Fobject%252F01I7F000001YwUT%252Fall%252FFieldsAndRelationships" style="box-sizing: border-box; transition: color 0.1s linear;">Contact</a></span></td>
<td class="xl68" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 163pt;" width="218"><span data-aura-class="uiOutputText" data-aura-rendered-by="181:640;a" style="box-sizing: border-box;">Contact__c</span></td>
<td class="xl68" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 230pt;" width="307"><span data-aura-class="uiOutputText" data-aura-rendered-by="184:640;a" style="box-sizing: border-box;">Lookup(Contact)</span></td>
</tr>
<tr height="58" style="box-sizing: border-box; counter-increment: row-number 1; height: 43.8pt;">
<td class="xl65" height="58" style="box-sizing: border-box; height: 43.8pt; padding: 0.5rem; white-space: pre-line; width: 153pt;" width="204"><span data-aura-class="uiOutputText" data-aura-rendered-by="174:640;a" style="box-sizing: border-box;"><a data-aura-rendered-by="177:640;a" href="https://ap5.lightning.force.com/one/one.app#/setup/object/01I7F000001YwUT/FieldsAndRelationships/page?nodeId=ObjectManager&address=%2F_ui%2Fcommon%2Fconfig%2Ffield%2FStandardFieldAttributes%2Fd%3Fid%3DName%26type%3D01I7F000001YwUT%26retURL%3D%252Fsetup%252Fobject%252F01I7F000001YwUT%252Fall%252FFieldsAndRelationships" style="box-sizing: border-box; transition: color 0.1s linear;">Contact Check In Name</a></span></td>
<td class="xl66" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 163pt;" width="218"><span data-aura-class="uiOutputText" data-aura-rendered-by="181:640;a" style="box-sizing: border-box;">Name</span></td>
<td class="xl66" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 230pt;" width="307"><span data-aura-class="uiOutputText" data-aura-rendered-by="184:640;a" style="box-sizing: border-box;">Auto Number</span></td>
</tr>
<tr height="39" style="height: 29.4pt;">
<td class="xl67" height="39" style="height: 29.4pt; width: 153pt;" width="204"><span data-aura-class="uiOutputText" data-aura-rendered-by="174:640;a" style="box-sizing: border-box;"><a data-aura-rendered-by="177:640;a" href="https://ap5.lightning.force.com/one/one.app#/setup/object/01I7F000001YwUT/FieldsAndRelationships/page?nodeId=ObjectManager&address=%2F00N7F00000B7DDX%3Fsetupid%3DCustomObjects%26retURL%3D%252Fsetup%252Fobject%252F01I7F000001YwUT%252Fall%252FFieldsAndRelationships" style="box-sizing: border-box; transition: color 0.1s linear;">GeoLocation</a></span></td>
<td class="xl68" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 163pt;" width="218"><span data-aura-class="uiOutputText" data-aura-rendered-by="181:640;a" style="box-sizing: border-box;">GeoLocation__c</span></td>
<td class="xl68" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 230pt;" width="307"><span data-aura-class="uiOutputText" data-aura-rendered-by="184:640;a" style="box-sizing: border-box;">Geolocation</span></td>
</tr>
<tr height="39" style="height: 29.4pt;">
<td class="xl67" height="39" style="height: 29.4pt; width: 153pt;" width="204"><span data-aura-class="uiOutputText" data-aura-rendered-by="174:640;a" style="box-sizing: border-box;"><a data-aura-rendered-by="177:640;a" href="https://ap5.lightning.force.com/one/one.app#/setup/object/01I7F000001YwUT/FieldsAndRelationships/page?nodeId=ObjectManager&address=%2F00N7F00000B7PP5%3Fsetupid%3DCustomObjects%26retURL%3D%252Fsetup%252Fobject%252F01I7F000001YwUT%252Fall%252FFieldsAndRelationships" style="box-sizing: border-box; transition: color 0.1s linear;">Opportunity</a></span></td>
<td class="xl68" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 163pt;" width="218"><span data-aura-class="uiOutputText" data-aura-rendered-by="181:640;a" style="box-sizing: border-box;">Opportunity__c</span></td>
<td class="xl68" style="box-sizing: border-box; padding: 0.5rem; white-space: pre-line; width: 230pt;" width="307"><span data-aura-class="uiOutputText" data-aura-rendered-by="184:640;a" style="box-sizing: border-box;">Lookup(Opportunity</span></td></tr>
</tbody></table>
<br />
<ul style="text-align: left;">
<li><b>Create a VF Page with the following code:</b></li>
</ul>
<br />
<b>VF Page Name: </b><span style="font-family: "arial" , "helvetica" , sans-serif; font-size: 11.36px;">OpportunityCheckIn and following apex class: </span><span style="color: #0e84b5; font-weight: bold;">OpportunityCheckInController</span><span style="background-color: #f0f0f0;"></span><br />
<!-- HTML generated using hilite.me --><br />
<div style="background: #f0f0f0; border: none; overflow: auto; width: auto;">
<table><tbody>
<tr><td><pre style="line-height: 125%; margin: 0;"> 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97</pre>
</td><td><pre style="line-height: 125%; margin: 0;"><span style="color: #062873; font-weight: bold;"><apex:page</span> <span style="color: #4070a0;">standardController="opportunity"</span> <span style="color: #4070a0;">extensions="OpportunityCheckInController"</span> <span style="color: #4070a0;">lightningStylesheets="true"</span><span style="color: #062873; font-weight: bold;">></span>
<span style="color: #062873; font-weight: bold;"><apex:includeScript</span> <span style="color: #4070a0;">value="{!$Resource.gmap}"</span><span style="color: #062873; font-weight: bold;">/></span>
<span style="color: #062873; font-weight: bold;"><apex:slds</span> <span style="color: #062873; font-weight: bold;">/></span>
<span style="color: #062873; font-weight: bold;"><input</span> <span style="color: #4070a0;">type="button"</span> <span style="color: #4070a0;">value="Check In"</span> <span style="color: #4070a0;">onclick="checkIn()"</span> <span style="color: #4070a0;">class="slds-button slds-button_stateful .slds-is-selected slds-button_success"</span><span style="color: #062873; font-weight: bold;">/></span>
<span style="color: #062873; font-weight: bold;"><input</span> <span style="color: #4070a0;">type="button"</span> <span style="color: #4070a0;">value="Check Out"</span> <span style="color: #4070a0;">onclick="checkOut()"</span> <span style="color: #4070a0;">class="slds-button slds-button_stateful .slds-is-selected slds-button_destructive"</span><span style="color: #062873; font-weight: bold;">/></span>
<span style="color: #062873; font-weight: bold;"><script></span>
<span style="color: #007020; font-weight: bold;">function</span> checkIn(){
<span style="color: #007020; font-weight: bold;">var</span> oppId<span style="color: #666666;">=</span><span style="color: #4070a0;">'{!OppId}'</span>;
GMaps.geolocate({
success<span style="color: #666666;">:</span> <span style="color: #007020; font-weight: bold;">function</span>(position) {
alert(<span style="color: #4070a0;">'Doing Checkin for following lat: '</span> <span style="color: #666666;">+</span> position.coords.latitude <span style="color: #666666;">+</span><span style="color: #4070a0;">' and long: '</span> <span style="color: #666666;">+</span> position.coords.longitude );
<span style="color: #007020; font-weight: bold;">var</span> latlng <span style="color: #666666;">=</span> <span style="color: #007020; font-weight: bold;">new</span> google.maps.LatLng(position.coords.latitude, position.coords.longitude);
<span style="color: #007020; font-weight: bold;">var</span> address<span style="color: #666666;">=</span><span style="color: #4070a0;">''</span>;
<span style="color: #007020; font-weight: bold;">var</span> geocoder <span style="color: #666666;">=</span> geocoder <span style="color: #666666;">=</span> <span style="color: #007020; font-weight: bold;">new</span> google.maps.Geocoder();
geocoder.geocode({ <span style="color: #4070a0;">'latLng'</span><span style="color: #666666;">:</span> latlng }, <span style="color: #007020; font-weight: bold;">function</span> (results, status) {
<span style="color: #007020; font-weight: bold;">if</span> (status <span style="color: #666666;">==</span> google.maps.GeocoderStatus.OK) {
<span style="color: #007020; font-weight: bold;">if</span> (results[<span style="color: #40a070;">1</span>]) {
address<span style="color: #666666;">=</span>results[<span style="color: #40a070;">1</span>].formatted_address;
Visualforce.remoting.Manager.invokeAction(
<span style="color: #4070a0;">'{!$RemoteAction.OpportunityCheckInController.addCheckIns}'</span>,oppId,position.coords.latitude, position.coords.longitude, address,<span style="color: #007020; font-weight: bold;">function</span>(result, event) {console.log(result);alert(<span style="color: #4070a0;">'Check In Done. Successfully!'</span>);}
);
}
}
});
<span style="color: #60a0b0; font-style: italic;">//alert('long' + position.coords.longitude);</span>
map.setCenter(position.coords.latitude, position.coords.longitude);
},
error<span style="color: #666666;">:</span> <span style="color: #007020; font-weight: bold;">function</span>(error) {
alert(<span style="color: #4070a0;">'Geolocation failed: '</span><span style="color: #666666;">+</span>error.message);
},
not_supported<span style="color: #666666;">:</span> <span style="color: #007020; font-weight: bold;">function</span>() {
alert(<span style="color: #4070a0;">"Your browser does not support geolocation"</span>);
},
always<span style="color: #666666;">:</span> <span style="color: #007020; font-weight: bold;">function</span>() {
alert(<span style="color: #4070a0;">"Done!"</span>);
}
});
}
<span style="color: #007020; font-weight: bold;">function</span> checkOut(){
<span style="color: #007020; font-weight: bold;">var</span> oppId<span style="color: #666666;">=</span><span style="color: #4070a0;">'{!OppId}'</span>;
GMaps.geolocate({
success<span style="color: #666666;">:</span> <span style="color: #007020; font-weight: bold;">function</span>(position) {
alert(<span style="color: #4070a0;">'Doing CheckOut for following lat: '</span> <span style="color: #666666;">+</span> position.coords.latitude <span style="color: #666666;">+</span><span style="color: #4070a0;">' and long: '</span> <span style="color: #666666;">+</span> position.coords.longitude );
<span style="color: #007020; font-weight: bold;">var</span> latlng <span style="color: #666666;">=</span> <span style="color: #007020; font-weight: bold;">new</span> google.maps.LatLng(position.coords.latitude, position.coords.longitude);
<span style="color: #007020; font-weight: bold;">var</span> address<span style="color: #666666;">=</span><span style="color: #4070a0;">''</span>;
<span style="color: #007020; font-weight: bold;">var</span> geocoder <span style="color: #666666;">=</span> geocoder <span style="color: #666666;">=</span> <span style="color: #007020; font-weight: bold;">new</span> google.maps.Geocoder();
geocoder.geocode({ <span style="color: #4070a0;">'latLng'</span><span style="color: #666666;">:</span> latlng }, <span style="color: #007020; font-weight: bold;">function</span> (results, status) {
<span style="color: #007020; font-weight: bold;">if</span> (status <span style="color: #666666;">==</span> google.maps.GeocoderStatus.OK) {
<span style="color: #007020; font-weight: bold;">if</span> (results[<span style="color: #40a070;">1</span>]) {
address<span style="color: #666666;">=</span>results[<span style="color: #40a070;">1</span>].formatted_address;
Visualforce.remoting.Manager.invokeAction(
<span style="color: #4070a0;">'{!$RemoteAction.OpportunityCheckInController.addCheckOuts}'</span>,oppId,position.coords.latitude, position.coords.longitude, address,<span style="color: #007020; font-weight: bold;">function</span>(result, event) {console.log(result);alert(<span style="color: #4070a0;">'Check Out Done. Successfully!'</span>);}
);
}
}
});
<span style="color: #60a0b0; font-style: italic;">//alert('long' + position.coords.longitude);</span>
map.setCenter(position.coords.latitude, position.coords.longitude);
},
error<span style="color: #666666;">:</span> <span style="color: #007020; font-weight: bold;">function</span>(error) {
alert(<span style="color: #4070a0;">'Geolocation failed: '</span><span style="color: #666666;">+</span>error.message);
},
not_supported<span style="color: #666666;">:</span> <span style="color: #007020; font-weight: bold;">function</span>() {
alert(<span style="color: #4070a0;">"Your browser does not support geolocation"</span>);
},
always<span style="color: #666666;">:</span> <span style="color: #007020; font-weight: bold;">function</span>() {
alert(<span style="color: #4070a0;">"Done!"</span>);
}
});
}
<span style="color: #062873; font-weight: bold;"></script></span>
<span style="color: #062873; font-weight: bold;"><script </span><span style="color: #4070a0;">src="https://maps.googleapis.com/maps/api/js?key=AIzaSyBqqej11sosokXGaQTk_-Zw9AIXMVkXoAE&callback=loadMap"</span><span style="color: #062873; font-weight: bold;">></span>
<span style="color: #062873; font-weight: bold;"></script></span>
<span style="color: #062873; font-weight: bold;"><div</span> <span style="color: #4070a0;">id="map"</span><span style="color: #062873; font-weight: bold;">/></span>
<span style="color: #062873; font-weight: bold;"></apex:page></span>
</pre>
</td></tr>
</tbody></table>
</div>
<!-- HTML generated using hilite.me --><br />
<div style="background: #f0f0f0; border: none; overflow: auto; width: auto;">
<table><tbody>
<tr><td><pre style="line-height: 125%; margin: 0;"> 1</pre>
<pre style="line-height: 125%; margin: 0;"> 2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37</pre>
</td><td><pre style="line-height: 125%; margin: 0;"><span style="color: #007020; font-weight: bold;">public</span> <span style="color: #007020; font-weight: bold;">class</span> <span style="color: #0e84b5; font-weight: bold;">OpportunityCheckInController</span> <span style="color: #666666;">{</span>
<span style="color: #007020; font-weight: bold;">public</span> Id OppId<span style="color: #666666;">{</span>get<span style="color: #666666;">;</span>set<span style="color: #666666;">;}</span>
<span style="color: #007020; font-weight: bold;">public</span> <span style="color: #06287e;">OpportunityCheckInController</span><span style="color: #666666;">(</span>ApexPages<span style="color: #666666;">.</span><span style="color: #4070a0;">StandardController</span> controller<span style="color: #666666;">)</span> <span style="color: #666666;">{</span>
OppId<span style="color: #666666;">=</span><span style="border: 1px solid #FF0000;">'</span><span style="color: #40a070;">0067</span>F000006Qd3NQAS<span style="border: 1px solid #FF0000;">'</span><span style="color: #666666;">;</span>
OppId<span style="color: #666666;">=</span>controller<span style="color: #666666;">.</span><span style="color: #4070a0;">getRecord</span><span style="color: #666666;">().</span><span style="color: #4070a0;">Id</span><span style="color: #666666;">;</span>
<span style="color: #666666;">}</span>
<span style="color: #555555; font-weight: bold;">@RemoteAction</span>
<span style="color: #007020; font-weight: bold;">public</span> <span style="color: #007020; font-weight: bold;">static</span> <span style="color: #902000;">void</span> <span style="color: #06287e;">addCheckIns</span><span style="color: #666666;">(</span>string OppId<span style="color: #666666;">,</span>decimal lat<span style="color: #666666;">,</span> decimal lng<span style="color: #666666;">,</span>string address<span style="color: #666666;">){</span>
Contact_Check_In__c ConCheckIn<span style="color: #666666;">=</span><span style="color: #007020; font-weight: bold;">new</span> Contact_Check_In__c<span style="color: #666666;">();</span>
ConCheckIn<span style="color: #666666;">.</span><span style="color: #4070a0;">CheckIn_Date_Time__c</span><span style="color: #666666;">=</span>system<span style="color: #666666;">.</span><span style="color: #4070a0;">now</span><span style="color: #666666;">();</span>
ConCheckIn<span style="color: #666666;">.</span><span style="color: #4070a0;">GeoLocation__latitude__s</span><span style="color: #666666;">=</span>lat<span style="color: #666666;">;</span>
ConCheckIn<span style="color: #666666;">.</span><span style="color: #4070a0;">GeoLocation__longitude__s</span><span style="color: #666666;">=</span>lng<span style="color: #666666;">;</span>
<span style="color: #60a0b0; font-style: italic;">//ConCheckIn.Contact__c=ContId;</span>
ConCheckIn<span style="color: #666666;">.</span><span style="color: #4070a0;">Opportunity__c</span><span style="color: #666666;">=</span>OppId<span style="color: #666666;">;</span>
ConCheckIn<span style="color: #666666;">.</span><span style="color: #4070a0;">Address__c</span><span style="color: #666666;">=</span>address<span style="color: #666666;">;</span>
insert ConCheckIn<span style="color: #666666;">;</span>
<span style="color: #666666;">}</span>
<span style="color: #555555; font-weight: bold;">@RemoteAction</span>
<span style="color: #007020; font-weight: bold;">public</span> <span style="color: #007020; font-weight: bold;">static</span> <span style="color: #902000;">void</span> <span style="color: #06287e;">addCheckOuts</span><span style="color: #666666;">(</span>string OppId<span style="color: #666666;">,</span>decimal lat<span style="color: #666666;">,</span> decimal lng<span style="color: #666666;">,</span>string address<span style="color: #666666;">){</span>
Contact_Check_In__c ConCheckIn<span style="color: #666666;">=</span><span style="color: #007020; font-weight: bold;">new</span> Contact_Check_In__c<span style="color: #666666;">();</span>
ConCheckIn<span style="color: #666666;">.</span><span style="color: #4070a0;">Checkout_Date_time__c</span><span style="color: #666666;">=</span>system<span style="color: #666666;">.</span><span style="color: #4070a0;">now</span><span style="color: #666666;">();</span>
ConCheckIn<span style="color: #666666;">.</span><span style="color: #4070a0;">GeoLocation__latitude__s</span><span style="color: #666666;">=</span>lat<span style="color: #666666;">;</span>
ConCheckIn<span style="color: #666666;">.</span><span style="color: #4070a0;">GeoLocation__longitude__s</span><span style="color: #666666;">=</span>lng<span style="color: #666666;">;</span>
<span style="color: #60a0b0; font-style: italic;">//ConCheckIn.Contact__c=ContId;</span>
ConCheckIn<span style="color: #666666;">.</span><span style="color: #4070a0;">Opportunity__c</span><span style="color: #666666;">=</span>OppId<span style="color: #666666;">;</span>
ConCheckIn<span style="color: #666666;">.</span><span style="color: #4070a0;">Checkout_Address__c</span><span style="color: #666666;">=</span>address<span style="color: #666666;">;</span>
insert ConCheckIn<span style="color: #666666;">;</span>
<span style="color: #666666;">}</span>
</pre>
<pre style="line-height: 125%; margin: 0;">
<span style="color: #666666;">}</span>
</pre>
</td></tr>
</tbody></table>
</div>
<div style="background: #f0f0f0; border: none; overflow: auto; width: auto;">
<br /></div>
<div style="background: #f0f0f0; border: none; overflow: auto; width: auto;">
<br /></div>
<div style="background: #f0f0f0; border: none; overflow: auto; width: auto;">
<br /></div>
<div style="background: #f0f0f0; border: none; overflow: auto; width: auto;">
<br /></div>
<div style="background: #f0f0f0; border: none; overflow: auto; width: auto;">
<br /></div>
<br />
Now embed this VF page on your Opportunity Page. your opportunity Page will look this.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5paE0-gxxalYZ6xMkyyCyyIl0914e6cQmbAUvuLgMwrEHkU8zF96JDn92-5eGB_bO2v9JgXEXaII9NDc52r6_R-DffQf78_eqZIbTZAXSrYGhWjTEZ_sWvlgo2gcaaTshCXbRjX0pW2DE/s1600/oppty+Checkin+Page.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="599" data-original-width="1600" height="236" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh5paE0-gxxalYZ6xMkyyCyyIl0914e6cQmbAUvuLgMwrEHkU8zF96JDn92-5eGB_bO2v9JgXEXaII9NDc52r6_R-DffQf78_eqZIbTZAXSrYGhWjTEZ_sWvlgo2gcaaTshCXbRjX0pW2DE/s640/oppty+Checkin+Page.png" width="640" /></a></div>
<br />
<br />
<br />
<br />
Once user will hit checkIn button it will save the CheckIn time, geolocation in Contact Checkin Object.<br />
<br />
Now Regional Sales Manager have a Tab where he can see there Sales Rep position.<br />
<br />
this will look like this<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifIwuoKx38e8fsjuXz3Ldtjj-GVQM3BBpAS6HHOUpeVc89AVJXFWDn816M8W_HID0zvMvXTI405ePjgrjJk8IHc0KC-F0_Mrn1VrHdNWD1xxwwhjr3pDZdsIC4rNm-0m4u6Y1GJ2_-alkE/s1600/oppty+Checkin+Page.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="674" data-original-width="1600" height="268" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEifIwuoKx38e8fsjuXz3Ldtjj-GVQM3BBpAS6HHOUpeVc89AVJXFWDn816M8W_HID0zvMvXTI405ePjgrjJk8IHc0KC-F0_Mrn1VrHdNWD1xxwwhjr3pDZdsIC4rNm-0m4u6Y1GJ2_-alkE/s640/oppty+Checkin+Page.png" width="640" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
For the above, we have following Visual force Page and Apex Class</div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<div class="separator" style="clear: both; text-align: left;">
<br /></div>
<br />
<!-- HTML generated using hilite.me --><br />
<div style="background: #f0f0f0; border: none; overflow: auto; width: auto;">
<table><tbody>
<tr><td><pre style="line-height: 125%; margin: 0;"> 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86</pre>
</td><td><pre style="line-height: 125%; margin: 0;"><span style="color: #062873; font-weight: bold;"><apex:page</span> <span style="color: #4070a0;">controller="MyCheckInController"</span> <span style="color: #4070a0;">lightningStylesheets="true"</span> <span style="color: #4070a0;">docType="HTML-5.0"</span><span style="color: #062873; font-weight: bold;">></span>
<span style="color: #062873; font-weight: bold;"><html></span>
<span style="color: #062873; font-weight: bold;"><head></span>
<span style="color: #062873; font-weight: bold;"><title></span>Check In Detail<span style="color: #062873; font-weight: bold;"></title></span>
<span style="color: #062873; font-weight: bold;"><style></span>
<span style="color: #60a0b0; font-style: italic;">/* Always set the map height explicitly to define the size of the div</span>
<span style="color: #60a0b0; font-style: italic;"> * element that contains the map. */</span>
<span style="color: #06287e;">#map</span> {
<span style="color: #007020; font-weight: bold;">height</span><span style="color: #666666;">:</span> <span style="color: #40a070;">90</span><span style="color: #666666;">%</span>;
}
<span style="color: #60a0b0; font-style: italic;">/* Optional: Makes the sample page fill the window. */</span>
<span style="color: #062873; font-weight: bold;">html</span><span style="color: #666666;">,</span> <span style="color: #062873; font-weight: bold;">body</span> {
<span style="color: #007020; font-weight: bold;">height</span><span style="color: #666666;">:</span> <span style="color: #40a070;">90</span><span style="color: #666666;">%</span>;
<span style="color: #007020; font-weight: bold;">margin</span><span style="color: #666666;">:</span> <span style="color: #40a070;">0</span>;
<span style="color: #007020; font-weight: bold;">padding</span><span style="color: #666666;">:</span> <span style="color: #40a070;">0</span>;
}
<span style="color: #062873; font-weight: bold;"></style></span>
<span style="color: #062873; font-weight: bold;"></head></span>
<span style="color: #062873; font-weight: bold;"><body</span> <span style="color: #4070a0;">onload =</span><span style="border: 1px solid #FF0000;"> </span><span style="color: #4070a0;">"loadMap()"</span><span style="color: #062873; font-weight: bold;">></span>
<span style="color: #062873; font-weight: bold;"><h2></span>Sales Rep Check In Detail<span style="color: #062873; font-weight: bold;"></h2></span>
<span style="color: #062873; font-weight: bold;"><div</span> <span style="color: #4070a0;">id =</span><span style="border: 1px solid #FF0000;"> </span><span style="color: #4070a0;">"map"</span> <span style="color: #062873; font-weight: bold;">></div></span>
<span style="color: #062873; font-weight: bold;"><script></span>
<span style="color: #007020; font-weight: bold;">function</span> loadMap() {
<span style="color: #60a0b0; font-style: italic;">// Initialize Google Maps</span>
<span style="color: #007020; font-weight: bold;">const</span> mapOptions <span style="color: #666666;">=</span> {
center<span style="color: #666666;">:</span><span style="color: #007020; font-weight: bold;">new</span> google.maps.LatLng(<span style="color: #40a070;">28.59244000</span>,<span style="color: #40a070;">77.32267000</span>),
zoom<span style="color: #666666;">:</span> <span style="color: #40a070;">13</span>
}
<span style="color: #007020; font-weight: bold;">const</span> map <span style="color: #666666;">=</span> <span style="color: #007020; font-weight: bold;">new</span> google.maps.Map(<span style="color: #007020;">document</span>.getElementById(<span style="color: #4070a0;">"map"</span>), mapOptions);
<span style="color: #007020; font-weight: bold;">var</span> text <span style="color: #666666;">=</span> <span style="color: #4070a0;">'{!JsonCheckInData}'</span>;
<span style="color: #007020; font-weight: bold;">var</span> iconBase <span style="color: #666666;">=</span> <span style="color: #4070a0;">'https://maps.google.com/mapfiles/kml/shapes/'</span>;
<span style="color: #007020; font-weight: bold;">var</span> icons <span style="color: #666666;">=</span> {
parking<span style="color: #666666;">:</span> {
icon<span style="color: #666666;">:</span> iconBase <span style="color: #666666;">+</span> <span style="color: #4070a0;">'parking_lot_maps.png'</span>
},
library<span style="color: #666666;">:</span> {
icon<span style="color: #666666;">:</span> iconBase <span style="color: #666666;">+</span> <span style="color: #4070a0;">'library_maps.png'</span>
},
info<span style="color: #666666;">:</span> {
icon<span style="color: #666666;">:</span> iconBase <span style="color: #666666;">+</span> <span style="color: #4070a0;">'info-i_maps.png'</span>
}
};
<span style="color: #007020; font-weight: bold;">var</span> obj <span style="color: #666666;">=</span> JSON.parse(text);
<span style="color: #60a0b0; font-style: italic;">//alert(obj);</span>
<span style="color: #60a0b0; font-style: italic;">//return obj;</span>
<span style="color: #007020; font-weight: bold;">var</span> x;
<span style="color: #007020; font-weight: bold;">var</span> jsonData<span style="color: #666666;">=</span><span style="color: #4070a0;">''</span>;
<span style="color: #007020; font-weight: bold;">var</span> loc1<span style="color: #666666;">=</span><span style="color: #4070a0;">''</span>;
<span style="color: #007020; font-weight: bold;">var</span> loc2;
<span style="color: #007020; font-weight: bold;">var</span> address<span style="color: #666666;">=</span><span style="color: #4070a0;">''</span>;
<span style="color: #007020; font-weight: bold;">for</span> (x <span style="color: #007020; font-weight: bold;">in</span> obj) {
temp<span style="color: #666666;">=</span>obj[x].location.split(<span style="color: #4070a0;">","</span>);
loc1<span style="color: #666666;">=</span>temp[<span style="color: #40a070;">0</span>].replace(<span style="color: #4070a0;">"["</span>, <span style="color: #4070a0;">""</span>);
loc2<span style="color: #666666;">=</span>temp[<span style="color: #40a070;">1</span>].replace(<span style="color: #4070a0;">"]"</span>, <span style="color: #4070a0;">""</span>);
<span style="color: #007020; font-weight: bold;">let</span> marker <span style="color: #666666;">=</span> <span style="color: #007020; font-weight: bold;">new</span> google.maps.Marker({
map<span style="color: #666666;">:</span> map,
icon<span style="color: #666666;">:</span>icons[<span style="color: #4070a0;">'library'</span>].icon,
position<span style="color: #666666;">:</span> <span style="color: #007020; font-weight: bold;">new</span> google.maps.LatLng(loc1, loc2),
title<span style="color: #666666;">:</span> <span style="color: #4070a0;">'Person Name:'</span> <span style="color: #666666;">+</span> obj[x].name <span style="color: #666666;">+</span> <span style="color: #4070a0;">' CheckIn:'</span> <span style="color: #666666;">+</span>obj[x].checkIn
})
}
}
<span style="color: #062873; font-weight: bold;"></script></span>
<span style="color: #60a0b0; font-style: italic;"><!--<script src = "https://maps.googleapis.com/maps/api/js"></script>--></span>
<span style="color: #062873; font-weight: bold;"><script </span><span style="color: #4070a0;">src="https://maps.googleapis.com/maps/api/js?key=AIzaSyBqqej11sosokXGaQTk_-Zw9AIXMVkXoAE&callback=loadMap"</span><span style="color: #062873; font-weight: bold;">></span>
<span style="color: #062873; font-weight: bold;"></script></span>
{!JsonCheckInData}
<span style="color: #062873; font-weight: bold;"></body></span>
<span style="color: #062873; font-weight: bold;"></html></span>
<span style="color: #062873; font-weight: bold;"></apex:page></span>
</pre>
</td></tr>
</tbody></table>
</div>
<div>
This is the Apex class<br />
<br />
<br />
<br /></div>
<!-- HTML generated using hilite.me --><br />
<div style="background: #f0f0f0; border: none; overflow: auto; width: auto;">
<table><tbody>
<tr><td><pre style="line-height: 125%; margin: 0;"> 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46</pre>
</td><td><pre style="line-height: 125%; margin: 0;"><span style="color: #007020; font-weight: bold;">public</span> <span style="color: #007020; font-weight: bold;">class</span> <span style="color: #0e84b5; font-weight: bold;">MyCheckInController</span> <span style="color: #666666;">{</span>
<span style="color: #007020; font-weight: bold;">public</span> list<span style="color: #666666;"><</span>Contact_Check_In__c<span style="color: #666666;">></span> LstContactCheckIn<span style="color: #666666;">{</span>get<span style="color: #666666;">;</span>set<span style="color: #666666;">;}</span>
<span style="color: #007020; font-weight: bold;">public</span> string JsonCheckInData<span style="color: #666666;">{</span>get<span style="color: #666666;">;</span>set<span style="color: #666666;">;}</span>
<span style="color: #007020; font-weight: bold;">public</span> <span style="color: #06287e;">MyCheckInController</span><span style="color: #666666;">(){</span>
LstContactCheckIn<span style="color: #666666;">=[</span>Select Id<span style="color: #666666;">,</span> CheckIn_Date_Time__c<span style="color: #666666;">,</span> GeoLocation__latitude__s<span style="color: #666666;">,</span> GeoLocation__longitude__s<span style="color: #666666;">,</span> Contact__r<span style="color: #666666;">.</span><span style="color: #4070a0;">Name</span> from Contact_Check_In__c<span style="color: #666666;">];</span>
list<span style="color: #666666;"><</span>WrpData<span style="color: #666666;">></span> lstWrpData<span style="color: #666666;">=</span><span style="color: #007020; font-weight: bold;">new</span> list<span style="color: #666666;"><</span>WrpData<span style="color: #666666;">>();</span>
<span style="color: #007020; font-weight: bold;">for</span><span style="color: #666666;">(</span>Contact_Check_In__c <span style="color: #002070; font-weight: bold;">Check:</span>LstContactCheckIn<span style="color: #666666;">){</span>
string strLocation<span style="color: #666666;">=</span><span style="color: #4070a0;">'['</span> <span style="color: #666666;">+</span> string<span style="color: #666666;">.</span><span style="color: #4070a0;">valueOf</span><span style="color: #666666;">(</span>check<span style="color: #666666;">.</span><span style="color: #4070a0;">GeoLocation__latitude__s</span><span style="color: #666666;">)</span> <span style="color: #666666;">+</span> <span style="color: #4070a0;">','</span> <span style="color: #666666;">+</span> string<span style="color: #666666;">.</span><span style="color: #4070a0;">valueOf</span><span style="color: #666666;">(</span>check<span style="color: #666666;">.</span><span style="color: #4070a0;">GeoLocation__longitude__s</span><span style="color: #666666;">)+</span> <span style="color: #4070a0;">']'</span><span style="color: #666666;">;</span>
WrpData wrp<span style="color: #666666;">=</span><span style="color: #007020; font-weight: bold;">new</span> WrpData<span style="color: #666666;">(</span>check<span style="color: #666666;">.</span><span style="color: #4070a0;">Contact__r</span><span style="color: #666666;">.</span><span style="color: #4070a0;">Name</span><span style="color: #666666;">,</span> strLocation<span style="color: #666666;">,</span> string<span style="color: #666666;">.</span><span style="color: #4070a0;">ValueOf</span><span style="color: #666666;">(</span>check<span style="color: #666666;">.</span><span style="color: #4070a0;">CheckIn_Date_Time__c</span><span style="color: #666666;">),</span>string<span style="color: #666666;">.</span><span style="color: #4070a0;">valueOf</span><span style="color: #666666;">(</span>check<span style="color: #666666;">.</span><span style="color: #4070a0;">GeoLocation__latitude__s</span><span style="color: #666666;">),</span>string<span style="color: #666666;">.</span><span style="color: #4070a0;">valueOf</span><span style="color: #666666;">(</span>check<span style="color: #666666;">.</span><span style="color: #4070a0;">GeoLocation__longitude__s</span><span style="color: #666666;">));</span>
lstWrpData<span style="color: #666666;">.</span><span style="color: #4070a0;">add</span><span style="color: #666666;">(</span>wrp<span style="color: #666666;">);</span>
<span style="color: #666666;">}</span>
JsonCheckInData<span style="color: #666666;">=</span>Json<span style="color: #666666;">.</span><span style="color: #4070a0;">Serialize</span><span style="color: #666666;">(</span>lstWrpData<span style="color: #666666;">);</span>
<span style="color: #666666;">}</span>
<span style="color: #007020; font-weight: bold;">public</span> <span style="color: #007020; font-weight: bold;">class</span> <span style="color: #0e84b5; font-weight: bold;">WrpData</span><span style="color: #666666;">{</span>
<span style="color: #007020; font-weight: bold;">public</span> string name<span style="color: #666666;">{</span>get<span style="color: #666666;">;</span>set<span style="color: #666666;">;}</span>
<span style="color: #007020; font-weight: bold;">public</span> string location<span style="color: #666666;">{</span>get<span style="color: #666666;">;</span>set<span style="color: #666666;">;}</span>
<span style="color: #007020; font-weight: bold;">public</span> string checkIn<span style="color: #666666;">{</span>get<span style="color: #666666;">;</span>set<span style="color: #666666;">;}</span>
<span style="color: #007020; font-weight: bold;">public</span> string lat<span style="color: #666666;">{</span>get<span style="color: #666666;">;</span>set<span style="color: #666666;">;}</span>
<span style="color: #007020; font-weight: bold;">public</span> string lng<span style="color: #666666;">{</span>get<span style="color: #666666;">;</span>set<span style="color: #666666;">;}</span>
<span style="color: #007020; font-weight: bold;">public</span> <span style="color: #06287e;">WrpData</span><span style="color: #666666;">(</span>string nm<span style="color: #666666;">,</span>string loc<span style="color: #666666;">,</span>string chkIn<span style="color: #666666;">,</span> string lt<span style="color: #666666;">,</span>string ln<span style="color: #666666;">){</span>
name<span style="color: #666666;">=</span>nm<span style="color: #666666;">;</span>
location<span style="color: #666666;">=</span>loc<span style="color: #666666;">;</span>
checkIn<span style="color: #666666;">=</span>chkIn<span style="color: #666666;">;</span>
lat<span style="color: #666666;">=</span>lt<span style="color: #666666;">;</span>
lng<span style="color: #666666;">=</span>ln<span style="color: #666666;">;</span>
<span style="color: #666666;">}</span>
<span style="color: #666666;">}</span>
<span style="color: #666666;">}</span>
</pre>
</td></tr>
</tbody></table>
</div>
<div>
<br />
<br />
<span style="background-color: yellow;"><span style="color: red;">Note: from both the VF page please change your key. you can grab this key from Google map Account.</span></span><br />
<br />
<pre style="line-height: 16.25px;"><span style="color: #4070a0;"><span style="background-color: #f0f0f0;">src="https://maps.googleapis.com/maps/api/js?</span><span style="background-color: yellow;">key=AIzaSyBqqej11sosokXGaQTk_-Zw9AIXMVkXoAE</span><span style="background-color: #f0f0f0;">&callback=loadMap</span></span></pre>
<pre style="background-color: #f0f0f0; line-height: 16.25px;"><span style="color: #4070a0;">
</span></pre>
<br />
here is the gmap JS file . Static Resource<br />
<br />
<br />
<a href="https://drive.google.com/file/d/1BZN5avbHk0hFfsTde0YNfziT-l1HMF-V/view?usp=sharing" target="_blank">ResorceMap</a><br />
happy coding!! happy sharing.</div>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com5tag:blogger.com,1999:blog-4112120715957309558.post-91411273064913841972017-07-15T07:05:00.000-07:002018-03-27T02:11:53.690-07:00Salesforce Connect or Lightning Connect<div dir="ltr" style="text-align: left;" trbidi="on">
Salesforce Connect in 3 Steps:<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzNQfB-lW9DlS6uPFQEk6OZ5XEe6t3NJmqM-bvdTHyV1s-dHYZ5BopSQjzbbSia8xJgC-b-MMc3F8LkSBn3UQIlvvZP7QAD_JrmKPfz4RmaWUPbfmRTbY3oNMu_O4N_tSkoIqpDjqEG-8D/s1600/Slide1.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="720" data-original-width="1280" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhzNQfB-lW9DlS6uPFQEk6OZ5XEe6t3NJmqM-bvdTHyV1s-dHYZ5BopSQjzbbSia8xJgC-b-MMc3F8LkSBn3UQIlvvZP7QAD_JrmKPfz4RmaWUPbfmRTbY3oNMu_O4N_tSkoIqpDjqEG-8D/s640/Slide1.GIF" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAxKJ90uvdYGniNDp__DJ7eK0NMEpp9RE0uHshdHOd2rlus7vgOYynr8LGNTUn4HUaMaOJB7Xou0ZJC3cMsrPyQ6sEOhRMCixuNBzS-UfVwKGO2wp3V7R_GW08AAZ34MZXQ6pJABdGNeSW/s1600/Slide2.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="720" data-original-width="1280" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgAxKJ90uvdYGniNDp__DJ7eK0NMEpp9RE0uHshdHOd2rlus7vgOYynr8LGNTUn4HUaMaOJB7Xou0ZJC3cMsrPyQ6sEOhRMCixuNBzS-UfVwKGO2wp3V7R_GW08AAZ34MZXQ6pJABdGNeSW/s640/Slide2.GIF" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJrL4S0GvnKjrI-CDh5wliYfRG6Ly9IayssyP43vhfivh3BgVM3Bu9ZHhcmnRZeDLcRMbFBZnc6Dzx5WK6v1zn4wkC_V4C7yhjqIZXci1WTYuSZYj4ZfMRDUMuWtkv5BRtruNF_LB9Ns4y/s1600/Slide3.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="720" data-original-width="1280" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiJrL4S0GvnKjrI-CDh5wliYfRG6Ly9IayssyP43vhfivh3BgVM3Bu9ZHhcmnRZeDLcRMbFBZnc6Dzx5WK6v1zn4wkC_V4C7yhjqIZXci1WTYuSZYj4ZfMRDUMuWtkv5BRtruNF_LB9Ns4y/s640/Slide3.GIF" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipoOYHRXIUOzk-WMYmjDXDLSw93pDVaVOB6podsWJD6EBOrjpdUDc6IspIHV3lRgl4eJceZgBafneiJ4ReSoFO8h4zZgtcH1sAREmRe4Ols51zO6c42Mw5BNI7MQ3Cn7G4ebOQ_1nKT00e/s1600/Slide4.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="720" data-original-width="1280" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEipoOYHRXIUOzk-WMYmjDXDLSw93pDVaVOB6podsWJD6EBOrjpdUDc6IspIHV3lRgl4eJceZgBafneiJ4ReSoFO8h4zZgtcH1sAREmRe4Ols51zO6c42Mw5BNI7MQ3Cn7G4ebOQ_1nKT00e/s640/Slide4.GIF" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbde1-WUpgw7lIM_RCLBtw7rWw9_FXEqBf_O2F4fM1F7mrT9y2fNzbtyAWao7roel5WUOn2EugO_XCfj_9eSegsZMRs2jBJS2zu-FiOCBgu6qMaX3EpwCJ_6MTG5n5ZGrq7hdtaAZ9RB0v/s1600/Slide5.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="720" data-original-width="1280" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjbde1-WUpgw7lIM_RCLBtw7rWw9_FXEqBf_O2F4fM1F7mrT9y2fNzbtyAWao7roel5WUOn2EugO_XCfj_9eSegsZMRs2jBJS2zu-FiOCBgu6qMaX3EpwCJ_6MTG5n5ZGrq7hdtaAZ9RB0v/s640/Slide5.GIF" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0TqHpihsMZz-0ujCAfSzWtg08O0fXvlJMg11cblZyiKeJjLZzSN-BlSMYgPxcBeQp8sxzlmH_CSRgdajYVmvnDWKORte8A3C-e6FYRBz4CCzrYVONLjvlJXVRACQpRMFXY7KqefHsgd8J/s1600/Slide6.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="720" data-original-width="1280" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi0TqHpihsMZz-0ujCAfSzWtg08O0fXvlJMg11cblZyiKeJjLZzSN-BlSMYgPxcBeQp8sxzlmH_CSRgdajYVmvnDWKORte8A3C-e6FYRBz4CCzrYVONLjvlJXVRACQpRMFXY7KqefHsgd8J/s640/Slide6.GIF" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwIjOZ14tFkU9SmwKh0jFhxzCjs9__5WUU29iXjdT2TsPw4OSlcbYDK2-GipEc13xgvEOVPGDo9MsDs05jMtt4EH8-1PbnLJmXyM9SlHDsHiVzDtdgVzLd21m1Ij3HRY6IxnlJymQSlTiM/s1600/Slide7.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="720" data-original-width="1280" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhwIjOZ14tFkU9SmwKh0jFhxzCjs9__5WUU29iXjdT2TsPw4OSlcbYDK2-GipEc13xgvEOVPGDo9MsDs05jMtt4EH8-1PbnLJmXyM9SlHDsHiVzDtdgVzLd21m1Ij3HRY6IxnlJymQSlTiM/s640/Slide7.GIF" width="640" /></a></div>
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8nkZ8WCJV3oLMxVoOODyF_BEE6l4ml-K1bdq5Zu0hY8xkq77ALRRNE4wFss0Gj2pwaZ9juj4SnNyYxHu9ILmav3RYEtX6bM8VIdsYQLVXQWCkTT_IttbEXSaUG6jvnyogpL3QiuJu4Hfq/s1600/Slide8.GIF" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="720" data-original-width="1280" height="360" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj8nkZ8WCJV3oLMxVoOODyF_BEE6l4ml-K1bdq5Zu0hY8xkq77ALRRNE4wFss0Gj2pwaZ9juj4SnNyYxHu9ILmav3RYEtX6bM8VIdsYQLVXQWCkTT_IttbEXSaUG6jvnyogpL3QiuJu4Hfq/s640/Slide8.GIF" width="640" /></a></div>
ppt Link: https://drive.google.com/open?id=0Bxf9DE6m8cU0cGR4Mk5Wb2l3enc<br />
Video Link:<br />
https://www.youtube.com/watch?v=tfkeKfWSsgs&feature=youtu.be</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com0tag:blogger.com,1999:blog-4112120715957309558.post-81267255098187240852017-07-08T17:35:00.004-07:002018-03-27T02:12:11.079-07:00Okta Integration with Salesforce Quick Reference Guide<div dir="ltr" style="text-align: left;" trbidi="on">
<h2 style="text-align: left;">
<span style="font-family: "calibri" , sans-serif; font-size: 11.0pt;"> <b>Okta Integration with Salesforce Quick Reference Guide</b></span></h2>
<div>
<span style="font-family: "calibri" , sans-serif; font-size: 11.0pt;"><b><br /></b></span></div>
<div>
<span style="font-family: "calibri" , sans-serif; font-size: 11.0pt;"><b>Requirement:</b></span></div>
<div>
<div class="MsoNormal">
</div>
<ul style="text-align: left;">
<li>Before beginning at this project, organization is looking SSO for Salesforce on high priority.</li>
<li>To Enable SSO for user in Salesforce and Restrict them to do not Allow them login from Salesforce Login URL</li>
<li>And System user/API User should be able to Login as is. See the Below Steps for implementation of the Same.</li>
</ul>
<div>
<b>Solution:</b></div>
<div>
<br /></div>
<div>
<ul style="text-align: left;">
<li>Enable Single Sign on<span style="font-family: "calibri" , sans-serif; font-size: 11pt;"> Setting in Salesforce and user Provision in Okta</span></li>
</ul>
<ol style="text-align: left;"><ul>
<li> <span style="text-indent: -0.25in;">Enable Single </span>Sign on<span style="text-indent: -0.25in;"> Setting with Okta in Salesforce please refer </span>following<span style="text-indent: -0.25in;"> link</span><span style="font-size: 7pt; font-stretch: normal; font-variant-numeric: normal; line-height: normal;"> </span><a href="http://saml-doc.okta.com/SAML_Docs/How-to-Configure-SAML-2.0-in-Salesforce.html?baseAdminUrl=https://dev-145554-admin.oktapreview.com&app=salesforce&instanceId=0oa8rsmlhv3YjXuin0h7" style="font-family: Calibri, sans-serif; font-size: 11pt; text-indent: -0.25in;">http://saml-doc.okta.com/SAML_Docs/How-to-Configure-SAML-2.0-in-Salesforce.html?baseAdminUrl=https://dev-145554-admin.oktapreview.com&app=salesforce&instanceId=0oa8rsmlhv3YjXuin0h7</a></li>
</ul>
</ol>
</div>
<div>
<ul style="text-align: left;">
<li> Enable Domain and Delegated SSO</li>
<ol>
<li>Enable domain and Deploy user to this domain name and then On Enable Delegated SSO with help of Salesforce Backend team. The Backend team will Enable Delegated SSO in Salesforce Production Org. And this will help Salesforce Admin to Restrict the Salesforce user to do not allow login directly from salesforce Login URL. </li>
</ol>
<li>Define Permission Set</li>
<ol>
<li>Once 2<sup>nd</sup> Step is done, In Salesforce on Profile label there will be one checkbox called “Is Single Sign On Enable” will be available now. We need to Create a Permission Set with this CheckBox (Is Single Sign On Enable”) Checked and then assign all the user to whom we wants to Enable Salesforce User.</li>
</ol>
</ul>
</div>
<div class="MsoNormal">
<o:p></o:p></div>
<div class="MsoNormal">
<o:p></o:p></div>
</div>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com2tag:blogger.com,1999:blog-4112120715957309558.post-52166862924688261532016-10-20T04:00:00.001-07:002018-03-27T02:12:34.382-07:00Use Salesforce REST API in Soap UI TOOL<div dir="ltr" style="text-align: left;" trbidi="on">
Topic: Use Salesforce REST API in Soap UI TOOL<br />
<br />
Description: Some time Developers would like to test and execute Salesforce REST Api using SOAP UI tool. Following below detail will tell you how to call Salesforce REST Api from SOAP UI Tool<br />
<br />
Step 1: Install SOAP UI Tool in your Desktop.<br />
https://www.soapui.org/<br />
<br />
Step 2: Let suppose you would like to See the detail of particular Account Record in SOAP UI Tool so following REST API will be used.<br />
<br />
<a href="https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/quickstart_oauth.htm" style="background-color: white; color: rgb(0, 0, 0) !important; font-family: DSCDefaultFontRegular; font-size: 15px; text-decoration: none; white-space: nowrap;">https://</a><code class="italic" style="background-attachment: initial !important; background-clip: initial !important; background-color: white; background-image: none !important; background-origin: initial !important; background-position: initial !important; background-repeat: initial !important; background-size: initial !important; border-radius: 3px; border: 0px !important; bottom: auto !important; float: none !important; font-family: Consolas, "Bitstream Vera Sans Mono", "Courier New", Courier, monospace !important; font-size: 15px; font-style: italic !important; height: auto !important; left: auto !important; line-height: 1.1em !important; margin: 0px !important; min-height: auto !important; outline: 0px !important; padding: 0px !important; position: static !important; right: auto !important; top: auto !important; vertical-align: baseline !important; white-space: nowrap; width: auto !important;"><span style="color: red;">instance_name</span></code><span style="background-color: white; font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace; font-size: 15px; white-space: nowrap;">.salesforce.com/services/data/v20.0/sobjects/Account/</span><span style="background-color: #f8f8f8; font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace; font-size: 15px; white-space: nowrap;"><span style="color: red;">001D000000INjVe</span></span><br />
<br />
Note: Here we are fetching Account detail of Account Record Id: <span style="background-color: #f8f8f8; color: red; font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace; font-size: 15px; white-space: nowrap;">001D000000INjVe</span><br />
<div>
<span style="background-color: #f8f8f8; color: red; font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace; font-size: 15px; white-space: nowrap;"><br /></span></div>
<div>
<span style="background-color: #f8f8f8; font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace; font-size: 15px; white-space: nowrap;">Step 3: Login in workbench tool and Grab Session Id.</span></div>
<div>
<span style="background-color: #f8f8f8; font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace; font-size: 15px; white-space: nowrap;">Open This URL </span></div>
<div>
<span style="background-color: #f8f8f8; font-size: 15px; white-space: nowrap;"><span style="font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace;">https://workbench.developerforce.com/login.php?startUrl=%2Fquery.php#qr</span></span></div>
<div>
<span style="background-color: #f8f8f8; font-size: 15px; white-space: nowrap;"><span style="font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace;"><br /></span></span></div>
<div>
<span style="background-color: #f8f8f8; font-size: 15px; white-space: nowrap;"><span style="font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace;">And Run following command in Execute Anonymous window.</span></span></div>
<div>
<span style="background-color: #f8f8f8; font-size: 15px; white-space: nowrap;"><span style="font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace;"><br /></span></span></div>
<div>
<span style="background-color: #f8f8f8; font-size: 15px; white-space: nowrap;"><span style="font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace;">system.debug(userinfo.getSessionId());</span></span></div>
<div>
<span style="background-color: #f8f8f8; font-size: 15px; white-space: nowrap;"><span style="font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace;"><br /></span></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTGav8iZOM7vxlzEqJfR9uJESamig-1bYd4-BYXOTG6l_0hyqwFa2prYn6onxhj_bswsutj1gzaawz2gwJJUGU9ACygUnGIs-7VrW7gjwRYjD-64UleM7f696SLJU9BqFys4sac5vTZPDw/s1600/Capture.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhTGav8iZOM7vxlzEqJfR9uJESamig-1bYd4-BYXOTG6l_0hyqwFa2prYn6onxhj_bswsutj1gzaawz2gwJJUGU9ACygUnGIs-7VrW7gjwRYjD-64UleM7f696SLJU9BqFys4sac5vTZPDw/s640/Capture.PNG" width="640" /></a></div>
<div>
<span style="background-color: #f8f8f8; font-size: 15px; white-space: nowrap;"><span style="font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace;">Step 4: Once you have the session id now we can call the Rest API using SOAP UI tool</span></span></div>
<div>
<ol style="text-align: left;">
<li><span style="font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace;"><span style="font-size: 15px; white-space: nowrap;">open the soap ui Tool</span></span></li>
<li><span style="font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace;"><span style="font-size: 15px; white-space: nowrap;"> Click on File ->New Rest API Project</span></span></li>
</ol>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcsOUapiJ3BB18gIMuPFGiN59Ij6AQhbZSi1IvQ5pydfbVkAbqkuwnHxzjBRVA6c_BFRtdMuKbZeF3_KvO8oqNXgL__yLJqXjXFPIzG5buHNl53y5cSLXA-i4Ls1LVaRxb7yLdsYull9a7/s1600/Untitled.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="358" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgcsOUapiJ3BB18gIMuPFGiN59Ij6AQhbZSi1IvQ5pydfbVkAbqkuwnHxzjBRVA6c_BFRtdMuKbZeF3_KvO8oqNXgL__yLJqXjXFPIzG5buHNl53y5cSLXA-i4Ls1LVaRxb7yLdsYull9a7/s640/Untitled.png" width="640" /></a></div>
<div>
<span style="font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace;"><span style="font-size: 15px; white-space: nowrap;"><br /></span></span></div>
<ol style="text-align: left;">
<li><span style="font-family: "consolas" , "bitstream vera sans mono" , "courier new" , "courier" , monospace;"><span style="font-size: 15px; white-space: nowrap;">In Popup window provide following URL as mentioned here </span></span>https://<span style="color: blue;">amulbaranwal-dev-ed.my.salesforce.com</span>/services/data/v37.0/sobjects/Account/<span style="color: blue;">0014000001jNevu</span></li>
</ol>
<div>
note: You need to change instance URL and Record Id as highlighted blue.</div>
<div>
<br /></div>
<div>
<ol>
<li>Then you will see following window after clicking on Ok button</li>
</ol>
</div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNiAny1x5a5cpK6E9WWMXMbGX2AD0jfLtBaD6tT2wBJrG9IOpDl_LwqI9o_3FqNRo1xdxbqxH7N-glNfFa5NQv8lrD4LZPcKC4e0oYRQHoW37IgB07u4bNxablUHqez_TDvLxPEgksr561/s1600/Capture2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjNiAny1x5a5cpK6E9WWMXMbGX2AD0jfLtBaD6tT2wBJrG9IOpDl_LwqI9o_3FqNRo1xdxbqxH7N-glNfFa5NQv8lrD4LZPcKC4e0oYRQHoW37IgB07u4bNxablUHqez_TDvLxPEgksr561/s1600/Capture2.PNG" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<ol style="text-align: left;">
<li>Then click on Header Section and provide Session Id</li>
<li>Header Name as "Authorization"</li>
<li>Value as "Bearer 00D400000007p1v!AQ0AQJ9Yx5ItnffUJ_xvvfcFT_QifgYjolTFVHq8gSxTejQjdnMX__ClR5xzLozyQRxtI19XquTCpGvEDGYXCw7lixocE7IF"</li>
<li>See following Screen</li>
</ol>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyzNQSyCflckTucsPBgHU0Lv7GmxwesbCINUUxby93OMzn9SvMRenSU7opztp24SpkMwbBsbci1B8lRRPidfkk01_Crj_CETYHl_kVO7XpyyBBuihncezxUBiqIRHPdsg4X6QV4MlS6zh1/s1600/Capture3.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="340" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhyzNQSyCflckTucsPBgHU0Lv7GmxwesbCINUUxby93OMzn9SvMRenSU7opztp24SpkMwbBsbci1B8lRRPidfkk01_Crj_CETYHl_kVO7XpyyBBuihncezxUBiqIRHPdsg4X6QV4MlS6zh1/s640/Capture3.PNG" width="640" /></a></div>
<div>
<br /></div>
</div>
<div>
then click on Run Green button</div>
<div>
<br /></div>
<div>
and you will finally see the Account detail in your Soap UI tool</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhOjmv51N5abm7taA9G7yr0Ne2sMoXgcQv0qWOdQt5PHk22Khp2lF-JyWWS768E-GutAn532hkZzTI-K-HH466UX6HPgxYgmJS5xw3k40Mo_Uw32nEv2Rh7BaDicrsw7n3dX33iAbBhPa_/s1600/Capture4.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="342" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjhOjmv51N5abm7taA9G7yr0Ne2sMoXgcQv0qWOdQt5PHk22Khp2lF-JyWWS768E-GutAn532hkZzTI-K-HH466UX6HPgxYgmJS5xw3k40Mo_Uw32nEv2Rh7BaDicrsw7n3dX33iAbBhPa_/s640/Capture4.PNG" width="640" /></a></div>
<div>
<br /></div>
<div>
For further inquiry please email me amulhai@gmail.com or call me at +91-9582388885</div>
<div>
<br /></div>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com10tag:blogger.com,1999:blog-4112120715957309558.post-45091682939196625812016-07-11T11:59:00.000-07:002018-03-27T02:12:49.507-07:00Design Lightning Tab app<div dir="ltr" style="text-align: left;" trbidi="on">
<br />
<br />
Develop Lightning app using Lightning System Design Framework.<br />
<br />
Following example is to understand the creation for following Component<br />
<br />
<br />
<ol style="text-align: left;">
<li>List of Accounts Component</li>
<li>List of Contacts Component</li>
<li>Develop Tab view for Account and Contact List</li>
</ol>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8RkRRiicH_bD-BGr9WHMyqb9bAs1DrckieS1WTdBkiS_kuLkWx74-UKDQS3ifzP-xJr7C2ZRNOJ86T2UIZomOSxnvKqpp9kb8HjtURB5_t_ffP53x_1LeG-Gd6jdCBzKRbYbZUyaItbp1/s1600/1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="300" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg8RkRRiicH_bD-BGr9WHMyqb9bAs1DrckieS1WTdBkiS_kuLkWx74-UKDQS3ifzP-xJr7C2ZRNOJ86T2UIZomOSxnvKqpp9kb8HjtURB5_t_ffP53x_1LeG-Gd6jdCBzKRbYbZUyaItbp1/s640/1.PNG" width="640" /></a></div>
<div>
<br /></div>
<div>
Same App will also support in mobile view.</div>
<div>
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9jpVUj3Wq8ChhnZzm7XBKB5o5Fhtaf3WpnDe4lnXuhyphenhyphenPDxLi0ta7IM5A4HIlKpYe3NPeQ2HfhvF1TywUgcWZMhZwsLeidA72iAzjGPlECwrn7IoUzrYibAe0ZngfuT5stiU3P7-dUyJ4l/s1600/2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh9jpVUj3Wq8ChhnZzm7XBKB5o5Fhtaf3WpnDe4lnXuhyphenhyphenPDxLi0ta7IM5A4HIlKpYe3NPeQ2HfhvF1TywUgcWZMhZwsLeidA72iAzjGPlECwrn7IoUzrYibAe0ZngfuT5stiU3P7-dUyJ4l/s640/2.PNG" width="404" /></a></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div>
you can install package from here:</div>
<div>
<br />
<table border="0" cellpadding="0" cellspacing="0" style="background-color: white; color: #222222; font-family: arial, sans-serif; font-size: 12.8px; width: 598px;"><tbody>
<tr><td style="margin: 0px;">Use this URL to install the package into any organization:<br />
<a data-saferedirecturl="https://www.google.com/url?hl=en&q=https://login.salesforce.com/packaging/installPackage.apexp?p0%3D04t28000000OvwN&source=gmail&ust=1468351552157000&usg=AFQjCNFNvHjKbSIHNfrdQFmAuC9ETnaWtw" href="https://login.salesforce.com/packaging/installPackage.apexp?p0=04t28000000OvwN" style="color: #1155cc;" target="_blank">https://login.salesforce.com/<wbr></wbr>packaging/installPackage.<wbr></wbr>apexp?p0=04t28000000OvwN</a></td></tr>
</tbody></table>
</div>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com1tag:blogger.com,1999:blog-4112120715957309558.post-33926264673205408422016-06-01T11:59:00.000-07:002018-03-27T02:13:09.648-07:00Salesforce Deployment Methods<div dir="ltr" style="text-align: left;" trbidi="on">
<span style="color: #660000;">There are n-Number of ways how you can deploy your code/app from one Org to Another Org. There are 2 main differences while your are deploying your component.</span><br />
<span style="color: #660000;"><br /></span>
<span style="color: #660000;">A. Salesforce Org to Connected Org i.e. Sandbox to Production.</span><br />
<span style="color: #660000;">B. Independent Org i.e. Individual Org which is not connected to each other.</span><br />
<span style="color: #660000;"><br /></span>
<span style="color: #660000;">And Following are few methods how we can deploy our code:</span><br />
<span style="color: #660000;"><br /></span>
<span style="color: #660000;"><br /></span>
<br />
<ol style="text-align: left;">
<li><span style="color: #660000;">Inbound and Outbound Change-set. i.e. Deployment Connection (for Type A)</span></li>
<li><span style="color: #660000;">Using Ant(A or B)</span></li>
<li><span style="color: #660000;">Using Force.com IDE(A or B)</span></li>
<li><span style="color: #660000;">Workbench tool(A or B)</span></li>
<li><span style="color: #660000;">Create Installer link in your developer Org.(A or B)</span></li>
<li><span style="color: #660000;">etc like mavensmate and other tool </span></li>
</ol>
<div>
<ul style="text-align: left;"></ul>
</div>
<br />
<h2>
<li style="text-align: left;">Inbound and Outbound Change-set. i.e. Deployment Connection.</li>
</h2>
<blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;">
<h2>
<br />
<li style="text-align: left;"><span style="font-size: small; font-weight: normal;">Use this video to learn how you can use this feature link click <a href="https://www.youtube.com/watch?v=2qy8oV99iAM" style="font-weight: normal;" target="_blank">Salesforce's Change Set Feature</a></span></li>
</h2>
</blockquote>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/2qy8oV99iAM/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/2qy8oV99iAM?feature=player_embedded" width="320"></iframe></div>
<br />
<h2>
<li style="text-align: left;">Using Ant: <span style="font-size: small; font-weight: normal;">Use this below link to dig into more on Ant.</span></li>
</h2>
<blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;">
<h2>
<li><a href="https://drive.google.com/file/d/0Bxf9DE6m8cU0ekVpbV92MGczbFU/view?usp=sharing" target="_blank">Salesforce Ant guide Book</a></li>
</h2>
</blockquote>
<h2>
<li style="text-align: left;">Using Force.com IDE:</li>
</h2>
<blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;">
<h2>
<li style="text-align: left;"><a href="https://www.youtube.com/watch?v=8vencxEEgCY" target="_blank">Installing the Force.com IDE</a></li>
</h2>
</blockquote>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/8vencxEEgCY/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/8vencxEEgCY?feature=player_embedded" width="320"></iframe></div>
<br />
<blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;">
</blockquote>
<h1 class="watch-title-container" style="background: rgb(255, 255, 255); border: 0px; display: table-cell; font-family: Roboto, arial, sans-serif; font-size: 20px; font-weight: normal; margin: 0px; padding: 0px; text-align: left; vertical-align: top; width: 610px; word-wrap: break-word;">
<ul>
<li><span style="background-color: transparent;"><a href="https://www.youtube.com/watch?v=p1FoqXcMMWs" target="_blank">Migration w/ Force.com IDE</a></span></li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/p1FoqXcMMWs/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/p1FoqXcMMWs?feature=player_embedded" width="320"></iframe></div>
<div>
<br /></div>
</h1>
<br />
<br />
<blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;">
<blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;">
<blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;">
</blockquote>
</blockquote>
</blockquote>
<h2>
<li style="text-align: left;">Workbench tool</li>
</h2>
<blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;">
<div class="separator" style="clear: both; text-align: center;">
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/5wt8mGurOAk/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/5wt8mGurOAk?feature=player_embedded" width="320"></iframe></div>
<h2>
<li><br /></li>
</h2>
</blockquote>
<h2>
<li style="text-align: left;">Create Installer link in your developer Org.</li>
</h2>
<blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;">
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<br /></div>
<iframe allowfullscreen="" class="YOUTUBE-iframe-video" data-thumbnail-src="https://i.ytimg.com/vi/cNeP5GvyVX8/0.jpg" frameborder="0" height="266" src="https://www.youtube.com/embed/cNeP5GvyVX8?feature=player_embedded" width="320"></iframe><br />
<h2>
<li><br /></li>
</h2>
</blockquote>
<h2>
<li>etc. like mavensmate and other tool</li>
</h2>
<blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;">
<blockquote style="border: none; margin: 0 0 0 40px; padding: 0px;">
<h2>
<li style="text-align: left;">Thank you. for Further help. please contact me at <span style="color: blue;">amulhai@gmail.com</span></li>
</h2>
</blockquote>
</blockquote>
<span style="color: blue; font-size: large;"> Mobile: +91-9582388885</span><br />
<h2>
</h2>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com3tag:blogger.com,1999:blog-4112120715957309558.post-21871691348498595922016-05-20T11:32:00.001-07:002016-05-20T11:32:42.083-07:00Develop Lightning App and Lead Form step by step<div dir="ltr" style="text-align: left;" trbidi="on">
<h3 style="text-align: left;">
<span style="font-size: small;"><b>Step 1: </b>Enable namespace in your Developer Org.</span></h3>
<br />
<br />
<ul style="text-align: left;">
<li>goto Setup->Build->Create->Packages</li>
<li>Click on Packages link</li>
<li>Provide Namespace prefix. see below.</li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwD3_3MVQvNwJqzLCjxaqjcc6vrHw7xZfFa0CnxbQUzAuiLh1TIO1HZDhzSxwmZDAd6FzGj-jaSjY7ME2JjXUntuXEVAgGveCR8UjRPXGYftFPi9zrCDK0LMagcnZVEUBNXHMlMEZmD6sZ/s1600/1.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="226" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgwD3_3MVQvNwJqzLCjxaqjcc6vrHw7xZfFa0CnxbQUzAuiLh1TIO1HZDhzSxwmZDAd6FzGj-jaSjY7ME2JjXUntuXEVAgGveCR8UjRPXGYftFPi9zrCDK0LMagcnZVEUBNXHMlMEZmD6sZ/s640/1.PNG" width="640" /></a></div>
<h3 style="text-align: left;">
<b style="text-align: justify;">Step 2: </b><span style="text-align: justify;">Install Lightning Design System framework in your Org. click on this link<a href="https://www.blogger.com/goog_1988429122"> </a></span><span style="color: #00b050; font-family: Calibri; font-size: large;"><a href="https://login.salesforce.com/packaging/installPackage.apexp?p0=04t61000000kZwH">https://login.salesforce.com/packaging/installPackage.apexp?p0=04t61000000kZwH</a></span></h3>
<div>
<br /></div>
<div>
<br /></div>
<br />
above link will install one static Resource in your org. This framework consist of images, icons and css for lightning page design.<br />
<br />
<b>Note:</b><b style="color: red;">Please read more about this framework here <span style="font-family: Calibri;"><a href="https://www.lightningdesignsystem.com/">https://www.lightningdesignsystem.com/</a></span></b><br />
<br />
<h3>
<span style="font-size: small; font-weight: normal;">after installation is done you can see the static resource will be available in your Org. goto Setup->Develop->Static Resources here you will see file name "</span><a href="https://amullight-dev-ed.my.salesforce.com/08128000000Q1TY" style="box-sizing: border-box; color: black; font-family: Arial, Helvetica, sans-serif; font-size: 12px;">SLDS100</a>".</h3>
<div>
<br /></div>
<h3>
<b style="text-align: justify;">Step 3: Now Open Developer Console to create Lightning App and Lightning Component</b></h3>
<div>
<ul style="text-align: left;">
<li><b>Create one Apex class File->New->Apex Class name called "Leadcontroller"</b></li>
</ul>
<div style="text-align: left;">
<blockquote class="tr_bq" style="text-align: justify;">
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;">public class LeadController {<br /> <br /> @AuraEnabled<br /> public static Id createLead(Lead newLead) {<br /> insert newLead;<br /> return newLead.Id;<br /> }<br /> <br /> @AuraEnabled<br /> public static Id createLeadRec(Lead newLead) {<br /> lead led=new Lead();<br /> led.FirstName='Kushal';<br /> led.LastName='Mishra';<br /> led.Company='KMISHRA';<br /> led.Email='kmishra@kloudrac.com';<br /> led.Status='Open';<br /> insert led;<br /> <br /> return led.id;<br /> }<br /> <br /> <br /> @AuraEnabled<br /> public static List<Id> createLeads(String newLeads) {<br /> List<SObject> newSObjectsList = convertJSONToListOfSObject(newLeads);<br /> insert newSObjectsList;<br /> List<Id> newIds = new List<Id>();<br /> for (SObject o : newSObjectsList) {<br /> newIds.add(o.Id);<br /> }<br /> return newIds;<br /> }<br /> <br /> <br /> private static List<SObject> convertJSONToListOfSObject(String json) {<br /> Object[] values = (Object[])System.JSON.deserializeUntyped(json);<br /> List<SObject> newSObjectsList = new List<SObject>();<br /> for (Object v : values) {<br /> Map<String, Object> m = (Map<String, Object>)v;<br /> Schema.SObjectType targetType = Schema.getGlobalDescribe().get((String)m.get('sobjectType'));<br /> SObject o = targetType.newSObject();<br /> Map<String, Schema.SObjectField> fields = targetType.getDescribe().fields.getMap();<br /> for (String fieldName : m.keySet()) {<br /> // Filter out any psuedo fields such as LastNameLocal<br /> Schema.SObjectField fi = fields.get(fieldName);<br /> if (fi != null) {<br /> if (fi.getDescribe().isCreateable() && fi.getDescribe().isUpdateable()) {<br /> o.put(fieldName, m.get(fieldName));<br /> }<br /> }<br /> }<br /> newSObjectsList.add(o);<br /> }<br /> return newSObjectsList;<br /> }<br /> <br /> @AuraEnabled<br /> public static Lead newLead() {<br /> return (Lead)Lead.sObjectType.newSObject(null, true);<br /> }<br />}</span></span></blockquote>
</div>
<ul style="text-align: left;">
<li><b>Build one component name called "inputLeadList" After opening Developer console goto File->New->Lightning Component name "inputLeadList".</b></li>
<ul>
<li><b>Copy and Paste following Code</b></li>
</ul>
</ul>
<div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"><aura:component controller="LeadController"></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <ltng:require styles="/resource/SLDS100/assets/styles/salesforce-lightning-design-system.min.css"/></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <aura:attribute name="items" type="Lead[]"/></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <aura:attribute name="newLead" type="Lead"</span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> default="{ 'sobjectType': 'Lead' }"/></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <!-- Event handlers --></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <aura:handler name="init" value="{!this}" action="{!c.handleInit}"/></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <div class="slds-form-element"></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <ui:inputText aura:id="firstName"</span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> label="First Name" value="{!v.newLead.FirstName}"</span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> required="false" class="slds-input" /></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <ui:inputText aura:id="lastName"</span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> label="Last Name" value="{!v.newLead.LastName}"</span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> required="true" class="slds-input" /></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <ui:inputText aura:id="company"</span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> label="Company Name" value="{!v.newLead.Company}"</span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> required="true" class="slds-input"/></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <ui:inputEmail aura:id="email"</span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> label="Work Email" value="{!v.newLead.Email}"</span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> required="true" class="slds-input"/></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <ui:inputText aura:id="Status"</span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> label="Status" value="{!v.newLead.Status}"</span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> required="true" class="slds-input"/></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span></div></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <ui:button label="Add Lead" press="{!c.addLead}" class="slds-button--neutral"/></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <ui:button label="Submit Lead" press="{!c.save}" class="slds-button slds-button--brand"/></span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div style="text-align: justify;">
<span style="background-color: cyan; font-family: Courier New, Courier, monospace; font-size: xx-small;"></aura:component></span></div>
</div>
</div>
<br />
<br />
<ul style="text-align: left;">
<li><b>Now from inputLeadList component click on Controller and helper button and copy paste following "</b><b>inputLeadListContrsoller.js" and "</b><b>inputLeadListHelper.js"</b></li>
<ul>
<li><b>inputLeadListContrsoller.js</b></li>
</ul>
</ul>
<blockquote style="border: none; margin: 0px 0px 0px 40px; padding: 0px; text-align: left;">
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;">({</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> addLead : function(component, event, helper) {</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> var leads = component.get("v.items");</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> leads.push(component.get("v.newLead"));</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> component.set("v.items", leads);</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> helper.initNewLead(component);</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> },</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> handleInit : function(component, event, helper) {</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> helper.initNewLead(component);</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> },</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> save : function(component, event, helper) {</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> var self = this;</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> var led=component.get("v.newLead");</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> led.sobjectType='Lead';</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> var createLead = component.get("c.createLead");</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> createLead.setParams({"newLead": led});</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> createLead.setCallback(self, function(a) {</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> console.log("returned: %o", a.getReturnValue());</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> });</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> $A.enqueueAction(createLead);</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;"> }</span></span></div>
</div>
<div>
<div>
<span style="background-color: cyan;"><span style="font-family: Courier New, Courier, monospace; font-size: xx-small;">})</span></span></div>
</div>
</blockquote>
<ul style="text-align: left;"><ul>
<li><b><b>inputLeadListHelper.js</b></b></li>
</ul>
</ul>
<div>
<div style="background-color: #9fc5e8; font-family: 'Courier New', Courier, monospace; font-size: x-small; font-weight: bold; text-align: left;">
({<br /> initNewLead : function(component) {<br /> var self = this; // safe reference<br /> alert('initNewLead');<br /> var getNewLead = component.get("c.newLead");<br /> getNewLead.setCallback(self, function(a) {<br /> console.log("returned: %o", a.getReturnValue());<br /> component.set("v.newLead", a.getReturnValue());<br /> });<br /> <br /> $A.enqueueAction(getNewLead);<br /> }<br />})</div>
<div style="background-color: #9fc5e8; font-family: 'Courier New', Courier, monospace; font-size: x-small; font-weight: bold; text-align: left;">
<br /></div>
<div style="background-color: #9fc5e8; font-family: 'Courier New', Courier, monospace; font-size: x-small; font-weight: bold; text-align: left;">
<br /></div>
<ul style="font-family: 'Times New Roman'; font-size: medium; font-weight: bold; text-align: left;">
<li style="font-weight: normal;"><b>Create one Lightning App called "oneLead.app" goto File->New->Lightning Application</b></li>
<ul>
<li><b>name called "oneLead"</b></li>
<ul>
<li>copy and paste following code</li>
</ul>
</ul>
</ul>
<div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"><aura:application controller="LeadController"></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <aura:attribute name="leads" type="Lead[]"/></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"><span class="Apple-tab-span" style="white-space: pre;"> </span><div class="slds-page-header"></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <div class="slds-grid"></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <div class="slds-col slds-has-flexi-truncate"></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <p class="slds-text-heading--label">Lightning to Lead</p></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <div class="slds-grid"></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <div class="slds-grid slds-type-focus slds-no-space"></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <h1 class="slds-text-heading--medium slds-truncate" title="My Expenses">New Lead</h1></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </div></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </div></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </div></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </div></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </div></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <c:inputLeadList items="{!v.leads}"/></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <table></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <thead></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <tr></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <th>First Name</th></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <th>Last Name</th></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <th>Company</th></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <th>Email</th></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </tr></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </thead></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <tbody></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <aura:iteration items="{!v.leads}" var="lead"></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <tr></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <td>{!lead.FirstName}</td></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <td>{!lead.LastName}</td></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <td>{!lead.Company}</td></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <td>{!lead.Email}</td></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </tr></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </aura:iteration></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </tbody></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </table></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> </span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"> <ui:button label="Submit Leads" press="{!c.save}"/></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"></aura:application></span></div>
</div>
</div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"><br /></span></div>
<div>
<span style="background-color: #6fa8dc; font-family: Courier New, Courier, monospace; font-size: xx-small;"><br /></span></div>
<div>
<ul style="text-align: left;">
<li><b>Now Click on Controller button for oneLeadApp and you have to create this "oneLeadController.js"</b></li>
<ul>
<li><b>Copy and paste following code and save it </b></li>
</ul>
</ul>
<div>
<h3 style="background-color: #3d85c6; font-family: 'Courier New', Courier, monospace; font-size: small;">
({<br /> save : function(component, event, helper) {<br /> var self = this;<br /> var createLeads = component.get("c.createLeads");<br /> createLeads.setParams({<br /> "newLeads": $A.util.json.encode(component.get("v.leads"))<br /> });<br /> createLeads.setCallback(self, function(a) {<br /> if (a.getState() === "SUCCESS") {<br /> console.log("returned: %o", a.getReturnValue());<br /> } else {<br /> alert($A.util.json.encode(a.getError()));<br /> }<br /> })<br /> $A.enqueueAction(createLeads);<br /> }<br />})</h3>
<div style="font-family: 'Courier New', Courier, monospace; font-size: small;">
<br /></div>
<div>
<ul style="font-family: 'Times New Roman'; font-size: medium;">
<li><b>Now from oneLead.app click on Preview button you will see one lightning form like this</b></li>
</ul>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDpKnrKOz711OPfCARGojvgz8n_2UE7hlc3uIxFJIxKPQFOPl2v3MrrObN6nAqm-zaU0PHVcIca4NHrwmWo5PuPVVSqrpl8aKh8n1m6orV3UpAvobQfviHzxKpBd4kYBUaVMkfd3fHJbpC/s1600/2.PNG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="640" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjDpKnrKOz711OPfCARGojvgz8n_2UE7hlc3uIxFJIxKPQFOPl2v3MrrObN6nAqm-zaU0PHVcIca4NHrwmWo5PuPVVSqrpl8aKh8n1m6orV3UpAvobQfviHzxKpBd4kYBUaVMkfd3fHJbpC/s640/2.PNG" width="368" /></a></div>
<ul style="font-family: 'Times New Roman'; font-size: medium;">
<li><b>Wish you all the Best. For further help please contact me at amulhai@gmail.com/+91-95823-88885.</b></li>
</ul>
</div>
</div>
</div>
</div>
AMUL BARANWALhttp://www.blogger.com/profile/03275224176222144254noreply@blogger.com7