- Antes de começar
- Gerenciamento de acesso
- Introdução
- Integrações
- Como trabalhar com aplicativos de processo
- Como trabalhar com painéis e gráficos
- Como trabalhar com gráficos de processo
- Trabalhando com Descubra modelos de processo e Importar modelos BPMN
- Showing or hiding the menu
- Informações de contexto
- Exportar
- Filtros
- Envio de ideias de automação ao UiPath® Automation Hub
- Tags
- Datas de conclusão
- Comparar
- Verificação de conformidade
- Simulação de processos
- Análise de causa raiz (Pré-visualização)
- Simulação de Potencial de Automação
- Iniciar um projeto do Task Mining a partir do Process Mining
- Triggering an automation from a process app
- Exibição de dados do processo
- Process Insights (visualização)
- Criação de aplicativos
- Carregamento de dados
- Transforming data
- Autopilot™ para SQL (visualização)
- Structure of transformations
- Tips for writing SQL
- Exportando e importando transformações
- Visualização dos logs de execução de dados
- Mesclando logs de evento
- Configuração de tags
- Configuração de datas de vencimento
- Configuração de campos para Potencial de automação
- Configuração da atividade: definição da ordem das atividades
- Disponibilização das transformações em painéis
- Modelos de dados
- Adicionar e editar processos
- Personalização de painéis
- Publicação de aplicativos de processos
- Modelos de apps
- Notificações
- Recursos adicionais

Guia do usuário do Process Mining
Configuração de datas de vencimento
As informações nesta página são aplicáveis apenas para modelos de aplicativos que possuem arquivos de configuração de datas de vencimento e uma pasta seeds\ .
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.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 Case_ID, Due_date, Actual_datee Expected_date.

Nem todos os eventos terão uma data de vencimento e alguns eventos podem ter várias datas de vencimento.
Consulte Editor de transformações de dados para obter mais informações.
Fornecimento de entrada de configuração de data de vencimento em Transformações de dados
Você pode fornecer dados de entrada adicionais a serem usados para os cálculos no painel Datas de vencimento usando instruções SQL em Transformações de dados. Para todas as datas de conclusão, você pode configurar os seguintes campos.
| Name | Tipo | Description |
|---|---|---|
Due_date | Texto | O nome da data de conclusão. |
Due_date_type | Texto | O tipo de data de vencimento. |
Fixed_costs | Booleano | Uma indicação se os custos são fixos ou baseados no tempo. |
Cost | Flutuar | Custos fixos: o valor dos custos. Custos variáveis: o valor dos custos por Tempo e Type_type. |
Time | Número inteiro | Um número que indica a quantidade de tempo no caso de custos baseados em tempo. |
Time_type | Texto | Tipo de período de tempo para cálculos de custo. Pode ser qualquer um dos seguintes valores: dia, hora, minuto, segundo, milissegundo. |
Case_ID | Texto/Integer | O ID do Caso para o qual a data de vencimento está relacionada. |
Confira Transformações.
Providing due date configuration input using dbt seeds
Para aplicativos de processo que ainda contêm o arquivo Due_dates_configuration_raw.csv sementes na pasta sementes\ das transformações de dados, é possível usar esse arquivo para fornecer dados de entrada adicionais a serem usados para os cálculos no painel Datas de vencimento .
A ilustração a seguir mostra um exemplo de um arquivo de sementes.

Confira Transformações.
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.
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
- Adição de lógica de negócios nas transformações
- Fornecimento de entrada de configuração de data de vencimento em Transformações de dados
- Providing due date configuration input using dbt seeds
- Exemplos de SQL para configurar datas de vencimento
- Atividade X realizada antes da data Y
- Atividade X realizada dentro de 5 dias após a atividade Y