Aviso

Producto aún en etapa piloto.

Fomato de respuesta:

ÍNDICE

  1. Visión general
  2. Ejemplo de utilización
  3. Datos enviado
    1. Principales campos y parámetros
    2. Moneda del movimiento bancario
    3. Campo específico/pesonalizado
    4. Entes contables
  4. Tablas utilizadas


01. VISIÓN GENERAL


Modelo que se seguirá para la integración de Movimientos bancarios enviados del sistema Gesplan al Protheus.

El envío de datos debe realizarse vía SmartLink utilizando el Estándar CloudEvents para envío de mensajes en el formato Json.

El job FwTotvsLinkJob debe configurarse en el schedule, este es responsable por la lectura de los mensajes recibidos en la cola del SmartLink.


02. EJEMPLO DE UTILIZACIÓN

A continuación tenemos el modelo de mensaje enviado por Gesplan.

El atributo type indica el evento que se ejecutará en el ERP. El job FWTotvsLinkJob identifica un nuevo mensaje y ejecuta la clase MOVreadXGsp, responsable por la inclusión del Movimiento bancario (FINA100) vía rutina automática. El fuente que contiene la clase MOVreadXGsp es el FINI100G.prw.

Json de envío Movimiento bancario
{
	"specversion": "1.0",
	"type": "MOVreadXGsp",
	"tenantId": "c6486a57-3447-461d-bcdf-d66b94226f69",
	"time": "2022-11-08T15:18:08.367574Z",
	"data": [
			{ 
           	"CompanyId":"T1" ,
       		"BranchId":  "D MG 01",
            "E5_VALOR":  100 ,
            "E5_MOEDA":"M1" ,
            "E5_DATA":"08/11/2022" ,
            "E5_NATUREZ":"AUT0000001" ,
			"E5_CCUSTO": "CTBXATUC"
            "E5_BANCO":"004" ,
            "E5_AGENCIA":"001" ,
            "E5_CONTA":"04001" ,        
            "E5_RECPAG": "S",
 			"E5_BENEF":"001" ,
 			"E5_DOCUMEN": "DOC ID002", 
            "E5_HISTOR": "MOV BANC PAGAR", 
            "SYSCODE": "SYSCODE001",
			"ID"	: "ID001"
        	},
        	{ 
            "CompanyId":"T1" ,
            "BranchId":  "D MG 02",
            "E5_VALOR":  200 ,
            "E5_MOEDA":"M1" ,
            "E5_DATA":"08/11/2022" ,
            "E5_NATUREZ":"AUT0000001" ,
			"E5_CCUSTO": "CTBXATUC"
            "E5_BANCO":"004" ,
            "E5_AGENCIA":"001" ,
            "E5_CONTA":"04001" ,        
	        "E5_RECPAG": "E",
			"E5_BENEF":"001" ,
			"E5_DOCUMEN": "DOC ID002",
            "E5_HISTOR": "MOV BANC ENTRADA",
            "SYSCODE": "SYSCODE002",
 			"ID"	: "ID002" 
        	}
			]
}
Json de envío Transferencia bancaria
{
	"specversion": "1.0",
	"type": "MOVreadXGsp",
	"tenantId": "c6486a57-3447-461d-bcdf-d66b94226f69",
	"time": "2024-06-17T13:18:08.367577Z",
	"data": [
			{              
			"CompanyId":"T1" ,
			"BranchId":"D MG 01",
			"CBCOORIG":"001",
			"CAGENORIG":"001",
			"CCTAORIG":"001",
			"CNATURORI":"VIN001",
			"CBCODEST":"SMS",
			"CAGENDEST":"001",
			"CCTADEST":"001",
			"CNATURDES":"VND001",
			"CTIPOTRAN":"CH",
			"CDOCTRAN":"2024002", 
			"NVALORTRAN":99.99 ,
			"CHIST100":"TRANSFERENCIA CUENTA",
			"CBENEF100":"TOTVS",
			"DDATACRED":"17/06/2024",
			"NCTBONLINE":2,
			"E5_RECPAG":"T",
			"SYSCODE":"SYSCODE001",
			"ID":"ID001"          
			}
			]
}
Json de envÍo Reversión Transferencia
{
	"specversion": "1.0",
	"type": "MOVreadXGsp",
	"tenantId": "c6486a57-3447-461d-bcdf-d66b94226f69",
	"time": "2024-06-17T13:18:08.367577Z",
	"data": [
			{  
			"CompanyId":"T1" ,
			"BranchId":"D MG 01",
			"AUTNRODOC":"2024002",
			"AUTDTMOV":"17/06/2024",
			"AUTBANCO":"001",
			"AUTAGENCIA":"001",
			"AUTCONTA":"001",
			"E5_RECPAG":"X",
			"SYSCODE":"SYSCODE001",
			"ID":"ID001"          
			}
			]
}


