UiPath Documentation
process-mining
2023.10
false
Importante :
A tradução automática foi aplicada parcialmente neste conteúdo. A localização de um conteúdo recém-publicado pode levar de 1 a 2 semanas para ficar disponível.
UiPath logo, featuring letters U and I in white

Guia do usuário do Process Mining

Última atualização 23 de abr de 2026

Datas de conclusão

Introdução

O painel Datas de vencimento exibe informações sobre objetos que atendem ou não aos prazos e os custos relacionados. É possível predefinir as datas de conclusão para definir uma etapa significativa ou prazo de atividade nos processos. O painel Datas de conclusão pode ser usado para analisar vários aspectos das datas de conclusão nos processos. Usando essa painel, é possível examinar as datas de conclusão predefinidas na processo, como um prazo de pagamento ou um SLA que precisa ser cumprido a tempo.

As datas de vencimento podem ter custos associados a atrasos nas datas de vencimento.

Confira Tags e datas de vencimento prontas para uso para obter mais informações sobre datas de vencimento prontas para uso para modelos de aplicativos Purchase-to-Pay e modelos de aplicativos Order-to-Cash.

Confira Configurando datas de vencimento para obter mais informações sobre como configurar datas de vencimento em transformações de dados.

Configuração de datas de vencimento

Se você quiser usar o painel Datas de vencimento para analisar datas de vencimento, as datas de vencimento devem ser definidas para seu modelo de aplicativo.

Se houver datas de vencimento prontas para uso disponíveis para seu modelo de aplicativo, essas datas de vencimento serão mostradas no painel Datas de vencimento . Na documentação do seu modelo de aplicativo específico, você encontrará uma visão geral das datas de vencimento disponíveis. A página Modelos de aplicativo contém links para a documentação de todos os modelos de aplicativo disponíveis.

Se não houver dados disponíveis no painel de datas de conclusão, você precisará configurar suas próprias datas de conclusão no arquivo models\5_business_logic\Due_dates_base.sql usando transformações de dados. Aqui você também pode configurar quaisquer datas de vencimento padrão para suas necessidades de negócios.

Para Processo personalizado , você também pode carregar datas de vencimento usando o arquivo Due_dates_raw.csv . Verifique Campos de entrada de Processo personalizado.

Adição de lógica de negócios nas transformações

Na última etapa de transformação, a lógica de negócios é adicionada conforme necessário para a análise de dados.

Cada registro na tabela de datas de conclusão representa uma data de conclusão para um determinado objeto. Alguns exemplos de datas de conclusão são:

  • um prazo de pagamento para um objeto de pagamento.
  • um prazo de aprovação para a requisição de compra.

Os campos obrigatórios para esta tabela são Event_ID, Due_date, Actual_datee Expected_date.

Exemplos de datas de vencimento

Nem todos os eventos terão uma data de vencimento e alguns eventos podem ter várias datas de vencimento.

Consulte Transformações de dados para obter mais informações.

Providing due date configuration input using dbt seeds

Você pode fornecer dados de entrada adicionais a serem usados para os cálculos no painel Datas de vencimento usando um arquivo semente dbt . A pasta sementes\ das transformações de aplicativos para o modelo de aplicativo contém um arquivo Due_dates_configuration_raw.csv. Para todas as datas de conclusão, você pode fornecer os seguintes campos.

NameTipoDescription
Due_dateTextoO nome da data de conclusão.
Due_date_typeTextoO tipo de data de vencimento.
Fixed_costsBooleanoUma indicação se os custos são fixos ou baseados no tempo.
CustoFlutuarCustos fixos: o valor dos custos. Custos variáveis: o valor dos custos por Tempo e Type_type.
HoraNúmero inteiroUm número que indica a quantidade de tempo no caso de custos baseados em tempo.
Time_typeTextoTipo de período de tempo para cálculos de custo. Pode ser qualquer um dos seguintes valores: dia, hora, minuto, segundo, milissegundo.

A ilustração a seguir mostra um exemplo de um arquivo de sementes.

Exemplo de arquivo de semente

Exemplos de SQL para configurar datas de vencimento

Esta página contém alguns exemplos de SQL que você pode usar para configurar datas de vencimento usando transformações.

Observação:

