Su Template de datos para Compras a pago - Procesamiento de facturas
Su Template de datos para Compras a pago - Procesamiento de facturas
- Atributos recomendados para recopilar
- Actividades clave que debe registrar
- Guía de extracción para SAP ECC
Atributos de Compras a pago - Procesamiento de facturas
| Nombre | Descripción | ||
|---|---|---|---|
| Actividad Activity | Nombre de un paso o evento empresarial específico que ocurrió durante el ciclo de vida del procesamiento de la factura. | ||
| Descripción El atributo Actividad representa una etapa o acción concreta del flujo de trabajo de procesamiento de facturas. Estas actividades se derivan de distintos eventos del sistema, como la creación de documentos, los cambios de estado, las aprobaciones o las acciones de usuario registradas en los registros de modificaciones de SAP. El análisis de las actividades es la base de Process Mining. Permite visualizar mapas de procesos, identificar cuellos de botella (por ejemplo, largas esperas después de 'Factura enviada para aprobación'), ciclos de retrabajo (por ejemplo, ciclos repetidos de 'Bloqueo de pago aplicado' y 'Bloqueo de pago liberado') y desviaciones de cumplimiento. La secuencia y la frecuencia de las actividades revelan cómo se desarrolla realmente el proceso. Por qué es importante Define los pasos del mapa de procesos y permite visualizar los flujos, detectar cuellos de botella e identificar retrabajos. Dónde obtenerlo Este atributo suele derivarse de varias fuentes, como los códigos de transacción (SY-TCODE), los campos de estado de tablas como RBKP (por ejemplo, RBSTAT) y los eventos de modificación de las tablas CDHDR y CDPOS. Ejemplos Factura guardada como preliminarFactura enviada para aprobaciónFactura aprobadaFactura contabilizadaFactura compensada | |||
| Hora del evento EventTime | Marca de tiempo precisa, con fecha y hora, en que ocurrió una actividad. | ||
| Descripción Hora del evento registra el momento exacto en que se ejecutó una actividad empresarial y quedó registrada en el sistema de origen. Esta marca de tiempo es la base cronológica del proceso: ordena todas las actividades de cada factura en una secuencia coherente. En el análisis, la hora del evento es esencial para calcular todas las métricas basadas en duraciones, como los tiempos de ciclo, de espera y de procesamiento entre actividades. Alimenta Dashboards como 'Tiempo de ciclo de la factura de principio a fin' y 'Duración de la resolución de bloqueos de pago', ya que proporciona los datos necesarios para medir el tiempo transcurrido entre dos puntos del proceso. Las marcas de tiempo precisas son fundamentales para identificar retrasos y cuellos de botella en el rendimiento. Por qué es importante Esta marca de tiempo es esencial para ordenar correctamente los eventos y calcular todas las métricas de rendimiento, como los tiempos de ciclo y la duración de los cuellos de botella. Dónde obtenerlo Por lo general, se obtiene combinando la fecha de modificación (UDATE) y la hora de modificación (UTIME) de la tabla de cabecera de documentos de modificación CDHDR. Para determinados eventos de creación, puede corresponder a la fecha y hora de creación de tablas como RBKP (ERNAM, ERZET). Ejemplos 2023-03-15T10:30:00Z2023-03-16T14:05:21Z2023-03-28T09:00:00Z | |||
| Número de factura InvoiceNumber | Identificador único de un documento de factura de proveedor. | ||
| Descripción El número de factura es el identificador único del caso durante el procesamiento de la factura. Cada número corresponde a una sola factura recibida de un proveedor y permite hacer un seguimiento de todas las actividades relacionadas, desde la captura de datos hasta el pago final, como parte de un mismo proceso. En el análisis de Process Mining, este atributo es fundamental para reconstruir el ciclo de vida completo de cada factura. Permite conectar en una secuencia cronológica distintos eventos registrados en SAP, como guardar la factura como preliminar, contabilizarla, bloquearla y compensarla. Así se obtiene una visión clara de cómo se gestiona cada factura, cuánto tarda el proceso y dónde se producen desviaciones respecto del proceso estándar. Por qué es importante Es la clave principal que vincula todos los eventos relacionados con una factura y constituye la base esencial para analizar el proceso y explorar sus variantes. Dónde obtenerlo Suele ser el número de documento del campo BELNR de la tabla RBKP de SAP, a menudo concatenado con el código de sociedad (BUKRS) y el ejercicio fiscal (GJAHR) para garantizar que sea único. Ejemplos 510004567851000456795100045680 | |||
| Fecha de compensación ClearingDate | La fecha en que se realizó el pago y se compensó la factura en cuentas por pagar. | ||
| Descripción La fecha de compensación marca el último paso del ciclo de vida de la factura: el pago. Es la fecha en que un documento de pago compensa la partida abierta de la factura en el sistema. Indica cuándo se ejecutó realmente el pago. Este atributo es el punto final de muchos KPI importantes, como el tiempo de ciclo promedio de las facturas y el porcentaje de pagos puntuales. Se compara con la fecha de vencimiento del pago para medir el rendimiento de los pagos. Para analizar los descuentos por pronto pago, se compara con el período de descuento y permite comprobar si el pago se realizó a tiempo para aprovecharlo. Por qué es importante Marca la finalización del proceso y sirve de base para calcular el tiempo de ciclo total, el porcentaje de pagos puntuales y los descuentos por pronto pago aprovechados. Dónde obtenerlo Para las partidas compensadas, corresponde al campo «Clearing Date» (AUGDT) de la tabla de partidas de proveedor compensadas BSAK. Ejemplos 2023-04-152023-05-022023-05-20 | |||
| Fecha de contabilización PostingDate | La fecha en que la factura se contabilizó oficialmente en los libros financieros. | ||
| Descripción La fecha de contabilización es una fecha clave del proceso contable. Determina el período fiscal en el que se reconoce el gasto de la factura en el libro mayor. Por lo general, la establece el personal de cuentas por pagar durante el procesamiento de la factura. En el análisis de procesos, la actividad «Factura contabilizada», identificada por esta fecha, es un hito importante. El tiempo transcurrido desde la recepción de la factura hasta su fecha de contabilización es un componente fundamental del tiempo de ciclo total. Esta fecha también es esencial para los informes financieros y el análisis del rendimiento, por ejemplo, para hacer un seguimiento del volumen de facturas contabilizadas por semana o mes. Por qué es importante Marca un hito importante del proceso, determina el período financiero de la transacción y es un dato clave para calcular el tiempo de ciclo. Dónde obtenerlo Corresponde al campo «Posting Date» (BUDAT) de la tabla de cabecera de documentos de factura RBKP. Ejemplos 2023-03-202023-04-052023-04-11 | |||
| Fecha de vencimiento del pago PaymentDueDate | La fecha límite para pagar la factura al proveedor, según las condiciones de pago. | ||
| Descripción La fecha de vencimiento del pago se calcula a partir de la fecha base de la factura y de las condiciones de pago acordadas. Es la fecha límite para realizar el pago y evitar retrasos que puedan generar penalizaciones o perjudicar la relación con el proveedor. Este atributo es esencial para KPI de rendimiento y cumplimiento, como «Porcentaje de pagos puntuales» y «Descuentos por pronto pago no aprovechados». Al comparar la fecha de pago real (fecha de compensación) con la fecha de vencimiento del pago, el análisis determina automáticamente si el pago se realizó a tiempo, antes o después del vencimiento. También es un elemento fundamental del Dashboard de cumplimiento de las condiciones de pago. Por qué es importante Sirve de referencia para medir el rendimiento de los pagos puntuales e identificar oportunidades de aprovechar descuentos por pronto pago. Dónde obtenerlo Esta fecha suele calcularse. La fecha base del pago (ZFBDT) se encuentra en la tabla BSEG. La lógica de cálculo del vencimiento también depende de las condiciones de pago (BSEG-ZTERM). Ejemplos 2023-04-192023-05-052023-05-11 | |||
| Importe de la factura InvoiceAmount | Importe bruto total de la factura en la moneda original del documento. | ||
| Descripción El importe de la factura representa el valor total de la factura presentada por el proveedor. Es una métrica financiera clave para cada caso de factura. En Process Mining, este atributo es esencial para los análisis basados en el valor. Permite filtrar y segmentar el proceso según el importe de la factura, que suele estar relacionado con la complejidad del proceso y los requisitos de aprobación. Por ejemplo, las facturas de importe elevado pueden seguir una ruta de aprobación distinta y más estricta. También se utiliza en el análisis de cumplimiento, por ejemplo, para comprobar si las facturas de importe elevado omiten pasos de aprobación obligatorios. Por qué es importante Permite realizar análisis basados en el valor, priorizar las facturas de importe elevado y comprender cómo influye el importe en el flujo del proceso y el cumplimiento. Dónde obtenerlo Es el campo 'Importe bruto de la factura' (RMWWR) de la tabla de cabecera de documentos de factura RBKP. Ejemplos 1500.7512500.00850.20 | |||
| Motivo del bloqueo de pago PaymentBlockReason | Código que indica por qué se bloqueó el pago de una factura. | ||
| Descripción Cuando una factura presenta una discrepancia o requiere una investigación adicional, se bloquea el pago. El código de motivo del bloqueo indica por qué se aplicó, por ejemplo, por una diferencia de cantidad o de precio, o por un bloqueo manual. Este atributo es esencial para el Dashboard de duración de la resolución de bloqueos de pago. Analizar la frecuencia y la duración de los bloqueos según el motivo ayuda a identificar las causas de los retrasos en los pagos. Por ejemplo, si «Diferencia de precio» es el motivo más frecuente de los bloqueos prolongados, podría indicar un problema en los datos maestros o en el proceso de órdenes de compra que conviene resolver. Por qué es importante Explica por qué se retrasan las facturas, permite analizar las causas de los bloqueos de pago y ayuda a priorizar las iniciativas de mejora del proceso. Dónde obtenerlo El motivo del bloqueo de pago puede encontrarse en el nivel de partida de la tabla RSEG (campo SPGRS) o en la tabla de documentos contables BSEG (campo ZLSPR). Ejemplos RIM | |||
| Nombre de usuario UserName | ID de usuario de SAP de la persona que ejecutó la actividad. | ||
| Descripción El atributo Nombre de usuario identifica a la persona responsable de realizar una actividad determinada del proceso. Por lo general, corresponde al nombre de usuario de SAP registrado con la transacción o el evento de modificación. Este atributo es fundamental para analizar el rendimiento de cada persona o equipo. Ayuda a responder preguntas como '¿Quiénes aprueban más rápido?' o '¿Qué usuarios generan más retrabajo?'. Se utiliza en Dashboards para analizar la distribución de la carga de trabajo, identificar necesidades de formación y comprender las diferencias de rendimiento entre las personas empleadas. Por qué es importante Permite analizar el rendimiento y la carga de trabajo por persona o equipo, e identificar a quienes obtienen mejores resultados, las oportunidades de formación y los desequilibrios de recursos. Dónde obtenerlo Es el campo 'Modificado por' (USERNAME) de la tabla de cabecera de documentos de modificación CDHDR. Para los eventos de creación, puede ser el campo 'Introducido por' (ERNAM) de tablas como RBKP. Ejemplos JSMITHBWILSONCHEN | |||
| Número de orden de compra PurchaseOrderNumber | Identificador de la orden de compra (PO) con la que se concilia la factura. | ||
| Descripción El número de orden de compra vincula una factura con el documento de adquisición original. Es fundamental para la conciliación de tres vías (orden de compra, recepción de mercancías y factura) y para analizar la eficiencia del proceso de facturas asociadas a órdenes de compra. Este atributo es clave para Dashboards como 'Tasa de discrepancias en la conciliación de facturas y órdenes de compra'. Permite segmentar el proceso entre facturas con orden de compra y sin ella, que suelen seguir rutas de procesamiento y presentar niveles de complejidad muy distintos. Analizar los problemas relacionados con órdenes de compra específicas puede ayudar a detectar problemas previos en el proceso de adquisición. Por qué es importante Vincula la factura con el proceso de adquisición, permite analizar las facturas con orden de compra frente a las que no la tienen e identificar discrepancias en la conciliación. Dónde obtenerlo Suele encontrarse en el nivel de posición. El campo 'Número de orden de compra' (EBELN) está en la tabla de posiciones de factura RSEG. Puede ser necesario agregarlo en el nivel de cabecera. Ejemplos 450001756345000175644500017565 | |||
| Número de proveedor VendorNumber | Identificador único del proveedor que presentó la factura. | ||
| Descripción El número de proveedor es la clave de los datos maestros que identifica al proveedor. Vincula la transacción de factura con un socio comercial específico y permite analizarla según las características del proveedor. Analizar el proceso por número de proveedor puede revelar información importante sobre las relaciones y el rendimiento de los proveedores. Por ejemplo, permite identificar cuáles presentan habitualmente facturas problemáticas que provocan bloqueos de pago o discrepancias, y cuáles se procesan con mayor eficiencia. Esta información es útil para gestionar proveedores y tomar decisiones estratégicas de abastecimiento. Por qué es importante Permite analizar a cada proveedor e identificar patrones, problemas o eficiencias relacionados con proveedores específicos. Dónde obtenerlo Es el campo 'Parte facturadora' (LIFNR) de la tabla de cabecera de documentos de factura RBKP. Ejemplos 100345100876200112 | |||
| Condiciones de pago PaymentTerms | Código que define las condiciones de pago acordadas con el proveedor, como los períodos de descuento y las fechas de vencimiento. | ||
| Descripción Las condiciones de pago definen cuándo debe pagarse una factura y qué descuentos por pronto pago están disponibles, si los hay. Algunos ejemplos son «30 días netos» o «2 % en 10 días, neto a 30», que significa un descuento del 2 % si se paga en 10 días; de lo contrario, el importe total vence en 30 días. Este atributo es la base del Dashboard de descuentos por pronto pago no aprovechados y del KPI de porcentaje de descuentos por pronto pago aprovechados. El análisis utiliza las condiciones de pago junto con las fechas de contabilización y de pago para determinar si había un descuento disponible y si se aprovechó. También es clave para el Dashboard de cumplimiento de las condiciones de pago. Por qué es importante Es esencial para analizar el porcentaje de descuentos por pronto pago aprovechados y comprender el impacto financiero de los retrasos del proceso. Dónde obtenerlo Corresponde al campo «Terms of Payment Key» (ZTERM) de la tabla de cabecera de documentos de factura RBKP. Ejemplos Z0010001NT30 | |||
| Cuenta del libro mayor GeneralLedgerAccount | Número de la cuenta del libro mayor en la que se contabiliza el gasto o coste de la factura. | ||
| Descripción La cuenta del libro mayor es la cuenta de destino del plan contable donde se registra el impacto financiero de la factura. Es un dato fundamental para los informes financieros y la gestión de costes. En Process Mining, analizar la cuenta del libro mayor añade una dimensión financiera al flujo del proceso. El Dashboard de análisis del uso de las cuentas del libro mayor puede revelar patrones de gasto, detectar posibles errores de codificación de facturas y ayudar a garantizar que los costes se asignen a los departamentos o proyectos correctos. Así, conecta la ejecución del proceso con su impacto financiero. Por qué es importante Añade una dimensión financiera al proceso y permite analizar la asignación de costes, los patrones de gasto y los posibles errores de codificación de facturas. Dónde obtenerlo Este dato se encuentra en el nivel de partida. El «Número de cuenta del libro mayor» (HKONT) está en la tabla de partidas de factura RSEG para las facturas con orden de compra o en BSEG para las facturas directas de FI. Ejemplos 630000655100741000 | |||
| Está vencida IsOverdue | Indicador calculado que señala si la factura se pagó después de la fecha de vencimiento. | ||
| Descripción Este atributo booleano se calcula comparando la fecha de compensación (fecha de pago real) con la fecha de vencimiento del pago. Si la fecha de compensación es posterior a la fecha de vencimiento, el indicador es verdadero; de lo contrario, es falso. Así se mide de forma sencilla y directa si cada factura se pagó a tiempo. Este atributo simplifica el análisis y la visualización en los Dashboards. Permite filtrar y agrupar los datos fácilmente para calcular el KPI de porcentaje de pagos puntuales. También permite segmentar rápidamente el proceso y comparar los flujos de las facturas vencidas con los de las pagadas a tiempo, lo que puede revelar patrones que provocan retrasos. Por qué es importante Simplifica el análisis del rendimiento de los pagos puntuales y permite comparar fácilmente los procesos de las facturas pagadas a tiempo con los de las pagadas con retraso. Dónde obtenerlo Este atributo no existe en SAP. Se calcula durante la transformación de datos con la fórmula: ClearingDate > PaymentDueDate. Ejemplos truefalse | |||
| Hora de fin EndTime | Marca de tiempo que indica cuándo se completó una actividad. En los eventos instantáneos, coincide con la hora de inicio. | ||
| Descripción El atributo Hora de fin marca la finalización de una actividad específica. En muchos eventos de SAP, que se registran como un único instante, la hora de fin coincide con la hora de inicio. Sin embargo, en actividades con una duración medible, como un paso de aprobación que requiere trabajo activo, puede indicar cuándo concluyó ese trabajo. En el análisis de procesos, disponer de una hora de fin diferenciada permite medir el tiempo de procesamiento de una actividad por separado del tiempo de espera previo. Así se distingue cuánto tarda en ejecutarse una actividad de cuánto espera un caso antes de que esta comience, lo que aporta información más detallada sobre la eficiencia de los recursos. Por qué es importante Permite calcular el tiempo de procesamiento de las actividades, distinguirlo del tiempo de espera entre ellas y mejorar el análisis de cuellos de botella. Dónde obtenerlo A menudo coincide con la hora de inicio y se obtiene de CDHDR-UDATE y CDHDR-UTIME. En algunos casos, puede derivarse de registros de Workflow que indican explícitamente el inicio y el fin de una tarea. Ejemplos 2023-03-15T10:35:10Z2023-03-16T14:10:00Z2023-03-28T09:02:45Z | |||
| Moneda Currency | Código de moneda del importe de la factura. | ||
| Descripción El atributo Moneda especifica la divisa en la que está expresado el importe de la factura, por ejemplo, USD, EUR o JPY. Este atributo aporta un contexto esencial para el importe de la factura. Permite interpretar correctamente los datos financieros y agruparlos, especialmente en organizaciones internacionales que trabajan con varias divisas. El análisis se puede filtrar por divisa para comparar la eficiencia del procesamiento o los problemas en distintas zonas monetarias. Para obtener agregaciones financieras significativas, puede ser necesario convertir los importes a una única divisa de presentación. Por qué es importante Aporta el contexto necesario para interpretar correctamente cualquier importe financiero y permite filtrar y analizar los datos por divisa. Dónde obtenerlo Corresponde al campo «Currency Key» (WAERS) de la tabla de cabecera de documentos de factura RBKP. Ejemplos USDEURGBP | |||
| Motivo del rechazo RejectionReason | Código o texto que explica por qué se rechazó una factura durante el flujo de aprobación. | ||
| Descripción Cuando una persona aprobadora rechaza una factura, lo ideal es que indique el motivo. Puede tratarse de un código estandarizado o de un comentario de texto libre que señale problemas como «Número de orden de compra incorrecto», «Factura duplicada» o «Importe incorrecto». Estos datos son fundamentales para el Dashboard de motivos y tendencias de rechazo de facturas. Analizar la frecuencia de los distintos motivos permite identificar problemas habituales y aplicar medidas correctivas. Por ejemplo, si «Número de orden de compra incorrecto» aparece con frecuencia, podría ser necesario mejorar la comunicación con los proveedores o formar al personal encargado de ingresar los datos. Este análisis es clave para reducir el retrabajo en el proceso. Por qué es importante Permite identificar las causas de los rechazos y aplicar mejoras específicas para reducir el retrabajo y aumentar el porcentaje de facturas correctas desde el primer intento. Dónde obtenerlo Esta información no suele almacenarse en un único campo estándar. Puede encontrarse en los registros del contenedor de Workflow, en campos de texto largo asociados al documento o en campos específicos de una solución de Workflow personalizada. Ejemplos FACTURA_DUPLICADAIMPORTE_INCORRECTOSIN_COINCIDENCIA_ORDEN_COMPRA | |||
| Se perdió el descuento por pronto pago IsCashDiscountLost | Indicador calculado que señala si se perdió un descuento por pronto pago disponible. | ||
| Descripción Este atributo booleano se calcula a partir de las condiciones de pago y la fecha de pago real. Su valor es verdadero si las condiciones de pago ofrecían un descuento por pronto pago y la fecha de compensación es posterior al vencimiento del período de descuento. Así se cuantifica directamente la pérdida financiera causada por ineficiencias del proceso. Este atributo es la base del Dashboard de descuentos por pronto pago no aprovechados. Permite cuantificar fácilmente el impacto financiero de los retrasos en el procesamiento. Al filtrar los casos en los que el indicador es verdadero, el personal de análisis puede investigar las variantes del proceso y los cuellos de botella que provocan con mayor frecuencia la pérdida de descuentos. Esto aporta argumentos sólidos para mejorar el proceso. Por qué es importante Cuantifica directamente las pérdidas financieras causadas por los retrasos del proceso y ofrece argumentos sólidos para optimizar el flujo de trabajo de procesamiento de facturas. Dónde obtenerlo Este atributo no existe en SAP. Se calcula durante la transformación de datos interpretando «PaymentTerms» y comparando «ClearingDate» con la fecha límite para obtener el descuento. Ejemplos truefalse | |||
| Sistema de origen SourceSystem | Identifica el sistema de origen específico del que se extrajeron los datos. | ||
| Descripción El atributo Sistema de origen indica de dónde proceden los datos de eventos, por ejemplo, el nombre de una instancia específica de SAP ECC. Es especialmente importante en entornos con varios sistemas ERP o cuando se combinan datos de distintas fuentes. En el análisis, este atributo ayuda a diferenciar los procesos y el rendimiento entre sistemas, regiones o unidades de negocio que pueden operar en instancias separadas. Permite mantener clara la trazabilidad de los datos y aplicar filtros y análisis específicos para cada sistema. Por qué es importante Aporta contexto esencial en entornos con varios sistemas y permite separar correctamente los datos y analizar el rendimiento de cada sistema. Dónde obtenerlo Suele ser un valor estático que se añade durante la extracción de datos y representa el ID del sistema SAP (TADIR-SRCSYSTEM) o un identificador asignado manualmente a la instancia específica de SAP. Ejemplos SAPECC_PROD_EUECC_US_FINSAP_ERP_6_EHP8 | |||
| Sociedad CompanyCode | Identificador de la entidad jurídica o sociedad para la que se procesa la factura. | ||
| Descripción La sociedad es una unidad organizativa fundamental de SAP Financials y representa una entidad jurídica independiente. Todas las transacciones financieras, incluidas las facturas, se contabilizan en una sociedad específica. Este atributo permite segmentar el análisis de procesos por entidad jurídica. Es esencial para comparar el rendimiento, el cumplimiento y la eficiencia de los procesos entre las distintas sociedades de un grupo empresarial. Los Dashboards se pueden filtrar por sociedad para consultar los KPI de procesamiento de facturas de cada una. Por qué es importante Permite comparar los procesos y evaluar el rendimiento de distintas entidades jurídicas de una organización. Dónde obtenerlo Corresponde al campo «Company Code» (BUKRS) de la tabla de cabecera de documentos de factura RBKP. Ejemplos 10002000US01 | |||
| Tipo de documento DocumentType | Código que clasifica el documento contable, por ejemplo, como factura de proveedor o nota de crédito. | ||
| Descripción El tipo de documento se utiliza en SAP para clasificar las distintas clases de transacciones comerciales. En el procesamiento de facturas, algunos tipos habituales son «RE» para las facturas estándar y «KG» para las notas de crédito de proveedores. El tipo de documento controla aspectos de la contabilización, como el rango de números que se utiliza. En el análisis, este atributo permite filtrar el proceso por tipo de transacción. Por ejemplo, el proceso de gestión de una nota de crédito puede diferir considerablemente del de una factura estándar. Separar estos flujos según el tipo de documento permite obtener una visión más precisa y significativa del proceso. Por qué es importante Permite separar y analizar distintas transacciones comerciales, como las facturas y las notas de crédito, que siguen procesos diferentes. Dónde obtenerlo Corresponde al campo «Document Type» (BLART) de la tabla de cabecera de documentos de factura RBKP. Ejemplos REKRKG | |||
| Última actualización de datos LastDataUpdate | Marca de tiempo que indica cuándo se actualizaron por última vez los datos del proceso desde el sistema de origen. | ||
| Descripción Este atributo registra la fecha y hora de la extracción o actualización de datos más reciente. Se aplica al conjunto de datos completo, no a eventos individuales, e indica claramente su actualidad. Es un metadato fundamental para quienes usan Dashboards y para las personas analistas. Les ayuda a entender el período que abarca el análisis y a tomar decisiones con información actualizada. Suele mostrarse de forma destacada en los Dashboards para indicar la fecha de actualización de los datos. Por qué es importante Informa sobre la actualidad de los datos y ayuda a garantizar que los análisis y las decisiones se basen en información actualizada. Dónde obtenerlo La herramienta de extracción de datos o ETL genera este valor y lo incorpora al conjunto de datos durante la actualización. Ejemplos 2024-05-20T08:00:00Z2024-05-21T08:00:00Z2024-05-22T08:00:00Z | |||
Actividades de Compras a pago - Procesamiento de facturas
| Actividad | Descripción | ||
|---|---|---|---|
| Bloqueo de pago aplicado | Esta actividad ocurre cuando se aplica un bloqueo a una posición de factura, lo que impide su pago. Los bloqueos pueden aplicarse automáticamente por discrepancias en la conciliación de tres vías o manualmente por diversos motivos. | ||
| Por qué es importante Este evento es fundamental para medir la duración de la resolución de bloqueos de pago e identificar las causas raíz de los retrasos. Pone de manifiesto problemas de precios, cantidades o aprobaciones necesarias. Dónde obtenerlo Es un evento explícito que puede rastrearse en los registros de documentos de modificación (tablas CDHDR y CDPOS) para el campo ZLSPR (clave de bloqueo de pago) de la tabla BSEG. Capturar Marca de tiempo de los documentos de modificación (CDHDR) cuando el valor de BSEG-ZLSPR cambia de vacío a no vacío. Tipo de evento explicit | |||
| Datos de factura capturados | Indica la creación inicial del documento de factura en SAP, ya sea como documento preliminar o contabilizado por completo. Suele ser el primer evento registrado en el sistema durante el ciclo de vida de una factura y sirve como hora de inicio del proceso. | ||
| Por qué es importante Esta actividad es el punto de partida principal para medir el tiempo de ciclo de procesamiento de facturas de principio a fin. Analizar el tiempo transcurrido desde este momento ayuda a identificar retrasos en la fase inicial de entrada de datos y creación del documento. Dónde obtenerlo La marca de tiempo de creación se registra en la tabla BKPF de SAP, en los campos CPUDT (fecha de entrada del documento contable) y CPUTM (hora de entrada). Capturar Utilice la marca de tiempo de creación del documento en la cabecera de la tabla BKPF (CPUDT). Tipo de evento explicit | |||
| Factura anulada mediante reversión | Representa la anulación de un documento de factura contabilizado. Se crea un documento de reversión para anular el impacto financiero de la factura original. | ||
| Por qué es importante Esta actividad pone de manifiesto una excepción importante y una ruta de retrabajo. Analizar la frecuencia y los motivos de las reversiones puede revelar problemas sistémicos en la validación y contabilización de facturas. Dónde obtenerlo Este evento explícito se registra en la tabla de cabecera de documentos BKPF. La cabecera del documento revertido contiene el número del documento de reversión (STBLG) y el ejercicio fiscal (STJAH). Capturar Identifique los documentos cuyo campo BKPF-STBLG tenga un valor. La marca de tiempo del evento es la fecha de contabilización del documento de reversión. Tipo de evento explicit | |||
| Factura compensada | Esta actividad marca el último paso de un ciclo de vida de factura satisfactorio: el pasivo pendiente se compensa mediante un documento de pago. Esto indica que el pago se ha ejecutado. | ||
| Por qué es importante Como evento de fin principal, es fundamental para calcular el tiempo de ciclo total de principio a fin. Confirma que el proceso se ha completado correctamente y permite medir el rendimiento de los pagos a tiempo. Dónde obtenerlo Este evento explícito se registra en la tabla de posiciones de factura BSEG. La fecha de compensación se almacena en el campo AUGDT y el número del documento de compensación, en AUGBL. Capturar Utilice la fecha de compensación (BSEG-AUGDT) de la posición del documento de factura. Tipo de evento explicit | |||
| Factura contabilizada | Este es un evento financiero clave: la factura se registra oficialmente en el libro mayor y genera un pasivo. El documento pasa de un estado temporal (preliminar) a un asiento contable definitivo. | ||
| Por qué es importante La contabilización es un hito importante que confirma la validez de la factura. Es un requisito previo para el pago y un indicador clave del volumen de procesamiento. Dónde obtenerlo Este evento explícito se registra en la tabla de cabecera de documentos BKPF. La marca de tiempo corresponde a la fecha de contabilización, BKPF-BUDAT. El documento deja de tener el estado 'preliminar'. Capturar Utilice la fecha de contabilización (BKPF-BUDAT) de los documentos que no estén guardados como preliminares (BKPF-BSTAT está vacío o contiene ' '). Tipo de evento explicit | |||
| Bloqueo de pago liberado | Representa la eliminación del bloqueo de pago de una posición de factura, lo que permite incluirla en la ejecución de pagos. Indica que se ha resuelto un problema detectado anteriormente. | ||
| Por qué es importante Esta actividad concluye la medición de la duración del bloqueo. Analizar el tiempo transcurrido entre la aplicación y la liberación del bloqueo permite evaluar la eficiencia del proceso de resolución. Dónde obtenerlo Este evento se rastrea en los registros de documentos de modificación (tablas CDHDR y CDPOS) para el campo ZLSPR (clave de bloqueo de pago) de la tabla BSEG, cuando se elimina el bloqueo. Capturar Marca de tiempo de los documentos de modificación (CDHDR) cuando el valor de BSEG-ZLSPR cambia de no vacío a vacío. Tipo de evento explicit | |||
| Factura aprobada | Indica que la autoridad designada ha aprobado formalmente la factura, lo que permite continuar con su contabilización y pago. A menudo, este es el último paso de un flujo de trabajo. | ||
| Por qué es importante Este hito concluye la medición del tiempo de ciclo de aprobación. Desbloquea el proceso para que el pago pueda realizarse a tiempo y ayuda a analizar la distribución de la carga de trabajo entre las personas aprobadoras. Dónde obtenerlo Por lo general, este evento se captura en las tablas de SAP Business Workflow al identificar la finalización de una tarea de aprobación. También puede deducirse de la liberación de un bloqueo de pago relacionado con la aprobación. Capturar Marca de tiempo del paso de aprobación completado en los registros de Workflow o de la eliminación de un bloqueo de pago específico. Tipo de evento inferred | |||
| Factura enviada para aprobación | Representa el momento en que una factura se envía a un flujo de aprobación formal. El método de captura depende en gran medida de la implementación específica de SAP Workflow o del sistema de terceros. | ||
| Por qué es importante Esta actividad inicia el cómputo del KPI Tiempo de ciclo de aprobación de facturas. Es esencial para identificar retrasos en la cadena de aprobación y analizar el rendimiento de las personas aprobadoras. Dónde obtenerlo Este evento suele capturarse en las tablas de SAP Business Workflow (por ejemplo, SWW_WI2OBJ y SWWLOG), identificando el inicio de una tarea de aprobación específica. En situaciones más sencillas, puede deducirse de un cambio de estado en un campo personalizado. Capturar Requiere analizar los registros de SAP Workflow o los campos de estado personalizados vinculados al documento de factura. Tipo de evento inferred | |||
| Factura guardada como preliminar | Indica que una factura se ha introducido en SAP, pero aún no se ha contabilizado en el libro mayor. Es un estado temporal que permite revisar, corregir o aprobar la factura antes de contabilizarla. | ||
| Por qué es importante Hacer un seguimiento de cuándo se guardan las facturas como preliminares y durante cuánto tiempo permite detectar cuellos de botella en la validación y aprobación previas a la contabilización. También permite separar el tiempo de entrada de datos del tiempo de procesamiento financiero. Dónde obtenerlo Este estado se deduce del campo BSTAT de la tabla BKPF. El valor 'V' (documento preliminar) o 'W' (documento preliminar con liberación de modificación) indica que el documento está guardado como preliminar. Capturar Identifique los documentos cuyo campo de estado BKPF-BSTAT tenga el valor 'V'. La marca de tiempo del evento es la fecha de creación BKPF-CPUDT. Tipo de evento inferred | |||
| Factura rechazada | Indica que una factura se ha rechazado durante el proceso de aprobación. Por lo general, es necesario corregirla y volver a enviarla, lo que genera un ciclo de retrabajo. | ||
| Por qué es importante Hacer un seguimiento de los rechazos es fundamental para identificar motivos frecuentes, como datos incorrectos o incumplimientos de políticas. Permite cuantificar el retrabajo y detectar áreas de mejora del proceso o de orientación a proveedores. Dónde obtenerlo Este evento suele aparecer en los registros de SAP Business Workflow como un paso de rechazo. También puede deducirse de determinados cambios de estado o de notas añadidas al documento de factura. Capturar Marca de tiempo del paso de rechazo en los registros de Workflow o de un cambio en el estado del documento que indique el rechazo. Tipo de evento inferred | |||
| Factura vencida | Evento calculado que ocurre cuando la fecha actual supera la fecha de vencimiento neta de la factura y esta aún no se ha pagado. La fecha de vencimiento se determina a partir de las condiciones de pago y la fecha base. | ||
| Por qué es importante Esta actividad es esencial para supervisar el KPI Tasa de pagos a tiempo. Permite detectar de forma proactiva las facturas que corren el riesgo de pagarse tarde, lo que puede perjudicar las relaciones con los proveedores y generar penalizaciones. Dónde obtenerlo Este evento se calcula comparando la fecha actual con la fecha de vencimiento neta. La fecha de vencimiento se obtiene a partir de la fecha base (BSEG-ZFBDT) y las condiciones de pago (BSEG-ZTERM). Capturar El evento se activa cuando Tipo de evento calculated | |||
Guías de extracción
Pasos
- Cree el programa ABAP: Use la transacción
SE38oSE80para crear un programa ejecutable, por ejemplo,Z_PM_INVOICE_EXTRACT. Asígnele un título adecuado y seleccione el tipo 'Programa ejecutable'. - Defina la pantalla de selección: Configure una pantalla de selección en el programa para que los usuarios puedan filtrar los datos. Incluya como parámetros clave el código de sociedad (
BUKRS), el ejercicio (GJAHR), el intervalo de fechas de contabilización (BUDAT) y la ruta del archivo de salida en el servidor de aplicaciones. - Declare las estructuras de datos: Defina una tabla interna que contenga el Registro de eventos final. La estructura debe incluir todos los atributos obligatorios y recomendados:
InvoiceNumber,Actividad,EventTime,UserName,VendorNumber,PurchaseOrderNumber,InvoiceAmount,PostingDate,PaymentDueDate,PaymentBlockReasonyClearingDate. - Implemente la lógica de selección de datos: Escriba la lógica ABAP principal para seleccionar los datos de las facturas. Para ello, combine varias selecciones en la tabla final del Registro de eventos.
- Primero, seleccione los datos de cabecera y de posición de las tablas principales de facturas
BKPF,BSEG,RBKPyRSEG, según los criterios de la pantalla de selección. - Para cada factura, genere eventos básicos como 'Datos de factura registrados' (a partir de la marca de tiempo de creación) y 'Factura contabilizada' (a partir de la marca de tiempo de contabilización).
- Consulte las tablas de documentos de modificación
CDHDRyCDPOSpara localizar cambios relacionados con los bloqueos de pago (campoZLSPRdeBSEG). Para cada cambio pertinente, cree los eventos 'Bloqueo de pago aplicado' y 'Bloqueo de pago liberado'. - Identifique los eventos 'Factura compensada' comprobando si hay un documento de compensación (
AUGBL) y una fecha de compensación (AUGDT) en la tablaBSEG. - Identifique los eventos 'Factura anulada' comprobando si hay un documento de anulación (
STBLG) en la cabecera deBKPF. - Añada lógica personalizada para registrar eventos del flujo de trabajo ('Factura enviada para aprobación', 'Aprobado', 'Rechazado'). Esta parte depende de cada cliente y requiere adaptar el código a las tablas o los campos de estado de su flujo de trabajo.
- Primero, seleccione los datos de cabecera y de posición de las tablas principales de facturas
- Genere eventos calculados: Calcule el evento
Factura vencidaen la lógica del programa. Para ello, compare la fecha de vencimiento del pago (PaymentDueDate) con la fecha actual para todas las facturas impagadas. Si la fecha de vencimiento ya pasó, cree un evento cuyaEventTimesea la fecha de vencimiento. - Complete la tabla del Registro de eventos: A medida que recopile los datos de cada factura de las distintas fuentes, déles formato y añada filas a la tabla interna final del Registro de eventos, una por actividad.
- Exporte los datos a un archivo: Use las instrucciones
OPEN DATASET,TRANSFERyCLOSE DATASETpara escribir el contenido de la tabla interna final en un archivo de texto sin formato, en la ruta del servidor de aplicaciones SAP especificada en la pantalla de selección. Use un separador uniforme, como punto y coma o tabulación, para crear un archivo CSV. - Programe la extracción: Para extraer datos periódicamente, cree una variante del programa con los criterios de selección deseados y prográmela como tarea en segundo plano mediante la transacción
SM36. - Recupere el archivo de salida: Acceda al directorio del servidor de aplicaciones SAP con la transacción
AL11para localizar el archivo generado. Use la transacciónCG3Ypara descargarlo en su equipo. - Prepare los datos para cargarlos: Antes de cargarlos en una herramienta de Process Mining, abra el archivo CSV y compruebe que los encabezados sean correctos, que el formato de los datos sea uniforme (sobre todo en las marcas de tiempo) y que el separador sea el esperado. Guarde el archivo con codificación UTF-8.
Configuración
- Criterios de selección: El informe ABAP debe incluir una pantalla de selección completa. Los filtros más importantes son:
Código de sociedad (BUKRS): Limita la extracción a determinadas entidades legales.Fecha de contabilización (BUDAT): Define el período de extracción. Se recomienda extraer los datos en bloques manejables, por ejemplo, de 3 a 6 meses cada vez.Tipo de documento (BLART): Incluye solo los tipos de documento de factura pertinentes, como 'RE' para facturas de logística y 'KR' para facturas de proveedores.
- Ruta del archivo de salida: Parámetro obligatorio para especificar la ruta completa y el nombre del archivo que se creará en el servidor de aplicaciones SAP. El usuario que ejecute el informe necesita autorización de escritura en ese directorio.
- Consideraciones de rendimiento: Para conjuntos de datos grandes, ejecute el informe como tarea en segundo plano durante las horas de menor actividad para evitar que el rendimiento del sistema se vea afectado. La lógica debe seleccionar únicamente los campos necesarios de las tablas y, cuando sea posible, aprovechar los índices estándar de la base de datos SAP.
- Requisitos previos y autorizaciones: El usuario o la cuenta de servicio que ejecute la extracción necesita:
- Permisos para ejecutar informes ABAP (incluidos en
S_PROGRAM). - Acceso de lectura a las tablas financieras y de logística, incluidas
BKPF,BSEG,RBKP,RSEG,CDHDRyCDPOS. - Autorización para escribir archivos en el directorio especificado del servidor de aplicaciones (
S_DATASET). - Acceso a las transacciones
SE38,SM36,AL11yCG3Ypara desarrollar, programar y recuperar archivos.
- Permisos para ejecutar informes ABAP (incluidos en
Consulta de ejemplo abap
REPORT Z_PM_INVOICE_EXTRACT.
*&---------------------------------------------------------------------*
*& Tables for Selection Screen
*&---------------------------------------------------------------------*
TABLES: BKPF, RBKP.
*&---------------------------------------------------------------------*
*& Data Declarations
*&---------------------------------------------------------------------*
TYPES: BEGIN OF ty_event_log,
InvoiceNumber TYPE belnr_v,
Activity TYPE string,
EventTime TYPE timestamp,
UserName TYPE uname,
VendorNumber TYPE lifnr,
PurchaseOrderNumber TYPE ebeln,
InvoiceAmount TYPE wrbtr,
PostingDate TYPE budat,
PaymentDueDate TYPE faedt,
PaymentBlockReason TYPE rstgr,
ClearingDate TYPE augdt,
END OF ty_event_log.
DATA: gt_event_log TYPE TABLE OF ty_event_log,
gs_event_log TYPE ty_event_log.
DATA: lt_bkpf TYPE TABLE OF bkpf,
ls_bkpf TYPE bkpf,
lt_bseg TYPE TABLE OF bseg,
ls_bseg TYPE bseg.
DATA: lt_rbkp TYPE TABLE OF rbkp,
ls_rbkp TYPE rbkp.
*&---------------------------------------------------------------------*
*& Selection Screen
*&---------------------------------------------------------------------*
SELECT-OPTIONS: s_bukrs FOR bkpf-bukrs OBLIGATORY,
s_gjahr FOR bkpf-gjahr OBLIGATORY,
s_budat FOR bkpf-budat.
PARAMETERS: p_fpath TYPE string OBLIGATORY DEFAULT '/usr/sap/tmp/invoice_events.csv'.
*&---------------------------------------------------------------------*
*& Start of Program Logic
*&---------------------------------------------------------------------*
START-OF-SELECTION.
" Select FI Invoices (e.g., Doc Type KR)
SELECT * FROM bkpf INTO TABLE lt_bkpf
WHERE bukrs IN s_bukrs
AND gjahr IN s_gjahr
AND budat IN s_budat
AND blart = 'KR'.
" Select MM Invoices
SELECT * FROM rbkp INTO TABLE lt_rbkp
WHERE bukrs IN s_bukrs
AND gjahr IN s_gjahr
AND budat IN s_budat.
* --- Process FI Invoices ---
LOOP AT lt_bkpf INTO ls_bkpf.
CLEAR gs_event_log.
gs_event_log-InvoiceNumber = ls_bkpf-belnr.
gs_event_log-PostingDate = ls_bkpf-budat.
SELECT SINGLE * FROM bseg INTO ls_bseg
WHERE bukrs = ls_bkpf-bukrs
AND belnr = ls_bkpf-belnr
AND gjahr = ls_bkpf-gjahr
AND koart = 'K'. " Vendor Line Item
IF sy-subrc = 0.
gs_event_log-VendorNumber = ls_bseg-lifnr.
gs_event_log-InvoiceAmount = ls_bseg-wrbtr.
gs_event_log-ClearingDate = ls_bseg-augdt.
" Calculate Due Date
CALL FUNCTION 'DETERMINE_DUE_DATE'
EXPORTING
i_bseg = ls_bseg
IMPORTING
e_faedt = gs_event_log-PaymentDueDate.
ENDIF.
" Activity: Invoice Data Captured
gs_event_log-Activity = 'Invoice Data Captured'.
CONVERT DATE ls_bkpf-cpudt TIME ls_bkpf-cputm INTO TIME STAMP gs_event_log-EventTime TIME ZONE sy-zonlo.
gs_event_log-UserName = ls_bkpf-usnam.
APPEND gs_event_log TO gt_event_log.
" Activity: Invoice Parked (if BSTAT = 'V')
IF ls_bkpf-bstat = 'V'.
gs_event_log-Activity = 'Invoice Parked'.
APPEND gs_event_log TO gt_event_log.
ENDIF.
" Activity: Invoice Posted
gs_event_log-Activity = 'Invoice Posted'.
CONVERT DATE ls_bkpf-budat TIME ls_bkpf-cputm INTO TIME STAMP gs_event_log-EventTime TIME ZONE sy-zonlo.
gs_event_log-UserName = ls_bkpf-usnam.
APPEND gs_event_log TO gt_event_log.
" Activity: Invoice Cleared
IF ls_bseg-augbl IS NOT INITIAL.
gs_event_log-Activity = 'Invoice Cleared'.
CONVERT DATE ls_bseg-augdt INTO TIME STAMP gs_event_log-EventTime TIME ZONE sy-zonlo.
gs_event_log-UserName = ls_bseg-usnam_cl.
APPEND gs_event_log TO gt_event_log.
ENDIF.
" Activity: Invoice Becomes Overdue
IF gs_event_log-PaymentDueDate IS NOT INITIAL AND gs_event_log-PaymentDueDate < sy-datum AND ls_bseg-augbl IS INITIAL.
gs_event_log-Activity = 'Invoice Becomes Overdue'.
CONVERT DATE gs_event_log-PaymentDueDate INTO TIME STAMP gs_event_log-EventTime TIME ZONE sy-zonlo.
gs_event_log-UserName = 'SYSTEM'.
APPEND gs_event_log TO gt_event_log.
ENDIF.
" Activity: Invoice Reversed
IF ls_bkpf-stblg IS NOT INITIAL.
DATA: ls_rev_bkpf TYPE bkpf.
SELECT SINGLE budat, usnam FROM bkpf INTO ls_rev_bkpf
WHERE belnr = ls_bkpf-stblg AND bukrs = ls_bkpf-bukrs AND gjahr = ls_bkpf-gjahr.
IF sy-subrc = 0.
gs_event_log-Activity = 'Invoice Reversed'.
CONVERT DATE ls_rev_bkpf-budat INTO TIME STAMP gs_event_log-EventTime TIME ZONE sy-zonlo.
gs_event_log-UserName = ls_rev_bkpf-usnam.
APPEND gs_event_log TO gt_event_log.
ENDIF.
ENDIF.
ENDLOOP.
* --- NOTE: The logic for MM invoices (from lt_rbkp) would be similar, joining RBKP with RSEG.
* --- NOTE: The logic for Payment Blocks and Workflow events requires reading change documents (CDHDR/CDPOS)
* --- or custom workflow tables. Below is a conceptual example for payment blocks.
* --- Conceptual Example for 'Payment Block Set' / 'Released' using Change Docs
* DATA: lt_cdhdr TYPE TABLE OF cdhdr, ls_cdhdr TYPE cdhdr,
* lt_cdpos TYPE TABLE OF cdpos, ls_cdpos TYPE cdpos.
* SELECT * FROM cdhdr INTO TABLE lt_cdhdr
* WHERE objectclas = 'BELEG' AND objectid IN (SELECT belnr FROM bkpf WHERE ...).
* LOOP AT lt_cdhdr.
* SELECT * FROM cdpos INTO TABLE lt_cdpos
* WHERE changenr = ls_cdhdr-changenr AND tabname = 'BSEG' AND fname = 'ZLSPR'.
* LOOP AT lt_cdpos.
* "... logic to create 'Payment Block Set' (if VALUE_NEW is not blank)
* "... or 'Payment Block Released' (if VALUE_NEW is blank) events.
* ENDLOOP.
* ENDLOOP.
* --- Conceptual Example for Workflow events ('Sent For Approval', 'Approved', 'Rejected')
* --- This part MUST be customized based on your specific workflow implementation (e.g., OpenText VIM, SAP WF).
* --- You would query the relevant workflow tables or status change tables here.
*&---------------------------------------------------------------------*
*& Write to File
*&---------------------------------------------------------------------*
END-OF-SELECTION.
DATA: lv_string TYPE string,
lv_header TYPE string.
" Create Header
lv_header = 'InvoiceNumber;Activity;EventTime;UserName;VendorNumber;PurchaseOrderNumber;InvoiceAmount;PostingDate;PaymentDueDate;PaymentBlockReason;ClearingDate'.
OPEN DATASET p_fpath FOR OUTPUT IN TEXT MODE ENCODING UTF-8.
IF sy-subrc = 0.
TRANSFER lv_header TO p_fpath.
LOOP AT gt_event_log INTO gs_event_log.
CONCATENATE gs_event_log-InvoiceNumber
gs_event_log-Activity
gs_event_log-EventTime
gs_event_log-UserName
gs_event_log-VendorNumber
gs_event_log-PurchaseOrderNumber
gs_event_log-InvoiceAmount
gs_event_log-PostingDate
gs_event_log-PaymentDueDate
gs_event_log-PaymentBlockReason
gs_event_log-ClearingDate
INTO lv_string SEPARATED BY ';'.
TRANSFER lv_string TO p_fpath.
ENDLOOP.
CLOSE DATASET p_fpath.
ELSE.
MESSAGE 'Error opening file.' TYPE 'E'.
ENDIF. ¿Todo listo para comenzar?
Con este Template podrá obtener información valiosa y mejorar significativamente el proceso de Compras a pago - Procesamiento de facturas. Comience hoy mismo a extraer sus datos y transforme sus operaciones.
Optimice hoy el procesamiento de facturas de Compras a pago
Detecte ineficiencias y reduzca un 30 % el tiempo de ciclo de las facturas.
No se requiere tarjeta de crédito. Configuración en minutos.