Fomato de respuesta:

Ejemplo de respuesta
{
	"specversion": "1.0",
	"type": "MOVrespXGsp",
	"tenantId": "c6486a57-3447-461d-bcdf-d66b94226f69",
	"time": "2022-11-08T15:18:08.367574Z",
	"data": [
			{
   		    "CompanyId":"T1" ,
       		"BranchId":  "D MG 01",
            "SYSCODE": "SYSCODE001", 
		 	"ID"	: "ID001"  ,
			"error": "Descripción del error si hubiera"       
			}
			]
}

03. DATOS ENVIADOS

a. Principales campos y parámetros

a1. Movimiento bancario por pagar o cobrar

Campo

Descripción

Tipo

Tamaño(MÁX)

Obligatorio

Observación

CompanyId

Código del grupo de empresas

Carácter

2

X

Grupo de empresa del Protheus.

BranchId

Código de la sucursal

Carácter

8

X

Sucursal del Protheus.

Identificación de la sucursal del sistema donde ocurrirá el movimiento bancario. En entornos con Gestión de empresas, el BranchId está compuesto por Empresa + Unidad de negocio + Sucursal

E5_MOEDA

Dinero   

Carácter

2

X

N/A

E5_VALOR

Valor del movimiento    

Numérico

16

X

Decimal debe enviarse con el carácter punto

E5_DATA

Fecha del movimiento     

Carácter

10

X

Fecha enviada en formato carácter ddmmaaaa ej: "08/09/2022"

E5_NATUREZ

Modalidad  

Carácter

10

X

N/A

E5_BANCO

Código del banco          

Carácter

3

X

N/A

E5_AGENCIA

Agencia del banco          

Carácter

5

X

N/A

E5_CONTA

Cuenta corriente en el banco  

Carácter

10

X

N/A

E5_RECPAG

Cobranza o Pago 

Carácter

1

X

Enviar:

"S" → Movimiento por pagar (salida)

"E" → Movimiento por cobrar (entrada)

E5_CCUSTO

Centro de costo  

Carácter

9


N/A

E5_BENEF

Beneficiario             

Carácter

30


N/A

E5_DOCUMEN

Número del documento

Carácter

50


N/A

E5_HISTOR

Historial del movimiento

Carácter

40


N/A

SYSCODE

Clave identificadora Gesplan

Carácter


X

N/A

ID

Código de control Gesplan

Carácter


X

N/A

Específico

Variable




Ver más detalles de la utilización de campos específicos en el "ítem c" siguiente.


a2. Transferencia bancaria

CampoDescripciónTipoTamaño(MAX)ObligatorioObservación
CompanyIdCódigo del Grupo de empresasCarácter2X

Grupo de empresa del Protheus.

BranchIdCódigo de la sucursalCarácter8X

Sucursal del Protheus.

Identificación de la sucursal del sistema donde ocurrirá el movimiento bancario. En entornos con Gestión de empresas el BranchId está compuesto por la Empresa + Unidad de negócio + Sucursal

CBCOORIGCódigo del banco origen   Carácter3XN/A
CAGENORIGCódigo de la agencia origen  Carácter5XN/A
CCTAORIGCuenta corriente origen   Carácter10XN/A
CNATURORIModalidad origen Carácter10XN/A
CBCODESTCódigo del banco destinoCarácter3XN/A
CAGENDESTCódigo de la agencia destinoCarácter5XN/A
CCTADESTConta corrente destino Carácter10XN/A
CNATURDESModalidad destino Carácter10X

N/A

CTIPOTRANTipo da transferenciaCarácter6XN/A
CDOCTRANNúmero del documentoCarácter15XN/A
NVALORTRANValor que será transferido del banco origen al banco destino.Numérico16XDecimal debe enviarse con el carácter punto
CHIST100Historial de la transferenciaCarácter40XHistorial referente a la transferencia efectuada.
CBENEF100BeneficiarioCarácter30XNombre del favorecido en el caso de emitirse un cheque referente a transferencia.
NCTBONLINE¿Contabiliza On Line?Numérico1
1=Sí;2=No
DDATACREDFecha de créditoCarácter10XFecha enviada en formato carácter ddmmaaaa ej: "08/09/2022"
E5_RECPAGCobranza o pago Carácter1X