Os exemplos de SQL são baseados em modelos de log de eventos e aplicativos de processos personalizados e usam Casos que têm um Case_ID. Se você quiser usar os exemplos de SQL para definir Datas de vencimento para modelos de aplicativos Purchase-to-Pay ou modelos de aplicativos Order-to-Cash , certifique-se de usar o objeto apropriado e o object_ID interno relacionado. Para Purchase-to-Pay, você pode usar o log de eventos Purchase_order_item_end_to_end_events , o objeto Purchase_order_items e Purchase_order_item_ID_internal como Case_ID. Para Order-to-Cash, você pode usar o log de eventos Sales_order_item_end_to_end_events , o objeto Sales_order_items e Sales_order_item_ID_internal como Case_ID.

O bloco de código a seguir mostra um exemplo de consulta SQL para definir uma data de vencimento.

select
    tableA."Case_ID",
    {{ pm_utils.as_varchar('Name of Due date') }} as "Due_date",
    tableB."SLA_date" as "Expected_date",
     tableA."Executed_date" as "Actual_date"
from {{ ref('tableA') }} as tableA
left join {{ ref('tableB') }} as tableB
on tableA."Case_ID" = tableB."Case_ID"
select
    tableA."Case_ID",
    {{ pm_utils.as_varchar('Name of Due date') }} as "Due_date",
    tableB."SLA_date" as "Expected_date",
     tableA."Executed_date" as "Actual_date"
from {{ ref('tableA') }} as tableA
left join {{ ref('tableB') }} as tableB
on tableA."Case_ID" = tableB."Case_ID"

O bloco de código a seguir mostra um exemplo de consulta SQL para configurar datas de vencimento.

select
        Due_dates_base."Case_ID",
        Due_dates_base."Due_date",
        Due_dates_base."Actual_date",
        Due_dates_base."Expected_date",
        {{ pm_utils.as_varchar('Type of Due date') }} as "Due_date_type",
        case
            when Due_dates_base."Actual_date" <= Due_dates_base."Expected_date"
                then {{ pm_utils.to_boolean('true') }}
            else {{ pm_utils.to_boolean('false') }}
        end as "On_time",
        case
            -- when actual or expected date are null
            when Due_dates_base."Actual_date" is null or Due_dates_base."Expected_date" is null
                then {{ pm_utils.to_double('null') }}
            -- when the due date is on time, the cost is 0
            when Due_dates_base."Actual_date" <= Due_dates_base."Expected_date"
                then {{ pm_utils.to_double('0') }}
            -- when the due date is late, configure a cost
            when Due_dates_base."Expected_date" > Due_dates_base."Actual_date"
                then {{ pm_utils.to_double('10') }}
        end as "Cost",
        {{ pm_utils.datediff('millisecond', 'Due_dates_base."Expected_date"', 'Due_dates_base."Actual_date"') }} as "Difference"
    from Due_dates_base
select
        Due_dates_base."Case_ID",
        Due_dates_base."Due_date",
        Due_dates_base."Actual_date",
        Due_dates_base."Expected_date",
        {{ pm_utils.as_varchar('Type of Due date') }} as "Due_date_type",
        case
            when Due_dates_base."Actual_date" <= Due_dates_base."Expected_date"
                then {{ pm_utils.to_boolean('true') }}
            else {{ pm_utils.to_boolean('false') }}
        end as "On_time",
        case
            -- when actual or expected date are null
            when Due_dates_base."Actual_date" is null or Due_dates_base."Expected_date" is null
                then {{ pm_utils.to_double('null') }}
            -- when the due date is on time, the cost is 0
            when Due_dates_base."Actual_date" <= Due_dates_base."Expected_date"
                then {{ pm_utils.to_double('0') }}
            -- when the due date is late, configure a cost
            when Due_dates_base."Expected_date" > Due_dates_base."Actual_date"
                then {{ pm_utils.to_double('10') }}
        end as "Cost",
        {{ pm_utils.datediff('millisecond', 'Due_dates_base."Expected_date"', 'Due_dates_base."Actual_date"') }} as "Difference"
    from Due_dates_base
Atividade X realizada antes da data Y

Esse código SQL identifica casos em que a última ocorrência da atividade 'X' foi realizada antes da data 'Y'.

with Event_log_base as (
    select * from {{ ref('Event_log_base') }}
),

Cases_base as (
    select * from {{ ref('Cases_base') }}
),

-- Last activity X of each case
Last_activity_X as (
    select
        Event_log_base."Case_ID",
        max(Event_log_base."Event_end") as "Event_end",
        max(Event_log_base."Event_ID") as "Event_ID"
    from Event_log_base
    where Event_log_base."Activity" = 'X'
    group by Event_log_base."Case_ID"
),

