Seu Template de Dados da Jornada do Paciente
Seu Template de Dados da Jornada do Paciente
- Atributos recomendados para contexto cl nico
- Marcos principais do processo para monitoramento
- Orientaes espec ficas de extrao para Epic EHR
Atributos da Jornada do Paciente
| Nome | Descrição | ||
|---|---|---|---|
| Epis dio do Paciente PatientEpisodeId | O identificador nico do atendimento ou epis dio de cuidado do paciente. | ||
| Descrição O Epis dio do Paciente serve como o identificador principal (Case ID) para o Process Mining. Ele agrupa todos os eventos cl nicos e log sticos de um per odo cont nuo de cuidado, como uma internao ou visita emerg ncia. No Epic Clarity, geralmente corresponde ao Contact Serial Number (CSN) ou ID de Atendimento. Analisar este atributo permite reconstruir a jornada ponta a ponta do paciente, associando triagem, diagn stico, tratamento e alta em uma instncia de processo coesa. Por que é importante É a chave fundamental para vincular eventos distintos em um único caso de processo. Onde obter Tabela Epic Clarity: PAT_ENC, Coluna: PAT_ENC_CSN_ID Exemplos 200459112200459113200459114200459115 | |||
| Event Timestamp EventTimestamp | A data e hora exatas em que a atividade ocorreu. | ||
| Descrição Registra o momento exato em que um evento foi logado no Epic. usado para sequenciar atividades e calcular todas as m tricas de durao, como perman ncia e tempos de ciclo. A preciso aqui vital para identificar gargalos. Alimenta dashboards como Giro da Triagem e Tempo para Diagn stico Definitivo. Por que é importante Permite o cálculo de tempos de ciclo, lead times e a ordenação do processo. Onde obter V rias colunas de timestamp (ex: EFFECTIVE_TIME, ORDER_TIME) dependendo da tabela de origem. Exemplos 2023-10-15T08:30:00Z2023-10-15T09:15:22Z2023-10-16T14:20:00Z | |||
| Nome da Atividade ActivityName | A ao cl nica ou administrativa espec fica realizada. | ||
| Descrição Este atributo captura o nome do evento na jornada do paciente, como 'Registro do Paciente' ou 'Alta Assinada'. o elemento central para definir o fluxo do processo. Na an lise, este campo forma os n s do mapa do processo. derivado de v rios c digos de transao e status de pedidos no EHR para criar um log leg vel. Por que é importante Define as etapas do processo e permite a visualização do fluxo de trabalho. Onde obter Derivado das tabelas CLARITY_ADT, ORDER_PROC e ORDER_MED. Exemplos Triagem ConcluídaExame Diagnóstico SolicitadoAlta do PacienteMedicamento Administrado | |||
| Sistema de Origem SourceSystem | O sistema de registro dos dados, geralmente o Epic EHR. | ||
| Descrição Este atributo identifica a origem dos dados. Embora seja majoritariamente 'Epic EHR', til se houver cruzamento com outros sistemas como LIS ou faturamento. Na an lise, garante a linhagem dos dados e ajuda a investigar se eventos esto ausentes ou malformados em relao fonte. Por que é importante Proporciona rastreabilidade e contexto para a origem dos dados. Onde obter Fixo ou derivado da configuração da string de conexão. Exemplos Epic EHREpic ClarityEpic Caboodle | |||
| Última Atualização de Dados LastDataUpdate | O timestamp de quando os dados foram extraídos ou atualizados pela última vez. | ||
| Descrição Indica quando o registro foi processado pela pipeline de ETL. diferente do timestamp do evento e ajuda a monitorar a atualizao dos dados. Analistas usam isso para saber se o dashboard reflete a realidade em tempo real ou se h lat ncia afetando KPIs como Tempos de Espera na Triagem. Por que é importante Ajuda a avaliar a atualidade e a confiabilidade dos dados de Process Mining. Onde obter Timestamp do sistema ETL. Exemplos 2023-10-27T23:59:59Z2023-10-28T06:00:00Z | |||
| C digo do Diagn stico Principal PrimaryDiagnosisCode | O CID-10 ou c digo interno que representa o diagn stico principal. | ||
| Descrição Registra a condio m dica confirmada. Geralmente preenchido na atividade 'Diagn stico Confirmado'. Por que é importante Agrupa casos por similaridade clínica para análise de protocolo. Onde obter Tabela Epic Clarity: PAT_ENC_DX, Coluna: DX_ID Exemplos J18.9I21.9E11.9 | |||
| Destino Pós-Alta DischargeDisposition | O destino do paciente ap s a alta (Casa, ILPI, bito). | ||
| Descrição Registra para onde o paciente foi ap s sair do hospital. Capturado na alta. Por que é importante Contextualiza o desfecho do processo de cuidado. Onde obter Tabela Epic Clarity: PAT_ENC, Coluna: DISCH_DISP_C Exemplos InícioInstituio de Longa Perman ncia (ILPI)Cuidados Domiciliares (Home Care) | |||
| Event End Time EventEndTime | O registro de data/hora (timestamp) de quando a atividade foi conclu da. | ||
| Descrição Enquanto muitos eventos so instantneos, atividades como 'Exame Realizado' ou 'Interconsulta Conclu da' possuem durao. Este atributo captura o hor rio de concluso. Permite calcular o tempo de processamento ativo versus tempo de espera, o que essencial para o dashboard de Tempos de Ciclo de Diagn stico. Por que é importante Permite o cálculo da duração das atividades e utilização de recursos. Onde obter Consulte a documentação do Epic EHR para colunas específicas de tempo final em ORDER_PROC. Exemplos 2023-10-15T09:45:00Z2023-10-16T15:00:00Z | |||
| ID do Profissional ProviderId | O identificador do usu rio ou profissional que realizou a atividade. | ||
| Descrição Este atributo captura o ID nico do profissional respons vel pelo evento. Por que é importante Possibilita a análise de variação na performance e carga de trabalho entre a equipe. Onde obter Tabela Epic Clarity: CLARITY_EMP, Coluna: USER_ID Exemplos EMP10023DOC5592SISTEMA | |||
| Indicador de Readmisso ReadmissionFlag | Indica se o paciente retornou inesperadamente em até 30 dias. | ||
| Descrição Identifica se o epis dio foi seguido por outra internao no planejada em at 30 dias. a base do KPI de Taxa de Readmisso em 30 dias. Na an lise, serve como vari vel de desfecho. Trilhas que resultam em 'True' so analisadas para encontrar causas ra zes na fase de planejamento de alta. Por que é importante Identifica processos de alta falhos e problemas na qualidade do cuidado. Onde obter Calculado via SQL analisando atendimentos futuros para o mesmo MRN. Exemplos verdadeirofalse | |||
| N vel de Gravidade da Triagem TriageAcuityLevel | A classificao de risco (score de gravidade) atribu da ao paciente na triagem. | ||
| Descrição Este atributo indica a urg ncia do quadro, geralmente em uma escala (ex: n veis ESI 1-5). capturado na triagem. Permite segmentar o dashboard de Intensidade de Recursos por Score de Gravidade. Pacientes de alta gravidade seguem trilhas diferentes, e este campo ajuda a distinguir essas variantes. Por que é importante Segmenta o processo com base na urgência e consumo esperado de recursos. Onde obter Consulte a documentação do Epic EHR para o campo Acuity nos registros do PS. Exemplos 1 - Ressuscitação2 - Emergencial3 - Urgente | |||
| Nome do Departamento DepartmentName | A unidade ou departamento hospitalar onde a atividade ocorreu. | ||
| Descrição Este atributo identifica o local do evento, como 'Pronto-Socorro' ou 'Ala de Cirurgia Geral'. crucial para a An lise de Transfer ncia entre Alas. Os dados segmentam o mapa por departamento, permitindo que gestores isolem gargalos espec ficos de suas unidades versus problemas sist micos do hospital. Por que é importante Permite filtragem organizacional e análise de passagens de plantão/handoff. Onde obter Tabela Epic Clarity: CLARITY_DEP, Coluna: DEPARTMENT_NAME Exemplos Pronto-SocorroRadiologiaUTIPediatria | |||
| Prontu rio (MRN) do Paciente PatientMrn | O n mero do prontu rio (MRN) que identifica o paciente. | ||
| Descrição O MRN o identificador nico do paciente em todo o sistema de sa de, distinto do ID do epis dio. Ele permite rastrear o hist rico em v rias visitas. Este atributo usado para detectar readmisses e vincular epis dios no dashboard de Risco de Readmisso. Ele mapeia para 'Customer' no modelo gen rico. Por que é importante É essencial para identificar visitas recorrentes e analisar o histórico do paciente. Onde obter Tabela Epic Clarity: PATIENT, Coluna: PAT_ID ou PAT_MRN_ID Exemplos MRN-882910MRN-112003MRN-554211 | |||
| Tipo de Atendimento EncounterType | A classificao da visita do paciente (ex: Internado, Emerg ncia). | ||
| Descrição Este atributo categoriza a natureza do epis dio do paciente. Valores comuns incluem 'Emerg ncia', 'Internado' ou 'Ambulatorial'. Mapeado como 'CaseType', fundamental para filtrar a an lise. O dashboard de Planejamento de Alta relevante para internaes, enquanto a Triagem espec fica para Emerg ncia. Por que é importante Fornece o contexto de alto nível para a instância do processo. Onde obter Tabela Epic Clarity: PAT_ENC, Coluna: ENC_TYPE_C Exemplos Emergencial (Emergency)Ambulatório HospitalarPaciente Internado | |||
| Atraso na Adm. de Medicação MedicationAdminDelay | Diferena de tempo entre o hor rio prescrito e a administrao real. | ||
| Descrição Este atributo calcula a variao entre o hor rio prescrito e o hor rio real da checagem do c digo de barras do medicamento. vital para o dashboard de Desempenho na Entrega de Medicamentos. Valores positivos indicam atraso. Essa m trica permite que supervisores de enfermagem identifiquem turnos ou unidades onde a carga de trabalho est afetando a pontualidade do cuidado. Por que é importante É uma medida direta da adesão ao fluxo de enfermagem e segurança do paciente. Onde obter Calculado a partir dos dados do MAR (Registro de Administração de Medicamentos). Exemplos 15min-5min1h 20min | |||
| Custo do Pedido Diagnóstico DiagnosticOrderCost | O custo interno associado a um exame ou procedimento de diagn stico. | ||
| Descrição Este atributo atribui um valor financeiro s atividades de 'Exame de Diagn stico Realizado', permitindo uma camada financeira no mapa do processo. Embora no seja uma m trica cl nica prim ria, ajuda a administrao a entender o peso financeiro de diferentes variantes de processo, especialmente as que envolvem altos scores de gravidade. Por que é importante Adiciona uma dimensão financeira à análise de eficiência do processo. Onde obter Tabelas de Faturamento ou Contabilidade de Custos vinculadas ao procedimento. Exemplos 150.001200.0045.00 | |||
| Durao da Espera por Transfer ncia TransferWaitDuration | Tempo decorrido entre o pedido de transfer ncia e a transfer ncia real. | ||
| Descrição Mede o intervalo entre 'Transfer ncia Solicitada' e 'Paciente Transferido'. o dado principal para a An lise de Transfer ncia entre Alas. Valores altos indicam 'boarding' (pacientes aguardando leitos), o que bloqueia o fluxo vindo da Emerg ncia. Por que é importante Destaca gargalos de logística e capacidade no fluxo do paciente. Onde obter Diferença calculada de tempo entre os eventos de pedido e transferência. Exemplos 2h 30m45min12h | |||
| É Agendamento Automático IsAutomatedScheduling | Sinalização indicando se o agendamento foi feito sem intervenção da equipe. | ||
| Descrição Derivado do M todo de Agendamento. Se a consulta foi feita via MyChart ou workflow autom tico do Cadence, True. Apoia o KPI de Taxa de Automao de Retorno, ajudando l deres a entenderem quanto da carga administrativa est sendo absorvida pela tecnologia. Por que é importante Mede o sucesso da automação do processo. Onde obter Derivado do SchedulingMethod. Exemplos verdadeirofalse | |||
| Especialidade do Prescritor OrderingProviderSpecialty | A especialidade m dica do doutor que solicitou a interconsulta ou exame. | ||
| Descrição Este atributo captura o departamento ou especialidade (ex: 'Cardiologia') do profissional solicitante. usado no dashboard de Lat ncia de Interconsulta. Ajuda a analisar se certas especialidades enfrentam esperas maiores que outras, revelando potenciais gargalos ou falta de recursos em linhas de servio espec ficas. Por que é importante Segmenta a demanda por serviços de diagnóstico e consultoria. Onde obter Consulte a documentação do Epic EHR para dados mestres do prestador. Exemplos CardiologiaClínica MédicaOrtopedia | |||
| M todo de Agendamento SchedulingMethod | Indica como o agendamento de retorno foi realizado. | ||
| Descrição Este atributo captura o canal usado para marcar consultas, como 'MyChart', 'Cadence Auto' ou 'Recepo'. cr tico para o dashboard de Automao de Retorno Ambulatorial. Se o valor indica um canal digital ou liderado pelo paciente, a flag 'IsAutomated' pode ser ativada, destacando o sucesso das iniciativas de transformao digital. Por que é importante Monitora a adoção de ferramentas automatizadas ou de autoatendimento. Onde obter Consulte a documentação do Epic EHR para a origem da criação do agendamento. Exemplos MyChartCadenceTelefonePresencial | |||
| Nome da Região RegionName | A regio geogr fica ou campus hospitalar. | ||
| Descrição Para redes de saúde com múltiplas unidades, este atributo identifica a localização da unidade. Ele permite comparar a performance entre diferentes sites hospitalares. O mapeamento para 'Região' habilita o benchmarking multiunidade para ver se um hospital gerencia a Vazão da Triagem melhor que outro. Por que é importante Habilita o benchmarking entre diferentes unidades em uma rede de saúde. Onde obter Derivado dos dados mestres de Departamento ou Unidade. Exemplos Unidade NorteCentro da CidadeAla Oeste | |||
| Status de Adeso ao Protocolo ProtocolAdherenceStatus | Status indicando se o caso seguiu a trilha cl nica padro. | ||
| Descrição Este atributo compara a sequ ncia de atividades com um modelo de refer ncia (POP). Suporta a visualizao de Conformidade de Protocolos. Os valores podem ser 'Em Conformidade', 'Etapa Pulada' ou 'Fora de Sequ ncia'. Isso permite que lideranas cl nicas filtrem rapidamente casos fora do padro sem inspeo manual. Por que é importante Identifica rapidamente desvios dos padrões de cuidado baseados em evidências. Onde obter Calculado na ferramenta de Process Mining ou pré-processado em SQL. Exemplos Em ConformidadeDesvianteIncompleto | |||
Atividades da Jornada do Paciente
| Atividade | Descrição | ||
|---|---|---|---|
| Alta do Paciente | O encerramento oficial do atendimento de internao. Capturado quando o paciente recebe alta virtual do censo. | ||
| Por que é importante O t rmino formal do epis dio para c lculos de 'Tempo de Perman ncia'. Essencial para a descoberta de variantes no fluxo do paciente. Onde obter ADT Feed (Evento A03) ou PAT_ENC_HSP.DISCH_TIME. Captura Registrado quando a equipe administrativa conclui o fluxo de alta Tipo de evento explicit | |||
| Diagnóstico Confirmado | A insero de um diagn stico confirmado na lista de problemas ou campo de diagn stico do atendimento. Representa o fim da fase de investigao. | ||
| Por que é importante Necess rio para o KPI 'Tempo para Diagn stico Definitivo'. Marca a transio da avaliao para o tratamento focado. Onde obter Tabela PAT_ENC_DX ou atualizao da PROBLEM_LIST vinculada ao atendimento. Captura Registrado quando o clínico adiciona uma entrada na atividade Encounter Diagnosis Tipo de evento explicit | |||
| Registro do Paciente | A criao inicial do registro de atendimento no sistema, marcando o in cio do epis dio de cuidado. Capturado quando o paciente chega recepo ou emerg ncia e faz o check-in no Epic. | ||
| Por que é importante Estabelece o ponto de âncora para toda a Jornada do Paciente e permite o cálculo do tempo total de permanência. Essencial para o dashboard 'Vazão de Triagem e Tempos de Espera'. Onde obter ADT Feed (Evento A04 ou A01) ou tabela Clarity PAT_ENC (criação de HSP_ACCOUNT_ID). Captura Registrado quando a transação de 'Check In' ou 'Admissão' é executada Tipo de evento explicit | |||
| Triagem Concluída | A concluso da avaliao inicial de enfermagem ou triagem. Geralmente capturada quando o flowsheet de triagem preenchido ou o status muda para 'Conclu do'. | ||
| Por que é importante Crítico para o dashboard de 'Vazão de Triagem e Tempos de Espera' para medir a eficiência na entrada. Atrasos aqui reverberam por toda a linha de cuidado. Onde obter PAT_ENC_HSP.TRIAGE_END_TIME ou timestamp de preenchimento de linha espec fica do Flowsheet (FLO_MEASUREMENT). Captura Registrado quando a documentação da triagem é assinada ou o campo de status é atualizado Tipo de evento explicit | |||
| Agendamento de Retorno Realizado | O agendamento de uma consulta ambulatorial futura. Capturado no m dulo de agendamento Cadence vinculado ao prontu rio do paciente. | ||
| Por que é importante Suporta a 'Taxa de Automao de Agendamento de Retorno'. Garante a continuidade do cuidado e ajuda a evitar readmisses. Onde obter PAT_ENC_APPT vinculado ao ID do paciente, criado pr ximo ao hor rio da alta. Captura Registrado quando a vaga de agendamento é confirmada no Cadence Tipo de evento explicit | |||
| Exame Diagnóstico Realizado | A execuo real do exame de diagn stico ou o registro do resultado. Para laborat rio, quando a amostra processada; para imagem, quando o scan conclu do. | ||
| Por que é importante Ponto final para o KPI 'Tempo Médio de Ciclo de Exames Diagnósticos'. Vital para entender atrasos nos serviços de apoio à decisão clínica. Onde obter ORDER_PROC.PROC_END_TIME ou ORDER_STAT_HISTORY quando o status muda para 'Completed' ou 'Resulted'. Captura Registrado quando o técnico conclui a tarefa ou a interface de resultados recebe os dados Tipo de evento explicit | |||
| Exame Diagnóstico Solicitado | A solicitao de um exame de imagem ou laborat rio. Capturado quando o m dico insere e assina o pedido no sistema CPOE. | ||
| Por que é importante O ponto de partida para o dashboard 'Tempos de Ciclo de Servios de Diagn stico'. Volumes altos aqui sem resultados correspondentes indicam gargalos. Onde obter Tabela ORDER_PROC onde ORDER_TYPE Lab ou Imaging/Radiology. Captura Registrado quando o status do pedido se torna 'Signed' ou 'Active' Tipo de evento explicit | |||
| Interconsulta Concluída | A concluso da avaliao do especialista, geralmente marcada pela assinatura da Nota de Consultoria ou pelo fechamento do pedido de interconsulta. | ||
| Por que é importante Ponto final para o 'Lead Time de Interconsulta com Especialista'. Indica que o parecer foi fornecido e o plano de cuidado pode prosseguir. Onde obter HNO_NOTE_TEXT (Nota arquivada como Consult) ou alteração do status de ORDER_PROC para Completed. Captura Inferido pelo tempo de criação da Nota de Interconsulta ou atualização do status do Pedido Tipo de evento inferred | |||
| Interconsulta Solicitada | Um pedido feito para que um especialista avalie o paciente. Capturado como um tipo específico de pedido de procedimento 'Consult' no Epic. | ||
| Por que é importante Ponto de partida para o KPI 'Lead Time de Interconsulta Especializada'. Ajuda a identificar car ncia em especialidades m dicas espec ficas. Onde obter ORDER_PROC onde ORDER_CLASS = 'Consult' ou pedidos de encaminhamento espec ficos. Captura Registrado quando o pedido de interconsulta é assinado Tipo de evento explicit | |||
| Medicamento Administrado | O ato de um enfermeiro ou m dico administrar a medicao ao paciente. Registrado no Registro de Administrao de Medicamentos (MAR). | ||
| Por que é importante Evento principal para o dashboard de 'Performance de Entrega de Medicamentos'. Monitora a adesão ao 'Plano de Tratamento Desenvolvido'. Onde obter Tabela MAR_ADMIN_INFO, especificamente eventos com ação 'Given' ou 'New Bag'. Captura Registrado quando a enfermagem bipa a pulseira do paciente e o medicamento (BCMA) Tipo de evento explicit | |||
| Pedido de Alta Assinado | A autorizao formal do m dico para o paciente sair do hospital. um pedido espec fico inserido no Epic. | ||
| Por que é importante Um marco crítico no 'Planejamento e Execução de Alta'. O intervalo entre isso e a saída real representa o atraso administrativo. Onde obter ORDER_PROC onde o tipo 'Discharge Patient'. Captura Registrado quando o médico assina o pedido de alta Tipo de evento explicit | |||
| Planejamento de Alta Iniciado | O in cio das atividades para preparar a sa da do paciente. Capturado via documentao de Gesto de Casos ou tipos espec ficos de pedidos de alta (Discharge). | ||
| Por que é importante Chave para o dashboard de 'Planejamento e Execução de Alta'. O início precoce está correlacionado com a redução do Tempo de Permanência. Onde obter Criação de HSP_DISCH_PLAN ou primeira nota do Gestor de Casos/Assistente Social. Captura Inferido pela primeira interação com o Discharge Navigator ou nota da Gestão de Casos Tipo de evento inferred | |||
| Plano de Cuidado Iniciado | A atribuio de uma trilha cl nica ou protocolo espec fico ao paciente. Capturado quando um Order Set ou Plano de Cuidados aplicado ao atendimento. | ||
| Por que é importante Suporta a 'Visualizao de Conformidade do Protocolo Cl nico', marcando a inteno de seguir um padro de cuidado. Desvios das etapas planejadas so medidos a partir deste ponto. Onde obter Tabelas ORDER_SET_BKG ou de plano de cuidados indicando que um protocolo foi vinculado ao atendimento. Captura Registrado quando o clínico seleciona e assina um Order Set (Conjunto de Pedidos) Tipo de evento explicit | |||
| Transfer ncia do Paciente | A movimentao f sica do paciente para um novo departamento ou ala. Capturado via eventos de transfer ncia ADT. | ||
| Por que é importante Ponto final para o 'Tempo Médio de Transferência entre Alas'. Suporta a 'Análise de Transferência Interna' para encontrar gargalos na logística hospitalar. Onde obter ADT Feed (Evento A02) ou PAT_ENC_HSP_TRANSACTION (Transferência de Entrada). Captura Registrado quando o escriturário da unidade atualiza a localização do paciente no Censo Tipo de evento explicit | |||
| Transfer ncia Solicitada | Uma solicitação para mover o paciente para uma unidade ou nível de cuidado diferente. Capturado como 'Bed Request' ou 'Transfer Order' no sistema. | ||
| Por que é importante Ponto de partida para o 'Tempo M dio de Transfer ncia entre Alas'. Diferencia a deciso cl nica de movimentao da disponibilidade log stica de leito. Onde obter ADT_TRANSFER_ORDER ou ORDER_PROC (Solicitação de Leito). Captura Registrado quando o médico insere o pedido de transferência Tipo de evento explicit | |||
Guias de Extração
Etapas
- Acesse o Epic Hyperspace e abra o Reporting Workbench (RWB) através da aba de Analytics ou My Reports.
- Crie um Novo Relatório selecionando a aba Library e buscando pelo template "Encounter Search" ou "Patient Encounters". Este template permite recuperar detalhes do atendimento identificados pelo CSN (Contact Serial Number).
- Configure os Critérios (aba Settings):
- Defina o Intervalo de Datas (ex: Data de Alta = Últimos 90 Dias) para capturar episódios concluídos.
- Filtre por Tipo de Atendimento (ex: 'Hospital Encounter', 'Emergency') para excluir visitas ambulatoriais irrelevantes.
- Filtre por Departamento ou Unidade se for necessário um escopo específico.
- Configure as Colunas de Exibição (aba Display):
- Esta é a etapa crítica da extração. Você deve buscar e adicionar as colunas que correspondem aos registros de tempo das atividades necessárias.
- Adicione Identificadores do Paciente:
CSN(Episódio do Paciente),MRN(ID do Paciente). - Adicione Dados Demográficos/Atributos:
Department,Discharge Disposition,Primary Diagnosis Code,Provider. - Adicione Colunas de Timestamp: Busque por colunas como
Admission Time,Triage End Time,Discharge Time,Discharge Order Time,First Med Admin Time, etc. (Veja a seção de Configuração/Query para o mapeamento exato).
- Execute o Relatório e verifique os resultados na janela de visualização.
- Exporte os Dados:
- Clique em Toolbar > Export.
- Selecione o formato CSV ou Texto (Delimitado por Tabulação).
- Certifique-se de que a opção 'Include Column Headers' esteja marcada.
- Salve o arquivo como
Raw_Epic_Extract.csv.
- Transformação dos Dados (Crucial):
- A exportação do RWB gera um conjunto de dados "Largo" (uma linha por episódio com várias colunas de tempo).
- Você deve aplicar o Unpivot (reformatar) para que cada coluna de tempo se torne uma linha distinta no event log.
- Crie um arquivo final com as colunas:
PatientEpisodeId,ActivityName,EventTimestampe os atributos mapeados.
- Formate as Datas: Garanta que o
EventTimestampesteja no formato ISO (YYYY-MM-DD HH:MM:SS) compatível com o ProcessMind. - Validação Final: Verifique se o arquivo possui os cabeçalhos
PatientEpisodeId,ActivityName,EventTimestampe faça o upload para o ProcessMind.
Configuração
- Template: Use "Encounter Search" (LBF) ou "Find Patients" dependendo da versão do Epic.
- Intervalo de Datas: Limite de 3 a 6 meses inicialmente para evitar erros de tempo limite (o RWB não é otimizado para extrações em massa).
- Limite de Linhas: O Epic RWB costuma ter um limite de linhas (ex: 25.000 ou 50.000). Garanta que seu intervalo de datas não ultrapasse isso ou execute em múltiplos lotes.
- Permissões: Requer os pontos de segurança 'Create' e 'Export' no Reporting Workbench.
- Performance: Execute em horários de menor pico se estiver buscando longos períodos históricos.
- Granularidade: Este método fornece registros de tempo resumidos no nível do Atendimento (ex: 'Primeira Adm. de Medicamento'). Não extrai todos os ciclos (ex: cada comprimido dado), a menos que templates de auditoria específicos sejam usados, o que é raro neste caso de uso.
a Consulta de Exemplo config
[REPORT CONFIGURATION SPECIFICATION]
# GENERAL SETTINGS
Application: Epic Reporting Workbench
Template_ID: Encounter_Search_LBF
Time_Horizon: Discharge Date between [Start Date] and [End Date]
Filters: Encounter Type IN ('Hospital Encounter', 'Emergency')
# COLUMN SELECTION MAPPING
# Map the following Epic RWB Columns (Display Names) to the Output Activities.
# Note: Column names may vary slightly by Epic customized build.
[MANDATORY ATTRIBUTES]
Column: Contact Serial Number (CSN) -> Target: PatientEpisodeId
Column: Patient MRN -> Target: PatientMrn
Column: Department at Discharge -> Target: DepartmentName
Column: Discharge Disposition -> Target: DischargeDisposition
Column: Primary Diagnosis ICD-10 -> Target: PrimaryDiagnosisCode
Column: Attending Provider -> Target: ProviderId
Column: Current Date -> Target: LastDataUpdate
Column: System Name (Fixed 'Epic') -> Target: SourceSystem
[ACTIVITY TIMESTAMP MAPPING]
# These columns represent the 'EventTimestamp' for the specific 'ActivityName'
1. Activity: Patient Registered
Epic_Column: Hospital Admission Time OR Check-In Time
2. Activity: Triage Completed
Epic_Column: Triage End Time OR Triage Acuity Time
3. Activity: Care Plan Initiated
Epic_Column: Care Plan Start Date
4. Activity: Diagnostic Test Ordered
Epic_Column: First Lab Order Time OR First Imaging Order Time
(Note: Select 'Earliest' if multiple columns exist)
5. Activity: Diagnostic Test Performed
Epic_Column: First Lab Result Time OR First Imaging End Time
6. Activity: Diagnosis Confirmed
Epic_Column: Principal Diagnosis Problem List Date
7. Activity: Consultation Requested
Epic_Column: Consult Order Create Time
8. Activity: Consultation Completed
Epic_Column: Consult Complete Time
9. Activity: Medication Administered
Epic_Column: First Medication Administration Time
10. Activity: Transfer Ordered
Epic_Column: Transfer Order Time
11. Activity: Patient Transferred
Epic_Column: Last Transfer In Time OR ADT Event Time
12. Activity: Discharge Planning Initiated
Epic_Column: Case Management Start Date
13. Activity: Discharge Order Signed
Epic_Column: Discharge Order Time
14. Activity: Patient Discharged
Epic_Column: Hospital Discharge Time
15. Activity: Follow-up Appointment Scheduled
Epic_Column: Discharge Follow-Up Appointment Made Date
# TRANSFORMATION LOGIC (PSEUDO-CODE)
# The export will be 'Wide'. Apply this logic to create the Event Log:
FOR EACH Row IN Exported_CSV:
EpisodeID = Row['Contact Serial Number']
FUNCTION CreateEvent(ActivityName, TimestampColumn):
IF Row[TimestampColumn] IS NOT NULL:
OUTPUT_ROW = {
'PatientEpisodeId': EpisodeID,
'ActivityName': ActivityName,
'EventTimestamp': Row[TimestampColumn],
'PatientMrn': Row['Patient MRN'],
'DepartmentName': Row['Department at Discharge'],
... [All Attributes]
}
APPEND OUTPUT_ROW TO Event_Log
# Execute for all 15 mappings defined above
CreateEvent('Patient Registered', 'Hospital Admission Time')
CreateEvent('Triage Completed', 'Triage End Time')
... [Repeat for all mapped columns]
END LOOP Etapas
Solicite Acesso ao Banco de Dados: Garanta acesso de leitura ao Epic Clarity Console ou a um cliente SQL conectado ao banco de produção ou relatórios do Clarity. Você precisará de permissões para
PAT_ENC,ORDER_PROC,CLARITY_ADT,MAR_ADMIN_INFOe tabelas de referência relacionadas.Identifique o Escopo e IDs de Filtro: Antes de rodar o script completo, execute consultas simples para identificar os valores específicos de
ORDER_TYPE_Cpara Laboratório, Radiologia, Interconsultas e Transferências na sua instância do Epic, já que essas Category Lists variam por hospital.Configure a Janela de Tempo: Localize as cláusulas
WHEREno script SQL fornecido que filtram porCONTACT_DATEouHOSP_ADMSN_TIME. Ajuste para o período desejado (ex: últimos 6 meses).Mapeie Flowsheets Customizados (Opcional): Caso precise de timestamps precisos para Triagem ou Planejamento de Alta que não estejam na tabela principal de atendimentos, identifique o
FLO_MEAS_ID(Flowsheet Measure ID) desses campos e atualize as seções reservadas no script.Execute a Query: Rode o script SQL completo no seu cliente SQL (ex: SQL Server Management Studio). O script utiliza
UNION ALLpara consolidar diferentes eventos clínicos em uma estrutura de event log padronizada.Pós-Processamento: A query retorna uma lista plana. Verifique se o
EventTimestampnão é nulo. Converta formatos de data específicos do banco para ISO 8601 (YYYY-MM-DDTHH:MM:SS) se necessário.Exporte os Dados: Salve o resultado como um arquivo CSV. Verifique se os cabeçalhos correspondem aos atributos definidos (PatientEpisodeId, ActivityName, etc.).
Upload para o ProcessMind: Importe o CSV no ProcessMind. Mapeie
PatientEpisodeIdcomo Case ID,ActivityNamecomo Activity eEventTimestampcomo Timestamp.
Configuração
- Conexão com Banco de Dados: Epic Clarity (geralmente back-end MSSQL ou Oracle).
- Filtragem de Datas: Filtre por
PAT_ENC.HOSP_ADMSN_TIMEouPAT_ENC.CONTACT_DATE. O intervalo recomendado é de 3 a 6 meses para a análise inicial para garantir a performance da consulta. - Tipos de Atendimento (Encounter Types): O script filtra atendimentos de Internação e Emergência (valores de
ENC_TYPE_Cgeralmente 3 e 50, mas verifique naZC_ENC_TYPE). - Tipos de Pedido: Requer customização dos valores de
ORDER_TYPE_Cpara Laboratórios, Exames de Imagem e Interconsultas com base na configuração local da ZC_ORDER_TYPE. - Performance: O script analisa tabelas de alto volume (
ORDER_PROC,CLARITY_ADT). Certifique-se de usar a indexação correta ou execute em horários de menor pico.
a Consulta de Exemplo sql
WITH Cohort AS (
SELECT
pe.PAT_ENC_CSN_ID,
pe.PAT_ID,
pe.HOSP_ADMSN_TIME,
pe.HOSP_DISCH_TIME,
pe.DEPARTMENT_ID,
dep.DEPARTMENT_NAME,
emp.NAME AS ProviderName,
pat.PAT_MRN_ID,
pe.ACUITY_LEVEL_C,
disch.NAME AS DischargeDisposition,
pe.ENC_TYPE_C
FROM PAT_ENC pe
LEFT JOIN CLARITY_DEP dep ON pe.DEPARTMENT_ID = dep.DEPARTMENT_ID
LEFT JOIN CLARITY_EMP emp ON pe.VISIT_PROV_ID = emp.PROV_ID
LEFT JOIN PATIENT pat ON pe.PAT_ID = pat.PAT_ID
LEFT JOIN ZC_DISCH_DISP disch ON pe.DISCH_DISP_C = disch.DISCH_DISP_C
WHERE pe.HOSP_ADMSN_TIME >= DATEADD(month, -6, GETDATE())
AND pe.ENC_TYPE_C IN (3, 50) -- 3=Inpatient, 50=Emergency (Verify local codes)
)
-- 1. Patient Registered
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)) AS PatientEpisodeId,
'Patient Registered' AS ActivityName,
c.HOSP_ADMSN_TIME AS EventTimestamp,
c.DepartmentName,
c.ProviderName AS ProviderId,
c.PAT_MRN_ID AS PatientMrn,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)) AS TriageAcuityLevel,
CAST(c.ENC_TYPE_C AS VARCHAR(50)) AS EncounterType,
NULL AS PrimaryDiagnosisCode,
NULL AS ReadmissionFlag,
c.DischargeDisposition,
'Epic EHR' AS SourceSystem,
GETDATE() AS LastDataUpdate
FROM Cohort c
WHERE c.HOSP_ADMSN_TIME IS NOT NULL
UNION ALL
-- 2. Triage Completed (Using Flowsheet or Triage Time)
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Triage Completed',
ISNULL(pe.TRIAGE_END_INSTANT, c.HOSP_ADMSN_TIME), -- Fallback if specific column unused
c.DepartmentName,
c.ProviderName,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN PAT_ENC pe ON c.PAT_ENC_CSN_ID = pe.PAT_ENC_CSN_ID
WHERE pe.TRIAGE_END_INSTANT IS NOT NULL
UNION ALL
-- 3. Care Plan Initiated (Based on Order Type)
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Care Plan Initiated',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C = 100 -- Placeholder: Replace with ID for Care Plan/Protocol
UNION ALL
-- 4. Diagnostic Test Ordered (Lab/Radiology)
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Diagnostic Test Ordered',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C IN (1, 2) -- Placeholder: 1=Lab, 2=Radiology (Verify local codes)
UNION ALL
-- 5. Diagnostic Test Performed (Result Time or Procedure Start)
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Diagnostic Test Performed',
COALESCE(ord2.PROC_START_TIME, ord2.PROC_ENDING_TIME, ord.ORDER_INST),
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
JOIN ORDER_PROC_2 ord2 ON ord.ORDER_PROC_ID = ord2.ORDER_PROC_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C IN (1, 2)
AND ord2.PROC_START_TIME IS NOT NULL
UNION ALL
-- 6. Diagnosis Confirmed
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Diagnosis Confirmed',
dx.NOTED_DATE,
c.DepartmentName,
c.ProviderName,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
edg.DX_NAME,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN PAT_ENC_DX dx ON c.PAT_ENC_CSN_ID = dx.PAT_ENC_CSN_ID
JOIN CLARITY_EDG edg ON dx.DX_ID = edg.DX_ID
WHERE dx.NOTED_DATE IS NOT NULL
UNION ALL
-- 7. Consultation Requested
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Consultation Requested',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C = 35 -- Placeholder: Replace with ID for Consult
UNION ALL
-- 8. Consultation Completed
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Consultation Completed',
ord.ORDER_END_TIME,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C = 35 -- Placeholder: Replace with ID for Consult
AND ord.ORDER_STATUS_C = 5 -- Placeholder: 5=Completed
AND ord.ORDER_END_TIME IS NOT NULL
UNION ALL
-- 9. Medication Administered
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Medication Administered',
mar.TAKEN_TIME,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_MED med ON c.PAT_ENC_CSN_ID = med.PAT_ENC_CSN_ID
JOIN MAR_ADMIN_INFO mar ON med.ORDER_MED_ID = mar.ORDER_MED_ID
LEFT JOIN CLARITY_EMP emp ON mar.TAKEN_USER_ID = emp.USER_ID
WHERE mar.TAKEN_TIME IS NOT NULL
AND mar.MAR_ACTION_C = 1 -- Placeholder: 1=Given
UNION ALL
-- 10. Transfer Ordered
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Transfer Ordered',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C = 60 -- Placeholder: Replace with ID for Transfer/Bed Request
UNION ALL
-- 11. Patient Transferred
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Patient Transferred',
adt.EFFECTIVE_TIME,
dep.DEPARTMENT_NAME,
c.ProviderName,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN CLARITY_ADT adt ON c.PAT_ENC_CSN_ID = adt.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_DEP dep ON adt.DEPARTMENT_ID = dep.DEPARTMENT_ID
WHERE adt.EVENT_TYPE_C = 3 -- 3=Transfer In
UNION ALL
-- 12. Discharge Planning Initiated
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Discharge Planning Initiated',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.ORDER_TYPE_C = 70 -- Placeholder: Case Management/Discharge Order Type
UNION ALL
-- 13. Discharge Order Signed
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Discharge Order Signed',
ord.ORDER_INST,
c.DepartmentName,
emp.NAME,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN ORDER_PROC ord ON c.PAT_ENC_CSN_ID = ord.PAT_ENC_CSN_ID
LEFT JOIN CLARITY_EMP emp ON ord.ORDERING_PROV_ID = emp.PROV_ID
WHERE ord.PROC_CODE = 'DISCHARGE' -- Placeholder: Filter by specific discharge procedure code
UNION ALL
-- 14. Patient Discharged
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Patient Discharged',
c.HOSP_DISCH_TIME,
c.DepartmentName,
c.ProviderName,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
WHERE c.HOSP_DISCH_TIME IS NOT NULL
UNION ALL
-- 15. Follow-up Appointment Scheduled
SELECT
CAST(c.PAT_ENC_CSN_ID AS VARCHAR(50)),
'Follow-up Appointment Scheduled',
next_pe.APPT_MADE_DATE,
c.DepartmentName,
c.ProviderName,
c.PAT_MRN_ID,
CAST(c.ACUITY_LEVEL_C AS VARCHAR(50)),
CAST(c.ENC_TYPE_C AS VARCHAR(50)),
NULL,
NULL,
c.DischargeDisposition,
'Epic EHR',
GETDATE()
FROM Cohort c
JOIN PAT_ENC next_pe ON c.PAT_ID = next_pe.PAT_ID
WHERE next_pe.APPT_MADE_DATE BETWEEN c.HOSP_ADMSN_TIME AND ISNULL(c.HOSP_DISCH_TIME, GETDATE())
AND next_pe.CONTACT_DATE > c.HOSP_ADMSN_TIME -- The appointment is for a future date relative to admission