Resolución de problemas
Resumen
En este apartado, encontrarás instrucciones para solucionar paso a paso los problemas más habituales de Production Scheduler.
Requisitos previos
La siguiente tabla muestra los elementos que requiere cada nivel de parche.
Entrega de Sage X3/Production Scheduler: lista de los elementos necesarios para Sage X3 por versión de Sage X3
Nivel de parche de Sage X3 | Versión Production Scheduler | Versión datos de mapeo de transformación |
Atributo único mapeo |
---|---|---|---|
V11.0.1 |
6.0.1651 |
ProductionSchedulerMappingData-V2 |
Todos los registros |
V11.0.2 |
6.0.1651 |
ProductionSchedulerMappingData-V2 |
Todos los registros |
V11.0.3 |
6.0.1651 |
ProductionSchedulerMappingData-V2 |
Todos los registros |
V11.0.4 |
6.0.1705 |
ProductionSchedulerMappingData-V3 |
POPSENVDET - MATFIXDAT |
V11.0.5 |
6.0.1723 |
ProductionSchedulerMappingData-V4 |
POPSENVDET - CUSVAL |
V11.0.6 |
6.0.1739 |
ProductionSchedulerMappingData-V5 ProductionSchedulerMappingData-V6 |
POPSENVDET - PRVWOID POPSENVUPDEDIT - STROPEDT |
V11.0.10/V12.0.3 |
6.0.1829 |
ProductionSchedulerMappingData-V6 |
POPSENVUPDEDIT - STROPEDT |
V11.0.11/V12.0.15 |
6.0.1842 |
ProductionSchedulerMappingData-V6 |
POPSENVUPDEDIT - STROPEDT |
Consulta el Anexo 1 para comprobar la versión de Production Scheduler.
Consulta el Anexo 2 para comprobar la versión del mapeo.
Resolución de problemas. Ejemplo 1: planta sin inicializar
Hay varios motivos por los que una planta puede no inicializarse en Production Scheduler. A continuación, se indican los motivos más comunes.
Este ejemplo hace referencia a un error genérico, de modo que hay que consultar la información detallada de la traza.
- Comprueba la hora del error y consúltala en la traza. En este ejemplo, es 10:16:16 del 2/2/2018:
- A partir de la hora del error, se detecta otro error (Agent cannot be null) y un aviso (Unexpected property sev/mess in environment).
- El mensaje importante es Unexpected property (Propiedad inesperada).
Esto ocurre cuando Production Scheduler recibe información que no sabe procesar.
- En este mensaje, sev y mess son indicadores importantes.
Estos mensajes de error proceden de Sage X3, pero no el error en cuestión.
- El mensaje importante es Unexpected property (Propiedad inesperada).
- Hay que utilizar otra herramienta para mostrar el error que se ha producido en Sage X3.
- Con Postman, puedes consultar los elementos mess y sev que no reconoce Production Scheduler. En este caso, el mensaje de error hace referencia a un error de transformación.
Este tipo de error sugiere un problema de mapeo.
Ve al apartado Problema con los datos de mapeo.
Identificación del problema
- Comprueba la pestaña Summary (Resumen) del Production Scheduler Manager.
- Si una planta no se inicializa en Production Scheduler, puede tratarse de un error o de una advertencia sobre Production Scheduler ERP Adapter.
La información de configuración no es válida
- Para detectar un error de conexión, primero comprueba la pestaña Configuration Manager.
- El icono de advertencia (rojo) indica que Production Scheduler no consigue establecer la conexión con Sage X3 y que, por lo tanto, los datos proporcionados son incorrectos.
- ¿Tu nombre de usuario y/o tu contraseña de Windows (o Sage X3) son válidos?
- ¿El nombre del servidor es correcto?
- ¿Los campos REST services port (número de puerto de Sage X3) y Instance (nombre del dossier de Sage X3) son correctos?
Sin acceso a Sage X3 (proceso de inicio)
Este problema es similar al anterior (La información de configuración no es válida). No obstante, el motivo es diferente.
- En primer lugar, abre la pestaña Configuration Manager (Administrador de configuración) para saber si es un error de conexión.
- El icono de advertencia (rojo) indica que Production Scheduler no consigue establecer la conexión con Sage X3.
- El icono informativo (naranja) indica que Production Scheduler no consigue verificar la conexión al servidor.
Es posible que Sage X3 no esté disponible porque se está iniciando.
Corrige la secuencia de inicio de los servidores para que el servidor de Production Scheduler sea el último en iniciarse.
Un usuario no tiene acceso al dossier de Sage X3 indicado (LOCALDEV). Production Scheduler no puede recuperar los datos.
Conexión a Sage X3 sin inicialización
Tras verificar la información de conexión, Production Scheduler puede comunicarse con Sage X3. No obstante, las plantas siguen sin inicializarse.
- Para comprender el motivo, abre la pestaña Logging (Traza) de Production Scheduler.
- Una vez lanzado el servicio de Production Scheduler, puedes seleccionar la traza (log) que quieres visualizar.
- Haz clic en Open/Refresh log (Abrir/actualizar traza).
- La traza se abre. No obstante, solo se muestra la información anterior.
- Para mostrar los datos más recientes, marca la casilla Follow tail (Mostrar final).
- Para mostrar los datos más actualizados, marca la casilla Auto refresh (Actualización automática). La traza se actualiza automáticamente con los nuevos datos.
Aviso: No se puede navegar en la traza cuando la casilla Auto refresh está marcada. - La traza no muestra los errores, solo información general.
- Para consultar rápidamente los errores, abre la pestaña Error list (Lista de errores). Esta pestaña muestra una breve descripción de los errores.
- Haz clic en el error para más información.
- Haz clic en las comillas dobles (>>) para obtener detalles más precisos.
Es preferible seleccionar PlannerOneApplication.log, que es la traza más reciente. Esta traza contiene toda la información, no solo los errores.
Esta información debería ser suficiente para determinar el origen del problema.
Problema con los datos de mapeo
Una vez que se identifica un problema a nivel de los datos de mapeo, la solución es sencilla.
Problema en el código
Si una planta no se inicializa en Production Scheduler, puede deberse a un problema en el código. Este tipo de problema es poco común, ya que la mayoría de los problemas de código ya se han corregido.
No obstante, puede haber problemas de este tipo que aún no se hayan detectado.
- Los problemas de código pueden parecer similares a los problemas de mapeo, puesto que generan el mismo aviso (sev/mess unexpected property in the log file). El proceso de identificación del problema es el mismo.
Puedes utilizar el anexo Utilizar la aplicación Postman para identificar problemas.
- El mensaje de error generado no está lo suficientemente detallado.
Puedes utilizar Postman y generar directamente una petición interna a Sage X3 para obtener más información.
De esta forma, obtienes el error exacto, además del script y la línea en la que se produce.
Resolución de problemas. Ejemplo 2: sin acceso a Production Scheduler desde Sage X3
Normalmente, se puede acceder a Production Scheduler desde una función de Sage X3, como Production Scheduler (FUNPSSCH) (Producción > Production Scheduler > Production Scheduler).
Si este acceso no funciona, hay que analizar el problema y buscar el motivo.
Este apartado describe cómo detectar y solucionar las causas probables de un problema de conexión a Production Scheduler.
En este ejemplo, el número de puerto de la instancia es 9990.
Comprueba el Production Scheduler Manager. Como puedes observar, debería ser 9120.
Servicio de publicación World Wide Web no operativo
Para comprobar si funciona el servicio de publicación World Wide Web, abre el programa Servicios.
Comprueba el estado del servicio de publicación World Wide Web. Debería ser En curso de ejecución.
Sitio web de Production Scheduler interrumpido
Si aparece el mensaje de error Cannot get or validate token, el sitio web de la instancia probablemente no está en ejecución.
Comprueba el Administrador de servicios IIS del sitio web de la instancia.
Servicio Production Scheduler interrumpido
Si vuelve a aparecer el error Cannot get or validate token, el servicio Production Scheduler probablemente no está en ejecución.
- Comprueba la pestaña Summary del Production Scheduler Manager.
- Si el Servicio de Windows está On error (rojo), comprueba la pestaña Windows service para ver si hay un problema o si el servicio se está ejecutando.
- Selecciona el servicio correspondiente para esta instancia y haz clic en Select.
Parámetro PSCLIENTID no configurado
Si aparece el siguiente mensaje informativo "Unable to obtain authentication token", Sage X3 no puede crear la ficha de autentificación que debe enviar a Production Scheduler.
Significa que el ID cliente no se ha introducido o no es válido.
- Comprueba el parámetro PSCLIENTID - ID cliente Production Scheduler (capítulo EXAPP, grupo MIS).
Asegúrate de que en la Lista de aplicaciones conectadas de la función Aplicaciones conectadas (Administración > Administración > Parametrización > Autentificación > Aplicaciones conectadas) el ID cliente corresponde al de la instancia.
Datos de la aplicación conectada incorrectos
Ahora aparece el siguiente error: Production Scheduler took too long to respond.
Comprueba que la URL es correcta en la Lista de aplicaciones conectadas de la función Aplicaciones conectadas (Administración > Administración > Parametrización > Autentificación > Aplicaciones conectadas).
Resolución de problemas. Ejemplo 3: flujo de datos de Sage X3 a Production Scheduler
Una vez que todo está correctamente configurado, se pueden enviar los datos de Sage X3 a Production Scheduler. No obstante, es posible que algunas órdenes de fabricación no aparezcan en Production Scheduler.
Este apartado explica cómo detectar y solucionar este tipo de problemas.
Pautas generales sobre órdenes de fabricación ausentes
Si faltan órdenes de fabricación en Production Scheduler y es difícil determinar cuáles están causando el problema:
Suprime todas las órdenes de fabricación de Production Scheduler y añádelas de nuevo de una en una.
Si hay demasiadas, añádelas en pequeños lotes para reducir el número de órdenes de fabricación que pueden estar causando el problema.
Datos no válidos en Sage X3
Si faltan órdenes de fabricación en Production Scheduler, algunos datos de Sage X3 pueden ser incorrectos.
- Comprueba la pestaña Summary del Production Scheduler Manager.
- Production Scheduler Manager indica que todos los elementos están en Ready (verde).
- Los errores del servicio de Windows se muestran en una lista.
-
Para analizar estos errores del servicio de Windows, consulta la pestaña Error list.
Ejemplo (2)Nuestra lista de errores contiene las referencias 000119 y WO000120. Son las órdenes de fabricación que faltan.
- Consulta los detalles del error.
- Comprueba si las órdenes de fabricación utilizan el recurso (centro de trabajo) que falta.
- Comprueba si el centro de trabajo que falta es válido.
Es normal que el elemento Resource Planner ERP Adapter permanezca en Unknown (signo de interrogación).
Analízalos.
Este ejemplo señala 26 errores del servicio de Windows.
El detalle indica que falta un recurso: Resource does not exist.
El ejemplo señala que un recurso llamado MISSING no existe.
Efectivamente, la orden de fabricación que falta, WO000119, utiliza el centro de trabajo MISSING.
En este ejemplo, el centro de trabajo MISSING no aparece en la lista.
Por eso se produce un error en Production Scheduler.
- Debes comprobar todas las órdenes de fabricación que utilizan el centro de trabajo que falta.
- Si las demás órdenes de fabricación que faltan no utilizan este centro de trabajo, debes examinar el error más detenidamente.
- Comprueba todos los centros de trabajo que utiliza la orden de fabricación.
En este ejemplo, se genera el mismo mensaje de error que en la orden fabricación WO000120.
Comprueba la orden de fabricación. No utiliza el centro de trabajo MISSING. Hay que seguir investigando.
¿El centro de trabajo que falta está definido como un centro de trabajo de reemplazo?
En este ejemplo, MISSING es un centro de trabajo de reemplazo.
Sage X3 utiliza todos los centros de trabajo de reemplazo como alternativas en la planificación. El error se repite.
Entre todas las órdenes de fabricación que faltan, identifica las que presentan el mismo problema y cambia los centros de trabajo.
Ejemplo (8)Hay que modificar los centros de trabajo de las dos órdenes de fabricación que causan el problema: WO000119 et WO000120.
![]()
Otros problemas de datos
Los problemas en la inicialización de la planta pueden deberse a algunos errores de datos. Esto puede provocar errores imperceptibles en la traza.
- Consulta la traza en el Production Scheduler Manager.
- Puedes utilizar el anexo Utilizar la aplicación Postman para identificar problemas.
- Para determinar la orden de fabricación que ha causado el problema, suprime todas las órdenes de fabricación y añádelas de nuevo de una en una.
En este ejemplo, se utiliza Postman para comprobar Sage X3.
Se obtiene la traza completa que indica la línea de código en la que se encuentra el error.
Es un problema conocido.
En este ejemplo, la orden de fabricación WO000126 tiene un problema. Todas las operaciones están cerradas, pero la orden de fabricación continúa activa.
Para solucionar el problema, suprime la orden de fabricación de Production Scheduler (no hay que realizar ningún escalonamiento, ya que las operaciones han finalizado y el usuario no se ve afectado) o cierra la orden de fabricación.
Es probable que tengas que suprimir la orden de fabricación que causa problemas en Production Scheduler.
También puedes cerrar la orden de fabricación.
- Consulta de nuevo la traza en el Production Scheduler Manager.
- Puedes utilizar Postman para obtener más información.
- Para determinar la orden de fabricación que ha causado el problema, suprime todas las órdenes de fabricación y añádelas de nuevo de una en una.
- Haz clic en Escalonamiento para consultar los datos del escalonamiento.
- Haz clic en Gráfico para mostrar el gráfico.
- Haz clic en Mostrar la lista para consultar la lista de las operaciones.
- Comprueba la hora a la que debe finalizar la operación.
Este ejemplo parece idéntico al anterior. Postman devuelve los mismos resultados.
Se obtiene la traza completa que indica la línea de código en la que se encuentra el error.
Es un problema conocido.
En este ejemplo, la orden de fabricación WO000127 es la que causa el problema.
Este error se produce por una diferencia entre la capacidad del centro de trabajo y la capacidad por defecto de la planta.
El final de la operación está previsto para las 26:30. Al realizar la conversión al formato fecha/hora, se produce un error.
Este error se produce por una diferencia entre la capacidad del centro de trabajo, SEATTLE en este ejemplo, y la capacidad por defecto de la planta, USA10 (8 horas) en este ejemplo.
Esta solución garantiza que el esquema horario asociado al esquema semanal sea coherente con la capacidad.
En este ejemplo, el centro de trabajo es SEATTLE. El esquema semanal es SC6.
- Si consultamos los detalles del esquema semanal:
- La capacidad diaria es de 24 horas. No obstante, no se ha indicado ningún esquema horario.
- El esquema horario por defecto STD indicado en el parámetro DEFDIH - Esquema horario por defecto (capítulo GPA, grupo LOA) es el que se aplica en este caso.
- El esquema horario por defecto STD solo tiene una capacidad de 8 horas.
Esto explica el problema del cálculo horario.
- Introduce un esquema horario con una capacidad correcta.
- Añade el esquema horario al esquema semanal.
Problemas de mapeo
Los problemas de mapeo no impiden el envío de una orden de fabricación a Production Scheduler. No obstante, sí pueden impedir la transferencia de datos.
- Controla los datos que se envían a Production Scheduler. Postman se utiliza para consultar los datos de Sage X3.
- Utiliza Postman de nuevo, pero esta vez con api1 en lugar de la agrupación.
- Comprueba los datos de mapeo asociados al código de mapeo POPSENVDET.
En este ejemplo, se vuelve a utilizar una marca de tiempo (pero el formato es el de Sage X3).
Una vez recuperados los datos, puedes observar que la fecha es fija.
Sage X3 devuelve los datos correctos, al contrario que la agrupación, de modo que hay un problema de mapeo.
El valor FIXED aparece, pero el valor FIXDAT no.
Añade los datos de mapeo.
- Vuelve a transferir la orden de fabricación.
Huso horario no parametrizado/incorrecto
Si se comparan los detalles con el problema anterior (Problemas de mapeo), se puede producir un problema con el huso horario.
Este ejemplo contiene una operación en la que la fecha y la hora de inicio son 26/02/2018 09:00:00.
La hora de inicio de la orden de fabricación indicada en los datos de escalonamiento son las 08:00:00.
Parece que hay un problema con el huso horario.
- El huso horario se determina con el parámetro PSTIMEZONE - Huso horario del servidor (capítulo EXAPP, grupo MIS) desde una lista de selección.
El huso horario parametrizado en PSTIMEZONE - Huso horario del servidor debe ser el del servidor.
Ejemplo (1)En este ejemplo, el huso horario está establecido en la hora estándar GMT (UTC+0). Esta información es correcta con respecto a la ubicación del usuario en este ejemplo.
No obstante, el servidor en el que está instalado Production Scheduler se encuentra en Francia, de modo que hay que modificar el huso horario.
Hay un problema conocido relativo a la visualización de las operaciones y los husos horarios.
En este ejemplo, la hora de inicio correcta de la operación son las 08:00:00. No obstante, la operación parece que empieza a las 07:00:00 en el diagrama de Gantt. El diagrama se muestra en el navegador y utiliza su huso horario en lugar del uso horario del servidor.
Este problema ha surgido con 3DS, pero se incluye en esta guía para informar y evitar llamadas de soporte.
Problemas en el código
Si se comparan los detalles con el problema anterior (Problemas de mapeo), se puede producir un problema con el huso horario.
En este ejemplo, una nueva orden de fabricación tiene un tiempo de espera de 3 horas.
La orden de fabricación está en Production Scheduler.
La orden de fabricación no tiene tiempo de espera.
- Al igual que anteriormente con la fecha fija, hay que determinar por qué no se ha enviado la duración de espera a Production Scheduler.
- Sigue el mismo procedimiento y utiliza Postman para determinar la causa del error.
- Para limitar los datos devueltos, utiliza una marca de tiempo.
- Para determinar cuál es la marca de tiempo adecuada, puedes utilizar la función En columnas (GSTDCOL) (Desarrollo > Utilidades > Mantenimientos > En columnas) para comprobar la fecha y la hora de actualización en la orden de fabricación.
- Para obtener la fecha y la hora, selecciona OK.
Asigna el valor Mostrar a la columna UPDDATIM y aplica el campo Selección a la orden de fabricación.
- Convierte la fecha y la hora de la solicitud de agrupación en una marca de tiempo.
Puedes utilizar un sitio web para convertir la fecha y la hora.
- Ahora dispones de la marca de tiempo, que forma parte de la clave para la solicitud de agrupación en Postman.
- Comprueba los resultados de Sage X3.
En este ejemplo, la marca de tiempo es 1518082920.
Este elemento forma parte de la clave para la solicitud de agrupación en Postman.
En los datos obtenidos, timeOutResourceAfter contiene el valor cero.
Esto significa que puede haber un problema de mapeo.
En este ejemplo, define la marca de tiempo para que sea una fecha y una hora de Sage X3, como en la función En columnas (GSTDCOL).
Se obtienen estos resultados.
En este ejemplo, WAITIM también contiene el valor cero. No se ha detectado ningún problema de mapeo.
Si no hubiera ninguna línea WAITIM en los resultados, podría faltar un valor en la representación. No obstante, al utilizar la propiedad WAITIM, aunque el valor sea incorrecto, hay un elemento en el código que no devuelve el tiempo de espera.
En este ejemplo, has modificado manualmente el código para que no se muestre el tiempo de espera, pero puede haber un problema de código que cause el envío de datos incorrectos a Production Scheduler.
Se suprimen las modificaciones realizadas en el código.
Corrige el código y vuelve a transferir la orden de fabricación.
Resolución de problemas. Ejemplo 4: flujo de datos de Production Scheduler a Sage X3
Los errores más complejos son los relativos a la transferencia de datos entre Production Scheduler y Sage X3. Son difíciles de reproducir porque no suelen mostrarse los datos enviados por Production Scheduler. Asimismo, el registro de Production Scheduler aporta poca información, ya que devuelve un simple error http de tipo 500.
Un error http de tipo 500 no proporciona ninguna indicación sobre el error. Por lo tanto, debes utilizar el registro de la aplicación Sage X3, y en algunos casos Wireshark, para determinar la causa del problema. A continuación, se indican los motivos más comunes.
Datos de la orden de fabricación inexistentes
Los datos publicados en Production Scheduler a veces están desincronizados con Sage X3. Por lo tanto, la publicación intenta actualizar datos que no existen.
- Si se autoriza el registro en la planta, asignando el valor Sí al parámetro PSLOGTRACE - Traza Production Scheduler (capítulo EXAPP, grupo MIS), puedes comprobar si se han producido errores en la actualización.
- En la función Lectura seguimientos (LECTRACE) (Informes > Informes > Lectura seguimientos), puedes consultar las trazas que se han generado en la actualización:
- Abre el último fichero y comprueba las últimas entradas.
Borra las órdenes de fabricación indicadas e intenta realizar otra publicación.
Nuestro ejemplo comienza por el prefijo POPSUPD, seguido del código de la planta USA10 y de la hora 12:23:04.
Abre el último fichero (POPSUPD122304) y comprueba las últimas entradas.
Esto significa que no se ha podido actualizar una operación porque no se ha encontrado un registro.
Borra esta orden de fabricación e intenta realizar otra publicación.
Orden de fabricación bloqueada (en uso)
Este problema es particularmente difícil de reproducir porque no se puede modificar una orden de fabricación que está en Production Scheduler. No obstante, la orden se actualiza en el seguimiento de fabricación, de modo que puede estar bloqueada cuando la actualización de Production Scheduler intenta acceder a ella.
Es un problema temporal. La siguiente publicación debería ejecutarse correctamente.
Este ejemplo sigue el mismo procedimiento que el anterior (Datos de la orden de fabricación inexistentes) para examinar la traza de las aplicaciones.
En este ejemplo, no se ha podido actualizar una operación porque no se ha encontrado un registro.
Hay que realizar otra publicación y esperar que ya no esté bloqueado.
Mapeo no válido
Si Sage X3 no recibe los datos tras la publicación en Production Scheduler, hay que comparar el mapeo y los resultados obtenidos en Production Scheduler.
- Utiliza Wireshark para recuperar los datos publicados por Production Scheduler.
- Utiliza la función Mapeo transformación JSON-X3 para comparar los valores del fichero JSON con el código de mapeo POPSENVUPDEDIT.
- Ajusta la propiedad no válida del fichero de salida de Production Scheduler al valor del mapeo.
Corrige la propiedad no válida.
Al inicio de este ejemplo, se muestra un extracto de los resultados procedentes de Production Scheduler.
No obstante, hay un comentario (comment) que desaparece cuando se actualiza la orden de fabricación en Production Scheduler. Sage X3, por lo tanto, no lo registra.
Hay que comparar los resultados con el mapeo.
- Abre la función Mapeo transformación JSON-X3 y selecciona el código de mapeo POPSENVUPDEDIT.
- Comprueba el mapeo de la ruta de clase JSON.
- No hay ninguna propiedad comment, sino comments.
Por lo tanto, la ruta de clase de comment es workOrders.operations.markers.
Esta incoherencia es la que causa el problema.
Hay que reemplazar la propiedad del mapeo por comment.
De esta forma, deberíamos obtener los comentarios en Sage X3 y, a continuación, en Production Scheduler.
Problema en el código
Aunque se hayan resuelto todos los problemas relativos a la publicación, puede producirse otro problema en el código.
Para identificar estos problemas, consulta la traza de la aplicación.
- Autoriza el registro de la aplicación asignando el valor Sí al parámetro PSLOGTRACE - Traza Production Scheduler (capítulo EXAPP, grupo MIS).
Consulta la última traza que comienza por POPSENVUPD para ver si se han producido errores en el proceso de actualización.
- Este ejemplo sigue el mismo procedimiento que el anterior (Datos de la orden de fabricación inexistentes) para examinar la traza de las aplicaciones.
- Consulta la última traza que comienza por POPSENVUPD.
-
La última entrada es Actualización operación MFGNUM = WO000119.
- Comprobamos el fichero de traza anterior.
-
La última entrada es Fin de procesamiento.
El proceso de actualización no se ha realizado correctamente, ya que el mensaje Fin de procesamiento no se ha mostrado en el fichero de traza anterior.
Esto indica un problema en el código, ya que el proceso no ha finalizado.
Huso horario no parametrizado/incorrecto
Si las horas de inicio y fin de las órdenes de fabricación publicadas de Production Scheduler a Sage X3 son distintas a las de Production Scheduler, es posible que el parámetro de huso horario no esté, o esté incorrectamente, parametrizado.
Sigue el procedimiento De Sage X3 a Production Scheduler - Huso horario no parametrizado/incorrecto para corregir el problema.