Coincidencia Bidireccional
Descripción general
La enriquecimiento de Coincidencia Bidireccional compara valores numéricos de dos conjuntos de actividades dentro de un caso para determinar si coinciden, creando un mecanismo poderoso de validación para la conciliación de documentos y el análisis de cumplimiento de procesos. Este enriquecimiento calcula valores agregados (como suma, promedio, primer o última ocurrencia) a partir de actividades específicas y sus atributos numéricos asociados, y luego compara estos valores para identificar coincidencias o discrepancias. El enriquecimiento crea tanto un atributo booleano que indica si los valores coinciden como un atributo opcional de diferencia que muestra la variación entre los dos valores.
Este enriquecimiento es esencial en procesos de compras, financieros y logísticos donde múltiples documentos o actividades deben reconciliarse entre sí. Por ejemplo, en un proceso de compra-a-pago, puede verificar que las cantidades de orden de compra coincidan con las cantidades de recepción de mercancías, o que los importes de facturas estén alineados con los valores de las órdenes de compra. El enriquecimiento opera a nivel de caso, siendo ideal para validar procesos de múltiples pasos donde diferentes actividades registran información relacionada que debería ser consistente. Al admitir múltiples métodos de agregación (suma, promedio, mínimo, máximo, primero, último), el enriquecimiento se adapta a diversos escenarios empresariales, desde comparaciones simples del último valor hasta sumas complejas a través de múltiples líneas.
El enriquecimiento de Coincidencia Bidireccional proporciona la base para escenarios de coincidencia triple y cuádruple al establecer la lógica básica de comparación. Una vez identificadas las discrepancias, puede utilizar filtros y análisis para entender patrones en las discrepancias, medir tasas de cumplimiento del proceso y enrutar casos con no coincidencias para revisión o aprobación manual.
Usos comunes
- Validar cantidades en órdenes de compra contra cantidades de recepción de mercancías en procesos de adquisiciones
- Comparar importes de facturas con valores de órdenes de compra para cumplimiento financiero y aprobación de pagos
- Conciliar cantidades de órdenes de venta con cantidades de envío en el cumplimiento de pedidos
- Verificar que las cantidades de producción planificadas coincidan con la producción real en fabricación
- Comparar montos de requisiciones con asignaciones presupuestarias aprobadas en gestión de gastos
- Validar horas de entrega de servicios contra horas contratadas en servicios profesionales
- Conciliar conteos de inventario entre conteos físicos y registros del sistema
- Verificar que cantidades de pedidos de clientes coincidan con cantidades de recogida y embalaje en operaciones de almacén
Configuración
Activity Names 1: Especifique una o más actividades que representen el primer tipo de documento o transacción en su comparación. Por ejemplo, en un proceso de compras, podría ser "CreatePurchaseOrderLine" o "UpdatePurchaseOrderLine" para capturar las cantidades ordenadas. Puede seleccionar múltiples actividades si el mismo tipo de información aparece en diferentes nombres de actividades. El enriquecimiento obtendrá el valor numérico de estas actividades según el método "Event Selection 1" que elija.
Event Selection 1: Elija cómo agregar valores cuando existan múltiples instancias de Activity Names 1 en un caso. Las opciones incluyen:
- First: Usa el valor de la primera ocurrencia de la actividad en el caso
- Last: Usa el valor de la última ocurrencia (por defecto - lo más común para actualizaciones de documentos)
- Sum: Suma todos los valores de todas las ocurrencias (ideal para totales de líneas)
- Average: Calcula el promedio de todos los valores
- Min: Usa el valor más pequeño encontrado
- Max: Usa el valor más grande encontrado
Activity Names 2: Especifique una o más actividades que representen el segundo tipo de documento o transacción para comparar contra el primero. Por ejemplo, en compras, esto podría ser "ProductReceipt" o "GoodsReceipt" para capturar las cantidades recibidas. El enriquecimiento comparará el valor agregado de estas actividades contra el valor de Activity Names 1.
Event Selection 2: Elija cómo agregar valores cuando existan múltiples instancias de Activity Names 2 en un caso. Utiliza las mismas opciones que Event Selection 1. El valor por defecto es "Sum", comúnmente usado para recepciones que pueden ocurrir en múltiples envíos. Por ejemplo, si una orden de compra por 100 unidades se cumple en tres envíos (40, 35 y 25 unidades), seleccionar "Sum" totalizará correctamente 100 unidades para la comparación.
Column Name: Seleccione el atributo del evento numérico que contiene los valores a comparar. Debe ser un campo numérico (entero, decimal o flotante) que exista en los eventos de ambos conjuntos de actividades. Ejemplos comunes incluyen "Quantity", "Amount", "Value", "Hours" o "Weight". El enriquecimiento extraerá el valor de este atributo de las actividades especificadas y realizará la comparación.
New Attribute Name: Especifique el nombre para el atributo booleano del caso que almacenará el resultado de la coincidencia. Elija un nombre descriptivo que indique claramente lo que se está comparando, como "PO_Matches_GR_Quantity" o "Invoice_Amount_Matches_PO". Este atributo contendrá True cuando los valores coincidan exactamente y False cuando difieran. Ejemplo predeterminado: "Quantity for CreatePurchaseOrderLine = ProductReceipt"
New Attribute Difference Name: Opcionalmente, especifique el nombre para un atributo numérico del caso que almacenará la diferencia entre los dos valores. Este atributo calcula Value1 menos Value2, permitiéndole analizar la magnitud y dirección de las discrepancias. Por ejemplo, una diferencia positiva indica que el primer valor excede al segundo (por ejemplo, más ordenado que recibido), mientras que una diferencia negativa indica lo contrario. Déjelo en blanco si solo necesita el indicador booleano de coincidencia. Ejemplo predeterminado: "Quantity difference CreatePurchaseOrderLine - ProductReceipt"
Filter Cases (Advanced): Opcionalmente, aplique filtros para limitar qué casos son evaluados por este enriquecimiento. Esta configuración avanzada permite realizar la coincidencia bidireccional solo en casos que cumplan criterios específicos, como casos con ciertos estados, rangos de fechas o valores de atributos. Los casos que no cumplan con el filtro no tendrán los nuevos atributos calculados.
Ejemplos
Ejemplo 1: Coincidencia de Cantidad de Orden de Compra y Recepción de Mercancías
Escenario: En un proceso de compra-a-pago, necesita validar que la cantidad total recibida coincida con la cantidad ordenada. Las órdenes de compra pueden actualizarse varias veces antes de la aprobación final, y las mercancías pueden recibirse en múltiples envíos. Desea identificar casos donde las cantidades recibidas no coinciden con la cantidad ordenada final.
Configuración:
- Activity Names 1: CreatePurchaseOrderLine, UpdatePurchaseOrderLine
- Event Selection 1: Last
- Activity Names 2: GoodsReceipt, ProductReceipt
- Event Selection 2: Sum
- Column Name: Quantity
- New Attribute Name: PO_Quantity_Matches_GR
- New Attribute Difference Name: PO_GR_Quantity_Variance
Resultado: Crea dos nuevos atributos de caso:
PO_Quantity_Matches_GR (Booleano):
- True: Casos donde la cantidad ordenada final es igual a la cantidad total recibida (por ejemplo, ordenado 100, recibido 100)
- False: Casos con discrepancias (por ejemplo, ordenado 100, recibido 95 o 105)
PO_GR_Quantity_Variance (Numérico):
- 0: Coincidencia perfecta
- +5: Se ordenaron 5 unidades más de las recibidas (envío incompleto)
- -5: Se recibieron 5 unidades más de las ordenadas (envío excedente)
Datos de ejemplo:
- Caso 12345: Ordenó 100 unidades (última actualización de PO), recibido en 3 envíos (40, 35, 25 = 100 total) → PO_Quantity_Matches_GR = True, Variance = 0
- Caso 12346: Ordenó 50 unidades, recibido 48 unidades → PO_Quantity_Matches_GR = False, Variance = +2
- Caso 12347: Ordenó 75 unidades, recibido 80 unidades → PO_Quantity_Matches_GR = False, Variance = -5
Perspectivas: Este enriquecimiento le permite filtrar casos con discrepancias de cantidad, analizar la frecuencia y magnitud de envíos incompletos o excedentes, identificar proveedores con problemas constantes de cantidad y enrutar casos no coincidentes para aprobación o investigación. Puede calcular indicadores como "98% de las órdenes tienen coincidencia exacta en cantidad" o "la variación promedio de cantidad es +2.3 unidades, indicando ligera subentrega."
Ejemplo 2: Validación de Importe de Factura contra Orden de Compra
Escenario: En cuentas por pagar, necesita verificar que los importes de las facturas coincidan con los valores originales de las órdenes de compra antes de procesar el pago. Esta coincidencia bidireccional asegura que solo pague por lo que realmente se ordenó y ayuda a detectar discrepancias de precios o errores en facturas.
Configuración:
- Activity Names 1: CreatePurchaseOrder, ApprovePurchaseOrder
- Event Selection 1: Last
- Activity Names 2: ReceiveInvoice
- Event Selection 2: Sum
- Column Name: TotalAmount
- New Attribute Name: Invoice_Matches_PO_Amount
- New Attribute Difference Name: Invoice_PO_Amount_Difference
Resultado: Crea dos nuevos atributos de caso mostrando coincidencia factura-orden de compra:
Invoice_Matches_PO_Amount (Booleano):
- True: El importe de la factura coincide exactamente con el importe de la orden (por ejemplo, ambos $5,000.00)
- False: Los importes difieren (por ejemplo, PO por $5,000.00, factura por $5,250.00)
Invoice_PO_Amount_Difference (Numérico):
- 0.00: Coincidencia exacta
- +500.00: El importe de la orden supera en $500 a la factura (subfacturado)
- -250.00: La factura supera en $250 a la orden (sobrefacturado, requiere aprobación)
Datos de ejemplo:
- Caso INV-001: Importe PO $10,000, Importe Factura $10,000 → Coincidencia = True, Diferencia = $0
- Caso INV-002: Importe PO $7,500, Importe Factura $7,750 → Coincidencia = False, Diferencia = -$250
- Caso INV-003: Importe PO $3,200, Importe Factura $3,200 → Coincidencia = True, Diferencia = $0
Perspectivas: Esto permite la aprobación automática de facturas coincidentes, marcar facturas que superan importes de PO para revisión manual, identificar problemas sistemáticos de precios con proveedores específicos y medir tasas de procesamiento directo. Puede crear reglas empresariales como "autoaprobar si Invoice_Matches_PO_Amount es True" o "requerir aprobación del gerente si Invoice_PO_Amount_Difference supera $500."
Ejemplo 3: Conciliación de Cantidad de Orden de Venta contra Envío
Escenario: En un proceso de cumplimiento de pedidos, necesita asegurar que la cantidad enviada coincida con lo que el cliente ordenó. Las órdenes pueden modificarse antes del cumplimiento, y los envíos pueden ocurrir en múltiples paquetes. Esta validación ayuda a identificar envíos incompletos y garantiza la satisfacción del cliente.
Configuración:
- Activity Names 1: CreateSalesOrder, ModifySalesOrder
- Event Selection 1: Last
- Activity Names 2: ShipProduct, ConfirmShipment
- Event Selection 2: Sum
- Column Name: OrderedQuantity
- New Attribute Name: Order_Shipment_Quantity_Match
- New Attribute Difference Name: Unshipped_Quantity
Resultado: Crea atributos que rastrean la precisión del cumplimiento de pedidos:
Order_Shipment_Quantity_Match (Booleano):
- True: Cumplimiento completo (ordenado 50, enviado 50)
- False: Cumplimiento parcial o exceso (ordenado 50, enviado 48 o 52)
Unshipped_Quantity (Numérico):
- 0: Enviado completamente
- +2: 2 unidades faltantes (situación de pedido pendiente)
- -2: 2 unidades enviadas en exceso (posible problema de inventario)
Datos de ejemplo:
- Orden SO-5001: Ordenó 200 unidades, enviadas en 4 lotes (75, 50, 50, 25 = 200) → Coincidencia = True, No enviado = 0
- Orden SO-5002: Ordenó 150 unidades, enviadas 145 unidades → Coincidencia = False, No enviado = +5
- Orden SO-5003: Ordenó 100 unidades, enviadas 100 unidades → Coincidencia = True, No enviado = 0
Perspectivas: Este enriquecimiento ayuda a medir tasas de precisión de cumplimiento, identificar productos con envíos incompletos frecuentes, calcular cantidades y tendencias de pedidos pendientes y activar notificaciones de servicio al cliente para envíos incompletos. Puede crear KPIs como "95% tasa de cumplimiento completo" o "cantidad no cumplida promedio: 2.3 unidades por pedido incompleto."
Ejemplo 4: Plan de Producción frente a Producción Real
Escenario: En un proceso de fabricación, necesita comparar las cantidades de producción planificadas contra la producción real para medir la eficiencia y detectar problemas de capacidad o calidad. Los planes de producción pueden actualizarse y la producción se registra a medida que se completan lotes.
Configuración:
- Activity Names 1: CreateProductionOrder, UpdateProductionPlan
- Event Selection 1: Last
- Activity Names 2: RecordProduction, CompleteProductionBatch
- Event Selection 2: Sum
- Column Name: Quantity
- New Attribute Name: Production_Met_Plan
- New Attribute Difference Name: Production_Variance
Resultado: Crea atributos que miden el desempeño de producción:
Production_Met_Plan (Booleano):
- True: La producción real iguala al plan (planeado 1000, producido 1000)
- False: Sobreproducción o subproducción (planeado 1000, producido 950 o 1050)
Production_Variance (Numérico):
- 0: Cumplimiento exacto del plan
- +50: Subproducido 50 unidades (problema de capacidad o calidad)
- -50: Sobreproducido 50 unidades (ganancia de eficiencia o error de pronóstico)
Datos de ejemplo:
- Orden de producción PR-8001: Planeado 5000 unidades, producido 5000 → Cumple_Plan = True, Variancia = 0
- Orden de producción PR-8002: Planeado 3000 unidades, producido 2850 → Cumple_Plan = False, Variancia = +150
- Orden de producción PR-8003: Planeado 1500 unidades, producido 1520 → Cumple_Plan = False, Variancia = -20
Perspectivas: Esto permite calcular tasas de eficiencia de producción, identificar líneas con bajo desempeño constante, analizar patrones de variación por tipo de producto o turno y advertir sobre limitaciones de capacidad. Puede medir "85% de las órdenes de producción cumplen el plan exactamente" o "variación promedio de producción: -2.5% (ligera sobreproducción)."
Ejemplo 5: Horas de Servicio - Contratadas versus Entregadas
Escenario: En una organización de servicios profesionales, necesita verificar que las horas entregadas a los clientes coincidan con las horas contratadas en el acuerdo de servicio. Los contratos pueden modificarse y las horas se registran en múltiples actividades de entrega de servicio.
Configuración:
- Activity Names 1: CreateServiceContract, AmendServiceContract
- Event Selection 1: Last
- Activity Names 2: LogServiceHours, SubmitTimesheet
- Event Selection 2: Sum
- Column Name: Hours
- New Attribute Name: Hours_Match_Contract
- New Attribute Difference Name: Hours_Variance
Resultado: Crea atributos para la validación de entrega de servicios:
Hours_Match_Contract (Booleano):
- True: Horas entregadas igualan horas contratadas (contratado 80, entregado 80)
- False: Sobreentrega o subentrega (contratado 80, entregado 75 o 85)
Hours_Variance (Numérico):
- 0: Coincidencia exacta
- +5: Subentregado 5 horas (posible insatisfacción del cliente)
- -10: Sobreentregado 10 horas (pérdida de ingresos si no es facturable)
Datos de ejemplo:
- Proyecto SVC-2001: Contratado 160 horas, entregado 160 horas → Coincidencia = True, Variancia = 0
- Proyecto SVC-2002: Contratado 120 horas, entregado 115 horas → Coincidencia = False, Variancia = +5
- Proyecto SVC-2003: Contratado 200 horas, entregado 215 horas → Coincidencia = False, Variancia = -15
Perspectivas: Este enriquecimiento permite medir la precisión en la entrega del servicio, identificar proyectos con alcance excesivo (sobreentrega), detectar subentregas que requieren acción correctiva y analizar la precisión de la facturación. Puede rastrear "92% de los proyectos entregan las horas contratadas" o "sobreentrega promedio: 3.2 horas por proyecto."
Salida
El enriquecimiento de Coincidencia Bidireccional crea uno o dos nuevos atributos de caso según su configuración:
Atributo Indicador de Coincidencia (Siempre creado): Un atributo booleano con el nombre especificado en "New Attribute Name" que contiene:
- True: Cuando el valor agregado de Activity Names 1 es igual al valor agregado de Activity Names 2
- False: Cuando los valores difieren en cualquier cantidad
- Sin valor (null): Cuando uno o ambos conjuntos de actividades no existen en el caso, o cuando la columna especificada no contiene valores para las actividades
Atributo de Diferencia (Opcional): Si especifica un "New Attribute Difference Name", el enriquecimiento crea un atributo numérico que contiene la diferencia calculada como Value1 menos Value2:
- Valores positivos: Indican que el primer valor supera al segundo (por ejemplo, ordenado más que recibido)
- Valores negativos: Indican que el segundo valor supera al primero (por ejemplo, recibido más que ordenado)
- Cero: Indica coincidencia exacta
- Sin valor (null): Cuando la comparación no puede realizarse por ausencia de actividades o valores
Ambos atributos se crean como atributos derivados del caso y se integran perfectamente con otras funcionalidades de mindzieStudio:
Filtrado: Cree filtros para mostrar solo casos con no coincidencias (Match = False), casos con variaciones significativas (Difference > umbral) o casos con patrones específicos de variación (Difference > 0 para envíos incompletos).
Análisis de Conformidad: Calcule tasas de coincidencia y estadísticas de variación a lo largo de todo su conjunto de datos o segmentos específicos. Por ejemplo, mida "98% de las órdenes de compra tienen recepciones coincidentes" o "variación promedio de cantidad: 2.3 unidades."
Visualización del Proceso: Divida los flujos de proceso según resultados de coincidencia para visualizar caminos diferentes para casos coincidentes versus no coincidentes, ayudando a identificar dónde se introducen o resuelven las discrepancias.
Calculadoras: Use el atributo booleano de coincidencia en expresiones lógicas para crear reglas de validación complejas, combinando resultados de coincidencia bidireccional con otras comprobaciones de cumplimiento.
Dashboards y KPIs: Cree métricas que muestren tasas de coincidencia en el tiempo, distribuciones de variación y tendencias de cumplimiento. Construya gráficos que muestren patrones de variación por proveedor, categoría de producto o período.
Automatización y Enrutamiento: Use resultados de coincidencia para impulsar la automatización del proceso, como aprobar automáticamente casos donde la coincidencia es True y enrutar casos con False a colas de revisión manual.
El enriquecimiento realiza comparaciones solo en casos donde ambos conjuntos de actividades existen y contienen valores numéricos en la columna especificada. Los casos donde faltan actividades o valores tendrán valores nulos para los atributos de salida, permitiéndole identificar casos incompletos separadamente de los casos no coincidentes.
Véase también
- Compare Case Attributes - Para comparar dos atributos a nivel de caso directamente sin agregar desde actividades
- Compare Event Attributes for Two Activities - Para comparar atributos de evento de dos actividades específicas sin agregación
- Attribute Changes Between Two Activities - Para detectar cambios en valores de atributo entre dos actividades
- Subtract - Para calcular diferencias entre atributos de caso creados por otros enriquecimientos
- Filter Process Log - Para filtrar casos basados en resultados de coincidencia y variaciones
- Divide - Para calcular comparaciones basadas en razón entre valores coincidentes
Esta documentación es parte de la plataforma de minería de procesos mindzie Studio.