Su Template de datos de planificación de producción
Su Template de datos de planificación de producción
- Atributos recomendados para recopilar
- Actividades clave que debe supervisar
- Guía de extracción para Microsoft Dynamics 365 Manufacturing
Atributos de la planificación de la producción
| Nombre | Descripción | ||
|---|---|---|---|
| Orden de producción ProductionOrderNumber | El identificador único de una Production Order, que actúa como identificador principal del caso para realizar el seguimiento de todas las actividades de planificación y ejecución relacionadas. | ||
| Descripción El número de la Production Order, denominado a menudo ProdId en Microsoft Dynamics 365, es el identificador central que vincula todos los eventos, materiales, recursos y costes asociados a un trabajo de fabricación concreto. Permite analizar de principio a fin el ciclo de vida de la planificación y ejecución de la producción de una unidad de trabajo. En Process Mining, este Atributo es esencial para agrupar los eventos relacionados en un único caso. Analizar los procesos por número de Production Order ayuda a identificar cuellos de botella, retrasos y desviaciones en el flujo de producción estándar, desde la creación y programación iniciales hasta la finalización y el cálculo de costes. Por qué es importante Es el identificador fundamental del caso y resulta esencial para agrupar todos los eventos relacionados y reconstruir el proceso completo de planificación de la producción para su análisis. Dónde obtenerlo Es el campo 'ProdId' de la tabla 'ProdTable' en Microsoft Dynamics 365 Manufacturing. Ejemplos WO-000456WO-000457WO-000458 | |||
| Hora del evento EventTime | La marca de tiempo exacta que indica cuándo tuvo lugar la actividad. | ||
| Descripción La hora del evento, o marca de tiempo, registra la fecha y hora exactas en que tuvo lugar una actividad concreta. Estos datos son fundamentales para todos los análisis de Process Mining basados en el tiempo, incluido el cálculo de los tiempos de ciclo, la identificación de retrasos entre pasos y la comprensión del rendimiento del proceso a lo largo del tiempo. En el contexto de la planificación de la producción, este Atributo se utiliza para medir plazos como el tiempo de planificación, los retrasos en el inicio de la producción y el tiempo total de cumplimiento de la orden. Las marcas de tiempo precisas y cronológicas son esenciales para construir un modelo de proceso correcto y significativo. Por qué es importante Esta marca de tiempo es esencial para ordenar los eventos, calcular las duraciones entre actividades y realizar cualquier análisis basado en el tiempo, como el de tiempos de ciclo y la identificación de cuellos de botella. Dónde obtenerlo Se encuentra en varias tablas de transacciones, como 'createdDateTime' en 'ProdTable' o los campos de fecha de transacción en 'ProdRouteTrans', 'ProdJournalRoute' y 'ProdJournalBOM'. Ejemplos 2023-04-15T09:00:12Z2023-04-15T11:30:00Z2023-04-16T14:22:05Z | |||
| Nombre de la actividad ActivityName | El nombre del evento o paso empresarial específico que tuvo lugar dentro del proceso de planificación de la producción. | ||
| Descripción El nombre de la actividad describe un paso individual del ciclo de vida de la planificación de la producción, como 'Production Order Created', 'Materials Picked For Production' o 'Production Started'. Estas actividades son los elementos básicos del mapa de procesos. Analizar la secuencia y la duración de estas actividades permite visualizar el flujo del proceso, identificar las rutas habituales, detectar ciclos de retrabajo y medir el tiempo empleado en las distintas etapas. Este Atributo es fundamental para comprender qué ocurre en cada punto del proceso. Por qué es importante Este Atributo define los pasos del proceso y permite construir un mapa de procesos y analizar el flujo, las variaciones y los cuellos de botella. Dónde obtenerlo Este valor suele derivarse de los registros de eventos o de la asignación de distintos cambios de estado y tipos de transacción en tablas como 'ProdRouteTrans', 'ProdJournalBOM' y los campos de estado de 'ProdTable'. Ejemplos Production Order creadaProduction Order liberadaProducción iniciadaProducción declarada como terminada | |||
| Sistema de origen SourceSystem | El sistema de registro del que se extrajeron los datos. | ||
| Descripción Este Atributo identifica el sistema de información de origen del que proceden los datos de eventos. En esta vista del proceso, el valor sería siempre 'Microsoft Dynamics 365 Manufacturing'. En entornos con varios sistemas integrados, este campo es fundamental para garantizar la trazabilidad de los datos, solucionar problemas de calidad y comprender cómo contribuye cada sistema al proceso general. Aporta claridad sobre el origen de los datos analizados. Por qué es importante Proporciona un contexto esencial sobre el origen de los datos, necesario para la gobernanza y validación de datos y para gestionar canalizaciones de datos procedentes de varios sistemas empresariales. Dónde obtenerlo Es un valor estático que debe añadirse durante el proceso de extracción y transformación de datos para identificar el origen del conjunto de datos. Ejemplos Microsoft Dynamics 365 ManufacturingD365 F&O | |||
| Última actualización de datos LastDataUpdate | La marca de tiempo que indica cuándo se actualizaron o extrajeron por última vez del sistema de origen los datos de este evento. | ||
| Descripción Este atributo proporciona la fecha y hora de la extracción de datos más reciente del sistema de origen. Es un campo de metadatos esencial para comprender la actualidad y vigencia del análisis. Saber cuándo se actualizaron los datos por última vez ayuda a que analistas y usuarios de negocio confíen en las conclusiones obtenidas con la herramienta de Process Mining. También aclara si los Dashboards reflejan información en tiempo real o datos de un momento anterior, algo importante para la toma de decisiones operativas. Por qué es importante Este Atributo es esencial para la gobernanza de datos, ya que permite a los usuarios conocer su actualidad y confiar en la vigencia de la información del proceso. Dónde obtenerlo Esta marca de tiempo se genera y se añade a cada registro durante el proceso de extracción, transformación y carga (ETL) de datos. Ejemplos 2023-05-20T05:00:00Z2023-05-21T05:00:00Z | |||
| Cantidad real ActualQuantity | La cantidad de productos fabricados correctamente y registrados como terminados para el pedido. | ||
| Descripción Actual Quantity representa el número de unidades que se completaron y superaron los controles de calidad para una orden de producción determinada. Este valor se registra cuando la producción se «Reported as finished». Este atributo se utiliza para analizar el rendimiento y la eficiencia de la producción. Comparar Actual Quantity con Planned Quantity ayuda a calcular las tasas de desperdicio y comprender las pérdidas de producción. También es un componente clave del análisis del rendimiento y de los Dashboards de utilización de la capacidad. Por qué es importante Es esencial para calcular el rendimiento de la producción, las tasas de desperdicio y el rendimiento real, y proporciona información sobre la eficiencia y el desempeño de la fabricación. Dónde obtenerlo Este valor suele proceder del campo «QtyGood» de «ProdTable» o de tablas relacionadas de registro en diarios cuando una orden se registra como terminada. Ejemplos 100985000 | |||
| Estado de la Production Order ProductionOrderStatus | Indica el estado actual del ciclo de vida de la Production Order. | ||
| Descripción El estado de la Production Order refleja el avance de la orden a lo largo del ciclo de vida de fabricación. Entre los estados habituales de Dynamics 365 se incluyen Created, Estimated, Scheduled, Released, Started, Reported as finished y Ended. Este Atributo ofrece una instantánea de la situación de cada orden en un momento determinado. En Process Mining, analizar los cambios de estado es una de las principales formas de definir actividades y comprender el flujo del proceso. Puede utilizarse para filtrar las órdenes que se encuentran en un estado concreto, analizar el tiempo empleado en cada estado e identificar las órdenes bloqueadas o retrasadas. Por qué es importante Este Atributo ofrece una visión general del progreso de la orden y es fundamental para filtrar, comprobar la conformidad y analizar el tiempo empleado en las distintas fases de producción. Dónde obtenerlo Es el campo 'ProdStatus' de la tabla 'ProdTable'. Ejemplos ProgramadaLiberadaIniciadaFinalizada | |||
| Fecha de finalización planificada PlannedEndDate | La fecha y hora en las que está previsto que se complete la Production Order. | ||
| Descripción La fecha de finalización planificada es el momento objetivo de finalización de una Production Order, determinado por el motor de programación. Tiene en cuenta los tiempos de operación, los calendarios de recursos y los plazos para prever cuándo estarán listos los productos terminados. En el análisis de procesos, este Atributo es fundamental para evaluar el rendimiento de las finalizaciones a tiempo. Comparar la fecha de finalización planificada con la marca de tiempo real de finalización, obtenida de la actividad 'Production Reported As Finished' o 'Production Order Ended', permite calcular el KPI de tasa de finalización de la producción a tiempo y ayuda a identificar las causas sistémicas de las entregas tardías. Por qué es importante Este Atributo sirve como referencia para medir las tasas de finalización a tiempo y analizar la precisión de la programación de la producción. Dónde obtenerlo Es el campo 'SchedEnd' de la tabla 'ProdTable'. Ejemplos 2023-04-25T17:00:00Z2023-04-26T17:00:00Z2023-04-27T17:00:00Z | |||
| Fecha de inicio planificada PlannedStartDate | La fecha y hora en las que está previsto que comience la Production Order. | ||
| Descripción La fecha de inicio planificada es un resultado clave del proceso de programación y representa el momento objetivo para comenzar las actividades de producción de una orden. Esta fecha se determina según la disponibilidad de materiales, la capacidad de los recursos y los plazos de la demanda. Este Atributo es esencial para analizar el cumplimiento del calendario. Al comparar la fecha de inicio planificada con la hora real de inicio de la producción, obtenida de la marca de tiempo de la actividad 'Production Started', las organizaciones pueden medir la puntualidad, identificar las causas de los retrasos y calcular KPI como la tasa de cumplimiento del calendario de producción. Por qué es importante Sirve como referencia para medir el cumplimiento del calendario e identificar retrasos entre la planificación y el inicio real de la producción. Dónde obtenerlo Es el campo 'SchedStart' de la tabla 'ProdTable'. Ejemplos 2023-04-18T08:00:00Z2023-04-19T08:00:00Z2023-04-20T08:00:00Z | |||
| Número de producto ProductNumber | El identificador único del artículo que se fabrica. | ||
| Descripción El número de producto, o identificador de artículo, especifica el producto terminado que la Production Order debe fabricar. Vincula el proceso de producción con el producto concreto, junto con su lista de materiales y sus instrucciones de ruta. Analizar el proceso por número de producto ayuda a descubrir variaciones específicas del producto en el ciclo de vida de fabricación. Puede revelar que determinados productos tienen tiempos de ciclo más largos, requieren más retrabajos o sufren retrasos con mayor frecuencia, proporcionando información valiosa a los equipos de ingeniería de producto y de procesos. Por qué es importante Permite analizar las variaciones del proceso según el producto fabricado y ayuda a identificar cuellos de botella o problemas de calidad específicos de cada producto. Dónde obtenerlo Es el campo 'ItemId' de la tabla 'ProdTable'. Ejemplos FG-1001FG-2050ASSY-500B | |||
| Planta de producción ProductionPlant | La planta o instalación de fabricación donde se ejecuta la Production Order. | ||
| Descripción La planta de producción identifica la ubicación física o instalación responsable del proceso de fabricación. Es una dimensión organizativa clave para segmentar y comparar el rendimiento de la producción. En Process Mining, este Atributo permite comparar el rendimiento de distintas plantas. Los analistas pueden comparar los tiempos de ciclo, el uso de los recursos y el cumplimiento de los procesos estándar entre instalaciones para identificar buenas prácticas o localizar aquellas que necesiten mejoras operativas. Es esencial para analizar el uso de la capacidad. Por qué es importante Permite comparar y establecer referencias de rendimiento entre distintas plantas de fabricación, lo que ayuda a identificar buenas prácticas y problemas específicos de cada área. Dónde obtenerlo Es el campo 'InventSiteId' de la tabla 'ProdTable'. Ejemplos SITE-ASITE-BAlmacén principal | |||
| Prioridad de producción ProductionPriority | Una clasificación que indica la urgencia o prioridad de la orden de producción. | ||
| Descripción Production Priority es un campo que utilizan los planificadores y programadores para gestionar la secuencia de trabajo en la planta. Las órdenes con mayor prioridad pueden acelerarse, lo que podría alterar el programa previsto para otras órdenes. Analizar este atributo ayuda a comprender con qué frecuencia los pedidos de alta prioridad o acelerados interrumpen los planes de producción. Hacer un seguimiento de los cambios de prioridad durante el ciclo de vida de una orden puede revelar inestabilidad en la demanda o en la planificación. Es fundamental para el Dashboard «Expedited Production Trends» y el KPI «Expedited Production Rate». Por qué es importante Ayuda a identificar la frecuencia y el impacto de los pedidos acelerados, que pueden indicar inestabilidad en la planificación o una gestión operativa reactiva. Dónde obtenerlo Puede ser un campo estándar o personalizado de «ProdTable». La configuración suele depender de cada empresa. Ejemplos NormalAltaUrgente | |||
| Tipo de producción ProductionType | La clasificación de la Production Order, como estándar, retrabajo o basada en un proyecto. | ||
| Descripción Production Type clasifica el pedido según su finalidad. Por ejemplo, un pedido «Standard» corresponde a la producción habitual para existencias, un pedido «Rework» sirve para corregir defectos de un artículo producido anteriormente y un pedido «Project» está vinculado a un proyecto específico de un cliente. Este atributo es importante para crear vistas de análisis comparables. El proceso de un pedido «Rework» es, por naturaleza, diferente del de uno «Standard». Segmentar el análisis del proceso por Production Type garantiza que las comparaciones sean relevantes y ayuda a comprender los desafíos y flujos específicos de cada tipo. Por qué es importante Este atributo permite segmentar el análisis, ya que los distintos tipos de pedido, como «Standard» y «Rework», siguen naturalmente procesos diferentes y tienen expectativas de rendimiento distintas. Dónde obtenerlo Este es el campo «ProdType» de la tabla «ProdTable». Ejemplos EstándarRetrabajoProyecto | |||
| Usuario UserId | El identificador del usuario que realizó la actividad o es responsable de ella. | ||
| Descripción El identificador de usuario identifica a la persona empleada o a la cuenta del sistema que ejecutó un paso concreto del proceso, como liberar una orden o declarar su finalización. Esta información permite saber quién realiza el trabajo dentro del proceso. Analizar el proceso por usuario ayuda a comprender la distribución de la carga de trabajo, identificar oportunidades de formación, comparar el rendimiento entre personas o equipos e investigar desviaciones realizadas por usuarios concretos. También es importante para el cumplimiento y la trazabilidad de auditoría. Por qué es importante Permite analizar el rendimiento del proceso por usuario o equipo, ayuda a identificar oportunidades de automatización y proporciona una pista de auditoría para las actividades clave del proceso. Dónde obtenerlo Se encuentra en campos como 'modifiedBy' o 'createdBy' de varias tablas, o en campos de usuario de tablas de registros de transacciones como 'ProdJournalTable'. Ejemplos j.smithm.jonesAX_BATCH_SVC | |||
| Cantidad planificada PlannedQuantity | La cantidad del artículo cuya producción está planificada. | ||
| Descripción La cantidad planificada es el número objetivo de unidades que deben fabricarse para una orden de producción determinada. Esta cantidad suele estar determinada por la demanda de los pedidos de venta, los requisitos de existencias de seguridad o la planificación maestra. Este atributo sirve como referencia para métricas de rendimiento como el rendimiento y el desperdicio. Al comparar la cantidad planificada con la cantidad real producida, los planificadores pueden supervisar la eficiencia de la producción y las variaciones de materiales. Es un dato fundamental para la planificación de la capacidad y de las necesidades de materiales. Por qué es importante Es la cantidad de referencia utilizada para medir el rendimiento de la producción y las tasas de desperdicio al compararla con la cantidad real producida. Dónde obtenerlo Este es el campo «QtySched» de la tabla «ProdTable». Ejemplos 1005000250 | |||
| Disponibilidad de materiales MaterialAvailabilityStatus | Indica si están disponibles las materias primas necesarias para la orden de producción. | ||
| Descripción Este atributo registra la disponibilidad de los componentes necesarios para la producción. Puede reflejar estados como «Available», «On Order» o «Shortage». Esta información es fundamental para que los planificadores sepan si una orden de producción puede comenzar realmente según lo previsto. En Process Mining, este atributo es esencial para diagnosticar las causas raíz de los retrasos en el inicio de la producción. Al relacionar este estado con el tiempo transcurrido entre «Production Order Released» y «Production Started», los analistas pueden cuantificar el impacto de la falta de materiales en el cumplimiento del programa y en el tiempo total de ciclo. Esto respalda directamente el Dashboard «Material Availability Delay Impact». Por qué es importante Es clave para comprender y cuantificar los retrasos en el inicio de la producción causados por la falta de materiales, y para relacionar el rendimiento de la cadena de suministro con la eficiencia de fabricación. Dónde obtenerlo Este estado no suele corresponder a un único campo, sino que se obtiene comprobando los niveles de inventario disponible de todos los artículos de la lista de materiales (BOM) de la orden de producción mediante la tabla «InventSum». Ejemplos Totalmente disponibleFaltante parcialNo disponible | |||
| Hora de finalización EndTime | La marca de tiempo exacta que indica cuándo se completó la actividad. | ||
| Descripción La hora de finalización marca la conclusión de una actividad específica. Mientras que la hora de inicio indica el comienzo, la hora de finalización es necesaria para conocer la duración real o el tiempo de procesamiento de ese paso concreto. En Process Mining, disponer de la hora de inicio y de la hora de finalización de las actividades permite analizar con mayor detalle el tiempo de espera frente al tiempo de procesamiento. Ayuda a distinguir entre el tiempo durante el que se trabajó activamente en una actividad y el tiempo que transcurrió hasta que comenzó el siguiente paso, algo esencial para un análisis detallado de los cuellos de botella. Por qué es importante Permite calcular el tiempo de procesamiento de una actividad y distinguirlo del tiempo de espera, lo que facilita un análisis más preciso de los cuellos de botella. Dónde obtenerlo A menudo se obtiene mediante un cálculo. Por ejemplo, la hora de finalización de «Production Started» podría ser la hora de inicio de «Operation Completed». En algunos registros, la marca de tiempo de finalización se registra explícitamente. Ejemplos 2023-04-15T09:30:45Z2023-04-15T12:00:00Z2023-04-16T15:00:10Z | |||
| Inicio a tiempo ProductionScheduleAdherence | Un indicador booleano que es verdadero si la orden de producción comenzó en la fecha de inicio planificada o antes. | ||
| Descripción Este atributo calculado proporciona un indicador binario sencillo del cumplimiento del calendario de inicio de la producción. Compara la marca de tiempo de inicio real, el evento «Production Started», con el atributo «PlannedStartDate». Este indicador resulta muy útil para crear Dashboards y KPI claros y concisos, como «Production Schedule Adherence Rate». Permite filtrar y agregar fácilmente los datos para ver qué porcentaje de órdenes comienza a tiempo y analizar las características de las órdenes retrasadas, sin tener que comparar fechas directamente en la herramienta de análisis. Por qué es importante Simplifica los informes y el cálculo de KPI sobre el cumplimiento del programa, y permite filtrar y agregar fácilmente las órdenes iniciadas a tiempo frente a las retrasadas. Dónde obtenerlo Es una métrica calculada. La lógica es: evento «Production Started» EventTime <= PlannedStartDate. Ejemplos truefalse | |||
| Línea de producción ProductionLine | La línea de producción, el centro de trabajo o el grupo de recursos específico asignado a la orden de producción. | ||
| Descripción Production Line identifica la máquina, celda o grupo de recursos específico que realizará las operaciones de fabricación. Proporciona un nivel de detalle más preciso que Production Plant. Analizar el proceso por Production Line es fundamental para estudiar en detalle la capacidad y la utilización. Ayuda a identificar centros de trabajo sobrecargados, comparar la eficiencia de distintas líneas que fabrican el mismo producto y localizar cuellos de botella específicos de los recursos que podrían no ser visibles a nivel de planta. Por qué es importante Permite analizar con detalle la utilización y el rendimiento de los recursos, y ayuda a identificar centros de trabajo sobrecargados o líneas ineficientes. Dónde obtenerlo Esta información suele encontrarse en el campo «WrkCtrId» de las transacciones de la ruta de producción, en las tablas «ProdRoute» o «ProdRouteTrans». Ejemplos LINE-01LINE-02CNC-A | |||
| Número de orden de calidad QualityOrderNumber | El identificador de una orden de control de calidad vinculada a la orden de producción. | ||
| Descripción Cuando se requiere una inspección de calidad, Dynamics 365 suele generar una Quality Order. Este atributo vincula el proceso de producción con el proceso de aseguramiento de la calidad y registra el ID de la orden de calidad asociada. Esta relación permite obtener una visión integral del proceso de extremo a extremo que incluya los pasos de gestión de la calidad. Ayuda a analizar cómo afectan las inspecciones de calidad a los plazos de producción, identificar retrasos en el proceso de calidad y comprender la frecuencia de los controles de calidad para distintos productos o líneas de producción. Por qué es importante Conecta el proceso de producción con el proceso de aseguramiento de la calidad y permite analizar cómo afectan las inspecciones de calidad a los plazos totales. Dónde obtenerlo Esta información se almacena en tablas de gestión de calidad, como «InventQualityOrderTable», y debe vincularse de nuevo con la orden de producción. Ejemplos QO-00123QO-00124QO-00125 | |||
| Número de revisión ProductionOrderRevisionNumber | El número de veces que se ha ajustado un plan de producción después de su creación inicial. | ||
| Descripción Este atributo registra el número de revisiones o cambios importantes realizados en una orden de producción, como modificaciones en la cantidad, las fechas o la ruta, después de programarla o liberarla. Un número elevado indica una mayor inestabilidad del plan. Es una medida directa para el KPI «Production Plan Revision Rate». Analizarlo ayuda a identificar las causas de la inestabilidad de la planificación, como cambios frecuentes en la demanda o una planificación inicial imprecisa. Cuantifica el trabajo de reprocesamiento y reprogramación, que a menudo genera ineficiencias. Por qué es importante Mide directamente la estabilidad de la planificación y respalda el KPI «Production Plan Revision Rate», al poner de relieve los procesos con cambios y reprocesamientos excesivos. Dónde obtenerlo Es un atributo calculado que requiere contar las apariciones de las actividades «Production Order Adjusted» para cada caso. Ejemplos 012 | |||
| Retraso en el inicio de la producción ProductionStartDelay | El tiempo transcurrido entre la liberación de la orden y el inicio real de la producción. | ||
| Descripción Esta duración calculada mide el tiempo de espera o de cola en la planta. Es la diferencia de tiempo entre la actividad «Production Order Released» y la actividad «Production Started». Este KPI es fundamental para el Dashboard «Resource Allocation Delay Analysis», ya que señala los retrasos que se producen una vez finalizada la planificación y cuando la orden está lista para ejecutarse. Los valores elevados pueden indicar problemas de disponibilidad de recursos, preparación de materiales o flujo de información hacia la planta, y ofrecen un objetivo claro para las mejoras operativas. Por qué es importante Mide con precisión el retraso entre la disponibilidad y el inicio, y ayuda a localizar cuellos de botella relacionados con la disponibilidad de recursos o la preparación de la planta. Dónde obtenerlo Es una métrica calculada: Timestamp(«Production Started») - Timestamp(«Production Order Released»). Ejemplos 0 d 4 h 15 min1 d 2 h 0 min0 d 1 h 30 min | |||
Actividades de la planificación de la producción
| Actividad | Descripción | ||
|---|---|---|---|
| Producción declarada como terminada | Indica que el proceso de fabricación de la cantidad especificada del producto ha finalizado físicamente y que los productos terminados ya están en el inventario. Es una actualización de estado fundamental que activa transacciones de inventario. | ||
| Por qué es importante Marca el final de la producción física. Es esencial para calcular las tasas de finalización a tiempo, la duración real de la producción y el rendimiento. Dónde obtenerlo Se registra cuando el estado de la Production Order en ProdTable cambia a 'Reported as finished'. Esto ocurre al contabilizar un diario Report as Finished. Recopilar Detecte la marca de tiempo en la que el campo ProdStatus de ProdTable cambia a 'Reported as finished'. Tipo de evento inferred | |||
| Producción iniciada | Marca el inicio del trabajo de producción físico de la orden en planta. A menudo se registra cuando se inicia la primera operación o trabajo mediante un terminal de planta o la contabilización de un diario. | ||
| Por qué es importante Esta actividad proporciona la hora real de inicio de la producción, un dato fundamental para calcular los retrasos de inicio, el cumplimiento del calendario y los plazos reales. Dónde obtenerlo Se registra cuando el estado de la Production Order en ProdTable cambia a 'Started'. A menudo se activa al contabilizar un diario de tarjeta de trabajo o de tarjeta de ruta para la primera operación. Recopilar Detecte la marca de tiempo en la que el campo ProdStatus de ProdTable cambia a 'Started'. Tipo de evento inferred | |||
| Production Order creada | Esta actividad marca la creación de una Production Order, que formaliza la demanda de una cantidad específica de un producto. Normalmente se registra cuando una Production Order planificada se confirma, creando en el sistema un registro oficial con un identificador único. | ||
| Por qué es importante Este es el evento de inicio principal del proceso de producción. Analizar el tiempo transcurrido desde esta creación hasta los pasos posteriores ayuda a medir el plazo total y la eficiencia de la planificación. Dónde obtenerlo Este evento se infiere a partir de la marca de tiempo de creación del registro de la Production Order en ProdTable. El estado inicial suele ser 'Created'. Recopilar Capture la marca de tiempo de creación de una nueva entrada en ProdTable cuyo ProdStatus sea 'Created'. Tipo de evento inferred | |||
| Production Order finalizada | Esta es la actividad final y representa el cierre financiero de la Production Order. Todos los costes se han calculado y contabilizado, y ya no pueden realizarse más transacciones contra la orden. | ||
| Por qué es importante Marca la finalización real de la orden, tanto desde el punto de vista físico como financiero. Los retrasos entre 'Reported as Finished' y 'Ended' pueden señalar problemas en la contabilidad de costes o en los procesos de cierre financiero. Dónde obtenerlo Es el cambio de estado final, que se registra cuando el campo 'ProdStatus' de 'ProdTable' se establece en 'Ended'. Esto ocurre al ejecutar el cálculo de costes y finalizar la orden. Recopilar Detecte la marca de tiempo en la que el campo ProdStatus de ProdTable cambia a 'Ended'. Tipo de evento inferred | |||
| Production Order liberada | Esta actividad indica que la Production Order ha sido aprobada y autorizada para ejecutarse en planta. Es un hito clave que libera documentos como las tarjetas de trabajo y las tarjetas de ruta. | ||
| Por qué es importante Este es el traspaso oficial de la planificación a la ejecución. El tiempo entre 'Scheduled' y 'Released' puede indicar retrasos en las aprobaciones o las comprobaciones finales, mientras que el tiempo entre 'Released' y 'Started' mide la preparación de la planta. Dónde obtenerlo Se registra cuando el estado de la Production Order en ProdTable cambia a 'Released'. Esto ocurre mediante una acción manual o automática de un usuario. Recopilar Detecte la marca de tiempo en la que el campo ProdStatus de ProdTable cambia a 'Released'. Tipo de evento inferred | |||
| Production Order programada | Esta actividad marca la programación de la Production Order, que asigna recursos, fechas y horas concretos a sus operaciones. Este paso puede incluir la programación de operaciones o una programación de trabajos más detallada. | ||
| Por qué es importante La programación es fundamental para planificar la capacidad y gestionar los recursos. Analizar el tiempo necesario para programar las órdenes y el intervalo hasta su liberación permite detectar limitaciones de planificación y capacidad. Dónde obtenerlo Se registra cuando el estado de la Production Order en ProdTable cambia a 'Scheduled'. Esto ocurre cuando un usuario ejecuta una función de programación. Recopilar Detecte la marca de tiempo en la que el campo ProdStatus de ProdTable cambia a 'Scheduled'. Tipo de evento inferred | |||
| Inspección de calidad superada | Representa la finalización y validación satisfactorias de una Quality Order asociada a la producción. Confirma que los artículos fabricados cumplen los estándares de calidad requeridos. | ||
| Por qué es importante Es un hito clave del proceso de calidad. La duración entre la generación de la Quality Order y la superación de la inspección pone de manifiesto la eficiencia del equipo de aseguramiento de la calidad. Dónde obtenerlo Se infiere a partir de un cambio de estado del registro de InventQualityOrderTable a 'Pass'. El valor concreto del estado puede variar. Recopilar Detecte la marca de tiempo en la que el estado del registro de InventQualityOrderTable asociado se actualiza a 'Pass'. Tipo de evento inferred | |||
| Materiales recogidos para la producción | Indica que las materias primas necesarias para la Production Order se han recogido del almacén y están listas para su consumo. Este evento se registra al completar un trabajo de recogida de materias primas o contabilizar un diario de lista de recogida. | ||
| Por qué es importante Esta actividad es un punto de control fundamental para iniciar la producción. Los retrasos entre la programación y la recogida de materiales ponen de manifiesto problemas en las operaciones de almacén o en la disponibilidad de materiales. Dónde obtenerlo Normalmente se trata de un evento explícito registrado en las tablas de gestión de almacenes (WHSWorkTable) o en los diarios de inventario (InventJournalTrans) vinculados a la Production Order. Recopilar Capture la marca de tiempo de contabilización del diario de lista de recogida asociado a la Production Order. Tipo de evento explicit | |||
| Operación completada | Esta actividad indica la finalización de una operación o paso individual de fabricación en la ruta de producción. Normalmente, una Production Order contiene varios eventos de este tipo. | ||
| Por qué es importante Analizar el tiempo entre operaciones ayuda a identificar cuellos de botella dentro del propio proceso de producción. También proporciona una visión más detallada del flujo en planta. Dónde obtenerlo Es un evento explícito capturado a partir de la contabilización de diarios de tarjetas de ruta (ProdJournalRoute) para cada operación, lo que indica que ese paso se ha completado. Recopilar Capture la marca de tiempo de contabilización de cada registro ProdJournalRoute asociado a la Production Order. Tipo de evento explicit | |||
| Production Order ajustada | Representa un cambio importante realizado en la Production Order después de su liberación, como una modificación de la cantidad o de la fecha. Este evento se infiere comparando campos clave antes y después del cambio. | ||
| Por qué es importante Los ajustes frecuentes indican inestabilidad en la planificación o una demanda volátil, lo que provoca ineficiencias y retrabajos. Esto ayuda a cuantificar la frecuencia y el impacto de estos cambios. Dónde obtenerlo Se infiere mediante el análisis de registros de cambios o la comparación de instantáneas del registro de ProdTable para campos como 'QtySched' o 'SchedEnd' después de que el estado de la orden sea 'Released'. Recopilar Identifique los cambios en campos clave, como cantidades o fechas, de ProdTable después de la marca de tiempo del evento 'Released'. Tipo de evento calculated | |||
| Production Order cancelada | Representa la cancelación de una Production Order antes de que se complete. Es un final alternativo y no satisfactorio del proceso. | ||
| Por qué es importante El seguimiento de las cancelaciones ayuda a identificar las causas de los fallos del proceso, como cambios en la demanda o errores de planificación. Unas tasas de cancelación elevadas pueden indicar problemas sistémicos. Dónde obtenerlo Es un estado final alternativo que se infiere a partir de un cambio de estado. El estado exacto puede variar, pero normalmente implica devolver la orden a un estado anterior y marcarla como cancelada. Recopilar Detecte un cambio de estado que indique una cancelación. Puede ser necesario analizar específicamente el sistema para identificarlo. Tipo de evento inferred | |||
| Production Order estimada | Representa el cálculo del consumo estimado de materiales y costes de la Production Order. Es un paso de planificación fundamental para comprender los requisitos financieros y materiales antes de continuar. | ||
| Por qué es importante Los retrasos en la estimación pueden convertirse en un cuello de botella importante durante la fase de planificación. El seguimiento de esta actividad ayuda a identificar ineficiencias en el proceso de planificación de costes y materiales. Dónde obtenerlo Se registra cuando el estado de la Production Order en ProdTable cambia a 'Estimated'. Esto ocurre cuando un usuario ejecuta la función 'Estimate' en la orden. Recopilar Detecte la marca de tiempo en la que el campo ProdStatus de ProdTable cambia a 'Estimated'. Tipo de evento inferred | |||
| Quality Order generada | Se ha creado una Quality Order para inspeccionar el resultado de la Production Order. Este evento marca el inicio del proceso de aseguramiento de la calidad de los productos fabricados. | ||
| Por qué es importante El seguimiento del proceso de calidad es importante para comprender el plazo total. Los retrasos en la inspección de calidad pueden impedir que los productos se envíen o se utilicen en procesos posteriores. Dónde obtenerlo Es un evento explícito basado en la creación de un registro en InventQualityOrderTable que hace referencia a la Production Order de origen. Recopilar Capture la marca de tiempo de creación de la Quality Order en InventQualityOrderTable, vinculada al identificador de la Production Order. Tipo de evento explicit | |||
Guías de extracción
Pasos
- Vaya al espacio de trabajo Data Management: Inicie sesión en Microsoft Dynamics 365 Finance and Operations. Utilice la barra de búsqueda para localizar y abrir el espacio de trabajo
Data management. - Cree un proyecto de exportación nuevo: En el espacio de trabajo, seleccione el mosaico
Exportpara crear un proyecto de exportación de datos. Asigne al proyecto un nombre descriptivo, comoProcessMind_Production_Orders. - Seleccione el formato del archivo de exportación: En la configuración del proyecto, elija el formato de datos que desea utilizar, como CSV o Excel. Establezca la opción
Entityy especifique los detalles del formato. Se recomienda CSV por su rendimiento y compatibilidad. - Añada las entidades de datos necesarias: Añada al proyecto las entidades necesarias para capturar todos los eventos de las órdenes de producción. Deberá añadir las siguientes entidades:
Órdenes de producción,Production order route transactions,Inventory quality ordersyProduction picking list journal lines. En cada entidad, seleccione todos los campos relevantes indicados en la sección de la consulta. - Aplique filtros de datos: En cada entidad, utilice la opción
Filtrarpara delimitar la exportación. Como mínimo, filtre porCompanypara seleccionar la entidad jurídica correcta. Se recomienda aplicar un filtro de intervalo de fechas a un campo de fecha clave, comoCreation dateen la entidadÓrdenes de producción, para limitar el volumen de datos a un periodo manejable, por ejemplo, los últimos 6 meses. - Configure exportaciones incrementales (opcional): Para realizar análisis continuos, configure el proyecto para exportaciones incrementales. Puede hacerlo mediante el seguimiento de cambios en las entidades de origen, lo que permite extraer únicamente los registros nuevos o modificados desde la última exportación y reducir considerablemente el tiempo de exportación.
- Ejecute el trabajo de exportación: Una vez configurado el proyecto, inicie la exportación haciendo clic en
Exporten el panel de acciones. Puede ejecutarla de inmediato o programarla como un trabajo por lotes recurrente. - Descargue los archivos exportados: Cuando el trabajo de exportación finalice correctamente, vaya al historial de trabajos. Descargue el paquete, que será un archivo ZIP con archivos de datos independientes para cada entidad incluida.
- Transforme los datos en un registro de eventos: Los archivos exportados contienen datos sin procesar de tablas, no un registro de eventos con formato. Debe utilizar una herramienta externa, como un script de Python, Power Query en Excel o Power BI, o una herramienta ETL, para procesar y combinar los datos. Aplique la lógica de transformación indicada en la sección de la consulta para dinamizar los campos de fecha y estado de las distintas entidades en un único archivo de registro de eventos, con una fila por actividad.
- Estructure el registro de eventos final: Asegúrese de que el archivo CSV transformado contenga las columnas requeridas:
ProductionOrderNumber,ActivityName,EventTime,SourceSystemyLastDataUpdate, además de los atributos recomendados. El archivo debe incluir una fila de cabecera y estar listo para cargarlo en ProcessMind.
Configuración
- Entidades de datos clave: El núcleo de esta extracción consiste en exportar varias entidades y unirlas posteriormente. Las entidades principales son
Órdenes de producción(ProdTable),Production order route transactions(ProdRouteTrans) eInventory quality orders(InventQualityOrderTable). - Filtrado por intervalo de fechas: Para gestionar el volumen de datos, aplique siempre un filtro de fecha. Una buena práctica consiste en filtrar la entidad
Órdenes de producciónporCreation date(CREATEDDATETIME) para obtener los últimos 3 a 6 meses. Así capturará procesos recientes completos sin sobrecargar el sistema. - Filtro de empresa: Es fundamental establecer un filtro para la empresa o entidad jurídica específica que desea analizar. Para ello, utilice la opción
Filtrarde cada entidad dentro del proyecto de exportación. - Carga completa frente a incremental: Para la extracción inicial es necesaria una carga completa. Para las actualizaciones posteriores, se recomienda configurar el seguimiento de cambios en las entidades y realizar exportaciones incrementales para mejorar el rendimiento y reducir la carga de datos.
- Requisitos previos: La persona que ejecute la exportación debe tener los roles de seguridad adecuados, normalmente
Data management administratoro un rol con permisos para acceder a las entidades de datos necesarias.
a Consulta de ejemplo sql
/*
This is not a runnable script but a configuration and transformation plan for the Dynamics 365 Data Management Framework.
**Step 1: Configure the Export Project**
Export the following entities with the specified fields:
1. **Entity: Production orders (ProdTable)**
* `ProductionOrderNumber` (PRODID)
* `ProductionOrderStatus` (PRODSTATUS)
* `CreationDate` (CREATEDDATETIME)
* `LastUpdateDateStatusEstimate` (LASTUPDATEDATESTATUSESTIMATE)
* `LastUpdateDateStatusScheduled` (LASTUPDATEDATESTATUSSCHEDULED)
* `ReleaseDate` (RELEASEDATETIME)
* `StartDate` (STARTEDDATETIME)
* `ReportedFinishedDate` (REPORTEDFINISHEDDATETIME)
* `LastUpdateDateStatusEnded` (LASTUPDATEDATESTATUSENDED)
* `ModifiedDateTime` (MODIFIEDDATETIME)
* `CreatedByUser` (CREATEDBY)
* `ProductionSite` (INVENTSITEID)
* `ProductNumber` (ITEMID)
* `ProductionType` (PRODTYPE)
* `Quantity` (QTYsched)
* `ActualQuantity` (QTYCALC)
* `DeliveryDate` (DLVDATE)
2. **Entity: Production order route transactions (ProdRouteTrans)**
* `ProductionOrderNumber` (PRODID)
* `OperationNumber` (OPRNUM)
* `TransactionDate` (TRANSDATE)
* `TransactionTime` (TRANSTIME)
* `CreatedDateTime` (CREATEDDATETIME)
* `CreatedByUser` (CREATEDBY)
3. **Entity: Inventory quality orders (InventQualityOrderTable)**
* `QualityOrderNumber` (INVENTQUALITYORDERID)
* `ReferenceType` (REFTYPE)
* `ReferenceNumber` (PRODID)
* `QualityOrderStatus` (STATUS)
* `CreationDate` (CREATEDDATETIME)
* `ModifiedDateTime` (MODIFIEDDATETIME)
4. **Entity: Production picking list journal lines (ProdJournalBOM)**
* `JournalId` (JOURNALID)
* `ProductionOrderNumber` (PRODID)
* `PostedDateTime` (POSTEDDATETIME)
* `CreatedByUser` (CREATEDBY)
**Step 2: Apply Transformation Logic (Post-Export)**
Use a script or ETL tool to transform the exported files into a single event log CSV. For each row in the source files, generate events as described below.
*/
-- Production Order Created
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Created' AS ActivityName,
CREATEDDATETIME AS EventTime,
PRODSTATUS AS ProductionOrderStatus,
DLVDATE AS PlannedStartDate,
-- [Logic to calculate PlannedEndDate] AS PlannedEndDate,
CREATEDBY AS UserId,
INVENTSITEID AS ProductionPlant,
ITEMID AS ProductNumber,
PRODTYPE AS ProductionType,
QTYCALC AS ActualQuantity,
-- [Your field for Production Priority] AS ProductionPriority
FROM ProdTable
WHERE CREATEDDATETIME IS NOT NULL
UNION ALL
-- Production Order Estimated
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Estimated' AS ActivityName,
LASTUPDATEDATESTATUSESTIMATE AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE LASTUPDATEDATESTATUSESTIMATE IS NOT NULL
UNION ALL
-- Production Order Scheduled
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Scheduled' AS ActivityName,
LASTUPDATEDATESTATUSSCHEDULED AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE LASTUPDATEDATESTATUSSCHEDULED IS NOT NULL
UNION ALL
-- Materials Picked For Production (based on the first picking list journal posting)
SELECT
PRODID AS ProductionOrderNumber,
'Materials Picked For Production' AS ActivityName,
MIN(POSTEDDATETIME) AS EventTime, -- Use the earliest posting time for a given order
-- Other attributes from ProdTable...
FROM ProdJournalBOM
WHERE POSTEDDATETIME IS NOT NULL
GROUP BY PRODID
UNION ALL
-- Production Order Released
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Released' AS ActivityName,
RELEASEDATETIME AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE RELEASEDATETIME IS NOT NULL
UNION ALL
-- Production Order Adjusted (inferred from modification after release)
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Adjusted' AS ActivityName,
MODIFIEDDATETIME AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE MODIFIEDDATETIME > RELEASEDATETIME AND PRODSTATUS NOT IN ('Ended', 'Cancelled') -- Example logic
UNION ALL
-- Production Started
SELECT
PRODID AS ProductionOrderNumber,
'Production Started' AS ActivityName,
STARTEDDATETIME AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE STARTEDDATETIME IS NOT NULL
UNION ALL
-- Operation Completed
SELECT
PRODID AS ProductionOrderNumber,
'Operation Completed' AS ActivityName,
CREATEDDATETIME AS EventTime,
-- Other attributes from ProdTable linked on PRODID...
FROM ProdRouteTrans
WHERE CREATEDDATETIME IS NOT NULL
UNION ALL
-- Production Reported As Finished
SELECT
PRODID AS ProductionOrderNumber,
'Production Reported As Finished' AS ActivityName,
REPORTEDFINISHEDDATETIME AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE REPORTEDFINISHEDDATETIME IS NOT NULL
UNION ALL
-- Quality Order Generated
SELECT
PRODID AS ProductionOrderNumber,
'Quality Order Generated' AS ActivityName,
CREATEDDATETIME AS EventTime,
-- Other attributes from ProdTable linked on PRODID...
FROM InventQualityOrderTable
WHERE REFTYPE = 'Production' AND CREATEDDATETIME IS NOT NULL
UNION ALL
-- Quality Inspection Passed
SELECT
PRODID AS ProductionOrderNumber,
'Quality Inspection Passed' AS ActivityName,
MODIFIEDDATETIME AS EventTime,
-- Other attributes from ProdTable linked on PRODID...
FROM InventQualityOrderTable
WHERE REFTYPE = 'Production' AND STATUS = 'Pass' AND MODIFIEDDATETIME IS NOT NULL
UNION ALL
-- Production Order Ended
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Ended' AS ActivityName,
LASTUPDATEDATESTATUSENDED AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE LASTUPDATEDATESTATUSENDED IS NOT NULL
UNION ALL
-- Production Order Cancelled
SELECT
PRODID AS ProductionOrderNumber,
'Production Order Cancelled' AS ActivityName,
MODIFIEDDATETIME AS EventTime,
-- Other attributes from ProdTable...
FROM ProdTable
WHERE PRODSTATUS = 'Stopped' -- Or the equivalent 'Cancelled' status enum value in your system Pasos
- Configure BYOD en Dynamics 365: Asegúrese de que la función «Bring your own database» esté configurada en su entorno de Dynamics 365 for Finance and Operations. Esto implica configurar una base de datos Azure SQL y la exportación de datos desde Dynamics 365.
- Publique las entidades necesarias: Desde el espacio de trabajo «Data management», vaya a «Data entities». Busque y publique las siguientes entidades clave en su base de datos BYOD: ProdTable, ProdRouteTrans, InventPickingListJour e InventQualityOrderTable. Asegúrese de configurarlas para la exportación recurrente.
- Verifique la sincronización de datos: Confirme que los datos de las entidades publicadas se sincronizan correctamente y con regularidad con su base de datos Azure SQL de destino. Revise el historial de trabajos de exportación para detectar errores.
- Conéctese a la base de datos BYOD: Utilice un cliente SQL, como SQL Server Management Studio (SSMS) o Azure Data Studio, para conectarse a la base de datos Azure SQL donde se encuentran sus datos de Dynamics 365.
- Prepare la consulta SQL: Abra una nueva ventana de consulta. Copie la consulta SQL completa proporcionada en este documento.
- Establezca los parámetros de la consulta: Localice en la consulta las variables de marcador de posición. Sustituya
'{StartDate}','{EndDate}'y'{CompanyCode}'por el intervalo de fechas deseado y el DataAreaId de la empresa específica que desea analizar. - Ejecute la consulta: Ejecute la consulta SQL modificada en la base de datos BYOD. El tiempo de ejecución variará según el volumen de datos y el intervalo de fechas especificado.
- Revise los resultados: Cuando finalice la consulta, revise el resultado para asegurarse de que contiene las columnas y los datos esperados para todas las actividades extraídas. El conjunto de resultados es el registro de eventos.
- Exporte el registro de eventos: Exporte los resultados de la consulta a un archivo CSV. La mayoría de los clientes SQL incluyen una función para guardar los resultados directamente en un archivo.
- Dé formato para ProcessMind: Asegúrese de que el archivo CSV exportado utilice codificación UTF-8 y que los encabezados de columna coincidan con los nombres de atributos requeridos por ProcessMind, como CaseId, Activity y Timestamp. La consulta proporcionada ya utiliza los alias correctos.
Configuración
- Entidades de datos clave: La consulta depende principalmente de que las siguientes entidades se hayan exportado a su instancia BYOD:
PRODTABLE: Contiene la información principal de la cabecera y el estado de la orden de producción.PRODROUTETRANS: Proporciona detalles sobre las operaciones de producción individuales y su finalización.INVENTPICKINGLISTJOUR: Registra la preparación de materiales para las órdenes de producción.INVENTQUALITYORDERTABLE: Realiza el seguimiento de las órdenes de aseguramiento de la calidad vinculadas a la producción.
- Intervalo de fechas: Se recomienda comenzar con un intervalo limitado, por ejemplo, entre 3 y 6 meses de datos, para garantizar un rendimiento manejable de la consulta. La consulta utiliza la fecha de creación de la orden de producción (
CREATEDDATETIMEdePRODTABLE) como filtro. - Filtro por código de empresa: El campo
DATAREAIDse utiliza para filtrar los datos de una entidad jurídica o empresa específica. Debe sustituir el marcador de posición'{CompanyCode}'por el ID correspondiente, por ejemplo, «usmf». - Requisitos previos: Este método requiere acceso de administrador del sistema tanto a Dynamics 365 Finance and Operations para configurar BYOD como permisos de Contributor en la base de datos Azure SQL para ejecutar consultas.
- Rendimiento: Para conjuntos de datos muy grandes que abarquen varios años o empresas, considere ejecutar la consulta fuera de las horas punta. También puede dividir la extracción en periodos más cortos y combinar los resultados posteriormente.
a Consulta de ejemplo sql
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Created' AS ActivityName,
p.CREATEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.CREATEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYCALC AS ActualQuantity, -- Using calculated quantity at creation
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Estimated' AS ActivityName,
p.COSTCALCDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYCALC AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.COSTCALCDATETIME IS NOT NULL AND p.PRODSTATUS >= 2 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Scheduled' AS ActivityName,
p.SCHEDDATE AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYCALC AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.SCHEDDATE IS NOT NULL AND p.PRODSTATUS >= 3 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Materials Picked For Production' AS ActivityName,
pl.LEDGERVOUCHERPOSTEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
pl.CREATEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM INVENTPICKINGLISTJOUR pl
JOIN PRODTABLE p ON pl.INVENTREFID = p.PRODID AND pl.DATAREAID = p.DATAREAID
WHERE pl.LEDGERVOUCHERPOSTEDDATETIME IS NOT NULL AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Released' AS ActivityName,
p.RELEASEDATE AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.RELEASEDATE IS NOT NULL AND p.PRODSTATUS >= 4 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Adjusted' AS ActivityName,
p.MODIFIEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.RELEASEDATE IS NOT NULL AND p.MODIFIEDDATETIME > p.RELEASEDATE AND p.PRODSTATUS IN (4, 5) AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Started' AS ActivityName,
p.STARTEDUPDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.STARTEDUPDATETIME IS NOT NULL AND p.PRODSTATUS >= 5 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
prt.PRODID AS ProductionOrderNumber,
'Operation Completed' AS ActivityName,
prt.TRANSDATE AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
prt.CREATEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODROUTETRANS prt
JOIN PRODTABLE p ON prt.PRODID = p.PRODID AND prt.DATAREAID = p.DATAREAID
WHERE prt.POSTINGTYPE = 8 AND prt.TRANSDATE IS NOT NULL AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Reported As Finished' AS ActivityName,
p.LASTUPDDATEPRINT AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.PRODSTATUS = 6 AND p.LASTUPDDATEPRINT IS NOT NULL AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Quality Order Generated' AS ActivityName,
qo.CREATEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
qo.CREATEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM INVENTQUALITYORDERTABLE qo
JOIN PRODTABLE p ON qo.INVENTREFID = p.PRODID AND qo.DATAREAID = p.DATAREAID
WHERE qo.INVENTREFTYPE = 9 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Quality Inspection Passed' AS ActivityName,
qo.MODIFIEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
qo.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM INVENTQUALITYORDERTABLE qo
JOIN PRODTABLE p ON qo.INVENTREFID = p.PRODID AND qo.DATAREAID = p.DATAREAID
WHERE qo.INVENTREFTYPE = 9 AND qo.STATUS = 2 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Ended' AS ActivityName,
p.LASTUPDDATEPRINT AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.PRODSTATUS = 7 AND p.LASTUPDDATEPRINT IS NOT NULL AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'
UNION ALL
SELECT
p.PRODID AS ProductionOrderNumber,
'Production Order Cancelled' AS ActivityName,
p.MODIFIEDDATETIME AS EventTime,
'Dynamics 365 BYOD' AS SourceSystem,
GETUTCDATE() AS LastDataUpdate,
p.PRODSTATUS AS ProductionOrderStatus,
p.SCHEDSTART AS PlannedStartDate,
p.SCHEDEND AS PlannedEndDate,
p.MODIFIEDBY AS UserId,
p.INVENTSITEID AS ProductionPlant,
p.ITEMID AS ProductNumber,
p.PRODTYPE AS ProductionType,
p.QTYGOOD AS ActualQuantity,
p.PRODPRIO AS ProductionPriority
FROM PRODTABLE p
WHERE p.PRODSTATUS = 0 AND p.CREATEDDATETIME >= '{StartDate}' AND p.CREATEDDATETIME <= '{EndDate}' AND p.DATAREAID = '{CompanyCode}'; Pasos
- Confirme que Power BI Desktop u otra herramienta aprobada que incluya Power Query esté disponible y que el usuario tenga autorización para leer las entidades de datos de Microsoft Dynamics 365 Manufacturing necesarias. Confirme la URL del entorno, el alcance de la entidad jurídica o empresa y el método de autenticación aprobado.
- En Power BI Desktop, seleccione Obtener datos y elija el conector aprobado de Dynamics 365 o la conexión específica de la organización mediante OData o Dataverse. Utilice [Your Dynamics 365 environment connection] y [Your credentials] según la configuración del administrador. No dé por hecho que una entidad, un endpoint o una ruta de menú concretos están disponibles en todas las implementaciones.
- Seleccione la entidad de cabecera de la orden de producción, la entidad de operaciones o rutas de la orden de producción, la entidad de picking de materiales o lista de picking, las entidades de contabilización de producción, la entidad de órdenes de calidad y cualquier entidad aprobada de auditoría, historial o seguimiento de cambios necesaria para identificar cambios de estado. Sustituya cada referencia de origen en la consulta por la entidad o consulta correspondiente disponible en su entorno.
- Configure el alcance de la extracción. Aplique [Start date parameter], [End date parameter] y [Your company or legal entity filter]. Restrinja la consulta a las órdenes de producción de las plantas, productos, tipos de orden y estados necesarios. Conserve las marcas de tiempo de origen necesarias para distinguir la creación, estimación, programación, picking, liberación, ajuste, inicio, finalización de operaciones, notificación como terminada, calidad, cierre y cancelación.
- En Power Query, estandarice los nombres y tipos de datos de las columnas de origen. Convierta las marcas de tiempo de los eventos a un tipo datetime coherente y normalice los identificadores, valores de estado, valores de empresa, valores de planta, números de producto, usuarios, cantidades y prioridades. Si un campo de origen no está disponible, devuelva un valor nulo en lugar de inventar uno. Utilice el número de la orden de producción como identificador del caso.
- Cree una tabla de eventos por actividad. Cada tabla debe devolver ProductionOrderNumber, ActivityName, EventTime, SourceSystem, LastDataUpdate, ProductionOrderStatus, PlannedStartDate, PlannedEndDate, UserId, ProductionPlant, ProductNumber, ProductionType, ActualQuantity y ProductionPriority. El nombre de la actividad debe ser un valor fijo que coincida con uno de los 13 nombres obligatorios.
- Identifique Production Order Adjusted únicamente a partir de una fuente aprobada de historial, auditoría o seguimiento de cambios con valores anteriores y posteriores. Compare campos relevantes, como la cantidad, las fechas planificadas, el estado, la planta, el producto y la prioridad. Genere una fila de ajuste por cada cambio que cumpla los criterios, utilizando la marca de tiempo registrada del cambio. No infiera un ajuste únicamente a partir de la instantánea actual de la orden de producción.
- Combine las 13 tablas de actividades con UNION ALL. Elimine las filas sin número de orden de producción o sin marca de tiempo del evento, pero no elimine duplicados legítimos de finalizaciones repetidas de operaciones, ajustes o eventos de calidad. Ordene por ProductionOrderNumber y EventTime, con un orden secundario determinista cuando esté disponible.
- Cargue la tabla resultante en Power BI o expórtela como CSV u otro formato de registro de eventos compatible con ProcessMind. Asegúrese de que las cabeceras exportadas sean exactamente ProductionOrderNumber, ActivityName, EventTime, SourceSystem, LastDataUpdate, ProductionOrderStatus, PlannedStartDate, PlannedEndDate, UserId, ProductionPlant, ProductNumber, ProductionType, ActualQuantity y ProductionPriority.
- Antes de cargar los datos en ProcessMind, valide que cada actividad obligatoria esté representada como una fila explícita del registro de eventos, que las marcas de tiempo utilicen una zona horaria coherente, que ProductionOrderNumber esté informado y que LastDataUpdate identifique la actualización de la extracción. ProcessMind lee el registro de eventos tal como está y no deriva los eventos que faltan.
Configuración
- Conexión: Utilice el conector de Power Query y el método de autenticación aprobados para el entorno de Dynamics 365. Sustituya [Your Dynamics 365 environment connection] y [Your credentials] por los valores aprobados por su organización.
- Entidades de origen: Seleccione las entidades de cabecera de la orden de producción, operación o ruta, picking de materiales o lista de picking, contabilización de producción, orden de calidad y auditoría o seguimiento de cambios aprobados disponibles en el entorno. Los nombres y la disponibilidad de las entidades varían según la implementación y deben confirmarse en el explorador de metadatos.
- Intervalo de fechas: Comience con un intervalo de 3 a 6 meses. Utilice filtros de EventTime en el origen siempre que sea posible y amplíe el intervalo al validar órdenes de producción de larga duración o transiciones de estado históricas.
- Filtros de empresa y planta: Aplique [Your company or legal entity filter] y, cuando corresponda, el filtro de planta de producción necesario. No utilice un filtro de empresa genérico si el entorno contiene varias entidades jurídicas con números de orden coincidentes.
- Filtros de órdenes de producción: Filtre por los tipos de orden de producción, productos, plantas, estados y rangos de números de orden necesarios. Evite excluir las órdenes canceladas o cerradas cuando esos resultados sean necesarios para el análisis del proceso.
- Inclusión de eventos: Conserve los eventos repetidos de finalización de operaciones, picking de materiales, calidad y ajustes. No reduzca el registro a una sola fila por orden de producción.
- Zona horaria: Convierta todas las marcas de tiempo de origen a una única zona horaria documentada. Conserve la marca de tiempo de origen o el desfase horario cuando la fuente lo proporcione.
- Metadatos de actualización: Informe LastDataUpdate con la marca de tiempo de actualización o extracción en cada fila. Se acepta una única marca de tiempo de actualización cuando todo el conjunto de datos se extrae en una sola actualización.
- Rendimiento: Aplique los filtros de fecha, empresa, planta y orden en el origen. Seleccione únicamente las columnas necesarias, evite combinaciones innecesarias, prepare consultas de origen reutilizables y considere una actualización incremental para grandes volúmenes de datos.
- Requisitos previos: Power BI Desktop u otro host aprobado de Power Query, acceso de red al entorno de Dynamics 365, permisos de lectura válidos para todas las entidades seleccionadas y cualquier acceso necesario a Dynamics 365 Manufacturing, almacén, calidad, auditoría o seguimiento de cambios.
- Datos dependientes de la configuración: Si una fuente de eventos necesaria no está habilitada, utilice [Configure based on your system] y documente la fuente que falta. No sustituya los eventos históricos por una instantánea del estado actual.
a Consulta de ejemplo sql
let
StartDate = #datetime(2026, 1, 1, 0, 0, 0),
EndDate = #datetime(2026, 6, 30, 23, 59, 59),
CompanyFilter = "[Your company or legal entity filter]",
SourceSystemValue = "Microsoft Dynamics 365 Manufacturing",
RefreshTime = DateTimeZone.RemoveZone(DateTimeZone.UtcNow()),
ProductionOrderHeader = [Your production order header query],
ProductionOrderOperation = [Your production order operation or route query],
MaterialPicking = [Your material picking or picking list query],
ProductionPosting = [Your production posting query],
QualityOrder = [Your quality order query],
ProductionOrderHistory = [Your approved production order audit or change tracking query],
Header = Table.SelectRows(ProductionOrderHeader, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
Operations = Table.SelectRows(ProductionOrderOperation, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
Picking = Table.SelectRows(MaterialPicking, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
Posting = Table.SelectRows(ProductionPosting, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
Quality = Table.SelectRows(QualityOrder, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
History = Table.SelectRows(ProductionOrderHistory, each [EventTime] >= StartDate and [EventTime] <= EndDate and [Company] = CompanyFilter),
Created = Table.SelectRows(Header, each [EventType] = "Created" or [EventType] = "Firmed"),
Estimated = Table.SelectRows(Header, each [EventType] = "Estimated"),
Scheduled = Table.SelectRows(Operations, each [EventType] = "Scheduled"),
Picked = Table.SelectRows(Picking, each [EventType] = "Picked" or [EventType] = "Posted"),
Released = Table.SelectRows(Header, each [EventType] = "Released"),
Adjusted = Table.SelectRows(History, each [ChangedField] = "Quantity" or [ChangedField] = "PlannedStartDate" or [ChangedField] = "PlannedEndDate" or [ChangedField] = "Status" or [ChangedField] = "ProductionPlant" or [ChangedField] = "ProductNumber" or [ChangedField] = "ProductionPriority"),
Started = Table.SelectRows(Posting, each [EventType] = "Started"),
OperationCompleted = Table.SelectRows(Operations, each [EventType] = "Completed"),
ReportedFinished = Table.SelectRows(Posting, each [EventType] = "Reported as finished" or [EventType] = "Finished"),
QualityGenerated = Table.SelectRows(Quality, each [EventType] = "Generated" or [EventType] = "Created"),
QualityPassed = Table.SelectRows(Quality, each [EventType] = "Passed" or [EventType] = "Validated"),
Ended = Table.SelectRows(Header, each [EventType] = "Ended"),
Cancelled = Table.SelectRows(Header, each [EventType] = "Cancelled"),
ToEvent = (InputTable as table, Activity as text) as table =>
let
Selected = Table.SelectColumns(InputTable, {"ProductionOrderNumber", "EventTime", "ProductionOrderStatus", "PlannedStartDate", "PlannedEndDate", "UserId", "ProductionPlant", "ProductNumber", "ProductionType", "ActualQuantity", "ProductionPriority"}, MissingField.UseNull),
Named = Table.AddColumn(Selected, "ActivityName", each Activity, type text),
Source = Table.AddColumn(Named, "SourceSystem", each SourceSystemValue, type text),
Updated = Table.AddColumn(Source, "LastDataUpdate", each RefreshTime, type datetime),
Ordered = Table.ReorderColumns(Updated, {"ProductionOrderNumber", "ActivityName", "EventTime", "SourceSystem", "LastDataUpdate", "ProductionOrderStatus", "PlannedStartDate", "PlannedEndDate", "UserId", "ProductionPlant", "ProductNumber", "ProductionType", "ActualQuantity", "ProductionPriority"}),
Valid = Table.SelectRows(Ordered, each [ProductionOrderNumber] <> null and [ProductionOrderNumber] <> "" and [EventTime] <> null)
in
Valid,
EventsCreated = ToEvent(Created, "Production Order Created"),
EventsEstimated = ToEvent(Estimated, "Production Order Estimated"),
EventsScheduled = ToEvent(Scheduled, "Production Order Scheduled"),
EventsPicked = ToEvent(Picked, "Materials Picked For Production"),
EventsReleased = ToEvent(Released, "Production Order Released"),
EventsAdjusted = ToEvent(Adjusted, "Production Order Adjusted"),
EventsStarted = ToEvent(Started, "Production Started"),
EventsOperationCompleted = ToEvent(OperationCompleted, "Operation Completed"),
EventsReportedFinished = ToEvent(ReportedFinished, "Production Reported As Finished"),
EventsQualityGenerated = ToEvent(QualityGenerated, "Quality Order Generated"),
EventsQualityPassed = ToEvent(QualityPassed, "Quality Inspection Passed"),
EventsEnded = ToEvent(Ended, "Production Order Ended"),
EventsCancelled = ToEvent(Cancelled, "Production Order Cancelled"),
EventLog = Table.Combine({EventsCreated, EventsEstimated, EventsScheduled, EventsPicked, EventsReleased, EventsAdjusted, EventsStarted, EventsOperationCompleted, EventsReportedFinished, EventsQualityGenerated, EventsQualityPassed, EventsEnded, EventsCancelled}),
Typed = Table.TransformColumnTypes(EventLog, {{"ProductionOrderNumber", type text}, {"ActivityName", type text}, {"EventTime", type datetime}, {"SourceSystem", type text}, {"LastDataUpdate", type datetime}, {"ProductionOrderStatus", type text}, {"PlannedStartDate", type datetime}, {"PlannedEndDate", type datetime}, {"UserId", type text}, {"ProductionPlant", type text}, {"ProductNumber", type text}, {"ProductionType", type text}, {"ActualQuantity", type number}, {"ProductionPriority", type text}}),
Sorted = Table.Sort(Typed, {{"ProductionOrderNumber", Order.Ascending}, {"EventTime", Order.Ascending}, {"ActivityName", Order.Ascending}})
in
Sorted ¿Listo para comenzar?
Con este Template completo, dispone de todo lo necesario para comenzar a extraer y analizar sus datos de planificación de producción. Empiece hoy mismo a optimizar sus operaciones para alcanzar la máxima eficiencia.
Alcance la máxima eficiencia: agilice hoy la planificación de producción
Localice los cuellos de botella y reduzca un 30 % o más el tiempo de ciclo de producción.
No necesita tarjeta de crédito; configuración en minutos.