Enviar:

"T" → Transferencia bancaria (salida)

SYSCODE

Clave identificadora GesplanCarácter
XN/A

a3. Reversión de transferencias

CampoDescripciónTipoTamaño(MAX)ObligatorioObservación
CompanyIdCódigo del Grupo de empresasCarácter2X

Grupo de Empresa do Protheus.

BranchIdCódigo de la sucursalCarácter8X

Sucursal del Protheus.

Identificación de la sucursal del sistema donde ocurrirá el movimiento bancario. En entornos con Gestión de empresas el BranchId está compuesto por la Empresa + Unidad de negocio + Sucursal

AUTNRODOCNúmero del documento   Carácter15XN/A
AUTDTMOVFecha del movimiento   Carácter10XFecha enviada en formato carácter ddmmaaaa ej: "08/09/2022"
AUTBANCOCódigo del bancoCarácter3XCódigo del banco al que se refiere al documento que será revertido
AUTAGENCIAAgencia del bancoCarácter5XAgencia del banco al que se refiere el documento que será revertido
AUTCONTACuenta corriente en el bancoCarácter10XCuenta a la que se refiere el documento que se revertirá
E5_RECPAGTipo de movimiento Carácter1X

Enviar:

"X" → Reversión de la transferencia

SYSCODE

Clave identificadora GesplanCarácter
XN/A
IDCódigo de control GesplanCarácter
XN/A


b. Moneda del movimento bancario

        El Movimiento bancario se generará en la moneda del banco informado. De esta manera, al presentarse en informes y consultas, solamente tendrá su valor convertido si la moneda solicitada en los parámetros fuera diferente de la moneda del registro del banco.

c. Campo específico/personalizado

Existe la posibilidad de enviar cualquier otro campo existente en el diccionario de datos de la tabla SE5 del entorno donde se está procesando el mensaje. Este campo puede ser un campo estándar (no ejemplificado en la tabla anterior) o un campo personalizado (creado específicamente para el entorno Protheus donde la integración está activa). En este caso, basta que se inscluya una nueva línea en el contenido del mensaje, con el mismo formato Clave/Valor, de acuerdo con el siguiente ejemplo, donde incluimos los campos E5_DEBITO (campo estándar del producto) y E5_XDTCLI (campo específico del ERP del cliente).

Campos específicos
{
	"specversion": "1.0",
	"type": "MOVreadXGsp",
	"tenantId": "c6486a57-3447-461d-bcdf-d66b94226f69",
	"time": "2022-11-08T15:18:08.367574Z",
	"data": [
			{ 
           	"CompanyId":"T1" ,
       		"BranchId":  "D MG 01",
            "E5_VALOR":  100 ,
            "E5_MOEDA":"M1" ,
            "E5_DATA":"08/11/2022" ,
            "E5_NATUREZ":"AUT0000001" ,
            "E5_BANCO":"004" ,
            "E5_AGENCIA":"001" ,
            "E5_CONTA":"04001" ,        
            "E5_RECPAG": "S",
			"E5_DEBITO": "DEB000001"
			"E5_XDTCLI ": "09/11/2022",
			"E5_RECPAG": "S",
            "SYSCODE": "SYSCODE001",
			"ID"	: "ID001"
        	}
			]
}


d. Entes contables

A continuación se muestran los principales campos representando los entes contables que pueden utilizarse para clasificación del movimiento.

  • E5_DEBITO - Cuenta débito             
  • E5_CREDITO - Cuenta crédito            
  • E5_CCD - Centro de costo débito   
  • E5_CCC - Centro de costo crédito  
  • E5_ITEMD - Ítem contable débito     
  • E5_ITEMC - Ítem contable crédito     
  • E5_CLVLDB - Clase valor débito      
  • E5_CLVLCR - Clase valor crédito     


IMPORTANTE

Los campos SysCode y ID no se grabarán en el ERP, estos solamente son informaciones de control de Gesplan, que llegará en la requisición y se enviarán en la respuesta del procesamiento, indicando éxito o falla de la inclusión de este Movimiento bancario. Además de los índices consultados a disposición, es posible listar los registros generados por medio del campo origen, con contenido FINI100G.


04. TABLAS UTILIZADAS

  • SE5- Movimiento bancario
  • FK5- Movimientos bancarios
  • FK8- Datos contables