-- Last activity X should be done before Case date field Y
Activity_X_done_before_date_Y as (
    select
        Last_activity_X."Case_ID",
        {{ pm_utils.as_varchar('Last activity X before Cases date field Y') }} as "Due_date",
        Last_activity_X."Event_end" as "Actual_date",
        Cases_base."Case_date_field_Y" as "Expected_date",
        Last_activity_X."Event_ID"
    from Last_activity_X
    inner join Cases_base
        on Last_activity_X."Case_ID" = Cases_base."Case_ID"
)

select * from Activity_X_done_before_date_Y
with Event_log_base as (
    select * from {{ ref('Event_log_base') }}
),

Cases_base as (
    select * from {{ ref('Cases_base') }}
),

-- Last activity X of each case
Last_activity_X as (
    select
        Event_log_base."Case_ID",
        max(Event_log_base."Event_end") as "Event_end",
        max(Event_log_base."Event_ID") as "Event_ID"
    from Event_log_base
    where Event_log_base."Activity" = 'X'
    group by Event_log_base."Case_ID"
),

-- Last activity X should be done before Case date field Y
Activity_X_done_before_date_Y as (
    select
        Last_activity_X."Case_ID",
        {{ pm_utils.as_varchar('Last activity X before Cases date field Y') }} as "Due_date",
        Last_activity_X."Event_end" as "Actual_date",
        Cases_base."Case_date_field_Y" as "Expected_date",
        Last_activity_X."Event_ID"
    from Last_activity_X
    inner join Cases_base
        on Last_activity_X."Case_ID" = Cases_base."Case_ID"
)

select * from Activity_X_done_before_date_Y
Atividade X realizada dentro de 5 dias após a atividade Y

Esse código SQL identifica casos para os quais a última ocorrência da atividade 'X' aconteceu dentro de 5 dias após a última ocorrência da atividade 'Y'.

with Event_log_base as (
    select * from {{ ref('Event_log_base') }}
),

-- Last activity X of each case
Last_activity_X as (
    select
        Event_log_base."Case_ID",
        max(Event_log_base."Event_end") as "Event_end",
        max(Event_log_base."Event_ID") as "Event_ID"
    from Event_log_base
    where Event_log_base."Activity" = 'X'
    group by Event_log_base."Case_ID"
),

-- Last activity Y of each case
Last_activity_Y as (
    select
        Event_log_base."Case_ID",
        max(Event_log_base."Event_end") as "Event_end",
        max(Event_log_base."Event_ID") as "Event_ID"
    from Event_log_base
    where Event_log_base."Activity" = 'Y'
    group by Event_log_base."Case_ID"
),

-- Last activity X should be done at date of last Event Y + 5 days
Activity_X_done_within_5_days_after_activity_Y as (
    select
        Last_activity_Y."Case_ID",
        {{ pm_utils.as_varchar('Last activity X before last activity Y + 5 days') }} as "Due_date",
        {{ pm_utils.dateadd('day', 5, 'Last_activity_Y."Event_end"') }} as "Expected_date",
        Last_activity_X."Event_end" as "Actual_date",
        Last_activity_Y."Event_ID" as "Event_ID"
    from Last_activity_Y
    inner join Last_activity_X
        on Last_activity_Y."Case_ID" = Last_activity_X."Case_ID"
)

select * from Activity_X_done_within_5_days_after_activity_Y
with Event_log_base as (
    select * from {{ ref('Event_log_base') }}
),

-- Last activity X of each case
Last_activity_X as (
    select
        Event_log_base."Case_ID",
        max(Event_log_base."Event_end") as "Event_end",
        max(Event_log_base."Event_ID") as "Event_ID"
    from Event_log_base
    where Event_log_base."Activity" = 'X'
    group by Event_log_base."Case_ID"
),

-- Last activity Y of each case
Last_activity_Y as (
    select
        Event_log_base."Case_ID",
        max(Event_log_base."Event_end") as "Event_end",
        max(Event_log_base."Event_ID") as "Event_ID"
    from Event_log_base
    where Event_log_base."Activity" = 'Y'
    group by Event_log_base."Case_ID"
),

