Determinação do status de associação da equipe de um representante quando um negócio é fechado
Calcule distribuições, territórios e porcentagens de divisão para representantes corretamente no Salesforce Spiff. Determine se um representante faz parte de uma equipe na data em que um negócio é fechado. Você pode usar filtros de dados ou cálculos de planilha.
Edições obrigatórias
| Disponível em: Salesforce Classic (não disponível em todas as organizações) e Lightning Experience |
| Disponível em: Enterprise, Unlimited e Developer Editions |
| Disponível por um custo adicional em: Edição Professional com API de serviços da Web habilitada |
Filtros de dados
O status de associação à equipe costuma ser um problema com totalizações ou territórios. Por exemplo, um representante faz parte da equipe Leste e é creditado para negócios do Leste fechados durante seu mandato com a equipe. Ou um gerente recebe crédito para negócios fechados por membros da equipe. No entanto, é crucial que eles estivessem na equipe na data de fechamento específica, não apenas dentro do mesmo período.
Com uma totalização guiada, você pode automatizar a comparação das datas efetivas da equipe com um campo de data selecionado.
Nesse cenário, a totalização guiada retorna negócios em que o campo CAM__c corresponde a um representante e esse representante fez parte da equipe na CloseDate do negócio. O período selecionado, Cinco anos seguidos, significa que o filtro corresponde a negócios dos cinco anos anteriores. Esse período não significa que o representante precisa estar na equipe apenas em algum ponto durante esses cinco anos.
Como alternativa, você pode usar um filtro duplo.
| Item | Fórmula |
|---|---|
| Filtro | contains(ListOfDealClosedByTeamMembers, Id) |
| Cálculo de resumo | ListOfDealClosedByTeamMembers = transform_list(filter(DealsInSpecifiedPeriod, ClosedByActiveTeamMember), Id) |
| Campo calculado | ClosedByActiveTeamMember |
Cálculos
Distribuições guiadas são úteis para retornar os negócios corretos, mas a lógica de comissão geralmente requer uma verificação semelhante na lógica de pagamento. Por exemplo, quando um gerente recebe crédito para negócios, ele geralmente obtém crédito de totalização relacionado. Se um representante contribuir para fechar um negócio e receber uma divisão de 30%, o gerente também receberá crédito de 30%. Se muitos representantes ajudarem a fechar o negócio, como um representante com divisão de 30% e outro representante com divisão de 30%, o gerente receberá o valor total, que é de 60%.
A função members() retorna uma lista de representantes para uma determinada equipe ou equipes e intervalos de datas. Nesse caso, retorne os representantes para uma data específica definindo a data de início e a data de término como a mesma data. Há várias maneiras de recuperar objetos da equipe, e a função members() também aceita vários valores de entrada, como nomes de equipe (strings).
Por exemplo, talvez você queira verificar um proprietário da oportunidade. Todos os campos são criados no objeto Oportunidade e as datas especificadas são as CloseDate. O primeiro cálculo, ClosedByActiveTeamMember, retorna true ou false e outros cálculos podem referenciá-lo, como o filtro duplo.
ClosedByActiveTeamMember = contains(TeamMembers_OnCloseDate, OwnerId)TeamMembers_OnCloseDate = members(ManagersTeams, CloseDate, CloseDate)ManagersTeams = direct_manager_of(CloseDate, CloseDate)Em outro exemplo, talvez você queira verificar os proprietários da divisão quanto a uma soma de suas divisões. Este exemplo usa o mesmo cálculo de equipe, pois a data específica está vinculada à oportunidade. Em determinados cenários, a lista de membros da equipe e os usos subsequentes dessa lista podem pertencer ao nível Divisão de oportunidade. Nesses casos, aplique a mesma lógica e substitua CloseDate por Relationship.CloseDate.
SplitPercentageRollup = sumif(OppToOppSplits, contains(TeamMembers_OnCloseDate, SplitOwnerId), Split_Percentage)TeamMembers_OnCloseDate = members(ManagersTeams, CloseDate, CloseDate)ManagersTeams = direct_manager_of(CloseDate, CloseDate)
