Template de Dados: Order to Cash - Processamento de Pedidos de Venda
Seu Template de dados de Order to Cash - Processamento de Pedidos de Venda
- Atributos recomendados para coletar
- Atividades-chave a monitorizar
- Orientações de extração para Salesforce Sales Cloud
Order to Cash (O2C) - Atributos de Processamento de Pedidos de Venda
| Nome | Descrição | ||
|---|---|---|---|
Nome da Atividade ActivityName | O nome do evento de negócio ou da tarefa que ocorreu no ciclo de vida do pedido de venda. | ||
Descrição O atributo Activity Name descreve uma etapa do processo de pedido de venda, como 'Order Created', 'Credit Check Performed' ou 'Invoice Sent'. Essas atividades são os componentes básicos do mapa do processo e derivam de eventos do sistema, mudanças de status ou conclusão de tarefas. Analisar essas atividades permite visualizar o fluxo, identificar caminhos comuns (variantes) e medir a frequência e a duração de cada etapa. É fundamental para entender o que está acontecendo no processo. Por que é importante Este atributo define as etapas no mapa do processo. Sem ele, você não consegue visualizar o fluxo do processo nem analisar como os pedidos de venda estão sendo de fato processados. Onde obter Normalmente derivado de mudanças no campo 'Order.Status', da criação de registros relacionados (por exemplo, 'Invoice') ou de registros 'Task' ou 'Event' concluídos e vinculados ao Pedido. Exemplos Pedido CriadoPedido AprovadoMercadorias enviadasPagamento Recebido | |||
Pedido de Venda SalesOrderId | O identificador único de cada pedido de venda, servindo como o caso primário para rastrear todo o processo de Order to Cash. | ||
Descrição O ID do pedido de venda (Sales Order ID) é a base da análise do processo, identificando de forma única cada pedido conforme avança no seu ciclo de vida. Ele conecta todas as atividades associadas, da criação e aprovação ao atendimento e ao pagamento. Em Process Mining, todo evento relacionado a um pedido específico é vinculado a esse ID. Isso permite reconstruir a jornada ponta a ponta do pedido, viabilizando análises detalhadas de tempos de ciclo, variações do processo e gargalos por pedido. Por que é importante Este atributo é essencial para agrupar todos os eventos relacionados em um único caso, possibilitando visualizar e analisar o fluxo do processo de ponta a ponta para cada pedido de venda. Onde obter Este é o campo 'Id' no objeto padrão 'Order' do Salesforce. Exemplos 8018d000000XwPBAA08018d000000Y1qCAAS8018d000000Z3kDAB1 | |||
Tempo do Evento EventTime | A data e hora exatas em que a atividade ocorreu. | ||
Descrição Event Time (timestamp) registra o momento exato em que uma atividade aconteceu. Esses dados são essenciais para sequenciar corretamente os eventos e calcular as durações entre atividades, base de toda análise de Process Mining orientada a tempo. Esse atributo é usado para ordenar as atividades de cada caso, calcular tempos de ciclo, identificar tempos de espera e analisar a performance do processo em diferentes períodos. Timestamps imprecisos ou ausentes podem limitar seriamente a utilidade da análise. Por que é importante Timestamps são essenciais para ordenar eventos cronologicamente e calcular todas as métricas de performance, como tempos de ciclo e gargalos. Onde obter Corresponde a campos como 'CreatedDate' ou 'LastModifiedDate' no objeto 'Order' ou em registros relacionados. Para eventos específicos, pode vir da data de conclusão de um registro de 'Task'. Exemplos 2023-10-26T10:00:00Z2023-10-26T14:35:10Z2023-10-27T09:00:00Z | |||
Sistema de Origem SourceSystem | Identifica o sistema do qual os dados foram extraídos. | ||
Descrição Este atributo especifica a origem dos dados do processo. Nesta análise, será sempre 'Salesforce Sales Cloud'. Em ambientes com múltiplos sistemas, este campo é crítico para a rastreabilidade dos dados e para a solução de problemas. Mesmo em um contexto de sistema único, ele fornece metadados importantes sobre a origem dos dados. Por que é importante Fornece contexto essencial sobre a origem dos dados, importante para governança de dados e para integrar dados de múltiplos sistemas de origem. Onde obter Normalmente é um valor estático adicionado durante a extração de dados para rotular o conjunto de dados. Exemplos Salesforce Sales Cloud | |||
Última Atualização de Dados LastDataUpdate | O timestamp que indica quando os dados foram extraídos ou atualizados pela última vez. | ||
Descrição Este atributo registra a data e a hora da extração de dados mais recente do sistema de origem. Ele fornece um contexto crucial sobre a atualidade dos dados analisados. Os analistas usam essa informação para entender se estão visualizando os dados de processo mais recentes e avaliar a relevância de suas conclusões. É um metadado essencial em qualquer projeto de Process Mining. Por que é importante Informa aos usuários quão atualizados estão os dados e garante que entendam quão recente é a análise. Onde obter Timestamp gerado e adicionado durante o processo de extração, transformação e carregamento (ETL) dos dados. Exemplos 2023-11-01T05:00:00Z | |||
Data de Entrega Solicitada RequestedDeliveryDate | A data de entrega do pedido solicitada pelo cliente. | ||
Descrição Este atributo armazena a data em que o cliente espera receber suas mercadorias. Serve como referência crítica para medir a performance de entrega e a satisfação do cliente. Essa data é usada diretamente no dashboard 'Delivery Date Adherence Tracking' e no KPI 'On-Time Delivery Rate'. Ela é comparada com a data real de entrega (carimbo de data e hora de 'Goods Delivered') para determinar se o pedido foi entregue no prazo, adiantado ou atrasado. Por que é importante Principal referência para medir o desempenho de entregas no prazo, um indicador-chave de satisfação do cliente e eficácia operacional. Onde obter Geralmente é um campo de data personalizado no objeto 'Order'. O nome exato pode variar. Consulte a documentação ou o schema do Salesforce Sales Cloud. Exemplos 2023-11-152023-12-012024-01-10 | |||
Nome da conta AccountName | O nome do cliente ou da empresa que fez o pedido de venda. | ||
Descrição O Account Name identifica o cliente associado ao pedido de venda. Isso permite analisar o processo com foco no cliente. Usando esse atributo, analistas podem filtrar o processo por clientes específicos, comparar o desempenho entre diferentes segmentos ou identificar se certos clientes enfrentam problemas recorrentes. É fundamental para conectar a performance do processo diretamente à experiência do cliente. Por que é importante Relaciona o desempenho do processo a clientes específicos, permitindo análises e segmentações por cliente para identificar padrões ou problemas. Onde obter O objeto 'Order' tem um campo lookup 'AccountId'. Esse ID deve ser associado ao objeto 'Account' para recuperar o campo 'Account.Name'. Exemplos Global Tech Inc.Innovate Solutions LLCVenture Dynamics | |||
Status do Pedido OrderStatus | O status do pedido de venda no momento do evento. | ||
Descrição Este atributo registra o status do pedido de venda, como 'Draft', 'Activated', 'Shipped' ou 'Closed'. Mudanças de status geralmente são a base para gerar as atividades no log do processo. Analisar o status do pedido dá contexto a cada evento e é crucial para acompanhar o progresso de um pedido. Ajuda a entender o desfecho dos casos, por exemplo, distinguindo pedidos que foram 'Cancelled' daqueles que foram 'Closed' com sucesso. Por que é importante Fornece contexto essencial para cada evento e muitas vezes é a base para definir atividades. Também é fundamental para analisar resultados do caso, como cancelamentos. Onde obter Este é o campo picklist 'Status' no objeto padrão 'Order' do Salesforce. Exemplos RascunhoAtivadoExpedidoEncerradoCancelado | |||
Tempo de Ciclo Total CycleTime | O tempo total decorrido desde a criação do pedido de venda até o fechamento final. | ||
Descrição Tempo de Ciclo Total é um KPI que mede a duração ponta a ponta do processo de pedido de venda. É calculado como a diferença de tempo entre o primeiro evento (por exemplo, 'Order Created') e o último evento (por exemplo, 'Order Closed'). Essa métrica é o foco principal do Dashboard 'Sales Order End-to-End Cycle Time'. Analisar o tempo de ciclo ajuda a identificar ineficiências gerais do processo e a medir o impacto das iniciativas de melhoria. Variações no tempo de ciclo podem ser investigadas segmentando os dados por outros atributos, como país ou família de produtos. Por que é importante KPI fundamental para medir a eficiência geral do processo e identificar pedidos que demoram demais, o que pode indicar problemas sistêmicos. Onde obter Calculado durante a transformação de dados subtraindo o timestamp do primeiro evento do timestamp do último evento para cada 'SalesOrderId'. Exemplos 10 days 4 hours25 dias e 11 horas5 dias 2 horas | |||
Usuário que executou a ação UserPerformingAction | O nome do usuário ou agente do sistema que executou a atividade. | ||
Descrição Este atributo identifica quem é o responsável por concluir uma etapa do processo. Pode ser um representante de vendas, um analista de crédito ou um usuário de sistema automatizado. Análises por usuário são vitais para entender a distribuição da carga de trabalho, o desempenho individual e o nível de automação. Ajuda a responder perguntas como 'Quais usuários fazem mais retrabalho?' ou 'Existem equipes mais rápidas nas aprovações?'. Também é usado na análise de rede social para ver como o trabalho é repassado entre as pessoas. Por que é importante Permite analisar desempenho por usuário, equipe ou função e ajuda a identificar oportunidades de automação ou necessidades de treinamento. Onde obter Pode ser encontrado em campos como 'LastModifiedById' no objeto 'Order' ou 'OwnerId' em registros de 'Task'. Esses IDs precisam ser associados ao objeto 'User' para obter o nome do usuário. Exemplos Alice SmithBob JohnsonAutomação do sistemaEquipe de Crédito | |||
Valor Total do Pedido TotalOrderAmount | O valor monetário total do pedido de venda. | ||
Descrição Este atributo representa o valor financeiro total do pedido do cliente. É uma métrica-chave para entender o impacto de eficiências ou ineficiências do processo no negócio. Na análise, o valor total do pedido pode ser usado para segmentar os casos, por exemplo, para ver se pedidos de alto valor são processados de forma diferente ou sofrem mais atrasos do que pedidos de baixo valor. Também é fundamental para calcular KPIs financeiros e entender o valor que flui pelo processo. Por que é importante Permite a análise financeira do processo, segmentando pedidos por valor e quantificando o impacto monetário de atrasos ou retrabalho. Onde obter Este é o campo 'TotalAmount' no objeto padrão 'Order' do Salesforce. Exemplos 5400.50125000.00950.75 | |||
Canal de Vendas SalesChannel | O canal pelo qual o pedido de venda foi realizado, como 'Web', 'Vendas Diretas' ou 'Parceiro'. | ||
Descrição O atributo Sales Channel categoriza os pedidos de acordo com sua origem. Isso possibilita uma análise comparativa do desempenho do processo entre diferentes canais. Esse atributo é essencial para o dashboard 'Comparação de Desempenho por Canal'. Ao filtrar ou comparar por canal, a empresa identifica quais canais são mais eficientes, onde ocorre mais retrabalho e onde a padronização pode ser necessária para alinhar a performance. Por que é importante Permite comparar o desempenho entre diferentes canais de negócio, ajudando a identificar boas práticas e oportunidades de harmonização do processo. Onde obter Normalmente é um campo picklist personalizado no objeto 'Order' ou no objeto 'Opportunity'. Consulte a documentação ou o schema do Salesforce Sales Cloud. Exemplos Venda DiretaPortal WebRede de ParceirosVendas Internas | |||
Duração da Cobrança PaymentCollectionDuration | O tempo decorrido entre o envio da fatura ao cliente e o recebimento do pagamento. | ||
Descrição Esta métrica calculada mede a eficiência da etapa final e crucial do ciclo de Order to Cash: receber o pagamento. É a duração entre a atividade 'Invoice Sent to Customer' e a atividade 'Payment Received'. Este atributo alimenta diretamente o dashboard 'Payment Collection Duration' e o KPI 'Payment Realization Time'. Analisar essa duração ajuda a área financeira a identificar gargalos na cobrança, avaliar a eficácia das condições de pagamento e encontrar oportunidades para acelerar o fluxo de caixa. Por que é importante Mede a eficiência do processo de contas a receber, impactando diretamente o fluxo de caixa da empresa. Onde obter Calculado durante a transformação de dados subtraindo o timestamp do evento 'Invoice Sent to Customer' do evento 'Payment Received' para cada caso. Exemplos 30 dias15 dias e 8 horas45 dias | |||
É Automatizado IsAutomated | Um indicador que informa se a atividade foi executada por um processo do sistema ou por um usuário. | ||
Descrição Este atributo booleano diferencia eventos disparados por automação do sistema, como uma atualização de status automática, daqueles executados manualmente por um usuário. Isso é fundamental para entender o nível de automação do processo. Analisar esse atributo ajuda a quantificar o impacto da automação na eficiência e na consistência. Permite comparar caminhos automatizados e manuais e pode destacar oportunidades de ampliar a automação para reduzir o esforço manual e o potencial de erro. Por que é importante Ajuda a diferenciar entre ações do sistema e do usuário, algo essencial para a análise de automação e para identificar oportunidades de reduzir trabalho manual. Onde obter Derivado durante a transformação de dados ao verificar se o 'UserPerformingAction' é um usuário de sistema designado ou por regras baseadas no tipo de atividade. Exemplos verdadeirofalse | |||
É Retrabalho IsRework | Um indicador que mostra se o pedido de venda passou por retrabalho, como uma atividade repetida ou um loop no processo. | ||
Descrição Este atributo calculado identifica casos que se desviam de uma progressão linear. Retrabalho ocorre quando uma atividade é repetida ou quando o processo retorna a uma etapa anterior, muitas vezes por erros, informações ausentes ou aprovações rejeitadas. Este indicador é usado para calcular o KPI 'Sales Order Rework Rate' e alimentar o dashboard 'Sales Order Rework and Error Rate'. Ele ajuda a quantificar a frequência e o impacto das ineficiências, apontando áreas que exigem melhores controles de qualidade ou esclarecimento do processo. Por que é importante Quantifica a ineficiência do processo ao sinalizar pedidos que exigem trabalho extra e não planejado, impactando diretamente o custo e o tempo de ciclo. Onde obter Calculado por software de Process Mining ou durante a transformação de dados, detectando nomes de atividade repetidos ou fluxos de processo regressivos para um determinado caso. Exemplos verdadeirofalse | |||
Entrega Dentro do Prazo IsOnTimeDelivery | Um indicador que informa se as mercadorias foram entregues na data solicitada pelo cliente ou antes. | ||
Descrição Este atributo booleano mede diretamente a performance de entrega em relação à expectativa do cliente. É calculado comparando o carimbo de data e hora da atividade 'Goods Delivered' com o 'RequestedDeliveryDate'. É o cálculo central do KPI 'On-Time Delivery Rate'. Analisar esse indicador ajuda as organizações a entender sua confiabilidade e o cumprimento dos compromissos, um fator importante para a satisfação do cliente. Combinado a outros atributos, pode revelar se certos métodos de envio ou regiões têm taxas menores de entrega no prazo. Por que é importante Fornece uma medida clara e binária de desempenho em relação aos compromissos com o cliente, apoiando diretamente o KPI de Entregas no Prazo. Onde obter Calculado durante a transformação de dados. A lógica é: IF ('Goods Delivered' EventTime <= 'RequestedDeliveryDate') THEN true ELSE false. Exemplos verdadeirofalse | |||
Event End Time EventEndTime | A data e hora exatas em que a atividade foi concluída. | ||
Descrição O Event End Time marca a conclusão de uma atividade. Embora muitas ferramentas de Process Mining infiram esse dado pelo horário de início da atividade seguinte, capturá-lo explicitamente pode gerar durações mais precisas, principalmente em tarefas de longa duração. Esse atributo é usado para calcular o tempo exato de processamento de uma atividade. É especialmente valioso para analisar tarefas com duração relevante, como 'Credit Check Performed' ou 'Inventory Allocated', ajudando a separar o tempo de processamento ativo do tempo ocioso de espera. Por que é importante Permite calcular com precisão o tempo de processamento de cada atividade, essencial para identificar gargalos e etapas que consomem muitos recursos. Onde obter Pode ser obtido a partir do 'StartTime' do evento subsequente na sequência para um determinado caso. Para algumas atividades, pode ser um campo específico como 'Task.CompletedDateTime'. Exemplos 2023-10-26T10:05:12Z2023-10-26T15:00:00Z2023-10-27T11:20:30Z | |||
Família de Produtos ProductFamily | A categoria ou família à qual os produtos do pedido pertencem. | ||
Descrição A família de produtos (Product Family) oferece uma classificação de alto nível dos itens incluídos no pedido de venda. Isso permite analisar o processo pelo tipo de produto vendido. Esse atributo pode ser usado para segmentar o processo e verificar se determinadas famílias de produtos seguem caminhos diferentes, têm tempos de ciclo maiores ou índices de retrabalho mais altos. Por exemplo, produtos complexos e configuráveis tendem a exigir um processo de aprovação e atendimento mais elaborado do que itens padrão, prontos para uso. Por que é importante Viabiliza a análise do processo por categoria de produto, revelando se tipos distintos de produtos geram variações na eficiência do processo. Onde obter Obtido a partir do objeto 'Product2', que está vinculado ao 'Order' por meio do objeto de junção 'OrderItem'. É necessário fazer o join Order -> OrderItem -> PricebookEntry -> Product2. Exemplos HardwareLicenças de softwareServiços ProfissionaisContratos de suporte | |||
ID da Fatura InvoiceId | O identificador único da fatura associada ao pedido de venda. | ||
Descrição O Invoice ID vincula um pedido de venda à sua fatura financeira correspondente. A criação e o envio dessa fatura são marcos importantes na segunda metade do processo de Order to Cash. Esse atributo é crucial para rastrear o processo do atendimento do pedido ao pagamento. Ele permite medir com precisão as atividades 'Invoice Created' e 'Invoice Sent to Customer', necessárias para calcular o 'Payment Collection Duration'. Por que é importante Relaciona o pedido de venda ao subprocesso de faturamento, permitindo rastrear com precisão as atividades financeiras e o tempo de ciclo de pagamento. Onde obter Geralmente é um campo de lookup personalizado no objeto 'Order' apontando para um objeto 'Invoice' padrão ou personalizado. A implementação exata varia. Exemplos INV-001234INV-001235INV-001236 | |||
Método de Envio ShippingMethod | O método selecionado para envio das mercadorias, como 'Padrão terrestre', 'Expresso' ou 'Internacional'. | ||
Descrição Este atributo indica o nível de serviço logístico escolhido para a entrega do pedido. Ele impacta diretamente prazos e custos de entrega. No dashboard 'Shipping Method Efficiency Analysis', este atributo é usado para comparar o desempenho das diferentes opções de envio. Ajuda a determinar se os envios expressos estão cumprindo os prazos e como cada método afeta a duração total entre 'Goods Shipped' e 'Goods Delivered'. Por que é importante Permite analisar o desempenho logístico, ajudando a avaliar o custo e a eficiência de diferentes opções de frete. Onde obter Provavelmente é um campo personalizado no objeto 'Order' ou em um objeto 'Shipment' personalizado relacionado. Consulte a documentação ou o schema do Salesforce Sales Cloud. Exemplos Padrão terrestreEntrega expressa em 2 diasAéreo OvernightPrioridade Internacional | |||
País de Entrega ShippingCountry | O país de destino do envio do pedido de venda. | ||
Descrição Este atributo informa o país para onde o pedido será enviado. É uma dimensão-chave para a análise geográfica do processo de Order to Cash. Analisar por país de entrega pode revelar diferenças regionais na performance do processo, como prazos maiores em pedidos internacionais ou variações nos ciclos de cobrança. Permite segmentar o processo para entender e tratar desafios específicos de cada região. Por que é importante Viabiliza a segmentação geográfica do processo, destacando diferenças de desempenho regionais, questões de conformidade ou desafios logísticos. Onde obter Este é o campo 'ShippingCountry' no objeto padrão 'Order' do Salesforce. Exemplos EUAAlemanhaJapãoBrasil | |||
Responsável pelo Pedido OrderOwner | O usuário principal responsável por gerenciar o pedido de venda. | ||
Descrição O proprietário do pedido (Order Owner) é o representante de vendas ou o gerente de contas com responsabilidade principal sobre o pedido. Isso é diferente do usuário que executa uma ação específica, pois o proprietário é responsável pelo andamento geral do caso. Analisar por proprietário ajuda a avaliar a carga de trabalho e o desempenho do time ou do indivíduo na gestão do seu portfólio de pedidos. Também evidencia quais proprietários têm pedidos que frequentemente travam ou exigem retrabalho, indicando oportunidades de coaching. Por que é importante Identifica a pessoa responsável pelo sucesso do pedido, permitindo analisar a carga de trabalho e a performance no nível do responsável. Onde obter Este é o campo 'OwnerId' do objeto 'Order'. Esse ID pode ser associado ao objeto 'User' para obter o nome do proprietário. Exemplos Jane DoeJohn SmithEquipe de Vendas – Leste | |||
Status da Análise de Crédito CreditCheckStatus | O resultado da análise de crédito do pedido. | ||
Descrição Este atributo indica o resultado da avaliação de crédito do cliente, muitas vezes um ponto crítico no processo do pedido. Valores comuns incluem 'Approved', 'Rejected' ou 'Pending'. É essencial para o dashboard 'Credit Check Bottleneck Analysis'. Ao acompanhar quando um pedido entra e sai da fase de análise de crédito, e seu status final, as organizações podem medir a duração e o resultado dessa etapa, identificando-a como uma possível fonte de atraso. Por que é importante Dá suporte direto à análise da etapa de verificação de crédito, ajudando a medir sua duração, taxa de sucesso e impacto no tempo de ciclo total. Onde obter Provavelmente é um campo personalizado no objeto 'Order' ou no objeto 'Account'. Consulte a documentação ou o schema do Salesforce Sales Cloud. Exemplos AprovadoRejeitadoAguardando AnáliseNão Requerido | |||
Tempo de Processamento ProcessingTime | A duração de uma atividade específica, representando o tempo de trabalho ativo. | ||
Descrição O tempo de processamento é o tempo gasto ativamente na execução de uma tarefa, calculado como a diferença entre o horário de término e o de início de uma atividade. É diferente do tempo de espera, que é o período ocioso entre atividades. Essa métrica é fundamental para análises de gargalo, como na atividade 'Credit Check Performed'. Ao isolar o tempo de processamento ativo, analistas conseguem identificar se os atrasos são causados por ineficiência na execução da própria tarefa ou por filas longas antes do início da atividade. Por que é importante Isola o tempo de trabalho ativo de uma tarefa específica, ajudando a diferenciar atividades ineficientes de longas esperas. Onde obter Calculado durante a transformação de dados subtraindo o 'EventTime' (StartTime) do 'EventEndTime'. Exemplos 5 minutos2 horas 15 minutos45 segundos | |||
Order to Cash (O2C) - Atividades de Processamento de Pedidos de Venda
| Atividade | Descrição | ||
|---|---|---|---|
Fatura Criada | Representa a geração da fatura financeira para o pedido de venda. Isso pode ser capturado pela criação de um objeto relacionado 'Invoice', seja nativamente via Salesforce Billing ou por meio de uma integração. | ||
Por que é importante Este marco marca o início da etapa de cobrança financeira do processo. O tempo entre a entrega e a emissão da fatura pode revelar gargalos administrativos que afetam o fluxo de caixa. Onde obter Inferido a partir da data de criação de um objeto 'Invoice' (padrão ou customizado) vinculado ao objeto 'Order'. Captura Use o 'CreatedDate' do registro de 'Invoice' relacionado. Tipo de evento inferred | |||
Mercadorias entregues | Indica que o envio chegou ao cliente com sucesso. Essas informações vêm do sistema da transportadora e são atualizadas no Salesforce. | ||
Por que é importante Este evento é essencial para calcular o KPI 'On-Time Delivery Rate' e medir os tempos de ciclo percebidos pelo cliente. Ele confirma que o processo de atendimento do pedido foi concluído. Onde obter Inferido a partir do preenchimento de um campo 'Delivery Date' no objeto 'Order' ou no objeto customizado 'Shipment'. Esses dados normalmente vêm de uma integração com um provedor de logística de entregas. Captura Use o timestamp do momento em que um campo de data de entrega for preenchido. Tipo de evento inferred | |||
Mercadorias enviadas | Representa o momento em que o pedido foi fisicamente despachado do armazém para o cliente. Esse evento quase sempre é registrado por uma atualização de um sistema externo de frete/expedição ou ERP no Salesforce. | ||
Por que é importante Marco crítico para medir a 'Taxa de Envio no Prazo' e a eficiência geral do fulfillment. Marca o início da fase de entrega na jornada do cliente. Onde obter Inferido a partir do preenchimento do campo 'Shipped Date' ou 'Tracking Number' no objeto 'Order' ou em um objeto personalizado relacionado chamado 'Shipment'. Os dados têm origem em um sistema de expedição (fulfillment). Captura Use o timestamp do momento em que um campo de data de envio ou de código de rastreamento for preenchido pela primeira vez. Tipo de evento inferred | |||
Pagamento Recebido | Marca a confirmação de que o pagamento do cliente foi recebido e conciliado. Essa informação é atualizada de um sistema financeiro para o Salesforce, normalmente como uma mudança de status. | ||
Por que é importante Este evento é a etapa final para converter a venda em caixa. Analisar o tempo de 'Invoice Sent' até este ponto é crítico para gerenciar o fluxo de caixa e o prazo médio de recebimento (DSO). Onde obter Inferido a partir de uma mudança de status no objeto 'Invoice' para 'Paid' ou 'Closed'. A atualização é feita por uma integração com um sistema contábil ou de processamento de pagamentos. Captura Acompanhe alterações de status no objeto 'Invoice' de uma integração com um sistema financeiro externo. Tipo de evento inferred | |||
Pedido Ativado | Um evento padrão do Salesforce que indica que o pedido foi finalizado e pode seguir para fulfillment e faturamento. A ativação bloqueia a maior parte das alterações e é registrada por uma mudança específica de status. | ||
Por que é importante A ativação é um marco crítico e irreversível que confirma a validade do pedido. É a passagem oficial de vendas para operações e um componente central no acompanhamento do tempo de ciclo de vendas. Onde obter Inferido quando o campo padrão 'Status' do objeto 'Order' muda para 'Activated'. O registro de data e hora fica no histórico de rastreamento de campos do objeto 'Order'. Captura Acompanhe o histórico de campos do objeto 'Order' para identificar a mudança de status para 'Activated'. Tipo de evento inferred | |||
Pedido Criado | Marca a criação inicial do registro de pedido de venda no sistema. Esse evento é capturado explicitamente quando uma nova instância do objeto 'Order' é salva no Salesforce pela primeira vez. | ||
Por que é importante Este é o principal evento inicial do processo de Pedido a Recebimento. Analisar o tempo deste ponto até as atividades seguintes é crucial para entender os tempos de ciclo gerais. Onde obter O evento de criação do objeto 'Order'. O timestamp é o valor do campo padrão 'CreatedDate' no registro de 'Order'. Captura Diretamente do timestamp 'CreatedDate' do objeto 'Order'. Tipo de evento explicit | |||
Pedido Encerrado | Representa a conclusão bem-sucedida e o encerramento definitivo do pedido de venda no sistema. Isso é inferido a partir de uma atualização final de status no pedido, indicando que nenhuma ação adicional é necessária. | ||
Por que é importante Este é o principal evento de término do 'fluxo ideal' do processo. Medir o tempo total até essa atividade fornece o KPI "Tempo Médio do Pedido ao Fechamento". Onde obter Inferido a partir de uma alteração no campo 'Status' do objeto 'Order' para um valor final como 'Closed', 'Completed' ou 'Fulfilled'. O timestamp está disponível pelo histórico de alterações do campo. Captura Acompanhe o histórico de campos do objeto 'Order' para identificar a mudança para um status final/concluído. Tipo de evento inferred | |||
Análise de Crédito Realizada | Representa a conclusão da análise de crédito do cliente associado ao pedido. Geralmente é um evento inferido, capturado quando um campo customizado, como 'Credit Check Status', é atualizado para 'Passed' ou 'Completed'. | ||
Por que é importante Esta atividade costuma ser fonte de atrasos significativos. Medir sua duração e o tempo de espera é fundamental para as análises no dashboard 'Credit Check Bottleneck Analysis' e para melhorar o fluxo de caixa. Onde obter Inferido a partir de um timestamp ou de uma alteração de status em um campo customizado no objeto 'Order' ou no objeto relacionado 'Account', por exemplo, 'Credit_Check_Date__c' ou 'Credit_Status__c'. Captura Acompanhe atualizações em campos personalizados que indiquem a conclusão da análise de crédito. Tipo de evento inferred | |||
Estoque Alocado | Indica que os produtos do pedido foram reservados no sistema de estoque. Esse evento normalmente se origina em um ERP ou sistema de inventário externo e atualiza o Salesforce, capturado por meio de uma alteração de campo. | ||
Por que é importante Esta atividade é crucial para analisar o KPI 'Inventory Allocation Lead Time'. Atrasos aqui impactam diretamente a capacidade de expedir os pedidos no prazo. Onde obter Requer análise do sistema. Muitas vezes é inferido por uma atualização de status nos objetos 'Order' ou 'OrderItem', ou pelo preenchimento de um campo customizado 'Allocation_Date__c', alimentado por uma integração. Captura Acompanhe mudanças de status ou de campos de data nos objetos 'Order' ou 'OrderItem' a partir de uma integração com o ERP. Tipo de evento inferred | |||
Fatura Enviada ao Cliente | Indica que a fatura foi enviada ao cliente para pagamento. Normalmente isso é capturado como uma mudança de status no registro da fatura. | ||
Por que é importante Este é o evento gatilho do KPI 'Payment Realization Time'. Qualquer atraso entre a criação e o envio da fatura adia diretamente o início do prazo de pagamento. Onde obter Inferido a partir de uma mudança de status no objeto 'Invoice' para 'Sent' ou valor similar. Um registro de atividade do e-mail enviado também pode ser usado. Captura Monitore o campo 'Status' no objeto relacionado 'Invoice' ou verifique atividades nos logs de e-mail. Tipo de evento inferred | |||
Pedido Aprovado | Indica que o pedido de venda foi formalmente aprovado por todas as partes necessárias e pode avançar para a próxima etapa. Isso é capturado pela observação da etapa final de aprovação em um workflow ou por uma atualização de status correspondente. | ||
Por que é importante Marco-chave que destrava o processo de fulfillment. Atrasos na aprovação podem impactar significativamente o tempo de ciclo do pedido ao recebimento. Onde obter Inferido a partir de uma alteração de campo de status no objeto 'Order' para um valor como 'Approved'. Também pode ser derivado da data de conclusão do registro 'ProcessInstance' associado. Captura Monitore o campo 'Status' no objeto 'Order' ou a conclusão registrada no histórico do processo de aprovação. Tipo de evento inferred | |||
Pedido Cancelado | Indica que o pedido foi cancelado antes da conclusão do atendimento. Isso é capturado por uma mudança de status final no registro do pedido. | ||
Por que é importante Esta é uma exceção crítica e um evento de término. Analisar por que e quando os pedidos são cancelados pode revelar problemas no processo de vendas, na disponibilidade de produtos ou no crédito do cliente. Onde obter Inferido a partir de uma alteração no campo 'Status' do objeto 'Order' para 'Cancelled'. O timestamp pode ser encontrado no histórico do campo 'Status'. Captura Acompanhe o histórico de campos do objeto 'Order' para identificar a mudança de status para 'Cancelled'. Tipo de evento inferred | |||
Pedido Enviado para Aprovação | Representa o momento em que um pedido em rascunho é enviado para um workflow formal de aprovação. Normalmente é inferido por uma mudança de status no pedido ou pela criação de um registro no histórico do processo de aprovação do Salesforce. | ||
Por que é importante Rastrear os envios para aprovação ajuda a medir o tempo que os pedidos ficam aguardando aprovação e a eficiência do próprio processo de revisão. Isso evidencia gargalos antes da aprovação. Onde obter Inferido a partir de uma mudança de status no objeto 'Order' (por exemplo, de 'Draft' para 'Submitted for Approval') ou pelo acompanhamento da data de envio no objeto 'ProcessInstance' relacionado ao pedido. Captura Acompanhe mudanças no campo de status ou consulte o objeto 'ProcessInstance'. Tipo de evento inferred | |||
Pedido Enviado para Expedição | Marca a transferência do pedido ativado para o armazém ou sistema de expedição (fulfillment) para separação (picking) e embalagem (packing). Geralmente é capturado por uma mudança de status no pedido, acionada por uma integração. | ||
Por que é importante Este evento separa as partes comercial e logística do processo. Acompanhar o tempo da ativação até este ponto ajuda a isolar atrasos administrativos de atrasos no processamento no armazém. Onde obter Inferido a partir de uma mudança no status do objeto 'Order' para um valor como 'Sent to Fulfillment' ou 'Awaiting Shipment'. Essa mudança de status geralmente é acionada por uma integração com um ERP/WMS. Captura Monitore o campo 'Status' no objeto 'Order' para valores que indiquem a transferência para expedição (fulfillment). Tipo de evento inferred | |||
Guias de Extração
Etapas
- Pré-requisito: configurar o Field History Tracking: Antes de criar relatórios, um administrador do Salesforce deve garantir que o Field History Tracking esteja ativado para o objeto Order. Especificamente, rastreie o campo Status e quaisquer campos personalizados usados para sinalizar eventos, como Credit_Check_Status__c ou Fulfillment_Status__c. Isso é feito em Setup > Object Manager > Order > Fields & Relationships > Set History Tracking.
- Crie um tipo de relatório personalizado: Para ver as alterações de campo junto com os detalhes do pedido, crie um tipo de relatório personalizado. Vá em Setup > Report Types. Crie um novo tipo de relatório com Orders como objeto principal e relacione Order History como objeto secundário. Defina o relacionamento como "'A' records may or may not have related 'B' records." Isso permite gerar relatórios de todos os pedidos, inclusive os que ainda não têm histórico. Salve esse tipo de relatório como "Orders with History".
- Crie o relatório principal 'Eventos': Vá até a aba Reports e clique em New Report. Selecione o tipo de relatório "Orders with History". Esse relatório captura todas as atividades baseadas em alterações de campo.
- Configure as colunas do relatório de Eventos: Adicione as seguintes colunas: Order: Order Number (para SalesOrderId), Edit Date (para EventTime), User (para UserPerformingAction), Field/Event (o campo alterado), Original Value e New Value. Inclua também outras colunas do objeto Order, como Order: Total Amount, Account: Account Name e Order: Company Authorized By Date (como referência para RequestedDeliveryDate, se aplicável).
- Filtre o relatório de Eventos: Defina o filtro Show Me como All orders e o Date Field como Created Date, com o período desejado (ex.: Last 3 Months). Adicione um filtro na coluna Field/Event para incluir apenas as alterações de campo que correspondem às suas atividades (por exemplo, Status, Credit_Check_Status__c).
- Crie o relatório 'Pedido criado': Crie um segundo relatório, mais simples, usando o tipo padrão Orders. O objetivo é capturar apenas o evento de criação. Adicione as colunas Order Number, Created Date, Created By, Status, Total Amount e Account Name. Filtre por Created Date no intervalo desejado.
- Exporte os dois relatórios: Execute ambos e use a opção Export. Escolha o formato Details Only e Comma Delimited .csv.
- Combine e transforme os dados: Abra os arquivos CSV exportados em uma planilha como o Microsoft Excel ou use uma linguagem de script, como Python.
- No relatório 'Eventos', crie uma nova coluna ActivityName. Use fórmulas ou um script para mapear as alterações de campo para os nomes de atividades desejados. Por exemplo, se Field/Event for 'Status' e New Value for 'Activated', defina ActivityName como 'Order Activated'.
- No relatório 'Pedido criado', adicione uma nova coluna chamada ActivityName e defina seu valor como 'Order Created' para todas as linhas. Renomeie as colunas para corresponder ao esquema do Event Log (ex.: Order Number -> SalesOrderId, Created Date -> EventTime).
- Unifique em um único Event Log: Una as linhas dos dados transformados de 'Pedido criado' às dos dados transformados de 'Eventos'. Isso cria uma lista única de todas as atividades.
- Finalize para o upload: Adicione as colunas obrigatórias restantes: SourceSystem (com valor fixo 'Salesforce Sales Cloud') e LastDataUpdate (com o carimbo de data e hora atual). Revise todos os cabeçalhos e formatos antes de salvar o arquivo final como CSV, pronto para upload.
Configuração
- Tipos de relatório: Crie um tipo de relatório personalizado que combine Orders e Order History; ele é essencial para registrar mudanças de status e outras atualizações em campos como eventos distintos.
- Rastreamento de histórico de campos: Todo este método depende de habilitar o rastreamento do histórico de campos no objeto Order antes de iniciar a extração dos dados. Campos-chave como Status e campos personalizados que representem etapas do processo precisam estar com o histórico ativado.
- Filtros de intervalo de datas: Use o campo Created Date do objeto Order como filtro principal para garantir que você está analisando um conjunto consistente de pedidos. Para a análise inicial, recomendamos um período de 3 a 6 meses.
- Data Export Service: Como alternativa para ambientes de alto volume, é possível agendar o Data Export Service (semanal ou mensalmente) para exportar todos os dados dos objetos especificados (Order, OrderHistory, Account). Ele fornece dados brutos que exigem mais processamento e junções externas, mas evita timeouts e limites de linhas do Report Builder interativo.
- Permissões: Quem executar a extração precisa das permissões Run Reports, Export Reports e View All Data para os objetos Order e Account. Para configurar o Data Export Service, são necessárias permissões de System Administrator.
- Estrutura do relatório: Defina os relatórios no Tabular Format para facilitar a exportação e o processamento. Evite os formatos Summary e Matrix.
a Consulta de Exemplo config
/*
Salesforce Reports are configured through the user interface. This section describes the configuration of the necessary reports and the logic for post-processing. It is not an executable script.
*/
// ======== REPORT 1: Order Creation Events ========
{
"ReportName": "O2C - Order Created",
"ReportType": "Orders",
"Format": "Tabular",
"Filters": [
{
"Field": "Created Date",
"Operator": "equals",
"Value": "[Specify Date Range, e.g., LAST 90 DAYS]"
}
],
"Columns": [
{"SourceField": "Order Number", "OutputAs": "SalesOrderId"},
{"StaticValue": "Order Created", "OutputAs": "ActivityName"},
{"SourceField": 'Created Date', "OutputAs": "EventTime"},
{"SourceField": "Last Modified By: Full Name", "OutputAs": "UserPerformingAction"},
{"SourceField": "Status", "OutputAs": "OrderStatus"},
{"SourceField": "Total Amount", "OutputAs": "TotalOrderAmount"},
{"SourceField": "Account: Account Name", "OutputAs": "AccountName"},
{"SourceField": "[Your Requested Delivery Date Field]", "OutputAs": "RequestedDeliveryDate"}
]
}
// ======== REPORT 2: Order Field Change Events ========
{
"ReportName": "O2C - Order History Events",
"ReportType": "Orders with History (Custom)",
"Format": "Tabular",
"Filters": [
{
"Field": "Order: Created Date",
"Operator": "equals",
"Value": "[Specify Date Range, e.g., LAST 90 DAYS]"
},
{
"Field": "Field/Event",
"Operator": "in",
"Value": ["Status", "[Credit Check Status Field]", "[Inventory Status Field]", "[Fulfillment Status Field]", "[Shipping Status Field]", "[Delivery Status Field]", "[Invoice Status Field]", "[Payment Status Field]"]
}
],
"Columns": [
{"SourceField": "Order: Order Number", "OutputAs": "SalesOrderId"},
{"SourceField": "Edit Date", "OutputAs": "EventTime"},
{"SourceField": "User", "OutputAs": "UserPerformingAction"},
{"SourceField": "Field/Event", "OutputAs": "SourceFieldForActivity"},
{"SourceField": "New Value", "OutputAs": "SourceValueForActivity"},
{"SourceField": "Order: Total Amount", "OutputAs": "TotalOrderAmount"},
{"SourceField": "Account: Account Name", "OutputAs": "AccountName"}
]
}
// ======== EXTERNAL TRANSFORMATION LOGIC (to be applied after export) ========
/*
- Combine the two exported files.
- For the 'Order History Events' data, create the 'ActivityName' and 'OrderStatus' columns based on the following mapping logic:
CASE
WHEN SourceFieldForActivity = 'Status' AND SourceValueForActivity = 'Submitted' THEN 'Order Submitted for Approval'
WHEN SourceFieldForActivity = 'Status' AND SourceValueForActivity = 'Approved' THEN 'Order Approved'
WHEN SourceFieldForActivity = 'Status' AND SourceValueForActivity = 'Activated' THEN 'Order Activated'
WHEN SourceFieldForActivity = '[Fulfillment Status Field]' AND SourceValueForActivity = 'Sent to Fulfillment' THEN 'Order Sent to Fulfillment'
WHEN SourceFieldForActivity = '[Shipping Status Field]' AND SourceValueForActivity = 'Shipped' THEN 'Goods Shipped'
WHEN SourceFieldForActivity = '[Delivery Status Field]' AND SourceValueForActivity = 'Delivered' THEN 'Goods Delivered'
WHEN SourceFieldForActivity = 'Status' AND SourceValueForActivity = 'Closed' THEN 'Order Closed'
WHEN SourceFieldForActivity = 'Status' AND SourceValueForActivity = 'Cancelled' THEN 'Order Cancelled'
WHEN SourceFieldForActivity = '[Credit Check Status Field]' AND SourceValueForActivity = 'Passed' THEN 'Credit Check Performed'
WHEN SourceFieldForActivity = '[Inventory Status Field]' AND SourceValueForActivity = 'Allocated' THEN 'Inventory Allocated'
WHEN SourceFieldForActivity = '[Invoice Status Field]' AND SourceValueForActivity = 'Created' THEN 'Invoice Created'
WHEN SourceFieldForActivity = '[Invoice Status Field]' AND SourceValueForActivity = 'Sent' THEN 'Invoice Sent to Customer'
WHEN SourceFieldForActivity = '[Payment Status Field]' AND SourceValueForActivity = 'Received' THEN 'Payment Received'
ELSE 'Unknown'
END AS ActivityName
- The OrderStatus attribute should be populated with the 'New Value' when the changed field was 'Status'. For other events, you may need to look up the order's status at that point in time, which is a limitation of this method.
- Add 'SourceSystem' and 'LastDataUpdate' columns to the final combined dataset.
*/