-- Last activity X should be done at date of last Event Y + 5 days
Activity_X_done_within_5_days_after_activity_Y as (
    select
        Last_activity_Y."Case_ID",
        {{ pm_utils.as_varchar('Last activity X before last activity Y + 5 days') }} as "Due_date",
        {{ pm_utils.dateadd('day', 5, 'Last_activity_Y."Event_end"') }} as "Expected_date",
        Last_activity_X."Event_end" as "Actual_date",
        Last_activity_Y."Event_ID" as "Event_ID"
    from Last_activity_Y
    inner join Last_activity_X
        on Last_activity_Y."Case_ID" = Last_activity_X."Case_ID"
)

select * from Activity_X_done_within_5_days_after_activity_Y

Analyzing Due dates

Due dates dashboard

O painel Datas de vencimento permite analisar as datas de vencimento que ocorrem no processo.

Siga estas etapas para exibir o painel Datas de vencimento .

  1. Selecione Datas de vencimento no menu à esquerda do painel.

O painel de Datas de vencimento é exibido.

A tabela a seguir descreve os gráficos disponíveis no painel Datas de vencimento .

ChartDescriptionMétricas disponíveis
Due dates detailsUm gráfico de barras mostrando detalhes relacionados às datas de vencimento com base na métrica selecionada.Número de objetos Tempo total de atraso Tempo médio de atraso Porcentagem do tempo custo total* Custo médio*
Histórico de atrasoUm gráfico de histórico mostrando as informações de data de vencimento para o período selecionado com base na métrica selecionada.Tempo total de atraso Tempo médio de atraso Porcentagem sobre o tempo Custo total* Custo médio*
Distribuição de diferençaUm gráfico de distribuição mostrando o número de datas de conclusão relacionadas à quantidade de dias de atraso.
  • Custo total atrasado e Custo médio atrasado só estarão disponíveis se Fixo_cost e Custo estiverem configurados para as datas de vencimento.
Overview tab

Os gráficos na guia Visão geral realçam as datas de conclusão definidas para seu processo. Para cada data de conclusão, é exibido o número de casos (Casos atrasados) e o tempo total de atraso para o período selecionado.

Imagem dos documentos

Details tab

A aba Detalhes contém vários gráficos que permitem analisar as atividades atrasadas com mais detalhes. Veja a ilustração abaixo.

Imagem dos documentos

Abaixo há uma visão geral dos gráficos disponíveis no painel Datas de vencimento .

ChartDescriptionMétricas disponíveis
Possíveis economiasUm gráfico de pizza mostrando a economia de tempo potencial para as datas de vencimento definidas em seu conjunto de dados.Tempo total de atraso Tempo médio de atraso Custo total* Custo médio*
Histórico de atrasoUm gráfico de histórico mostrando as informações de data de vencimento para o período selecionado com base na métrica selecionada.Tempo total de atraso Tempo médio de atraso Porcentagem sobre o tempo Custo total* Custo médio*
Due dates detailsUm gráfico de barras mostrando detalhes relacionados às datas de vencimento com base na métrica selecionada.Número de casos Tempo total de atraso Tempo médio de atraso Porcentagem do tempo custo total* Custo médio*
Distribuição de diferençaUm gráfico de distribuição mostrando o número de datas de conclusão relacionadas à quantidade de dias de atraso.
  • Custo total atrasado e Custo médio atrasado só estarão disponíveis se Fix_cost e Custo forem fornecidos usando o arquivo Due_dates_configuration_raw.csv sementes.
Due dates details

O gráfico Detalhes das datas de conclusão permite visualizar informações detalhadas de datas de conclusão com base em diferentes métricas e campos. É possível selecionar os campos a seguir.

Campo

Description

Data de conclusão O nome da data de conclusão.
Tipo de data de vencimento* O tipo da data de vencimento.
Custo* Os custos relacionados à data de vencimento.
Data esperada A data prevista para a execução da atividade.
Data efetiva A data em que a atividade é realmente executada.
On time Atividades que estão On runtime ou Atrasadas .

Observação: atividades atrasadas são atividades para as quais a Data real é posterior à data esperada .

Diferença A quantidade de tempo entre a data esperada e a data real .
  • Tipo de data de vencimento e Custo só estarão disponíveis se esses campos estiverem configurados para as Datas de vencimento.

Esta página foi útil?

Conectar

Precisa de ajuda? Suporte

Quer aprender? Academia UiPath

Tem perguntas? Fórum do UiPath

Fique por dentro das novidades