Ejemplos: Configurar una Generación de BOD de Orden de producción para ejecutarla en segundo plano
El formulario Referencias cruzadas de salida de documento réplica incluye tres definiciones proporcionadas para generar BODs de orden de producción desde la aplicación. Las definiciones tienen distintos métodos y filtros. Los métodos son:
- TriggerProductionOrderSyncSp - incluir todas las órdenes de producción
- TriggerProductionOrderSyncSp - incluir todas las órdenes de producción que se acaban de programar
- TriggerProductionOrderSyncSp - incluir todas las órdenes de producción que han cambiado.
Las definiciones con "BG" en el nombre de método se pueden ejecutar como tareas en segundo plano. Estas definiciones de muestra no incluyen los criterios de filtro para el intervalo de fechas. Puede añadir filtros de fecha después de que se ejecute por primera vez la tarea en segundo plano, cuando aparece una fecha en la Última fecha de publicación de manual.
Ejemplo 1
Al usar la definición que contiene el método TriggerProductionOrderBGSyncSp y los siguientes filtros, todos los nuevos trabajos creados se actualizan después de la ejecución de la planificación o el programa. El filtro obtiene la Orden de producción después de la primera actualización del programa. El trabajo se introdujo con fechas. El planificador se ejecuta por primera vez y actualiza las fechas de inicio y finalización.
Utilice esta combinación de filtros para limitar los registros de Orden de producción:
- Filtre para obtener solo trabajos firmes. Esto recoge los cambios de programa:
Estado = 'Firme'
También puede filtrar para obtener solo trabajos liberados y recoger cambios materiales y de mano de obra para hacer informes reales.
- Filtre para obtener cualquier registro que haya cambiado desde la última vez que se ejecutó la tarea en segundo plano:
RecordDate > dbo.GetReplDocLastManualPublishDate('SP!', 'Invoke', 'TriggerProductionOrderBGSyncSp')
- Filtre para obtener trabajos que han sido creados (trabajos con estado de firme) que no han sido programados anteriormente:
CreateDate > dbo.GetReplDocLastManualPublishDate('SP!', 'Invoke', 'TriggerProductionOrderBGSyncSp')
- Puede añadir un filtro para ciertos elementos:
Item BETWEEN 'item number' AND 'item number' AND NOT Item = 'item number'
- Puede añadir un filtro para ciertos códigos de producto:
Product_code IN ('Product_code1','Product_code2')
Ejemplo 2
La definición que contiene el método TriggerProductionOrderBGSchSyncSp puede usar los siguientes filtros, que son específicos de un cambio programado dentro de una barrera de tiempo determinada por el usuario (una ventana de planificación de un mes en el pasado y un mes en el futuro).
- Filtre para obtener solo trabajos firmes. Esto recoge los cambios de programa:
Estado = 'Firme'
- Filtre para obtener cualquier registro cambiado desde la última vez que se ejecutó la tarea en segundo plano:
RecordDate > dbo.GetReplDocLastManualPublishDate('SP!', 'Invoke', 'TriggerProductionOrderBGSchSyncSp')
- También filtre para obtener trabajos que se han cambiado desde la última fecha de inicio programada de Orden de producción
o desde la fecha de inicio programada actual dentro de la barrera de tiempo:
MONTH(StartDate) BETWEEN MONTH(GETDATE() - 1) AND (MONTH(GETDATE())+ 1) OR MONTH(LastStartDate) BETWEEN MONTH(GETDATE() - 1) AND (MONTH(GETDATE()) + 1)
- Puede añadir un filtro para ciertos elementos:
Item BETWEEN 'item number' AND 'item number' AND NOT Item = 'item number'
- También puede añadir un filtro para ciertos códigos de producto:
ProductCode IN ('Product_code1','Product_code2')
- Puede añadir un filtro para que no se creen BODs que fueron creadas en la primera ejecución programada:
CreateDate < dbo.GetReplDocLastManualPublishDate('SP!', 'Invoke', 'TriggerProductionOrderBGSyncSp')