Índice
"Aviso de alerta de riesgo: tome cuidado al utilizar el parámetro de configuración con la clave Security=0, porque esto ocasionará que las integraciones (API) no exijan autenticación, consecuentemente, los datos de su entorno podrán consultarse sin ningún control de autorización."
Âncora | ||||
---|---|---|---|---|
|
...
Âncora | ||||
---|---|---|---|---|
|
El objetivo de la Integración PC Factory (software MES de la empresa PPI Multitask) VS. PROTHEUS es poner a disposición de los clientes TOTVS una nueva opción para control de la producción por medio de la automatización de los procesos, permitiendo la actualización y extracción de información de forma on-line para simplificar el flujo de los clientes.
...
Âncora | ||||
---|---|---|---|---|
|
Permite la integración entre el módulo PCP y SIGASFC del Protheus con el MES PC-Factory de la PPI-Multitask, que tiene como objetivo controlar los apuntes de las órdenes de producción. El Protheus tiene como responsabilidad la creación de las órdenes de producción y el PC-Factory, los apuntes.
La integración considera las siguientes rutinas y procesos en la ETAPA 1:
La integración considera las siguientes rutinas y procesos en la ETAPA 2:
La etapa 2 considera el consumo de los componentes, movimientos efectuados por el PC-Factory y saldos en stock. También considera el sistema SIGASFC - Piso de fábrica.
Log de importación: Permite consultar el proceso de integración de los apuntes de producción y paradas y rechazos enviados del PC-Factory al Protheus.
Âncora | ||||
---|---|---|---|---|
|
Para la versión 12 del Protheus debe aplicarse el paquete de actualizaciones a partir de la versión 12.1.10 en la Etapa I.
También es posible utilizar en la versión 11.80.14 para la Etapa I y 11.80.17 para la Etapa II. Debe ejecutarse la actualización del diccionario con el programa U_UPDPCP34.
La Build debe ser igual o superior a 7.00.131227A y la fecha 08/09/2014.
Dirección de IP y puerto liberado para ejecución del WebService. Estos datos se utilizarán en el archivo APPSERVER.INI en la sesión WEBSERVICE.
Debe actualizar el archivo APPSERVER.INI en la sesión WEBSERVICE.
Para configurar un WebService debe verificarse el siguiente documento de configuración: : http://tdn.totvs.com/pages/viewpage.action?pageId=6064937
Ejemplo:
;CONFIGURACIÓN WEBSERVICE
...
Enable=1
Environment=mssqlserver
Conout=1
...
PrepareIn=99,01
NameSpace=http://10.80.62.219:8090
URLLocation=http://10.80.62.219
[HTTP]
enable=1
port=8090
...
JOBS=JOB_WS_9901
[10.80.62.219:8090]
ENABLE=1
Trace=1
PATH=C:\TOTVS 11\Microsiga\Protheus_Data\web\ws
ENVIRONMENT=mssqlserver
INSTANCENAME=WS
RESPONSEJOB=JOB_WS_9901
DEFAULTPAGE=wsindex.apw
[JOB_WS_9901]
SECURITY=1
TYPE=WEBEX
ENVIRONMENT=mssqlserver
INSTANCES=1,20
SIGAWEB=WS
INSTANCENAME=WS
ONSTART=__WSSTART
ONCONNECT=__WSCONNECT
;FIM CONFIGURACAO WEBSERVICE
Informações | ||
---|---|---|
| ||
El nombre del Webservice que se utilizará en el TOTVSMES es el WSPCP. No se utiliza el EAI. |
También debe actualizarse en el archivo APPSERVER.INI en la sesión PROXY (si existiera proxy configurado)
[PROXY]
Enable=1
Server=proxy-jv.jv01.local
Port=8080
User=XXXXX
Password=*******
Nota | ||
---|---|---|
| ||
Existe un wizard para facilitar la creación de los webservices Protheus. Verifique en: http://tdn.totvs.com/display/framework/Como+iniciar+um+servidor+de+Webservices+no+Protheus |
Âncora | ||||
---|---|---|---|---|
|
Versión Protheus | Versión PC-Factory | Contenido |
---|---|---|
PCP PROTHEUS 11.80.14, 12.1.10 | Etapa 1 | |
PCP PROTHEUS 11.80.18, 12.1.14 | 4.0.1713.2002 |
|
PCP - PROTHEUS 11.80.17, 12.1.16 | 4.0.1713.2002 |
|
PCP - PROTHEUS 11.80.17, 12.1.16 | 4.0.1714.1002 |
|
PCP - PROTHEUS 11.80.21, 12.1.16 | 4.0.1714.1002 |
|
PCP - PROTHEUS 12.1.19 |
| |
PCP - PROTHEUS 12.1.28 |
|
Âncora | ||||
---|---|---|---|---|
|
El siguiente checklist tiene como objetivo validar si el TOTVS MES está adherente al entorno actual del cliente, considerando que existen situaciones no consideradas en la integración.
Situaciones no atendidas o atendidas parcialmente por la Integración:
Situación en el ERP | Situación Integración | Observación |
---|---|---|
Apuntes realizados en el ERP que se integrarán al PCF | No atiende | Los apuntes realizados directamente en el ERP no se integran con el TOTVS MES, ya sean de de producción o de parada. |
Finalización de órdenes de forma automática | No atiende | Cuando se finaliza la orden directamente en el ERP, essa información no se integra con el TOTVS MES. |
Informe solamente el apunte de tiempo, sin generar cantidad en el SFC | Atiende | El ERP con el SFC acepta el apunte de producción únicamente de tiempo sin cantidad, lo contrario, no. |
Tiene código de ubicación "blanca" | Atiende parcial | El PCF no acepta ubicación (dirección) blanca (nulo). |
Realizar apunte solamente en el PCP (módulo de Producción) | Atiende | El apunte solamente en el PCP ocurre en el ERP cuando el módulo de SFC está deshabilitado. De lo contrario, todos los apuntes se realizará en el SFC. |
Tiene más de una sucursal que desea integrar con una única instalación del TOTVS MES | No atiende | La integración TOTVS MES, no está preparada para tratar más de una sucursal. En el TOTVS MES, es necesario tener una instancia (banco) para cada nuevo establecimiento. |
Utiliza el concepto de informe repetitivo | No atiende | Órdenes de producción con informe por ítem no se integrarán. Actualmente, el TOTVS MES tiene la función de apunte repetitivo, sin embargo, aún no se evaluaron los conceptos para la integración entre los sistemas. |
Utiliza el consumo back-flush de los componentes al realizar el apunte de la producción | Atiende | Es posible realizar el consumo vía back-flush, bajando de acuerdo con ingeniería o consumo-real. |
Modificación de órdenes en el TOTVS MES | No atiende | Las órdenes modificadas en el TOTVS MES no se actualizarán en el ERP. |
Control de ubicación | No atiende | El control de ubicación en el apunte no se realiza de forma automática. |
Apunte sin operación | No atiende | Apuntes solamente por operación. |
Reversión parcial | No atiende | No es posible realizar reversión parcial de apuntes. |
Âncora |
---|
...
|
...
|
Instalación/Actualización
La integración PCP Protheus vs. PC-Factory PPI-Multitask se activa por medio de los siguientes pasos:
La opción Probar verifica si es posible realizar la conexión con el WebService informado en el campo Camino. Esta opción tiene dos devoluciones:
Para los clientes que desean utilizar administrador de conexión WSDL en el envío de mensajes en la Integración TOTVSMES, deben modificarse a TRUE los campos MV_COPPI
Al marcar el campo Genera XML se generarán los XML de los mensajes intercambiados. Si no estuviera marcado se grabará solamente en tablas. La generación de los archivos no es obligatoria. Sirve como una herramienta útil para encontrar problemas y podrá grabarse en el directorio de XML enviados con éxito o XML pendientes.
Los nombres de los archivos seguirán este estándar:
OK_<MSJ><FECHAHORA><REGISTRO>
PEND_<MSJ><FECHAHORA><REGISTRO>
ERR_<MSJ><FECHAHORA><REGISTRO>
Donde: OK - Si el mensaje se entrega sin problemas
PEND- Si el mensaje no se hubiera enviado
ERR - Si el mensaje se hubiera enviado, sin embargo devolvió error.
MSJ - Nombre del mensaje. Ej.: Ítem, Wharehouse, Workcenter, etc.
FECHAHORA: Fecha y hora del envío
REGISTRO: Código del registro que se está enviando. Ej.: Código del ítem, número de la orden, etc.
Para cada archivo movido (producto, local de stock, recurso, herramienta, máquina, procedimiento, estructura, ubicación, movimientos, saldos y orden de producción) habrá una carpeta. En cada carpeta será posible elaborar filtros y definir parametrizaciones. Estos filtros se utilizarán en las rutinas que enviarán información al PC-Factory, permitiendo seleccionar lo que debe enviarse. Se mostrarán los campos de la tabla seleccionada (carpeta) y operadores para que se elaboren los filtros. Si no hubiera ningún filtro registrado, todo registro incluido, modificado o borrado se enviará al PC-Factory. Para elaborar los filtros el usuario debe conocer el diccionario de datos, pues frecuentemente se utiliza el nombre de las tablas y de los campos.
Ejemplo:
Elaborar un filtro para que solamente se envíen los productos que se clasifiquen como Producto terminado. El filtro será: B1_TIPO = "PA"
El envío de información del PCP Protheus al PC-Factory PPI-Multitask ocurre en las siguientes transacciones:
...
El envío de información del PC-Factory PPI-Multitask al Protheus ocurre en las siguientes transacciones:
Aviso | ||
---|---|---|
| ||
Los clientes que tienen contrato Cloud, deben solicitar que el IP y el Puerto informados en el campo camino del PCPA109 se liberen en la red del Cloud para el envío y recepción de las solicitudes SOAP. Esta liberación debe solicitarse directamente al equipo de Cloud. Si esta liberación no se realiza, al intentar efectuar el envío/devolución de los mensajes, ocasionará un error. |
El grupo TOTVS representado por sus marcas administrará las demandas de evolución de los layouts y otros ajustes, acordando con los solicitantes el plazo de liberación del release.
Todas las evoluciones programadas deben discutirse y aprobarse por las marcas antes de iniciar el desarrollo y solamente se desarrollarán si se encuentran en concordancia con las marcas y alineadas con las directivas definidas por el Comité de integración TOTVS.
...
El soporte a los recursos de integración es de responsabilidad de todas las líneas, de esta manera, los equipos de soporte de los productos RM Conector y Backoffice Protheus están aptos para realizar el primer análisis y si fuera necesario, repasar al equipo más adecuado en cada caso.
Nota | ||
---|---|---|
| ||
TOTVS está revisando este modelo de soporte. |
Âncora Transacciones Transacciones
Las siguientes transacciones se intercambiarán entre TOTVS y PPI-Multitask:
Método | ID | Descripción | Origen | Destino | XSD (versiones pueden variar) | Programas | Tabla |
---|---|---|---|---|---|---|---|
Archivos | 01 | Producto | Protheus | PC-Factory | Item_3_001.xsd | MATA010 | SB1 |
02 | Local de stock | Protheus | PC-Factory | Warehouse_1_001.xsd | AGRA045 | NNR | |
03 | Máquinas | Protheus | PC-Factory | Machine_1_000.xsd | MATA610 | SH1 | |
04 | Recursos | Protheus | PC-Factory | Resource_1_000 | MATA620 | SH4 | |
05 | Estructura | Protheus | PC-Factory | ItemStructure_1_000 | MATA200 PCPA200 PCPA120 PCPA135 | SG1 | |
06 | Procedimiento | Protheus | PC-Factory | ItemScript_1_000 | MATA632 PCPA124 | SG2 | |
07 | Orden de producción | Protheus | PC-Factory | ProductionOrder_2_004.xsd | MATA650 | SC2 | |
08 | Dirección | Protheus | PC-Factory | AddressStock_1_000 | MATA015 | SBE | |
09 | Stock | Protheus | PC-Factory | ItemStockLevel_1_000 | B2ATUCOMD1 | SB2 | |
Procesos | 09 | Motivo de parada | PC-Factory | Protheus | StopReason_1_000 | CFGX016 | SX5 |
10 | Motivo de desecho | PC-Factory | Protheus | WasteReason_1_000 | CFGX016 | SX5 | |
11 | Apunte de producción | PC-Factory | Protheus | ProductionAppointment_2_000 | MATA681 | SH6 | |
12 | Apunte de parada | PC-Factory | Protheus | StopReport_1_001 | MATA682 | SH6 | |
13 | Stock - Request | PC-Factory | Protheus | StockLevel_2_00 | SB2 | ||
14 | Movimientos | PC-Factory | Protheus | MovementsInternal_1_001 | MATA240 | SD3 | |
15 | Transferencia | PC-Factory | Protheus | TransferWarehouse_1_003 | MATA261 | SD3 | |
16 | Rechazo | PC-Factory | Protheus | Refusal_1_000 | MATA685 | SBC |
Âncora | ||||
---|---|---|---|---|
|
Flujo de información de las transacciones:
...
...
Âncora PuntodeEntrada PuntodeEntrada
Para facilitar el uso de la integración y hacer el uso flexible en cualquier entorno de producción se crearon algunos puntos de entrada para solucionar posibles situaciones específicas no atendidas por el
...
estándar y también permitir configuraciones más precisas en el uso de la integración:
Apunte:
...
el punto de entrada MATI681CRG permite agregar información que se utilizará en el apunte de producción y en el apunte de parada, tabla SH6. Ejemplo: Si existiera algún campo específico o tabla específica no tratada por la integración, puede utilizar esta función para marcar su contenido. Detalles en: MATI681CRG_Agregar_informacion_Adapter_del_apunte.
Apunte:
...
el punto de entrada MT680VAL permite validar si alguna información debe ser obligatoria, como tiempo, cantidad, etc. Estas validaciones quedarán a cargo de los clientes, pues cada uno tendrá su regla. Detalles en: MT680VAL - Inclusión_de_las producciones.
Apunte:
...
el punto de entrada MATI680OPR permite modificar el código de la operación recibida en el apunte de producción. Detalles en: MATI681OPR_Modificar_codigo_operacion_mensaje_apunte_produccion.
Apunte:
...
el punto de entrada MTI681QTAP permite modificar la cantidad recibida en el apunte de la producción. Este punto de entrada está indicado para aplicar el factor de conversión en la cantidad del apunte cuando el ERP y el PC-Factory trabajan con una unidad de medida diferente. Detalles en: MTI681QTAP_Modificar_cantidad_del_apunte_ProductionAppointment.
Apunte:
...
el punto de entrada MATI681EXC permite verificar si el apunte se ejecutará o no. Este punto de entrada está indicado para validaciones que impidan el apunte de producción y parada. También se utiliza en casos en los que es necesario actualizar alguna información antes del apunte (ejemplo: revertir un control de ubicación). Detalles en: MATI681EXC_Procesa_mensaje_apunte.
...
Apunte:
...
el punto de entrada
...
MATI681INT permite procesar el XML en el PE para validación/grabación personalizada, pudiendo optar por ejecutar la rutina estándar de apunte de producción o no. Si hubiera ejecución de la rutina estándar y hubiera error, solo se revertirá lo que se realizó en la rutina estándar. El punto de entrada se llama antes del inicio de la transacción de la rutina estándar de apunte de producción. Detalles en: MATI681INT - Permite procesar XML antes del mensaje de apunte de producción
Apunte: el punto de entrada MT681ALXML permite modificar cualquier información del mensaje. Este punto se indica para empresas que tienen productos con controles distintos entre el ERP y el PC-Factory. Por ejemplo, controla Lote en el PC-Factory y no controla en el ERP. El Lote se genera en el XML y se retira vía punto de entrada. Detalles en: MT681ALXML - Modificar información XML ProductionAppointment.
Orden de producción: el punto de entrada MTI650ADOP permite agregar una nueva operación en el mensaje de órdenes de producción. Para cada operación que se está enviando, este punto de entrada se ejecutará una vez. Detalles en: MTI650ADOP_Agregar_nueva_operacion_adapter_orden_de_produccion.
Orden de producción: el punto de entrada MTI650FCOP permite modificar el factor de conversión de la segunda unidad de medida de la operación que se enviará en el mensaje de órdenes de producción. Detalles en: MTI650FCOP_Modificar_factor_de_
...
conversion_segunda_unidad_de_medida_de_la_operacion_adapter_orden_de_produccion.
Orden de producción:
...
el punto de entrada MTI650QTOP permite modificar la cantidad de la operación que se enviará en el mensaje de órdenes de producción. Detalles en: MTI650QTOP_Modificar_cantidad_de_la_operacion_adapter_orden_de_produccion.
Orden de producción:
...
el punto de entrada MTI650UMOP permite modificar la segunda unidad de medida de la operación que se enviará en l mensaje de órdenes de producción. Detalles en: MTI650UMOP_Modificar_segunda_unidad_de_medida_de_la_operacion_adapter_orden_de_produccion.
Orden de producción:
...
el punto de entrada MTI650TMAC permite modificar el tiempo de máquina (TimeMachine) en el mensaje de ProductionOrder. Detalles en: MTI650TMAC_Modificar_cantidad_del_tiempo_maquina_production_order.
Orden de producción:
...
el punto de entrada MTI650LOTE permite generar el Lote de la orden en la tag LotCode en el mensaje ProductionOrder. Detalles en: MTI650LOTE_Agregar_lote_en_ el_mensaje_de_ordenes_de_produccion.
Orden de producción: el punto de entrada MTI650UTTP permite modificar el valor enviado en la tag UnitTimeType. Detalles en:
...
MTI650UTTP - Modificar el valor de la tag UnitTimeType del mensaje ProductionOrder.
Registros: el
...
punto de entrada PCPXFUNPPI permite inhibir la integración en determinada rutina. Ejemplo: Si en la creación de órdenes MATA650 no desea que ocurra la integración, puede utilizar esta función para inhibir el uso. Detalles en: PCPXFUNPPI_Rutinas_que_no_realizan_integracion_con_el_PC_Factory.
Registro de ítem: el
...
punto de entrada PCPADDTAGS permite incluir tags específicas en los mensajes estándar TOTVS. Está habilitado para el registro de ítem MATA010. Detalles en: PCPADDTAGS_Agregar_informacion_XML_integracion_TOTVS_MES.
Registro de procesos:
...
el punto de entrada PCPADDTAGS permite incluir tags específicas en los mensajes estándar TOTVS. Está habilitado para el registro de procedimiento MATA632. Detalles en: PCPADDTAGS_Agregar_informacion_XML_integracion_TOTVS_MES.
Registro de procesos: el punto de entrada MTI63UTTP permite modificar el valor enviado en la tag UnitTimeType. Detalles en: MTI632UTTP - Modificar el valor de la tag UnitTimeType del mensaje ItemScript.
Registro de máquina: el punto de entrada MTI610UTTP permite modificar el valor enviado en la tag UnitTimeType. Detalles en: MTI610UTTP - Modificar el valor de la tag UnitTimeType del mensaje Machine.
Movimientos internos.
...
los puntos de entrada MATI250CRG y MATI240CRG permiten alguna validación específica. Estas validaciones quedarán a cargo de los clientes, pues cada uno tendrá su regla. No pueden modificarse los valores de los campos que se generaron por el mensaje. Detalles en: MATI240CRG_Agregar_informacion_Adapter_de_movimientos_internos y MATI250CRG_Agregar_informacion_Adapter_de_movimientos_de_produccion.
Transferencias:
...
el punto de entrada MI261RCV permita la no ejecución de la integración. Detalles en: MI261RCV_Ejecutar_integracion_TransferWarehouse.
Rechazo:
...
el punto de entrada MATI685EXC permite verificar si el rechazo se ejecutará o no. Este punto de entrada está indicado para validaciones que impidan el apunte de rechazo o actualizaciones de información necesarias para realizar el rechazo. Detalles en: MATI685EXC_Procesa_mensaje_rechazo.
Âncora EjecutarSucursales EjecutarSucursales
En un entorno con varias sucursales es necesario solamente un WEBSERVICE en ejecución. Las TAG que indican la sucursal donde se procesa el apunte son:
<CompanyId>10</CompanyId>
<BranchId>CLSC0001</BranchId>
...
Si las tags estuvieran en blanco el sistema considera lo que estuviera definido en el APPSERVER.ini en la sesión WEBSERVICE campo PrepareIn.
[WebServices]
PrepareIn=99,01
Âncora ControlLatencia ControlLatencia
...
Existen situaciones en las que el tiempo de espera del webservice es inferior al tiempo de procesamiento de las importaciones para el ERP. Puede ocurrir la situación en la que el ERP continúe procesando la importación y el WebService del PC-Factory para de esperar la respuesta. Cuando el PC-Factory no recibe la respuesta a tiempo, el mismo archivo se reenvía, pudiendo generar duplicidad en el procesamiento del mensaje.
Solución:
Controlar el ID del PC-Factory para los mensajes recibidos. Todos los mensajes recibidos deben tener este tratamiento:
En los XML se utilizará la TAG Key name = "IDPCfactory"
<BusinessEvent>
<Entity>Entity</Entity>
<Event>upsert</Event>
<Identification>
<key name="IDPCFactory">29892829</key>
</Identification>
</BusinessEvent>
La devolución con error muestra el mensaje con el siguiente estándar:
<ProcessedOn>2017-03-28T09:11:17</ProcessedOn>
<Status>ERROR</Status>
<ListOfMessages>
<Message type="ERROR" code="N">MENSAGEM</Message>
</ListOfMessages>
</ProcessingInformation>
Âncora | ||||
---|---|---|---|---|
|
El XML de devolución debe respetar la siguiente regla:
Devuelve el ID PC-Factory en la tag <UUID>
En la tag Message type="ERROR" code="2", utiliza 2 para indicar error.
El mensaje será: ID xxxx procesado. Estatus: mensaje de error".
Ejemplo: <Message type="ERROR" code="2">ID productionappointment-0038 procesado. Estatus: ProductionOrderNumber no registrada en el Protheus.</Message>
Devuelve el ID PC-Factory en la tag <UUID>
En la tag Message type="ERROR" code="3", utiliza 3 para indicar el procesamiento con éxito.
El mensaje será: ID xxxx procesado. Estatus: ID del Protheus" o "ID xxxx procesado. Estatus: Reprocesado. ID del Protheus" cuando el PC-Factory envía más de una vez
. Ejemplo 1: <Message type="ERROR" code="3">ID productionappointment-0038 procesado. Estatus: 5091</Message>
Ejemplo 2: <Message type="ERROR" code="3">ID productionappointment-0038 procesado. Estatus: Reprocessado. 5091</Message>.
Devuelve el ID PC-Factory en la tag <UUID>
En la tag Message type="ERROR" code="4", utiliza 4 para indicar que está en procesamiento.
El mensaje será: ID xxxx se está procesando por el Protheus.
Ejemplo: <Message type="ERROR" code="4">ID apapapapeaaa se está procesando por el Protheus.</Message>
Nota | ||
---|---|---|
| ||
La devolución en el proceso de la primera", dentro del tiempo de espera del webservice, será "1" - Procesado por primera vez con ERROR u OK. Ejemplo: Con Error: <ProcessingInformation> <ProcessedOn>2017-03-28T09:00:03</ProcessedOn> <Status>ERROR</Status> <ListOfMessages> <Message type="ERROR" code="1">ProductionOrderNumber não cadastrada no protheus.</Message> </ListOfMessages> </ProcessingInformation> Con Éxito: <ProcessingInformation> <ProcessedOn>2017-03-28T08:57:28</ProcessedOn> <Status>OK</Status> </ProcessingInformation> <ReturnContent> <ListOfInternalId> <InternalId> <Name>PRODUCTIONAPPOINTMENTINTERNALID</Name> <Destination>5090</Destination> </InternalId> </ListOfInternalId> </ReturnContent> |
Situaciones inesperadas que pueden ocurrir: la parada del servicio del Protheus, base de datos fuera del aire, falta de energía, etc. Si ocurriera durante el procesamiento de la integración, el registro del PC-Factory (ID del PC-Factory) puede quedar trabado y el mensaje no sale de la fila de procesamiento. Para tratar esta situación:
El PC-Factory intenta enviar por determinado tiempo, parametrizado en el PC-Factory. Si continua recibiendo el mismo mensaje después del tiempo parametrizado, el PC-Factory genera un asunto pendiente de envío y pasa al próximo registro. Al pasar al próximo registro, se genera un contador de mensajes no enviadas. Cuando este contador alcanza un límite (parametrizado), el proceso de integración se paraliza para que los usuarios puedan resolver el problema. El control de procesamiento quedará registrado en tabla de LOG SOH.
A continuación se muestra la tabla de los códigos enviados:
Code | Message | Tabla de control - SOH.OH_STATUS |
---|---|---|
1 | Processado en el primer intento con ERRO u OK | 1 o 2 |
2 | Registro procesado con devolución de error | 2 |
3 | Registro procesado con éxito | 1 |
4 | Registro en procesamiento | 0 |
Informações | ||
---|---|---|
| ||
|
Nota | ||
---|---|---|
| ||
En el archivo APPSERVER.ini, en la sesión WEBSERVICE, existe la clave INSTANCES que define las instancias del servidor del webservice que van a estar disponibles para el procesamiento de la integración. Si se exceden las threads de procesamiento debe revisarse el número de instances. |
Cuando el usuario y la contraseña estén registrados en el PCPA109 (Parámetros), carpeta Seguridad, estos datos se enviarán en el mensaje para que el PC-Factory efectúe la autenticación.
Estos datos se enviarán en el encabezado del mensaje de la siguiente manera:
Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l
Donde: el valor será usuario:contraseña encriptado en Base64.
La recepción de los mensajes también seguirá el mismo modelo, pero el PC-Factory enviará un usuario del Protheus.
Informações | ||
---|---|---|
| ||
Para configurar la autenticación en la recepción, el appserver.ini debe tener el campo SECURITY=1, de acuerdo con el ejemplo de configuración del WebService. |
Security = 0 -> No utiliza autenticación.
Security = 1 -> Utiliza autenticación.
Âncora Rutinas Rutinas
Parametrización - PCPA109
La parametrización influirá directamente sobre los registros que se moverán entre los dos sistemas.
La rutina de parametrización tendrá los siguientes campos:
Para cada archivo movido habrá una carpeta. Para cada carpeta será posible elaborar filtros. Estos filtros se utilizarán en las rutinas que enviarán información al PC-Factory, permitiendo seleccionar lo que debe enviarse. Se mostrarán los campos de la tabla seleccionada (carpeta) y operadores para que se elaboren los filtros. Además de los filtros, algunos archivos tienen parametrizaciones.
La rutina tendrá las siguientes carpetas:
"3" - Consumo Real/Act Reserva: consumirá de acuerdo con la lista de
...
componentes y no existiera saldo suficiente de la cantidad reservada se ajustará automáticamente la cantidad reservada.
...
Panel "Operaciones":
...
define si el filtro creado en la carpeta "Procedimientos" debe utilizarse para filtrar las operaciones de
...
la orden de producción.
Panel "Desecho":
...
define el local de stock/depósito para el ítem desechado cuando el desecho fuera el mismo producto de
...
la orden de producción. Si el depósito - "WharehouseCodeTo" viniera en blanco en el mensaje ProductionAppointment utilice
...
lo que se definió en el parámetro.
Panel "APS": define si la integración considera órdenes generadas por el APS.
...
...
...
Tipo de movimiento de entrada Stock: utilice el campo SOE.OE_
...
VAR4
Estos tipos de movimiento se registran en MATA230
...
...
Âncora | ||||
---|---|---|---|---|
|
...
Sincronización - PCPA111
La sincronización es el proceso que se utilizará para completar o actualizar la base del PC-Factory con los datos del Protheus. El funcionamiento se dará de la misma forma que las otras rutinas de integración, enviando un mensaje XML al WebService del PC-Factory, respetando las parametrizaciones definidas en el PCPA109. La única diferencia es que se visualizarán todos los datos de la tabla que se estuviera integrando (respetando los filtros) en lugar de un único registro.
Âncora | ||||
---|---|---|---|---|
|
Asuntos pendientes - PCPA110
Rutina para reenviar los mensajes no enviados al sistema PC-Factory, sean estos asuntos pendientes o error. La rutina también permite consultar los mensajes enviados (LOG de envío).
Puede verificar los asuntos pendientes y log de los mensajes que transitan entre los sistemas:
Tiene las siguientes opciones:
Âncora Log PCPA112 Log PCPA112
Log de importación - PCPA112
Al recibir datos del PC-Factory, el WebService Protheus graba la información para que puedan consultarse (tabla SOG). ). A continuación se listan los movimientos que generan LOG:
Informações | ||
---|---|---|
| ||
Esta rutina utiliza las tablas SOG, SOF y SOH para administrar el log de importación. |
...
Âncora Mensajes Mensajes
Âncora Archivos Archivos
Transacción ítem: Item_3_001.xsd
Identificador del mensaje: Ítem
Versión: 3_001
Módulo Protheus: SIGAPCP
Tipo de envío: Síncrónica
Mensaje | Tag | Descripción | Tabla/Campo: Protheus | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | CompanyId | Código de la empresa conectada | CHAR(02) | |||
| BranchId | Código sucursal | SB1.B1_FILIAL | CHAR(02) | TBLInProduct.PlantCode | CHAR(15) |
| CompanyInternalId | Empresa+Sucursal | EMPRESA + SB1.B1_FILIAL | |||
| Code | Código del producto | SB1.B1_COD | CHAR(15) | TBLInProduct.Code | CHAR(20) |
| Name | Descripción del producto | SB1.B1_DESC | CHAR(30) | TBLInProduct.Name | CHAR(70) |
| InternalId | Empresa+sucursal+código del producto | EMPRESA + SB1.B1_FILIAL + SB1.B1_COD | |||
| ShortName | Nombre corto | SB1.B1_DESC | CHAR(30) | TBLInProduct.SecondName | CHAR(30) |
| Active | ¿Ítem activo? | SB1.B1_ATIVO | CHAR(01) | TBLInProduct.FlgEnable | SMALLINT |
| UnitOfMeasureCode | Unidad de medida | SB1.B1_UM | CHAR(02) | TBLInProduct.Unit1code | CHAR(05) |
| UnitOfMeasureInternalId | Empresa+sucursal+unidad de medida | EMPRESA + SB1.B1_FILIAL + SB1.B1_UM | |||
| StockGroupCode | Grupo de stock | SB1.B1_GRUPO | CHAR(04) | ||
| StockGroupInternalId | Empresa+sucursal+grupo de stock | EMPRESA + SB1.B1_FILIAL + SB1.B1_GRUPO | |||
| StockGroupDescription | Descripción del grupo stock | SBM.BM_DESC | CHAR(30) | ||
| StandardWarehouseCode | Local de stock | SB1.B1_LOCPAD | CHAR(02) | ||
| StandardWarehouseInternalId | Empresa+sucursal+local de stock | EMPRESA + SB1.B1_FILIAL + SB1.B1_LOCPAD | |||
| StandardWarehouseDescription | Descripción local de stock | NNR.NNR_DESCRI | CHAR(40) | ||
| EconomicLot | Lote económico | SB1.B1_LE | DEC(12,2) | ||
| MinimumLot | Lote mínimo | SB1.B1_LM | DEC(12,2) | ||
| FamilyCode | Familia | SB1.B1_FPCOD | CHAR(10) | TBLInProduct.FamilyProductCode | CHAR(15) |
| FamilyInternalId | Empresa+sucursal+familia | EMPRESA + SB1.B1_FILIAL + SB1.B1_FPCOD | |||
| FamilyDescription | Descripción de la familia | SYC.YC_NOME | CHAR(40) | TBLInProduct.FamilyProductName | CHAR(30) |
| NetWeight | Peso del ítem | SB1.B1_PESO | DEC(11,4) | ||
| GrossWeigh | Peso bruto | SB1.B1_PESBRU | DEC(11,4) | ||
| Trail | Rastro | SB1.B1_RASTRO | CHAR(01) | ||
| BinControl | Control de ubicación | SB1.B1_LOCALIZ | CHAR(01) | ||
| SecondUnitOfMeasureCode | Segunda unidad de medida | SB1.B1_SEGUM | CHAR(02) | TBLInProduct.Unit2Code | CHAR(20) |
| SecondUnitOfMeasureInternalId | Empresa+sucursal+ seg. unidad de medida | EMPRESA + SB1.B1_FILIAL + SB1.B1_SEGUM | |||
| MultiplicationFactorValue | Factor de conversión | SB1.B1_CONV | DEC(5,2) | TBLInProduct.Unit2Factor | DEC(8,4) |
| ProductType | Tipo del ítem | SB1.B1_TIPO | CHAR(02) | TBLInProduct.ProductTypeCode | CHAR(15) |
| PackingQuantity | Cantidad de embalaje | SB1.B1_QE | NUM(09) | TBLInProduct.QtyPackage | DEC(19,4) |
| CostCenterCode | Centro de costo | SB1.B1_CC | CHAR(09) | TBLInProduct.CostCenterCode | CHAR(20) |
| StockControlType | Control del stock del ítem | CHAR(01) |
Nota | ||
---|---|---|
| ||
|
Transacción depósito: Warehouse_1_001.xsd
Identificador del mensaje: Warehouse
Versión: 1_001
Módulo Protheus: SIGAPCP
Tipo de envío: Síncrónica
Mensaje | Tag | Descripción | Tabla/Campo: Protheus | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | CompanyId | Código de la empresa | CHAR(02) | TBLInWarehouse.Extcode | CHAR(20) | |
| BranchId | Código de la sucursal | NNR.NNR_FILIAL | CHAR(02) | TBLInWarehouse.PlantCode | CHAR(15) |
| CompanyInternalId | Empresa+Sucursal | EMPRESA + NNR.NNR_FILIAL | |||
| Code | Código del local de almacenamiento(almacén/depósito) | NNR.NNR_CODIGO | CHAR(02) | TBLInWarehouse.Code | CHAR(15) |
| InternalId | Empresa+Sucursal+código local | EMPRESA + NNR.NNR_FILIAL + | |||
| Description | Descripción del local de almacenamiento (almacén/depósito) | NNR.NNR_DESCRI | CHAR(20) | TBLInWarehouse.Name | CHAR(15) |
| Active | ¿Local de stock activo? | TRUE | CHAR(01) | TBLInWarehouse.FlgEnable | SMALLINT |
| Type | Tipo del local de almacenamiento | NNR.NNR_TIPO | CHAR(01) | ||
| WarehouseClassification | Clasificación | NNR.NNR_INTP | CHAR(01) |
Transacción recurso PCP / Máquina SFC: Machine_1_000.xsd
Identificador del mensaje: Machine
Versión: 1_000
Módulo Protheus: SIGAPCP, SIGASFC
Tipo de envío: Síncrónica
Mensaje | Tag | Descripción | Tabla/Campo: | Tabla Campo: | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | |||||||
| Code | Código Máquina | SH1.H1_CODIGO | CYB.CYB_CDMQ | CHAR(20) | CHAR(15) | |
| Description | Descripción de máquina | SH1.H1DESCRI | CYB.CYB_DSMQ | CHAR(40) | TBLInResource.Name | CHAR(20) |
| WorkCenterCode | Código centro de trabajo | SH1.H1_CTRAB | CYB.CYB_CDCETR | CHAR(10) | TBLInResource.ManagerGrpCode | CHAR(15) |
| WorkCenterDescription | Descripción del centro de trabajo | SHB.HB_NOME | CYB.CYB_DSCETR | CHAR(40) | TBLInResource.WorkCenterDescription | CHAR(15) |
| CostCenterCode | Código del centro de costo | SH1.H1_CCUST | CYB.CYB_CDCECS | CHAR(20) | ||
| ProcessorType | ¿Tipo de procesamiento? | CYB.CYB_TPPC | CHAR(01) | |||
| LaborType | Tipo MOD | CYB.CYB_TPMOD | CHAR(01) | |||
| VolumeMachineQuantity | Cantidad volumen máquina | CYB.CYB_QTVMMQ | DEC(12,4) | |||
| EfficiencyMachineValue | Eficiencia máquina | CYB.CYB_VLEFMQ | DEC(05,2) | |||
| OperatorMachineQuantity | Cantidad operador máquina | CYB.CYB_QTOEMQ | NUM(02) | |||
| SimultaneousActivityQuantity | Cantidad operaciones simultáneas | CYB.CYB_QTATSM | NUM(03) | |||
| IsSetup | Tiene preparación | CYB.CYB_LGSU | BOOLEAN | |||
| IsOverlapReport | Sobrescribe apunte | CYB.CYB_LGOVRP | BOOLEAN | |||
| ProductionAreaCode | Área de producción | CYB.CYB_CDARPO | CHAR(10) | |||
| InitialValidateDate | Fecha inicial de validez | CYB.CYB_DTBGVD | DATE | |||
| FinalValidateDate | Fecha final de validez | CYB.CYB_DTEDVD | DATE | |||
ListOfResources | |||||||
| ResourceType | Tipo de recurso | CYC.CYC_TPRC | CHAR(01) | |||
| ResourceCode | Código recurso | CYC.CYC_CDRC | CHAR(20) | TBLInUser.Code | CHAR(30) | |
| ResourceName | Nombre de recurso | CYC.CYC_NMRC | CHAR(40) | TBLInUser.Name | CHAR(60) | |
| UnitTimeType | Tipo de medida de tiempo | CYC.CYC_TPUNTE | CHAR(01) | |||
| StartExpirationDate | Fecha inicial de validez | CYC.CYC_DTBGVD | DATE | |||
| EndExpirationDate | Fecha final de validez | CYC.CYC_DTEDVD | DATE | |||
| CycleQuantity | Número de ciclos | CYC.CYC_QTCI | DEC(11,4) | |||
| IsTimeActivity | Determina tiempo | CYC.CYC_LGTEAT | BOOLEAN | |||
ListOfProductionShifts |
| ||||||
| ProductionShiftCode | Código modelo de turno | CYL.CYL_CDTN | CHAR(08) | |||
| ProductionShiftDescription | Descripción de modelo de turno | CYL.CYL_DSTN | CHAR(40) | |||
| BeginDate | Fecha inicial de validez | CYL.CYL_DTVDBG | DATE | |||
| EndDate | Fecha final de validez | CYL.CYL_DTVDED | DATE |
En el PCP las máquinas se registran en la rutina de recursos MATA610 y en el Piso de fábrica la rutina es SFCA002. La nomenclatura también está modificada. Al utilizar Piso de fábrica, se denominará MÁQUINA. Al utilizar solamente el PCP, será RECURSO. La rutina de parámetros PCPA109 está preparada para mostrar el nombre de acuerdo con el uso del sistema.
Transacción recurso SFC: Resource_1_000
Identificador del mensaje: Resource
Versión: 1_000
Módulo Protheus: SIGASFC
Tipo de envío: Síncrónica
Mensaje | Tag | Descripción | Tabla/Campo: | Tabla Campo: | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | |||||||
| Code | Código del recurso | SH4.H4_CODIGO | CYH.CYH_CDRC | CHAR(06) | TBLTooling.Code | CHAR(15) |
| Name | Nombre del recurso | SH4.H4_DESCRI | CYH.CYH_NMRC | CHAR(40) | TBLTooling.Name | CHAR(50) |
| Type | Tipo de recurso | 1=Operador;2=Herramienta. | CYH.CYH_TPRC | CHAR(25) | ||
| ProductionAreaCode | Área de producción | CYH.CYH_CDARPO | CHAR(10) | |||
| ProductionAreaDescription | Descripción del área de producción | CYA.CYA_DSARPO | CHAR(40) | |||
ItemComponentType |
| ||||||
| ProductionShiftNumber | Turno | SH4.H4_TURNO | CYH.CYH_NRTN | CHAR(05) | ||
| LaborCode | MOB | Fijo '1' | CYH.CYH_CDMOD | CHAR(08) | ||
| StartExpirationDate | Fecha de validez inicial | Fecha actual | CYH.CYH_DTVDBG | DATE | TBLTooling.Period | INT |
| EndExpirationDate | Fecha de validez final | CYH.CYH_DTVDED | DATE | TBLTooling.Period | INT | |
| UnitCycleQuantity | Unidades de ciclos | CYH.CYH_QTUNCI | NUM(07) | |||
| ToolCode | Herramienta | CYH.CYH_CDMPRC | CHAR(15) | |||
| ToolDescription | Descripción de herramienta | CYH.CYH_DSMPRC | CHAR(40) |
Nota | ||
---|---|---|
| ||
|
Transacción estructura: ItemStructure_1_000.xsd
Identificador del mensaje: ItemStructure
Versión: 1_000
Módulo Protheus: SIGAPCP
Tipo de envío: Síncrónica
Mensaje | Tag | Descripción | Tabla/Campo: Protheus | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | CompanyId | Código de la empresa | CHAR(02) | |||
| CompanyInternalId | Empresa+Sucursal | EMPRESA + SG1.G1_FILIAL | |||
| ItemInternalId | Empresa+Sucursal+código ítem principal | EMPRESA + SG1.G1_FILIAL + | |||
| ItemCode | Código ítem principal | SG1.G1_COD | CHAR(15) | TBLInWOHD.ProductCode | CHAR(30) |
| ItemAmount | Cantidad base del ítem principal | SB1.B1_QB | NUM(07) | TBLInWOHD.TotalQTY | DEC(19,4) |
ItemComponentType |
| |||||
| ItemSequence | Secuencia del componente | SG1.G1_TRT | NUM(05) | TBLInBillMat.BillMatExtCode | CHAR(20) |
| ItemComponentCode | Código del ítem del componente | SG1.G1_COMP | CHAR(15) | TBLInBillMat.ProductCode | CHAR(20) |
| ItemComponentInternalId | Internal Id del ítem componente | EMPRESA + SG1.G1_FILIAL + SG1.G1_COMP | |||
| InitialDate | Fecha de validez inicial | SG1.G1_INI | DATE | TBLInWOHD.DtPlanStart | DATETIME |
| FinalDate | Fecha de validez final | SG1.G1_FIM | DATE | TBLInWOHD.DtPlanEnd | DATETIME |
| IsGhostMaterial | Indica si es fantasma | SB1.B1_FANTASM | BOOLEAN ( FALSE o TRUE) | ||
| ItemComponentAmount | Cantidad del ítem componente | SG1.G1_QUANT | DEC(12,6) | ||
| LossFactor | Factor de pérdida | SG1.G1_PERDA | DEC(05,2) | ||
ListOfScript |
| |||||
| Scriptcode | Código del procedimiento | SGF.GF_ROTEIRO | CHAR(02) | TBLInWOHD.ExtCode | CHAR(20) |
| ScriptAlternative | Alternativo del procedimiento | – | |||
| ActivityIntenalID | ID Operación | – | |||
| ActivityCode | Código de la operación | SGF.GF_OPERAC | CHAR(02) | TBLInWodet.Code | CHAR(10) |
| ActivityComponentSequence | Secuencia del componente en la operación | SGF.GF_TRT | NUM(03) |
Nota | ||
---|---|---|
| ||
La tag ItemSequence es obligatoria para el PC-Factory. Para que sea posible la integración de la estructura debe ser obligatorio el uso de la secuencia SG1.G1_TRT. de lo contrario, el PC-Factory devolverá la inconsistencia. La integración de la estructura siempre ocurrirá para la revisión actual de la estructura del producto. La información de la revisión actual de la estructura del producto está disponible en el archivo del producto y/o en el archivo de indicadores del producto, de acuerdo con la parametrización establecida. Se enviará la última revisión válida de la estructura. Verificar controles de revisión por sucursal ( MV_ARQPROD y MV_REVFIL ) cuando la revisión sea manual(MV_REVAUT = F). Cuando la revisión sea automática (MV_REVAUT = T) siempre se enviará la última. |
Transacción procedimiento - Operaciones del ítem: ItemScript_1_000.xsd
Identificador del mensaje: ItemScript
Versión: 1_000
Módulo Protheus: SIGAPCP
Tipo de envío: Síncrónica
Mensaje | Tag | Descripción | Tabla/Campo: Protheus | Tipo | Tabla/Campo: PC-Factory | Tipo | ||
BusinessContentType | ItemCode | Código del ítem | SG2.G2_PRODUTO | CHAR(15) | TBLInWOHD.ProductCode | CHAR(20) | ||
| ItemDescription | Descripción del ítem | SB1.B1_DESC | CHAR(40) | ||||
| ItemInternalId | Empresa | Sucursal | Ítem | EMPRESA + SG2.G2_FILIAL + | |||
| ScriptCode | Código del procedimiento | SG2.G2_CODIGO | CHAR(02) | ||||
| ScriptDescription | Descripción del procedimiento | – | CHAR(40) | ||||
| ScriptAlternative | Procedimiento alternativo | – | CHAR(02) | ||||
ListOfActivity |
| |||||||
| ActivityInternalID | ID Operación | SG2.R_E_C_N_O_ | NUM(05) | ||||
| ActivityCode | Código de la operación | SG2.G2_OPERAC | CHAR(02) | TBLInWodet.Code | CHAR(10) | ||
| ActivityDescription | Descripción de la operación | SG2.G2_DESCRI | CHAR(60) | TBLInWodet.Name | CHAR(40) | ||
| MachineCode | Código de la máquina | SG2.G2_RECURSO | CHAR(06) | TBLInWodet.Resource | CHAR(15) | ||
| ToolCode | Código de la herramienta | SG2.G2_FERRAM | CHAR(06) | ||||
| ActivityType | Tipo de la operación | 1 = Ejecuta operación; 2 = No ejecuta. | CHAR(01) | ||||
| WorkCenterCode | Código del centro de trabajo | SG2.G2_CTRAB | CHAR(06) | TBLInWodet.ManagerGrpCode | CHAR(15) | ||
| WorkCenterInternalId | Id Centro de trabajo | EMPRESA + SG2.G2_FILIAL + SG2.G2_CTRAB | |||||
| UnitItemNumber | Lote estándar | SG2.G2_LOTEPAD | NUM(06) | TBLInWodet. StdSpeed | DEC(28,23) | ||
| TimeResource | Tiempo de recurso | 0 | TBLInWodet. StdSpeed | DEC(28,23) | |||
| TimeMachine | Tiempo de máquina | SG2.G2_TEMPAD | DEC(05,2) | TBLInWodet. StdSpeed | DEC(28,23) | ||
| TimeSetup | Tiempo de preparación | SG2.G2_SETUP | DEC(05,2) | TBLInWodet. SetUpTime | INT | ||
| UnitTimeType | Tipo de unidad de tiempo | 1 = Horas;2=Minutos;3=Segundos;4=Días | TBLInWodet. StdSpeedFormat | TINYINT | |||
| ScriptAlternative | Alternativo | SG2.G2_ROTALT | CHAR(02) | ||||
| InitialDate | Fecha inicial | SG2.G2_DTINI | DATE | TBLInWodet.DtPlanStart | DATETIME | ||
| FinalDate | Fecha final | SG2.G2_DTFIM | DATE | TBLInWodet.DtPlanEnd | DATETIME | ||
| PercentageScrapValue | % Desecho | – | |||||
| PercentageValue | Proporción | – | |||||
| ResourceQuantity | Cantidad del recurso | – |
Nota | ||
---|---|---|
| ||
|
Transacción ubicaciones: AdressStock_1_000.xsd
Identificador del mensaje: AdressStock
Versión: 1_000
Módulo Protheus: SIGAPCP
Tipo de envío: Síncrónica
Mensaje | Tag | Descripción | Tabla/Campo: Protheus | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | WarehouseCode | Almacén/Depósito | SBE.BE_LOCAL | CHAR(02) | TBLInAddress.WarehouseCode | CHAR(15) |
| LocationCode | Ubicación/Localización | SBE.BE_LOCALIZ | CHAR(15) | TBLInAddress.Code | CHAR(15) |
| AdressInternalId | Clave completa de ubicación | EMPRESA + SBE.BE_FILIAL + SBE.BE_LOCAL + SBE.BE_LOCALIZ | |||
| AdressStockDescription | Descripción de la ubicación | SBE.BE_DESCRIC | CHAR(30) | TBLInAddress.ExtCode | CHAR(20) |
Transacción saldo: ItemStockLevel_1_000.xsd
Identificador del mensaje: ItemStockLevel
Versión: 1_000 Módulo Protheus: Varios
Tipo de envío: Síncrónica
Mensaje | Tag | Descripción | Tabla/Campo: Protheus | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | ItemCode | Código del producto | SB2.B2_COD | CHAR(15) | TBLInMovMat.ProductCode | CHAR(20) |
| ItemDescription | Descripción del ítem | SB1.B1_DESC | CHAR(30) | ||
ListOfStock |
| |||||
| ReferenceCode | Referencia | – | |||
| WarehouseCode | Depósito/Local de almacenamiento/Almacén | SB2.B2_LOCAL | CHAR(02) | TBLInMovMat.WarehouseCode | CHAR(15) |
| LotCode | Número del lote | SB8.B8_LOTECTL | CHAR(10) | TBLInMovMat.LotCode | CHAR(41) |
| SubLotCode | Sublote | SB8.B8_NUMLOTE | CHAR(06) | ||
| NumberSeries | Número de serie | SBF.BF_NUMSERI | CHAR(20) | ||
| AddressCode | Ubicación/Localización | SBF.BF_LOCALIZ | CHAR(15) | TBLInMovMat.AddressCode | CHAR(15) |
| LotDueDate | Fecha de validez | SB8.B8_DTVALID | DATE | TBLInMovMat.LotDtValidity | DATETIME |
| CurrentStockAmount | Saldo de stock | SB2.B2_QATU | DEC(12,2) | ||
| BookedStockAmount | Cantidad reservada | SB2.B2_RESERVA | DEC(12,2) | ||
| AvailableStockAmount | Saldo disponible | SB2.B2_QATU - SB2.B2_RESERVA | DEC(12,2) | ||
| QuantityUpdated | Cantidad actualizada | DEC(12,2) | TBLInMovMat.Qty | DEC(18,2) | |
| InputOutput | Entrada o Salida | 1 = Entrada o 2 = Salida | CHAR(01) | TBLInMovMat.Classification | CHAR(15) |
Nota | ||
---|---|---|
| ||
|
...
|
Transacción Motivo de desecho: WasteReason_1_000.xsd
Identificador del mensaje: WasteReason
Versión: 1_000
Módulo Protheus: SIGAPCP/SIGASFC
Tipo de envío: Síncrónica
Mensaje | Tag | Descripción | Tabla/Campo: | Tabla Campo: | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | Code | Código de desecho | SX5.X5_CHAVE | CYO.CYO_CDRF | CHAR(08) | TBLOutScrap.Code | CHAR(15) |
| Description | Descripción del desecho | X5_DESCRI | CYO.CYO_DSRF | CHAR(40) | TBLOutScrap.Name | CHAR(30) |
| IsRework | Retrabajo | CYO.CYO_LGRT | BOOLEAN | |||
| IsScrapMaterial | Desecho material | SBE.BE_DESCRIC | CYO.CYO_LGRFMP | BOOLEAN |
Nota | ||
---|---|---|
| ||
|
Transacción Motivo de parada: StopReason_1_000.xsd
Identificador del mensaje: StopReason
Versión: 1_000
Módulo Protheus: SIGAPCP/SIGASFC
Tipo de envío: Síncrónica
Mensaje | Tag | Descripción | Tabla/Campo: | Tabla Campo: | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | Code | Código del motivo de parada | SX5.X5_CHAVE | CYN.CYN_CDSP | CHAR(10) | TBLOutResourceStatus.Code | CHAR(05) |
| Description | Descripción de parada | X5_DESCRI | CYN.CYN_DSSP | CHAR(40) | TBLOutResourceStatus.Name | CHAR(30) |
| IsEfficiency | Modifica eficiencia | – | – | |||
| IsEmailEquipment | E-mail planificador | – | – | |||
| IsServiceRequest | Emite solicitud de servicio | – | – | |||
| IsSetup | Parada setup | – | – | TBLOutResourceStatus.FlgSetup | SMALLINT |
Nota | ||
---|---|---|
| ||
|
Transacción Orden de producción: ProductionOrder_2_004.xsd
Identificador del mensaje: ProductionOrder
Versión: 2_003
Módulo Protheus: SIGAPCP
Tipo de envío: Síncrónica
Mensaje | Tag | Descripción | Tabla/Campo | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | Number | Número de orden de producción | SC2.C2_NUM + SC2.C2_ITEM + SC2.C2_SEQUEN | CHAR(20) | TBLInWOHD.Code | CHAR(41) |
| ProductionOrderUniqueID | Empresa+Sucursal+Orden de producción | EMPRESA + SC2.C2_FILIAL + SC2.C2_NUM + | CHAR(30) | ||
| ItemCode | Código del ítem | SC2.C2_PRODUTO | CHAR(15) | TBLInWOHD.ProductCode | CHAR(20) |
| ItemDescription | Descripción del ítem | SB1.B1_DESC | CHAR(40) | ||
| Type | Tipo de la orden | 1= Interna; 2=Externa; 3=Interna/Externa; 4=Retrabajo. | CHAR(01) | TBLInWOHD.WoTypeCode | CHAR(20) |
| Quantity | Cantidad | SC2.C2_QUANT | DEC(12,2) | TBLInWOHD.TotalQty | DEC(19,4) |
| ReportQuantity | Cantidad informada | SC2.C2QUJE | DEC(12,2) | ||
| UnitOfMeasureCode | Unidad de medida | SC2.C2_UM | CHAR(02) | TBLInWoDet.Unit1Code | CHAR(05) |
| RequestOrderCode | Código del pedido de la orden de producción | SC2.C2_PEDIDO | CHAR(06) | ||
| StatusOrderType | Estado de la orden | Prevista/Abierta = 1 | CHAR(01) | TBLInWOHD.Status | SMALLINT |
| WarehouseCode | Código del depósito | SC2.C2_LOCAL | CHAR(02) | TBLInWOHD.AuxCode1 | CHAR(20) |
| EndOrderDateTime | Fecha final de la orden de producción CP | SC2.C2_DATPRF | DATE | TBLInWOHD.DtPlanEnd | DATETIME |
| StartOrderDateTime | Fecha inicial de la orden de producción CP | SC2.C2_DATPRI | DATE | TBLInWOHD.DtPlanStart | DATETIME |
| AbbreviationProviderName | Nombre del cliente | SC5.C5_CLIENTE ( SA1.A1_NOME) | CHAR(30) | ||
| ScriptCode | Código del procedimiento | SC2.C2_ROTEIRO | CHAR(02) | ||
| ReportOrderType | Tipo de informe | 1 = Orden; 2 = Operaciones; 3 = Punto de control; 4 = Ítem | CHAR(01) | ||
ListOfActivityOrders |
| |||||
| ProductionOrderNumber | Orden de producción | SC2.C2_NUM + SC2.C2_ITEM + | CHAR(20) | TBLInWoDet.Wocode | CHAR(10) |
| ActivityID | ID del Registro | RECNO (SG2,SHY o SH8) | CHAR(10) | ||
| ActivityCode | Código de la operación | SG2.G2_OPERAC | CHAR(02) | TBLInWoDet.WODetCode+Split | CHAR(10) |
| ActivityDescription | Descripción de la operación | SG2.G2_DESCRI | CHAR(40) | TBLInWoDet.WODetName | CHAR(30) |
| Split | División de la operación | SH8.H8_DESDOBR | CHAR(04) | ||
| ItemCode | Código del ítem | SC2.C2_PRODUTO | CHAR(15) | ||
| ItemDescription | Descripción del ítem | SB1.B1_DESC | CHAR(40) | ||
| ActivityType | Tipo de la operación | 1 - Apunta ; 2-No apunta | CHAR(01) | ||
| WorkCenterCode | Código del centro de trabajo | SG2.G2_CTRAB | CHAR(06) | TLBInWODet.ManagerGrpCode | CHAR(15) |
| WorkCenterDescription | Descripción del centro de trabajo | SHB.HB_NOME | CHAR(30) | ||
| UnitTimeType | Tipo de unidad de tiempo | 1 - Horas; 2 - Minutos; 3- Segundos; 4 - Días | CHAR(01) | TLBInWODet.StdSpeedFormat | TINYINT |
| TimeResource | Tiempo del recurso (Tiempo estándar para un lote) | SG2.G2_TEMPAD | DEC(05,2) | TLBInWODet.StdSpeed | DEC(28,23) |
| TimeMachine | Tiempo de máquina (Tiempo para realizar toda la orden) | SG2.G2_TEMPAD * SC2.C2_QUANT | DEC(14,4) | TLBInWODet.StdSpeed | DEC(28,23) |
| TimeSetup | Tiempo de preparación | SG2.G2_SETUP | DEC(15,4) | TLBInWODet.SetUpTime | INT |
| TimeMOD | Tiempo hombre | – | |||
| TimeIndMES | Indicador de tempo en el MES | 1 = Tiempo de máquina; 2 = Tiempo de mano de obra; 3 = Selección por el MES. | CHAR(01) | ||
| ScriptCode | Código del procedimiento | SG2.G2_CODIGO | CHAR(02) | ||
| LaborCode | Código de mano de obra directa | MOD+CC | CHAR(08) | ||
| UnitItemNumber | Lote estándar | SG2.G2_LOTEPAD | NUM(05) | TLBInWODet.StdSpeed | DEC(28,23) |
| IsActivityEnd | Última operación | En la última operación pasar TRUE. | BOOLEAN | TLBInWODet.ReportTrigger | TINYINT |
| MachineCode | Código de la máquina | SG2_RECURSO | CHAR(06) | ||
| StartPlanDateTime | Fecha/Hora inicial de programación | SHY.HY_HORAINI | DATE | TLBInWODet.StartPlanDateTime | DATETIME |
| EndPlanDateTime | Fecha/Hora final de programación | SHY.HY_HORAFIM | DATE | TLBInWODet.EndPlanDateTime | DATETIME |
| ProductionQuantity | Cantidad por producir en la operación | SHY.HY_QUANT | DEC(12,2) | TLBInWODet.Qty | DEC(19,4) |
| ActivityQuantity | Cantidad de la operación | SHY.HY_QUANT | DEC(12,2) | ||
| UnitActivityCode | Unidad de medida | SB1.B1_UM | CHAR(02) | TLBInWODet.Unit1Code | CHAR(5) |
| SecondUnitActivityCode | Segunda unidad de medida en la operación | – | TLBInWODet.Unit2Code | CHAR(5) | |
| SecondUnitActivityFactor | Factor de conversión para segunda Un. en la operación | – | TLBInWODet.Unit2Factor | DEC(8,4) | |
| ResourceQuantity | Cantidad de recursos | SG2.G2_MAOOBRA | NUM(03) | ||
ListOfMaterialOrders |
| |||||
| ProductionOrderNumber | Orden de producción | SC2.C2_NUM + SC2.C2_ITEM + | CHAR(20) | TBLInBillMat.Wocode | CHAR(41) |
| MaterialID | ID del Registro de la reserva | SD4.R_E_C_N_O_ | CHAR(10) | ||
| MaterialCode | Código del ítem reserva | SD4.D4_COD | CHAR(15) | TBLInBillMat.ProductCode | CHAR(20) |
| MaterialDescription | Descripción del ítem | SB1.B1_DESC | CHAR(40) | ||
| ScriptCode | Código del procedimiento | SD4.D4_ROTEIRO | CHAR(02) | ||
| ActivityCode | Código de la operación | SD4.D4_OPERAC | CHAR(02) | TBLInBillMat.WODetCode | CHAR(10) |
| WarehouseCode | Código del depósito | SD4.D4_LOCAL | CHAR(02) | TBLInBillMat.ExtCode | CHAR(20) |
| MaterialDate | Fecha de la reserva | SD4.D4_DATA | DATE | ||
| MaterialQuantity | Cantidad de la reserva | SD4.D4_QUANT | DEC(12,2) | TBLInBillMat.TotalQty | DEC(19,4) |
| LotCode | Lote | SD4.D4_LOTECTL | CHAR(10) | ||
| PertMaterialNumber | Secuencia del ítem | SD4.D4_TRT | CHAR(03) | ||
| RequestType | Tipo de la requisición | SB1.B1_APROPRI | CHAR(01) | TBLInBillMat.Comments | CHAR(500) |
ListOfAllocatedMaterial |
| |||||
| WarehouseCode | Código del depósito | SD4.D4_LOCAL | CHAR(02) | TBLInMovMat.WarehouseCode | CHAR(15) |
| LotCode | Código del lote | SD4.D4_LOTECTL | CHAR(10) | TBLInMovMat.LotCode | CHAR(41) |
| LocationCode | Localización/Ubicación | SDC.DC_LOCALIZ | CHAR(15) | TBLInMovMat.AddressCode | CHAR(15) |
| ActivityCode | Código de la operación | SD4.D4_OPERAC | CHAR(02) | TBLInMovMat.WoDetCode | CHAR(10) |
| ScriptCode | Código del procedimiento | SD4.D4_ROTEIRO | CHAR(02) | ||
| AllocationQuantity | Cantidad asignada | SD4.D4_QUANT | DEC(12,2) | TBLInMovMat.Qty | DEC(19,4) |
| AllocationType | Tipo de asignación | 1 = Suma;2=Disminuye;3=Valor absoluto | CHAR(01) | TBLInMovMat.AllocationType | INT |
| SubLoteCode | Sublote | SD4.D4_NUMLOTE | CHAR(06) | ||
| NumberSeries | Número de serie | SDC.DC_NUMSERI | CHAR(20) | ||
| LotDueDate | Fecha de validez | SD4.D4_DTVALID | DATE | TBLInMovMat.LotDtValidity | DATETIME |
ListOfQuotaActivity |
| |||||
| ProductionOrderNumber | Número de orden de producción | CY9.CY9_NRORPO | CHAR(20) | ||
| ControlType | Selección split | – | |||
| ActivityID | ID Operación | CY9.CY9_CDAT | CHAR(10) | ||
| ItemCode | Código del ítem | CYY.CYY_CDAC | CHAR(15) | ||
| ItemDescription | Descripción del ítem | CYY.CYY_DSAC | CHAR(40) | ||
| StartActivityDateTime | Fecha/Hora inicial de la actividad | CYY.CYY_DTBGAT / CYY.CYY_HRBGAT | DATETIME | TBLInWODet.StartPlanDateTime | DATETIME |
| EndActivityDateTime | Fecha/Hora final de la actividad | CYY.CYY_DTEDAT / CYY.CYY_HREDAT | DATETIME | TBLInWODet.EndPlanDateTime | DATETIME |
| ApprovedQuantity | Cantidad aprobada | CYY.CYY_QTATAP | DEC(13,4) | ||
| ScrapQuantity | Cantidad desechada | CYY.CYY_QTATRF | DEC(13,4) | ||
| MachineCode | Código de la máquina | CYY.CYY_CDMQ | CHAR(20) | TBLInWODet.ResourceCode | CHAR(15) |
| MachineDescription | Descripción de la máquina | CYY.CYY_DSMQ | CHAR(40) | ||
| ActivityQuantity | Cantidad prevista | CYY.CYY_QTAT | DEC(12,4) | TBLInWODet.QTY | DEC(19,4) |
| StandardSetup | Tiempo estándar preparación | CYY.CYY_QTPASU | NUM(10) | ||
| StandardActivity | Tiempo estándar de operación | CYY.CYY_QTPAAT | NUM(10) | ||
| StandardPostprocessing | Tiempo estándar de post proceso | CYY.CYY_QTPAPP | NUM(10) | ||
| StandardMachine | Tiempo estándar de máquina | CYY.CYY_QTPAMQ | NUM(10) | ||
| StandardOperator | Tiempo estándar MOD | CYY.CYY_QTPAOE | NUM(10) | ||
| UsedCapacity | Capacidad utilizada | CYY.CYY_QTVMAT | DEC(12,4) | ||
| ActivityTimeQuantity | Hora disponible de la actividad | CYY.CYY_HRDI | CHAR(08) | ||
| ReportQuantity | Cantidad informada | CYY.CYY_QTATRP | DEC(13,4) | ||
| ReworkQuantity | Cantidad retrabajada | CYY.CYY_QTATRT | DEC(12,4) | ||
| StartSetupDateTime | Fecha/Hora inicial de preparación | CYY.CYY_DTBGSU / CYY.CYY_HRBGSU | DATETIME | ||
| EndSetupDateTime | Fecha/Hora final de preparación | CYY.CYY_DTEDSU / CYY.CYY_HREDSU | DATETIME | ||
| TimeSetup | Tiempo de preparación | CY9.CY9_QTTESU | NUM(10) | TBLInWODet.SetUpTime | TINYINT |
| TimeMachine | Tiempo de máquina | CY9.CY9_QTTEMQ | NUM(10) | TBLInWODet.StdSpeed | DEC(28,23) |
| TimeOperator | Tiempo MOD | CY9.CY9_QTTERC | NUM(10) | ||
| TimePostprocessing | Tiempo de post proceso | CY9.CY9_QTTEPP | NUM(10) | ||
| QuotaActivityID | ID Split | CYY.CYY_IDATQO | CHAR(05) | ActivityCode+ | CHAR(10) |
| WorkCenterCode | Centro de trabajo | CY9.CY9_CDCETR | CHAR(10) | TBLInWODet.ManagerGrpCode | CHAR(15) |
| ReportedSplit | Split informado | CYY.CYY_LGQORP | BOOELAN | ||
| StatusActivityType | Estado de la operación | CYY.CYY_TPSTAT | CHAR(01) | ||
ListOfQuotaActivityTools |
| |||||
| ToolCode | Herramienta | CYY.CYY_CDFE | CHAR(20) | ||
| ToolQuantity | Cantidad de herramienta | CYY.CYY_QTFE | NUM(03) |
Nota | ||
---|---|---|
| ||
|
...
Conforme el valor de esta tag, el PC-factory identifica el archivo de devolución para el componente: RequestType =1, Direta -> MovementsInternal RequestType =2, Indireta -> ProductionAppointment
|
Âncora Procesos Procesos
Transacción Apunte de producción: ProductionAppointment_2_000.xsd
Identificador del mensaje: ProductionAppointment
Versión: 2_003
Módulo Protheus: SIGAPCP/SIGASFC
Tipo de envío: Síncrónica
Nota | ||
---|---|---|
| ||
Este mensaje se generará por el PC-Factory y se enviará al Protheus. |
Mensaje | Tag | Descripción | Tabla/Campo | Tabla Campo | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | MachineCode | Máquina | SH6.H6_RECURSO | CYV.CYV_CDMQ | CHAR(06) | TBLOutInteg.ResourceCode | CHAR(15) |
| ProductionOrderNumber | Orden de producción | SH6.H6_OP | CYV.CYV_NRORPO | CHAR(20) | TBLOutInteg.WOCode | CHAR(41) |
| ActivityCode | Operación | SH6.H6_OPERAC | CYV.CYV_CDAT | CHAR(02) | TBLOutInteg.WODetCode | CHAR(10) |
| Split | Split | SH6.H6_DESDOBR | CYV.CYV_IDATQO | CHAR(04) | TBLOutInteg.WODetCode | CHAR(10) |
| ActivityID | ID Operación | – | – | |||
| ItemCode | Producto | SH6.H6_PRODUTO | CYV.CYV_CDACRP | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) |
| ApprovedQuantity | Cantidad aprobada | SH6.H6_QTDPROD | CYV.CYV_QTATAP | DEC(11,2) | TBLOutInteg.Qty | DEC(19,4) |
| ScrapQuantity | Cantidad desechada | SH6.H6_QTDPERD | CYV.CYV_QTATRF | DEC(11,2) | TBLOutInteg.Qty | DEC(19,4) |
| ReworkQuantity | Cantidad retrabajada | – | – | |||
| StartSetupDateTime | Fecha/Hora inicial de preparación | – | CYV_DTBGSU | DATETIME | ||
| EndSetupDateTime | Fecha/Hora final de preparación | – | CYV_DTEDSU | DATETIME | ||
| SetupCode | Código de preparación | – | CYV_CDSU | CHAR(10) | ||
| OpTimeInt | Tiempo de operación | – | CYV.CYV_QTTERP | NUM(10) | ||
| ProductionShiftCode | Código modelo de turno | – | CYV.CYV_CDTN | CHAR(08) | ||
| ProductionShiftNumber | Número de turno | – | CYV.CYV_NRTN | CHAR(05) | TBLOutInteg.Shift | SMALLINT |
| DocumentCode | Documento | – | CYV.CYV_NRDO | CHAR(20) | TBLOutInteg.DocNumber | CHAR(20) |
| DocumentSeries | Serie de documento | – | CYV.CYV_NRSR | CHAR(05) | ||
| StartReportDateTime | Fecha/Hora inicial de informe | SH6.H6_DATAINI | CYV.CYV_DTRPBG | DATETIME | TBLMSGERP.Start | DATETIME |
| EndReportDateTime | Fecha/Hora final de informe | SH6.H6_DATAFIN | CYV.CYV_DTRPED | DATETIME | TBLMSGERP.End | DATETIME |
| ReversedReport | Reversión del apunte | TRUE o FALSE | TRUE o FALSE | BOOLEAN | ||
| ReversalDate | Fecha de la reversión | – | CYV.CYV_DTEO | DATE | TBLOutInteg.DTEv | DATETIME |
| ReportDateTime | Fecha/Hora del informe | SH6.H6_DTAPONT | CYV.CYV_DTRP | DATETIME | TBLOutInteg.DtEv | DATETIME |
| WarehouseCode | Código del depósito | SH6.H6_LOCAL | CYV.CYV_CDDP | CHAR(02) | TBLOutInteg.WarehouseCode | CHAR(15) |
| LotCode | Lote/Serie | SH6.H6_LOTECTL | CYV.CYV_CDLOSR | CHAR(10) | TBLOutInteg.LotCode | CHAR(41) |
| LotDueDate | Fecha de validez lote | SH6.H6_DTVALID | CYV.CYV_DTVDLO | DATE | TBLLot.DtValidity | DATETIME |
| CloseOperation | Finaliza operación | SH6.H6_PT | CYV.CYV_LGEDRP | BOOLEAN | ||
| LocationCode | Localización | – | CYV.CYV_CDLC | CHAR(20) | TBLOutInteg.Address1Code | CHAR(15) |
ListOfReversalAppointments |
| ||||||
| IntegrationReport | Registro por revertirse | CHAR(10) | TBLOutInteg.TransacType | TINYINT | ||
| ReversalType | Tipo de reversión | CHAR(01) | ||||
| ReversalQuantity | Cantidad revertida | – | DEC(18,4) | |||
WasteAppointment |
| ||||||
| WasteCode | Código del desecho | SBC.BC_MOTIVO | CY0.CY0_CDRF | CHAR(02) | TBLOutInteg.ScrapCode | CHAR(15) |
| WasteDescription | Descripción del desecho | SBC.BC_DESCRI | CY0.CY0_DSRF | CHAR(40) | ||
| ScrapQuantity | Cantidad desechada | SBC.BC_QUANT | CY0.CY0_QTRF | DEC(11,2) | TBLOutInteg.Qty | DEC(18,4) |
| ScrapProduct | Producto desechado | SBC.BC_PRODUTO | – | CHAR(15) | ||
| WareHouseCode | Depósito del producto desechado | SBC.BC_LOCORIG | – | CHAR(10) | ||
| ScrapProductTo | Desecho generado | SBC.BC_CODDEST | – | CHAR(15) | ||
| WareHouseCodeTo | Depósito del desecho generado | SBC.BC_LOCAL | – | CHAR(10) | ||
| AdressCode | Ubicación origen | SBC.BC_LOCALIZ | CHAR(15) | |||
| AdressCodeTo | Ubicación destino | SBC.BC_LOCDEST | CHAR(15) | |||
| NumberSeries | Número de serie | SBC.BC_NUMSERI | CHAR(20) | |||
| NumberSeriesTo | Número de serie destino | SBC.BC_NSEDEST | CHAR(20) | |||
| LotCode | Lote | SBC.BC_LOTECTL | CHAR(10) | |||
| SubLoteCode | Sublote | SBC.BC_NUMLOTE | CHAR(06) | |||
| LotDueDate | Fecha de validez | SBC.BC_DTVALID | DATE | |||
| CostCenterCode | Centro de costo | SBC.BC_CC | CHAR(09) | |||
ResourceAppointment |
| ||||||
| OperatorCode | Código operador | – | CYW.CYW_CDOE | CHAR(20) | TBLOutInteg.UserCode | CHAR(30) |
| StartDateTime | Fecha/Hora inicial | – | CYW.CYW_DTBGRP | DATETIME | TBLMSGERP.Start | DATETIME |
| EndDateTime | Fecha/Hora final | – | CYW.CYW_DTEDRP | DATETIME | TBLMSGERP.End | DATETIME |
| MOBTime | Tiempo de mano de obra directa | – | CYW.CYW_QTTEOE | NUM(10) | ||
| ExtraTime | Tiempo extra | – | CYW.CYW_QTTEEX | NUM(10) | ||
| UtilTime | Tiempo útil | – | CYW.CYW_QTTEUT | NUM(10) | ||
| ProductionShiftCode | Código modelo de turno | – | CYW.CYW_CDTN | CHAR(08) | ||
| ProductionShiftNumber | Número de turno | – | CYW.CYW_NRTN | CHAR(05) | TBLOutInteg.Shift | SMALLINT |
SupplyOrder |
| ||||||
| ProductionOrderNumber | Número de orden de producción | SD3.D3_OP | CZP.CZP_NRORPO | CHAR(20) | TBLOutInteg.WOCode | CHAR(41) |
| MaterialCode | Código del ítem reserva | SD3.D3_COD | CZP.CZP_CDMT | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) |
| UsedQuantity | Cantidad utilizada | SD3.D3_QUANT | CZP.CZP_QTRPPO | DEC(12,2) | TBLOutInteg.Qty | DEC(19,4) |
| WarehouseCode | Código del depósito | SD3.D3_LOCAL | CZP.CZP_CDDP | CHAR(02) | TBLOutInteg.WarehouseCode | CHAR(15) |
| LocationCode | Localización | SD3.D3_LOCALIZ | CZP.CZP_CDLC | CHAR(15) | TBLOutInteg.Address1Code | CHAR(15) |
| LotCode | Lote/Serie | SD3.D3_LOTECTL | CZP.CZP_CDLO | CHAR(20) | TBLOutInteg.LotCode | CHAR(41) |
| ActivityCode | Código de la operación | – | CZP.CZP_CDAT | CHAR(02) | TBLOutInteg.WODetCode | CHAR(10) |
| ScriptCode | Procedimiento | – | CZP.CZP_CDRT | CHAR(02) | ||
ReportToolActivity |
| ||||||
| ToolCode | Código de la herramienta | – | CZ0.CZ0_IDFE | CHAR(20) |
Nota | ||
---|---|---|
| ||
|
...
|
...
|
Âncora
...
Consumodeloscomponentes Consumodeloscomponentes
...
Notas Consumo de los componentes:
...
Âncora Piso de fábrica Piso de fábrica
Notas de Piso de fábrica
Âncora Desecho Desecho
Notas de desecho
Transacción Apunte de parada de máquina: StopReport_1_001.xsd
Identificador del mensaje: StopReport
Versión: 1_001
Módulo Protheus: SIGAPCP
Tipo de envío: Síncrónica
Nota | ||
---|---|---|
| ||
Este mensaje se generará por el PC-Factory y se enviará al Protheus. |
Mensaje | Tag | Descripción | Tabla/Campo | Tabla/Campo | Tipo | Tabla/Campo: PC-Factory | Tipo |
| MachineCode | Código de la máquina | SH6.H6_RECURSO | CYX.CYX_CDMQ | CHAR(06) | TBLOutRSEv.ResourceCode | CHAR(15) |
| MachineDescription | Descripción de la máquina | |||||
| StopReasonCode | Código del motivo de parada | SH6.H6_MOTIVO | CYX.CYX_CDSP | CHAR(02) | TBLOutRSEv.ResourceStatusCode | CHAR(20) |
| StopReasonDescription | Descripción del motivo de parada | SX5.X5_DESCRI * | CYX.CYX_DSSP | CHAR(40) | ||
| StartDateTime | Fecha/Hora inicial | SH6.H6_DATAINI | CYX.CYX_DTBGSP | DATE | TBLOutRSEv.ShiftDtStart | DATETIME |
| EndDateTime | Fecha/Hora final | SH6.H6_DATAFIN | CYX.CYX_DTEDSP | DATE | TBLOutRSEv.ShiftDtEnd | DATETIME |
| OperatorCode | Código del operador | SH6.H6_OPERADO | CYX.CYX_CDOE | CHAR(20) | TBLOutRSEv.UserCodeStart | CHAR(30) |
| ReportDateTime | Fecha/Hora del informe | SH6.H6_DTAPONT | CYX.CYX_DTRP | DATE | TBLOutRSEv.DtTimeStamp | DATETIME |
| ToolCode | Código de la herramienta | -- | CYX.CYX_CDFEPO | |||
| ProductionTeamCode | Código del equipo | – | CYX.CYX_CDGROE | |||
| StopType | Tipo de parada (1=No programada;2=Programada) | – | CYX.CYX_TPSP | |||
| ReportSequence | ID PC-Factory | – | – | TBLOutRSEv.IDOutRSEv |
Nota | ||
---|---|---|
| ||
|
...
|
...
|
Transacción Saldo en stock - Request: StockLevel_2_000.xsd
Identificador del mensaje: StockLevel
Versión: 2_000
Módulo Protheus: SIGAPCP
Tipo de envío: Síncrónica
Para este tipo de actualización el PC-Factory solicita el saldo al Protheus. El mensaje tiene dos partes. El Request, en el cual se pasan los parámetros a la consulta del saldo, y el Return, que contiene la devolución del saldo.
El Request se generará por el PC-Factory y se enviará al Protheus. El Return se generará por el Protheus y se enviará al PC-Factory.
Request
Mensaje | Tag | Descripción | Tipo |
ListOfRequest | ItemInternalId | Código del producto | CHAR(15) |
ReferenceCode | Referencia | CHAR(20) | |
WarehouseInternalId | Código del depósito/local de stock/Almacén | CHAR(10) | |
LotNumber | Lote | CHAR(10) | |
SubLotCode | Sublote | CHAR(10) | |
SerialNumber | Número de serie | CHAR(20) | |
Address | Ubicación | CHAR(15) | |
LotExpirationDate | Fecha de validez | DATE |
Nota | ||
---|---|---|
| ||
|
Return
Mensaje | Tag | Descripción | Tabla/Campo | Tipo |
ReturnContentType | ClosingStockDate | Fecha de cierre de stock | – | |
ListOfReturnItem | CompanyId | Empresa | ||
BranchId | Sucursal | |||
CompanyInternalId | Empresa + Sucursal | |||
ItemInternalId | Código del producto | SB2.B2_COD | CHAR(15) | |
ReferenceCode | Referencia | – | ||
ListOfStockBalance | ||||
WarehouseInternalId | Local de stock (Almacén/Depósito) | SB2.B2_LOCAL | CHAR(10) | |
LotNumber | Número del lote | SB8.B8_LOTECTL | CHAR(10) | |
SubLotCode | Sublote | SB8.B8_NUMLOTE | CHAR(10) | |
LotExpirationDate | Fecha de validez | SB8.B8_DTVALID | DATE | |
SerialNumber | Número de serie | SBF.BF_NUMSERI | CHAR(20) | |
Address | Ubicación | SBF.BF_LOCALIZ | CHAR(15) | |
CurrentStockAmount | Saldo del producto en cantidad | SB2.B2_QATU | DEC(17,4) | |
BookedStockAmount | Cantidad reservada en stock | SB2.B2_RESERVA | DEC(17,4) | |
AvailableStockAmount | Saldo disponible del producto en cantidad | SB2.B2_QATU - SB2.B2_RESERVA | DEC(17,4) | |
UnitItemCost | Costo unitario del producto | – | ||
AverageUnitItemCost | Costo medio del producto | – | ||
ValueOfCurrentStockAmount | Saldo actual del stock del producto en valor | – |
Transacción Movimientos de stock: MovementsInternal_1_001.xsd
Identificador del mensaje: MovementsInternal
Versión: 1_001 Módulo Protheus: SIGAPCP
Tipo de envío: Síncrónica
Nota | ||
---|---|---|
| ||
Esta mensaje se generará por el PC-Factory y se enviará al Protheus. |
Mensaje | Tag | Descripción | Tabla/Campo | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | CompanyId | Código de la empresa. | ||||
BranchId | Sucursal | |||||
CompanyInternalId | InternalId de la clave completa de la empresa | |||||
InternalId | InternalId del movimiento. | |||||
TypeMovementCode | Código del tipo de movimiento interno | SD3.D3_TM | CHAR(03) | |||
EmissionDate | Fecha de emisión | SD3.D3_EMISSAO | DATE | TBLOutInteg. DtTimeStamp | DATETIME | |
ItemCode | Código del producto | SD3.D3_COD | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) | |
UnitOfMeasureCode | Unidad de medida | SD3.D3_UM | CHAR(02) | |||
Quantity | Cantidad | SD3.D3_QUANT | DEC(12,2) | TBLOutInteg.Qty | DEC(19,4) | |
WarehouseCode | Código del almacén | SD3.D3_LOCAL | CHAR(02) | TBLOutInteg.WarehouseCode | CHAR(15) | |
LotNumber | Lote | SD3.D3_LOTECTL | CHAR(10) | TBLOutInteg.LotCode | CHAR(41) | |
SubLotNumber | Sublote | SD3.D3_NUMLOTE | CHAR(06) | |||
LotExpirationDate | Fecha validez del lote | SD3.D3_DTVALID | DATE | TBLLot.DTDUE | DATETIME | |
Address | Ubicación | SD3.D3_LOCALIZ | CHAR(15) | TBLOutInteg.Address1Code | CHAR(15) | |
NumberSeries | NumberSeries | SD3.D3_NUMSERI | CHAR(20) | TBLOutInteg.LotCode | CHAR(41) | |
InputOrOutput | Movimiento de entrada o salida | E=Entrada / S = Salida | CHAR(01) | TBLOutInteg.MovTypeCode | CHAR(05) | |
ReferenceCode | Referencia | – | ||||
ScriptCode | Procedimiento | SD4.D4_ROTEIRO | CHAR(02) | |||
ActivityCode | Operación | SD4.D4_OPERAC | CHAR(02) | TBLOutInteg.WODetCode | CHAR(15) | |
ProductionOrderNumber | Orden de producción/documento | SD3.D3_OP e SD3.D3_DOC | CHAR(13) | TBLOutInteg.WOCode | CHAR(41) | |
FatherItemCode | Ítem principal | – |
Nota | ||
---|---|---|
| ||
Event: delete La otra información del XML, debe estar igual a la información que se envió en el mensaje que originó el movimiento. Ejemplo del XML: <BusinessEvent>
|
Transacción Transferencias: TransferWarehouse_1_003.xsd
Identificador del mensaje: TransferWarehouse
Versión: 1_003
Módulo Protheus: SIGAPCP
Tipo de envío: Síncrónica
Nota | ||
---|---|---|
| ||
Este mensaje se generará por el PC-Factory y se enviará al Protheus. |
Mensaje | Tag | Descripción | Tabla/Campo | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | CompanyId | Empresa | ||||
BranchId | Sucursal | |||||
CompanyInternalId | InternalId de la clave completa de la empresa | |||||
InternalId | InternalId de la transferencia | |||||
Number | Número del movimiento | SD3.D3_NUMSEQ | CHAR(06) | |||
RegisterDateTime | Fecha de emisión de la solicitud | SD3.D3_EMISSAO | DATE | |||
TransferWarehouseType | ||||||
InternalId | InternalId de la transferencia | |||||
EmissionDate | Fecha de emisión | SD3.D3_EMISSAO | DATE | TBLOutInteg.DtTimeStamp | DATETIME | |
ItemCodeFrom | Ítem/Producto origen | SD3.D3_COD | CHAR(15) | TBLOutInteg.ProductCode | CHAR(20) | |
ItemCodeTo | Ítem/Producto destino | SD3.D3_COD | CHAR(15) | TBLMovEv.ProductCode | CHAR(20) | |
UnitOfMeasureFrom | Unidad de medida origen | SD3.D3_UM | CHAR(02) | |||
UnitOfMeasureTo | Unidad de medida destino | SD3.D3_UM | CHAR(02) | |||
Quantity | Cantidad | SD3.D3_QUANT | DEC(12,2) | TBLOutInteg.Qty | DEC(19,4) | |
WarehouseCodeFrom | Código del almacén de origen | SD3.D3_LOCAL | CHAR(02) | TBLOutInteg.WarehouseCode | CHAR(15) | |
WarehouseCodeTo | Código del almacén destino | SD3.D3_LOCAL | CHAR(02) | TBLMovEv.WarehouseCode | CHAR(15) | |
LotNumberFrom | Número del lote de origen | SD3.D3_LOTECTL | CHAR(10) | TBLOutInteg.LotCode | CHAR(41) | |
LotNumberTo | Número del lote de destino | SD3.D3_LOTECTL | CHAR(10) | TBLMovEv.LotCode | CHAR(41) | |
SubLotNumber | Número del sublote | SD3.D3_NUMLOTE | CHAR(06) | |||
LotExpirationDateFrom | Fecha de validez del lote origen | SD3.D3_DTVALID | DATE | TBLLot.DtDue | DATETIME | |
LotExpirationDateTo | Fecha de validez del lote destino | SD3.D3_DTVALID | DATE | TBLLot.DtDue | DATETIME | |
AddressFrom | Ubicación origen | SD3.D3_LOCALIZ | CHAR(15) | TBLOutInteg.Address1Code | CHAR(15) | |
AddressTo | Ubicación destino | SD3.D3_LOCALIZ | CHAR(15) | TBLOutInteg.Address2Code | CHAR(15) | |
NumberSeries | Número de serie | SD3.D3_NUMSERI | CHAR(20) | TBLOutInteg.LotCode | CHAR(41) |
Nota | ||
---|---|---|
| ||
|
Transacción Rechazo: Refusal_1_000.xsd
Identificador del mensaje: Refusal
Versión: 1_000
Módulo Protheus: SIGAPCP
Tipo de envío: Síncrónica
Este mensaje se utilizará para registrar las pérdidas de la producción cuando se registran piezas buenas y posteriormente se verifica que hubo algún defecto. También puede utilizarse para registrar las pérdidas da materia prima.
Nota | ||
---|---|---|
| ||
Este mensaje se generará por el PC-Factory y se enviará al Protheus. |
Mensaje | Tag | Descripción | Tabla/Campo | Tipo | Tabla/Campo: PC-Factory | Tipo |
BusinessContentType | ProductionOrderNumber | Orden de producción | SBC.BC_OP | CHAR(20) | ||
IdReport | ID Apunte | CHAR(10) | ||||
ItemCode | Producto rechazado | SBC.BC_PRODUTO | CHAR(20) | |||
WarehouseCode | Código del depósito | SBC.BC_LOCORIG | CHAR(02) | |||
AddressCode | Ubicación | SBC.BC_LOCALIZ | CHAR(15) | |||
NumberSeries | Número de serie | SBC.BC_NUMSERI | CHAR(20) | |||
Type | Tipo de pérdida | SBC.BC_TIPO | CHAR(01) | |||
WasteCode | Motivo de pérdida | SBC.BC_MOTIVO | CHAR(02) | |||
WasteDescription | Descripción de la pérdida | SBC.BC_DESCRI | CHAR(40) | |||
LossQuantity | Cantidad de la pérdida | SBC.BC_QUANT | DEC(11,2) | |||
CostCenterCode | Centro de costo | SBC.BC_CC | CHAR(09) | |||
ItemCodeTo | Producto generado | SBC.BC_CODDEST | CHAR(20) | |||
WarehouseCodeTo | Código del depósito destino | SBC.BC_LOCAL | CHAR(02) | |||
AdressCodeTo | Ubicación destino | SBC.BC_LOCDEST | CHAR(15) | |||
NumberSeriesTo | Nº de Serie destino | SBC.BC_NSEDEST | CHAR(20) | |||
QuantityTo | Cantidad destino | SBC.BC_QTDDEST | DEC(11,2) | |||
ActivityCode | Operación | SBC.BC_OPERAC | CHAR(10) | |||
ResourceCode | Máquina/Recurso | SBC.BC_RECURSO | CHAR(20) | |||
LossDate | Fecha de pérdida | SBC.BC_DATA | DATE | |||
LotCode | Lote | SBC.BC_LOTECTL | CHAR(10) | |||
SubLotCode | Sublote | SBC.BC_NUMLOTE | CHAR(06) | |||
LotDueDate | Fecha de validez | SBC.BC_DTVALID | DATE |
Este mensaje tendrá las siguientes finalidades:
Âncora Pérdida del producto Pérdida del producto
Pérdida del producto terminado informando producto destino:
Permite que se modifique una determinada cantidad que se apuntó y está en el stock como buena. Se denomina rechazo del producto terminado, pues no será necesario realizar las reversiones y después el ajuste del apunte.
Ejemplo: OP de 50 unidades, 5 apuntes de 10, Necesidad de ajuste de 45 piezas con defectos y 5 buenas.
En lugar de revertir los 5 apuntes y "apuntar nuevamente" 5 buenas y 45 desechados en la ProductionAppointment podrá enviarse un mensaje de Rechazo de 45 a la OP, informando el motivo del rechazo/defecto y código del producto destino.
Âncora Pérdida de materia Pérdida de materia
Pérdida de materia prima:
El mensaje de rechazo también se utilizará para registrar la pérdida de materia prima durante el proceso productivo. La materia prima puede generar un subproducto o no.
Âncora Pérdida del producto terminado sin informar Pérdida del producto terminado sin informar
Pérdida del producto terminado sin informar el producto destino:
Puede utilizarse para informar la pérdida del producto terminado sin que sea necesario generar las tags de destino.
Nota | ||
---|---|---|
| ||
|
La integración no considera
...
registros vía Fluig (WorkFlow) o rutinas no descritas en este documento.
La Build debe ser igual o superior a 7.00.131227A y la fecha 08/09/2014.
...
Âncora | ||||
---|---|---|---|---|
|
PROTHEUS vs. APS vs. TOTVS MES
Las órdenes generadas por el APS se enviarán vía Schedule- PCPA114.
La integración del APS vs. PROTHEUS vs. TOTVS MES debe considerar SOLAMENTE las órdenes de producción modificadas y/o creadas por el APS y enviadas al PROTHEUS.
En el PCPA109, carpeta Órdenes de producción, es posible parametrizar si existe la integración con el APS. El Schedule para el envío de órdenes generadas solo se ejecutará si el parámetro "APS" estuviera marcado y la integración estuviera en PROTHEUS vs. APS - MV_APS = 'TOTVS'.
Se enviarán las órdenes con origen en el APS, tabla SC2, campos C2_OBS = TOTVSMES y C2_IDAPS cumplimentado. También se valida si existen datos en la tabla SHY.
Para el envío debe haber un control de lo que ya se envió, utilizando la tabla SOJ. Enviar solamente las órdenes que tengan datos en la SOJ con el parámetro de envío al MES como "N". Después del envío, actualice este campo a "S" . Cuando el APS actualice una orden, debe configurarse nuevamente el OJ_ENVMES como "N" para que el Schedule pueda enviarla nuevamente.
Para registrar el Schedule, debe utilizarse el SIGACFG - SCHEDULE. Configuración del Schedule en: Schedule - Cómo programar en agenda la ejecución de rutinas
Âncora SituacionesComunes SituacionesComunes
Posibles situaciones problemáticas comunes que pueden ocurrir durante el funcionamiento de la integración y cómo solucionarlos.
1) Cuando se envía un mensaje del PCP Protheus al PC-Factory, pueden ocurrir situaciones en las cuales el WebService no estará totalmente funcional. En estos casos, un mensaje de error genérico aparecerá en la pantalla:
No fue posible realizar la conexión con el WebService del PCFactory.
Para resolver este problema, verifique las configuraciones del sistema de destino, analizando el funcionamiento del servidor utilizado para esta comunicación y la habilitación de la dirección del WebService.
2) Clientes con modificaciones en el diccionario tienen reglas específicas que afectan las rutinas listadas en este documento.
Para resolver este problema, debe verificar el diccionario y ver caso a caso.
3) Tiempo de espera del WebService. Debido a que algunos procesos demoran cuando el ERP envía la devolución, el WebService puede no estar esperando más.
Modificar el tiempo de espera del WebService PC-Factory.
4) Si los ítems anteriores estuvieran correctos, intente modificar a True el parámetro MV_COPPI
Âncora ChecklistSoporte ChecklistSoporte
Checklist de verificaciones:
Âncora | ||||
---|---|---|---|---|
|