Salesforce lead Queues

In Salesforce, Queues allow for management and organization of records in Leads, Cases, and custom objects. Lead Queues are particularly helpful because they allow you to funnel a group Leads into a queue based on a particular criteria whereby users in that queue can claim ownership of those Leads. For example, you can create a Lead Queue to distribute newly created Leads or those captured from web by region/territory (West Coast, North Pacific…etc) Today, I’ll be giving an introduction on how to create a Leads Que.

CREATING REGIONS/TERRITORIES:

First, we’re going to create a queue for each region.

To get started, go to Setup> Administration Setup> Manage Users> Queues and click New.
Name the Queue and optionally, you can assign an email address specific for the queue; users in that queue will receive updates on actions.
Next, pick the object you want to create the queue in.

Next, assign users to the queue. Alternatively, you can assign a Group of users to a queue. Then click Save.

ASSIGNING RULES FOR LEAD QUEUES

Now that you’ve built the queue, it’s time to create rules to automatically assign users to the appropriate region/territory queue. Go to Setup> Customize> Leads> Assigning Rules and click “New”. In Assignment Rules, you can prioritize the order of rules.Assigning Rules will run on an ascending order.

First, set the order of the rule.

Enter the criteria on which you want the Assignment Rule to apply
If you have multiple rules and depending on the logic, you can modify the logic of the rules right under the list.

Finally, enter the name of the queue you want the records with the above criteria to go to. click Save.

And now, users assigned to the queue can have a list view of all records in that queue where they can assign ownership accordingly. Only those users and users of higher hierarchy will have access to that list view.

Chandra V [11/26/2018]

Force Refresh on Lightning Component

To Force Refresh on a Lightning Component this code can be used:

refresh : function(component, event, helper) {
var action = cmp.get(‘c.myController’;);
action.setCallback(cmp,
function(response) {
var state = response.getState();
if (state === ‘SUCCESS’){
$A.get(‘e.force:refreshView’;).fire();
} else {
//do something
}
}
);
$A.enqueueAction(action);
}

Reloads the view.

To refresh a view, run $A.get(“e.force:refreshView”;).fire();, which reloads all data for the view.

This example refreshes the view after an action is successfully completed

Yeshas [11/10/18]

How to Speed Up Internal Approval Processes in Salesforce

Without a standard process for internal approvals, people may send out quotes and contracts without validating the content and what is being offered – from price to the ability to deliver the proposed solution. And with no control over what quotes and contracts are being sent out, it is difficult to manage related risks and uncertainties. Without proper processes, creating sales documents requires a lot of manual work which is prone to errors – and will require rounds of manual reviewing for acceptance. So how can you speed up internal approval processes? We look at a few ways to help you get that green light faster internally.

Implement thresholds

Before you can build a standardised process for internal approvals, you should consider the thresholds that actually require an approval. So determine when items above a certain threshold need more signatures or approvers and build your process around these. By creating thresholds for items above a threshold you’ll eliminate bottlenecks that can slow down quoting and contracting. Plus you can give more freedom to your teams to do their job effectively.

Speed up the flow of a document in an organisation

When you need to get an approval for a quote or contract, the speed of which you can get the document through the various stages of approvals is paramount. Managing the logistics of getting the document to the right people is important and how you do this has a huge implication on the speed.

Emails, meetings and calls are all valid ways of getting an approval but some pain can be caused by the tracking side of these. How do you make sure to keep track on who’s approved and what? When you save emails and meeting notes, it may be difficult to find these later on and sharing these may bring even more challenges.

So what can you do to speed up the flow of a document in an organisation? The answer is a well-thought workflow. It will streamline the time it takes to coordinate the approval process by managing and tracking the different stages of the process. You can use workflows to send reminders, track responses, request changes and create a record of the entire internal approval process for future reference.

Setting up quote and contract approvals

Build your workflows according to the business rules. An example of a contract approval process is one where any contract must be approved by the head of a department before it moves onto the financial team and from there to the legal team for review. The document moves along the process, and as and when each party approves or updates it, the document is stored centrally in for example contract database and automatically updated so that only one version of the contract is available and that it is always up to date. Once all parties have approved the document, it is returned to the original owner of the document and is now ready to be sent out.

-Chandra V [11/04/2018]

Field History Tracking on Custom Components

There is a limitation on the Field Tracking on the Quote Standard object in Salesforce.

This functionality is used when a custom application is built and want to track the history of the fields that are created
on the component.

In this scenario, I am tracking the Field History based on these criteria:

Date / Field / Original value / New Value / Type / Modified By

In the below scenario, Tracking the Custom Component Fields Based on two objects – Quote and Quote Line Item.

Lightning Component for Field History Tracking:

<aura:component controller=”QuoteAndQuoteLineItemHistory” implements=”force:appHostable,flexipage:availableForAllPageTypes,flexipage:availableForRecordHome,force:hasRecordId,forceCommunity:availableForAllPageTypes,force:lightningQuickAction” access=”global” >
<!– HANDLERS –>
<aura:handler name=”init” action=”{!c.doInit}” value=”{!this}” />
<!– ATTRIBUTES –>
<aura:attribute name=”componentHistory” type=”List” />
<aura:attribute name=”componentHistoryFinalList” type=”List” />
<aura:attribute name=”searchText” type=”String”/>
<aura:attribute name=”headers” type=”List”/>
<aura:attribute type=”Boolean” name=”sortType” />

<aura:attribute name=”recordId” type=”Id” />
<aura:attribute name=”sortedBy” type=”String” default=”Name”/>
<aura:attribute name=”sortedDirection” type=”String” default=”asc”/>
<div class=”slds”>
<div class=”slds-grid slds-gutters”>
<div class=”slds-col slds-size_9-of-12″></div>
<div class=”slds-col slds-size_3-of-12″>
<lightning:input type=”text” name=”searchInput” onkeyup=”{!c.filterSelection}” value=”{!v.searchText}” aura:id=”searchInput” label=”Type here to search” />
<br/>
</div>
</div>

<lightning:datatable data=”{!v.componentHistory}”
columns=”{!v.headers}”
keyField=”Id”
hideCheckboxColumn=”true”
onsort=”{!c.updateColumnSorting}”
sortedBy=”{!v.sortedBy}”
sortedDirection=”{!v.sortedDirection}”/>
</div>
</aura:component>

This component also has the functionality of Sorting and Search feature.

Please comment and reach out for the Apex Class and related java scripts.

Chandra V [11/3/2018]