ÍNDICE

Nota

Esta rutina se ajustó para cumplir con la Ley general de protección de datos (Ley n° 13.70), teniendo en cuenta que algunos campos que presentan información considerada como datos sensibles y/o personales se ocultarán, y dejarán de ser legibles.

01. VISIÓN GENERAL

Esta rutina permite ejecutar las compensaciones de todos los anticipos efectuados y registrados, realizados por los proveedores (títulos tipo PA), además de notas de crédito por descontar (títulos tipo NDP).

Los anticipos seleccionados e informados por el usuario se deducirán del valor total del título original.

Anticipo vinculado al pedido de compra

Es posible vincular anticipos a pedidos de compra para que el sistema realice la compensación automáticamente al clasificar el documento de entrada. Vea más en Anticipo en el Pedido de compras.

02. EJECUCIÓN

  • Manual

Procedimiento efectuado de forma manual vía rutina Compensación cuentas por pagar (FINA340), con exhibición de las pantallas involucradas en el proceso y necesitando de acciones/comandos del usuario.

  • Automática

Procedimiento realizado de forma automática en la rutina de Compensación cuentas por pagar (FINA340), sin exhibición de pantallas o necesidad de interacción del usuario.

Se utiliza en personalizaciones donde el proceso no necesita de interacciones del usuario (MSEXECAUTO).

Ejemplo de rutina automática
#INCLUDE "Protheus.ch"
#INCLUDE "RWMAKE.CH"
#INCLUDE "TBICONN.CH"

Static __COMPAUT := Nil

User Function CMPAUTOMA()
	Local lRet := .F.
	Local cQry := ""
	Local aTipos := {"NF ", "PA ", "NDF"}
	Local cTblTmp := ""
	Local aNF := {}
	Local aPA_NDF := {}
	Local aContabil := {}
	Local bBlock := Nil
	Local aEstorno := {}
	Local nSldComp := 0
	Local nTaxaPA := 0
	Local nTaxaNF := 0
	Local nHdl := 0
	Local nOperacao := 0

	If __COMPAUT == Nil
		cQry := "SELECT E2_TIPO TIPO, R_E_C_N_O_ R_E_C_N_O FROM " + RetSqlName("SE2") + " "
		cQry += "WHERE E2_SALDO > 0 AND E2_TIPO IN (?) "
		cQry += "ORDER BY E2_TIPO" 
		cQry := ChangeQuery(cQry)
	__COMPAUT := FWPreparedStatement():New(cQry)
	EndIf

	__COMPAUT:SetIn(1, aTipos)
	cQry := __COMPAUT:GetFixQuery()
	cTblTmp := MpSysOpenQuery(cQry)

	While (cTblTmp)->(!Eof())
		If (cTblTmp)->TIPO $ MVPAGANT+"|"+MV_CPNEG
			Aadd(aPA_NDF, (cTblTmp)->R_E_C_N_O) 
		Else
			Aadd(aNF, (cTblTmp)->R_E_C_N_O)
		EndIf 

		(cTblTmp)->(DbSkip()) 
		lRet := .T.
	EndDo 

	(cTblTmp)->(DbCloseArea())
	cTblTmp := ""

	If lRet
		Pergunte("AFI340", .F.)
		lContabiliza := MV_PAR11 == 1
		lAglutina := MV_PAR08 == 1
		lDigita := MV_PAR09 == 1

		lRet := FinCmpAut(aNF, aPA_NDF, aContabil, bBlock, aEstorno, nSldComp, dDatabase, nTaxaPA ,nTaxaNF, nHdl, nOperacao)

		If lRet
			Alert("Compensación realizada con éxito")
		Else
			Alert("Ocurrió un error en el proceso de compensación")
		EndIf
	EndIf
	
Return

Observación

Para utilizar el proceso de Compensación automática cuentas por pagar es necesario activar la función: FinCmpAut.
La compensación puede realizarse de N a N: N anticipos/devoluciones (P87A o NDP) para N títulos (Fact, DP, etc.) o viceversa
.

Compensación cuentas por pagar automática 


03. OPERACIONES

  • Compensar

Por medio de esta operación es posible la compensación de títulos por pagar: 

 - Compensar títulos de un mismo proveedor/tienda con anticipos de este mismo proveedor/tienda.

 - Compensar títulos de un determinado proveedor con anticipos de este mismo proveedor, sin importar cuál es la tienda del título por compensar.

 - Compensar título de determinado proveedor con anticipos de diversos proveedores, pudiendo determinarse un rango de proveedores o todos. Con ello, el título puede compensarse con cualquier título de anticipo pendiente en el registro de títulos, sin importar quién es el proveedor de este título.


Importante: Fecha de la compensación

La fecha de la compensación debe ser mayor que la fecha de emisión de los títulos involucrados, por ejemplo:

  • PA con emisión el día 29/03
  • Fact con emisión el día 02/04

La compensación de estos títulos solamente podrá efectuarse después del día 02/04, teniendo en cuenta que el día 29/03 aún no existía la Fact, de esta manera, el concepto de bajas se aplicará correctamente en las operaciones de compensación. (E2_BAIXA mayor que E2_EMISSAO)

  • Por el Financiero, no es posible realizar la compensación de Pagos anticipados vinculados a Pedidos de compra. 

 

Importante: Filtro de sucursal

Para la compensación entre anticipos y títulos de diferentes sucursales, debe utilizarse la opción Sucursales para definir las sucursales que se considerarán para la selección de los títulos por compensar.
Si no se utilizara la opción Sucursales, solamente se considerarán para compensación los títulos de la sucursal actual
.

Observación

Si las tablas del módulo financiero fueran totalmente compartidas y no se utilizara la opción Sucursales, se considerarán para el proceso los registros de todas las sucursales. Si se utiliza la opción Sucursales, los registros se filtrarán por sucursal de origen (E2_FILORIG).

Observación

Si las tablas del módulo financiero fueran compartidas a nivel de sucursal, y no se utilizará la opción Sucursales, se considerarán para el proceso los registros cuya sucursal de origen (E2_FILORIG) sea la sucursal actual. Si se utilizará la opción Sucursales, los registros se filtrarán por sucursal de origen (E2_FILORIG).

Sucursal del proceso de compensación

Cuando el proceso de compensación se realiza con títulos de sucursales diferentes, la rutina considerará la sucursal del título de origen (de partida) de la compensación para grabar los movimientos (tabla SE5) y contabilidad (tabla CT2).

Obs: Comportamiento vigente en la rutina FINA340 con fecha igual o superior al , para dejar la rutina con el mismo comportamiento de la rutina FINA330 (Compensación por cobrar). Hasta entonces, la rutina FINA340 mostraba una pantalla para a seleccionar la sucursal del proceso después de hacer clic en la opción "Compensar".


  • Borrar

Operación que permite realizar el borrado del movimiento generado por la compensación

 

  • Reversión 

Operación que permite realizar la reversión del movimiento generado por la compensación, generando de esta manera su contrapartida.

 

  • Leyenda

Muestra el cuadro de leyendas y sus significados referidos de la situación del título por pagar.

 

  • Búsqueda

Busca el título dentro del archivo Cuentas por pagar, teniendo como resultado el título marcado y resaltado en la browse. 


  • Visualizar

Operación que permite visualizar el título marcado, pudiendo verificar su saldo y valor.

04. PARÁMETROS APLICADOS

Lista de parámetros aplicados al FINA340 y su procesamiento

    Pregunta

    Descripción

    ¿Considera Tienda?

    Este campo indica si la tienda del proveedor debe considerarse en el filtro de los registros que se compensarán. De esta manera, si se escogiera la opción "No", todos los títulos "PA" de todas las tiendas se traerán para la confirmación de la compensación. Si se escogiera la opción "Sí", solamente se considerarán las "PA" de la tienda del título principal. 

    ¿Considera proveedor?

    Informe la opción "Original" para que el proveedor que se considerará en la compensación sea el mismo del título, u "Otros" siendo posible compensar títulos entre diferentes proveedores. 

    ¿De Proveedor?

    Informe el código inicial del intervalo de proveedores que se considerarán en la compensación.

    ¿A Proveedor?

    Informe el código final del intervalo de proveedores que se considerarán en la compensación

    ¿Cons. las Sucursales siguientes?

    Informe "Sí" para que se consideren las sucursales de su sistema, o "No" para que se considere solamente la sucursal conectada
    Esta pregunta no tiene más efecto en el proceso de compensación. Utilice la opción Sucursales para seleccionar las sucursales que se considerarán para seleccionar los títulos que formarán parte de la compensación.

    ¿De Sucursal?

    Informe el código inicial del intervalo de sucursales que se considerarán en la compensación.
    Esta pregunta no tiene más efecto en el proceso de compensación. Utilice la opción Sucursales para seleccionar las sucursales que se considerarán para seleccionar los títulos que formarán parte de la compensación.

    ¿A Sucursal?

    Informe el código final del intervalo de sucursales que se considerarán en la compensación.
    Esta pregunta no tiene más efecto en el proceso de compensación. Utilice la opción Sucursales para seleccionar las sucursales que se considerarán para seleccionar los títulos que formarán parte de la compensación.

    ¿Agrupa asiento?

    Informe la opción "SÍ" para que los asientos contables generados por medio de la compensación se agrupen en un único asiento 

    ¿Muestra asientos?

    Informe la opción "SÍ" para que los asientos contables generados por medio de la compensación se muestren en pantalla, o "NO", en caso contrario. 

    ¿Compensa títulos? 

    Informe la opción "Normales" para que se consideren en la compensación los títulos del tipo Fact, PA, NDP, o "Impuesto" para que se consideren los títulos de impuestos generados TX y TXA

    ¿Contabiliza On Line?

    Informe "SÍ" para que la contabilidad de los asientos referentes a la compensación de cuentas por pagar se realice online, o "NO", en caso contrario. 

    ¿Compensa transferidos?

    Informe "Sí" si permite la compensación de títulos transferidos al banco (Borderó), o "No" en caso contrario.

    ¿Compensa saldo del impuesto?

    Define si en el momento de la compensación entre impuestos, no se pondrá en cero el saldo del TX, dejando pendiente para envío del DARF y pago del impuesto, la funcionalidad de esta pregunta solamente se aplicará si

    la pregunta ¿Compensa títulos? = "Impuestos"

    ¿Considera Bj de los Imp. del PA ?

    Define si en el momento de la compensación entre títulos normales Fact x PA, si los impuestos del tipo TXA del PA tuvieran baja, estos valores se utilizarán para liquidar el saldo del TX de la Fact, la funcionalidad de esta pregunta solamente se aplicará si

    la pregunta ¿Compensa títulos? = "Normales"

     

    Parámetro

    Descripción 

    Estándar

    MV_CTBFLAG

    Indica si el marcado de los flags de contabilidad de las rutinas offline se realizará en la transacción del asiento contable - SIGACTB.  

    .F.

    MV_BX10925

    Define el momento del tratamiento de la retención de los impuestos Pis Cofins y Csll, 1 = En la baja o 2 = En la emisión.  

    1

    MV_PABRUTO

    Define si en la generación del PA con impuestos 1 = Genera un PA con el valor bruto. 2 = Genera un PA  con el valor neto (estándar del sistema).  

    2

    MV_LIBCHEQ

    Esta opción se utiliza para liberar el saldo bancario en la generación de cheques antes de la baja.  

    S

    MV_PAPRIME

    Define si en la generación del PA con impuestos, se aprovisionarán los impuestos de Inss e Iss para PA Neto 1=Sí 2=No (Default)  

    2

    MV_CTLIPAG

    Controla las bajas por pagar por medio de la fecha de liberación completada, si fuera .T. el sistema verifica si se completó el campo E2_DATALIB, en caso contrario no controla. 

    .F.

    MV_VLMINPG

    Valor mínimo para ejecutar la baja del título, aunque el campo E2_DATALIB no se hubiera completado y el parámetro MV_CTLIPAG fuera .T.  

    0

    MV_IMPADT

    Define la utilización de la generación de IRRF en anticipo por pagar.  


    MV_SOLNCP

    Define si debe utilizarse la rutina de solicitud de Nota de crédito  

    .F.

    MV_MUNIC

    Se utiliza para identificar el código dado al Departamento de finanzas del municipio para pagar el ISS.  

    MUNIC

    MV_MCUSTO

    Moneda utilizada para verificar el límite de crédito informado en el Archivo de clientes.  

    2

    MV_COMSEIC

    Habilita la integración del pedido de compra de servicios al Easy Siscoserv.  

    .F.

    MV_ESS0012

    Habilita la integración del Documento de entrada del SIGACOM con el SIGAESS.  

    .F.

    MV_ESS0013

    Habilita la integración de los títulos generados en el SIGAFIN por el SIGACOM con el SIGAESS.  

    .F.

    MV_ESS0022

    Habilita la integración SIGAEIC vs. SIGAESS

    .F.

    MV_JURXFIN

    Habilita la integración entre los módulos SIGAFIN - Financiero y SIGAPFS - Jurídico estándar deshabilitado.  


    MV_PCOINTE

    Indica si la integración de los procesos de Planificación y control presupuestario con los procesos de Registros / Bloqueos está activa (1=Sí/ 2=No).

    2

    MV_BXDTFIN

    No permite fecha de baja menor que la fecha contenida en el parámetro MV_DATAFIM (1=Permite, 2=No permite)  

    2

    MV_UNIAO

    Se utiliza para identificar el código dado al Fisco para pago del Impuesto a la renta.  

    UNIAO

    MV_ESTADO

    Sigla del estado de la empresa usuaria del sistema para efectos de cálculo de ICMS (7, 12 ó 18%).  

    SP

    MV_PISNAT

    Modalidad para títulos referentes al PIS.

    PIS

    MV_COFINS

    Modalidad para títulos referentes al COFINS.

    COFINS

    MV_CSLL

    Modalidad para títulos referentes al CSLL

    CSLL

    MV_IRF

    Modalidad para títulos referentes al IRF

    IRF

    MV_ISS

    Modalidad para títulos referentes al ISS

    ISS

    MV_BP10925

    Define si en el valor de pago debe considerar el valor bruto de la baja parcial o el valor neto, considerando los impuestos.(1=Val Bruto/2=Val Neto)

    1

    MV_COMPCP

    Indica si en la compensación de una Fact con un PA los impuestos serán proporcionales.  

    .F.

    MV_MRETISS

    Modo de retención del ISS en las adquisiciones de servicios 1 = en la emisión del título principal; 2 = en la baja del título principal  

    1

    MV_CPIMPAT

    Indica si habrá compensación automática de impuestos por pagar. 1 - Automática; 2 - Manual  

    2

    MV_AG10925

    Indica si los impuestos de PCC se agruparán en un título solamente si ocurrieran los tres impuestos en el mismo título.  

    2

    MV_FINVDOC

    ¿Activa el control de documentos obligatorios en las rutinas de liberación para baja / movimiento de los títulos por pagar? ("1" = Sí / "2" = No)  

    2

    MV_CMTXCON

    Indica que se generará corrección monetaria para títulos con tasa contratada en la compensación CP T = Genera CM / F = No genera CM  

    .F.

    MV_CALCCM

    Indica si el cálculo de corrección monetaria se efectuará o no. Validos: "S" - calcula o "N" - no calcula.  

    S

    MV_TXPRCON

    Define si la tasa informada en la compensación se utilizará en todo el proceso. T = Tx en el Proceso, F = Tx Individual

    .F.

    Opciones para configuración de los parámetros MV_PABRUTO, MV_BP10925, MV_PAPRIME 

    Si el parámetro MV_PABRUTO, estuviera igual a 2 (Neto), al generar títulos del tipo PA (pago anticipado), se mantiene la generación con el valor neto, donde se descuentan los valores de impuestos que pueden retenerse en la inclusión.

    Al realizar la compensación de un título, por ejemplo, del tipo Fact con un PA, siendo que ambos retienen impuestos en la baja, es aconsejable que los siguientes parámetros se configuren de la siguiente manera, para que haya coherencia de valores:

    • MV_COMPCP = .T. - Indica si en la compensación de una Fact con un PA los impuestos serán proporcionales.
    • MV_BP10925 = 2 - Considera valor neto en la baja Parcial descontados los impuestos.
    • MV_PAPRIME = 1 - Considera aprovisionamiento de impuestos para PA Neto. 

    Si el parámetro MV_PABRUTO estuviera igual a 1 (Bruto)  al generar títulos del tipo PA, este se genera con el valor bruto, sin descontar los valores de impuestos que pueden retenerse en la inclusión. Entonces la compensación de una Fact con un PA debe ser por el valor bruto, configurando los parámetros de acuerdo con lo siguiente:  

    • MV_PABRUTO = 1 - Bruto y MV_BX10925 = 1 Impuesto en la baja o MV_BX10925=2 Impuesto en la emisión
    • MV_BP10925 = 1  - Considera valor Bruto en la baja Parcial sin descontar los impuestos.
    • MV_PAPRIME = 2 - No considera aprovisionamiento de impuestos para PA Neto.


    Importante

    Si el sistema no estuviera configurado con una de estas dos opciones, puede suceder que al efectuar la reversión, el título tipo PA quede con el estatus parcialmente compensado.

    Observación

    El parámetro MV_COMPCP no influye si el parámetro MV_PABRUTO estuviera con el valor en 1. Independientemente de que los títulos tengan impuestos, o no, es necesaria la parametrización.

    Modalidades

    La compensación entre Fact x PA, partiendo tanto de la Fact como del PA, no se permite si el parámetro MV_PABRUTO estuviera con el valor 2 (Neto) y las modalidades estuvieran diferentes.

    Sin embargo, se recomienda utilizar la misma modalidad financiera para los títulos de Fact y de PA para garantizar que no ocurra divergencia en los valores de los impuestos generados.

    05. CONTABILIDAD

    La contabilidad de los procesos aplicados a la compensación cuentas por pagar vía módulo Financiero se realiza por los asientos estándar siguientes:

    LP

    Hecho generador

    ON

    OFF (CTBAFIN)

    589Anulación de compensación de títulos cuentas por pagarXX
    597Compensación cuentas por pagar XX


    ¡IMPORTANTE!

    La contabilidad de la compensación siempre se realizará con base en los datos del Título compensado, pudiendo ser cualquier tipo de obligación: NF, TX, DP, etc. (Cuyo movimiento (SE5) tenga esta clasificación: E5_TIPODOC = 'CP' y E5_MOTBX = 'CMP')

    Variables de contabilidad

    A continuación se muestra la lista de variables que pueden utilizarse en la configuración del Asiento estándar 597 (Compensación Cuentas por pagar) para contabilidad online de la Compensación por pagar (FINA340):

    VALOR - Almacena el valor compensado
    VALOR2 - Valor de aumento
    VALOR3 - Valor de decremento
    VALOR4 - Variación de la corrección monetaria
    VLRINSTR - Almacena el valor compensado
    nSldReal - Almacena el valor compensado en la moneda correspondiente del título
    DESCUENTO - Valores de descuentos
    REGVALOR - Recno del registro actual
    STRLCTPAD - Clave del título principal+número del documento

    Estas variables se alimentan con los datos del registro marcado de donde partió la compensación. Mientras que para los registros seleccionados para compensar, la contabilidad se realiza por la SE5. 

    En la contabilidad on-line, no es posible modificar la sucursal de contabilidad, siendo contabilizado en la sucursal del proceso de compensación (sucursal del título de partida de la compensación).

     

    Ejemplo:

    Seleccionar la Fact1 y hacer clic en Compensar.

    En la pantalla de selección de los títulos por compensar, seleccione la PA1 y PA2.

    Al contabilizar on-line, la información de la Fact1 estará en las variables de contabilidad. La información de la compensación de cada PA, tendrá su respectivo registro de la SE5 marcado.

     

    Variables de reversión:

    VALOR - Almacena el valor compensado
    VLRINSTR - Almacena el valor compensado

    Al forzar el marcado de los títulos que se compensarán, la contabilidad traerá los dos títulos (ej: Fact x PA), contabilizando el valor de los dos títulos, pudiendo generar duplicidad en la contabilidad.

    Las variables disponibles para la contabilidad off-line (CTBAFIN):

    VALOR - Almacena el valor compensado
    VALOR2 - Valor de aumento
    VALOR3 - Valor de decremento
    REGVALOR - RECNO del registro actual
    STRLCTPAD - Clave del título principal+número del documento

    Obs.: Estas variables están disponibles tanto para la compensación como para la reversión.

    Estas variables se alimentan con los datos del registro marcado de donde partió la compensación. Mientras que para los registros seleccionados para compensar, la contabilidad se realiza por la SE5.

    Ejemplo: AE597

    Completar en el campo CT5_HIST: U_HIST597()

    Crear la siguiente función:


    User function HIST597()
        Local aSaveSE5 := SE5->(GetArea())
        Local aSaveSE2 := SE2->(GetArea())
        Local xRet := Nil
    
        If REGVALOR <> 0
            SE2->(dbGoto(REGVALOR))
            xRet:= "TESTE TIPO: "+ SE2->E2_TIPO + " RECNO: "+ ALLTRIM(STR(SE2->(RECNO())))
        Else
            xRet:= "TESTE TIPO: "+ SE5->E5_TIPO + " TIPODOC: "+SE5->E5_TIPODOC + " RECNO: "+ ALLTRIM(STR(SE5->(RECNO())))
        Endif
    
        RestArea(aSaveSE2)
        RestArea(aSaveSE5)
    Return(xRet)

    Información

    Contabilidad del tipo DIC

    La contabilidad del título del tipo DIC generado por la compensación, puede contabilizarse por el AE 510 - Inclusión de títulos por pagar, pues este se genera por medio de la rutina automática del FINA050 (Cuentas por pagar).

     

    Contabilidad le los impuestos generados en la compensación.

    La contabilidad de los impuestos generados por la compensación, pueden contabilizarse por el propio AE 597 - Compensación por pagar, por medio de las variablesNPIS340, NCOF340, NCSL340, NIRF340 y NISS340.


    06. TABLAS

    • SE2 - Archivo del cuentas por pagar. 
    • SEF - Archivo de cheques. 
    • SED - Archivo de modalidades.
    • SA2 - Archivo de proveedores.
    • FK2 - Bajas por pagar.
    • FK3 - Impuestos calculados.
    • FK4 - Impuestos retenidos.
    • FK5 - Movimientos bancarios.
    • FK6 - Valores complementarios.
    • FK7 - Tabla auxiliar.  
    • FKA - Rastreo de movimiento.

    07. PUNTOS DE ENTRADA

    Punto de entrada

    Observación

    F340BROW

    El punto de entrada F340BROW se activará antes del browse y podrá utilizarse en el tratamiento de los datos mostrados en el browse.

    Documentación: http://tdn.totvs.com/x/56Jc

    F340LIBT

    El punto de entrada indica si habrá la validación de liberación del título en el momento de la compensación.

    Documentación: http://tdn.totvs.com/x/_a2FDg

    F340DTFIN

    El PE se activa en las validaciones del parámetro MV_DATAFIN existentes en la Compensación CP.

    Documentación: http://tdn.totvs.com/x/6qJc

    F340TAXA

    En este punto de entrada es posible modificar las tasas de las monedas que se utilizarán en la compensación del cuentas por pagar.

    Documentación: http://tdn.totvs.com/x/aK_FDg

    F340ATLIS

    Este Punto de entrada permite el manejo del Array aTitulos, para modificación del listBox de la pantalla de compensación.
    Documentación: http://tdn.totvs.com/x/gKRc

    F340TOTCP

     Punto de entrada F340TOTCP() permite manejar los valores totales de los títulos que se compensarán.

    Documentación: http://tdn.totvs.com/x/nYIbCQ

    F340MKTIT

    El punto de entrada F340MKTIT permite la personalización de los títulos seleccionados en la markbrowse. Permite el manejo del array que contiene los títulos, y
    con la 8ª ocurrencia de este, contiene un valor lógico que indica si el título está marcado o no.
    Documentación:http://tdn.totvs.com/x/L6Rc

    F340NAT


    F340_PA

    El punto de entrada F340_PA se ejecutará después de contabilizar cada título de compensación por pagar.

    Documentación: http://tdn.totvs.com/x/7aJc

    F340SE5

    El punto de entrada F340SE5 maneja Movimientos bancarios procesados teniendo como parámetro el Recno de los registros SE5 utilizados en la Compensación.

    Documentación: http://tdn.totvs.com/x/sAKqC

    F340GRV

    El punto de entrada F340GRV valida la inclusión en la rutina de Compensación de cuentas por pagar  (FINA340)

    Documentación: http://tdn.totvs.com/x/IgBzB

    F340ACAN

    Este punto de entrada permite que se cree una regla para informar cuándo se Revertirá o no.

    Documentación: http://tdn.totvs.com/x/j7GFDg

    F340CAN

    Punto de entrada que se activa al realizar la confirmación de la reversión de compensación.

    Documentación: http://tdn.totvs.com/x/zoFdAg

    F340GREST

    Grabación de datos adicionales en la reversión de la compensación

    Documentación: http://tdn.totvs.com/x/iqVc

    F340FCAN

    Puto de entrada que permite la grabación de información complementaria en el momento de la reversión de la compensación.

    Documentación: http://tdn.totvs.com/x/W7KFDg

    FA340QRY

    Complemento de query para anulación de la compensación

    Documentación: http://tdn.totvs.com/x/lgwGD 

    FA340FILT

    El punto de entrada FA340FILT se ejecuta en el montaje de la tabla de títulos por compensar y se utilizará para seleccionar qué títulos se compensarán
    Documentación: http://tdn.totvs.com/x/rqNc

    F340CMP

    Tiene como finalidad permitir al usuario calcular el título de NDP o PA y se activará en la función Fa340Tit()

    Documentación: http://tdn.totvs.com/x/6aJc

    FA340ORD

    Punto de entrada que permite la modificación del índice, cambiando de esta manera el orden de los títulos mostrados en la markbrowse para la compensación por pagar
    Documentación: http://tdn.totvs.com/x/r6Nc

    F340ValOk

    El punto de entrada F340ValOk, permite el control de los datos y de la confirmación de la pantalla de compensación de títulos por pagar
    Documentación: http://tdn.totvs.com/x/fKVc

    F340TOTCP

    Permite manejar los valores totales de títulos que se compensarán.

    Documentación: http://tdn.totvs.com/x/nYIbCQ

    F340VLD

    Punto de entrada que permite validar si un título se compensará o no.
    Documentación: http://tdn.totvs.com/x/J6Vc

    F340LEGE


    SE5FI340

    Punto de entrada que permite realizar grabaciones complementarias en la tabla SE5, después de la grabación del movimiento bancario del título principal en la compensación por pagar automática
    Documentación: http://tdn.totvs.com/x/56Rc

    SE5FI341

    Punto de entrada que permite realizar grabaciones complementarias en la tabla SE5, después de la grabación del movimiento bancario del título de Anticipo en la compensación por pagar automática.
    Documentación: http://tdn.totvs.com/x/6KRc

    F340GERNDF

    Posibilidad de grabar campos adicionales en la inclusión de la NDP generada por la compensación por pagar.

    Documentación: http://tdn.totvs.com/x/kvdbDQ

    FA340NDFGrv


    F340FLCP

    Permite implementar una expresión complementaria en el filtro de títulos.

    Documentación: http://tdn.totvs.com/x/66Jc

    F340FCPTOP

    Este punto de entrada permite crear un nuevo filtro para la rutina de Compensación cuentas por pagar - FINA340. 

    Documentación: http://tdn.totvs.com/x/r_xZE


    08. OTRAS REGLAS DE COMPENSACIÓN


      Reglas

      para generación de corrección monetaria en el proceso de compensación del cuentas por pagar:

       

      • Compensación de títulos con tasas contratadas iguales - Se generará el valor de corrección monetaria solamente si la tasa del movimiento fuera modificada en la pantalla de compensación. En este caso, la corrección monetaria estará vinculada al título ubicado al inicio de la compensación (y no a los títulos seleccionados posteriormente) y el valor será con base en la diferencia entre el valor con la tasa contratada y el valor considerando la nueva tasa informada (no existe uso de la tasa diaria).
      • Compensación de títulos sin tasas contratadas - El valor de corrección monetaria se generará para cada título involucrado en el proceso de compensación, si hubiera una diferencia entre el valor de la tasa en el día de la inclusión del título y el valor de la tasa en el día de la baja de la compensación. Obs.: Si hubiera una modificación en el valor de la tasa en el momento de la compensación, este valor se considerará solamente para el título marcado y su corrección monetaria será referente a la diferencia entre el valor considerando la nueva tasa (informada en pantalla) y el valor considerando la tasa en el día de la inclusión. Para todos los otros títulos involucrados en este proceso de compensación, se considerará la tasa del día de la compensación y la tasa del día de la inclusión.
      • Compensación de títulos con tasas contratadas diferentes - Por norma, el sistema no permite realizar este tipo de compensación. Sin embargo, es posible habilitarla por medio del parámetro MV_CMTXCON (https://tdn.totvs.com/x/7ZVWFw). En este caso, la corrección monetaria se generará siempre vinculada a la factura. El valor será referente a la diferencia del valor de la factura y el valor del pago compensado.
      • Tasa informada en la compensación - Por estándar el sistema asume la tasa informada en la compensación solamente para el título de partida (marcado). Sin embargo es posible definir si la tasa informada se considerará en todo el proceso por medio del parámetro MV_TXPRCON(parámetro MV_TXPRCON). En este caso, la tasa informada se considerará no solamente para el título de partida sino también para los seleccionados, de acuerdo con la moneda. Si utilizara la tasa por proceso la corrección monetaria se dará por la variación de la tasa del título (Tasa del día o Tasa contratada) con la tasa informada. Si no se hubiera informado la tasa, el sistema sigue el comportamiento estándar.


      Importante

      Para la generación de corrección monetaria, es necesario que el parámetro MV_CALCCM esté habilitado.

        Atención

        El proceso descrito se refiere solamente al escenario neto:

        MV_PABRUTO = 2 (Neto)
        MV_COMPCP = .T.
        MV_BP10925 = 2
        MV_PAPRIME = 1

         

        Para el escenario bruto, las compensaciones ocurren sin la generación de DIC acumulado.


        DIC acumulado

        Al realizar una compensación de Fact que tiene retención en la baja con múltiples pagos anticipados que no tenga configuración para retención, se generará un único título del tipo DIC para el último PA compensado, este DIC tendrá el valor acumulado de la diferencia de impuesto una vez calculados los otros PA.

         

        Ejemplo: Compensación entre un 3 PA sin retención X 1 Fact con retención

        Fact de R$ 1000,00

        Con PCC en la baja (4,65%) = R$ 46,50

        Valor neto total = R$ 1000,00 (Valor de la Fact) - R$ 46,50 (Impuestos en la baja) = R$ 953,50

        Saldo Fact = R$ 1000,00 


        PA 1 de R$ 300,00

        Sin impuestos

        Valor neto = R$ 300,00

        Saldo PA= R$ 300,00


        PA 2 de R$ 300,00

        Sin impuestos

        Valor neto = R$ 300,00

        Saldo PA= R$ 300,00


        PA 3 de R$ 300,00

        Sin impuestos

        Valor neto = R$ 300,00

        Saldo PA= R$ 300,00

         

        El cálculo de la compensación se realizará internamente por la rutina en tres partes, como si estuviera compensando cada PA separadamente, generando el DIC solamente en la última compensación.

         

        1ª compensación - Compensar Fact x PA:

        Saldo Fact = R$ 1000,00(Saldo Fact) - R$ 13,95 (PCC generado en la compensación) - R$ 286,05 (valor compensado) = 700,00

        Movimiento: R$ 300,00

        Generó los impuestos configurados en la baja, en el ejemplo, el PCC por el valor de R$ 13,95 con base de cálculo de R$ 300,00

        Saldo PA = 300,00(Saldo PA) - 300,00 (valor compensado) = 0,00

        Valor referente a la Diferencia de impuesto calculado: 13,95

        *Importante

        Como se mencionó anteriormente el DIC no se generará en este momento.

         

        2ª compensación - Compensar Fact x PA:

        Saldo Fact = R$ 700,00(Saldo Fact) - R$ 13,95 (PCC generado en la compensación) - R$ 286,05 (valor compensado) = 400,00

        Movimiento: R$ 300,00

        Generó los impuestos configurados en la baja, en el ejemplo, el PCC por el valor de R$ 13,95 con base de cálculo de R$ 300,00

        Saldo PA = 300,00(Saldo PA) - 300,00 (valor compensado) = 0,00

        Valor referente a la diferencia de impuesto calculado: 13,95

        *Importante

        Como se mencionó anteriormente el DIC no se generará en este momento.

         

        3ª compensación - Compensar Fact x PA:

        Saldo Fact = R$ 400,00(Saldo Fact) - R$ 13,95 (PCC generado en la compensación) - R$ 286,05 (valor compensado) = 100,00

        Movimiento: R$ 300,00

        Generó los impuestos configurados en la baja, en el ejemplo, el PCC por el valor de R$ 13,95 con base de cálculo de R$ 300,00

        Saldo PA = 300,00(Saldo PA) - 300,00 (valor compensado) = 0,00

        Valor referente a la Diferencia de impuesto calculado: 13,95


        Importante

        El DIC solamente se generará en este momento. Por el valor acumulado de 41,85.


        Valor del DIC generado = 13,95 (DIC calculado en la 1ª compensación) + 13,95 (DIC calculado en la 2ª compensación) + 13,95 (DIC calculado en la 3ª compensación) = 41,85

        Atención

        El proceso descrito se refiere solamente al escenario neto:

        MV_PABRUTO = 2 (Neto)
        MV_COMPCP = .T.
        MV_BP10925 = 2
        MV_PAPRIME = 1


        Compensación total sin generación de DIC

        Al realizar una compensación de una Fact que tenga retención con PA sin retención, donde el valor neto de la Fact sea el total de los PA la rutina no generará DIC.


        Ejemplo: Compensación total entre un 2 PA sin impuesto X Fact con impuestos

        Fact de R$ 1000,00

        Con PCC en la Baja (4,65%) = R$ 46,50

        Valor neto total = R$ 1000,00 (Valor de la Fact) - R$ 46,50 (Impuestos en la baja) = R$ 953,50

        Saldo Fact = R$ 1000,00 


        PA de R$ 500,00

        Sin impuestos

        Valor neto = R$ 500,00

        Saldo PA= R$ 500,00


        PA de R$ 453,50

        Sin impuestos

        Valor neto= R$ 453,50

        Saldo PA= R$ 453,50


        Compensar 1

        Fact x 2 PA:

        Observe que el valor neto de la factura es igual a la suma de los PA, de esta manera no se pagó ningún valor a más al proveedor:

        Se generarán las retenciones configuradas para calcularse en la baja, en el ejemplo, PCC por el valor de R$ 23,25 referente a la primera compensación.

        Se generarán las retenciones configuradas para calcularse en la baja, en el ejemplo, PCC por el valor de R$ 23,25 referente a la segunda compensación.

        Saldo Fact = R$ 1000,00 (Saldo Fact) - R$ 23,25 (PCC generado en la 1ª compensación) - R$ 23,25 (PCC generado en la 2ª compensación) - R$ 500,00 (valor compensado del 1º PA) - R$ 453,50 (valor compensado del 2º PA) = 0,00

        Saldo 1º PA = 500,00 (Saldo PA) - 500,00 (valor compensado) = 0,00

        Saldo 2º PA = 453,50 (Saldo PA) - 453,00 (valor compensado) = 0,00

        No tenemos generación de DIC

        Ejemplo: Reversión de la 2º compensación (2º PA).

        Al realizar la reversión de la 2º compensación (2º PA):

        Se borrarán las retenciones generadas por la compensación, en el ejemplo, el PCC por el valor de R$ 23,25

        Saldo Fact = 500,00

        Saldo PA = 453,50

        El sistema evalúa las compensaciones anteriores a la última revertida e identifica si será necesaria la generación de un nuevo DIC.

        Valor del DIC generado = 23,25 (DIC calculado en la 1ª compensación) = 23,25

        El título DIC generado será referente a la última compensación, en el ejemplo anterior sería el 1º PA por el valor de 500.


        Atención

        Para compensaciones realizadas de forma individual (1 PA x 1 Fact) el sistema genera el DIC independientemente, es decir, un DIC para cada compensación. No habrá generación de DIC acumulado.

        Contabilidad del DIC

        La inclusión del título del tipo DIC puede contabilizarse por medio del AE 510 (Cuentas por pagar - Inclusión de títulos).

        El borrado del título del tipo DIC puede contabilizarse por medio del AE 515 (Cuentas por pagar - Borrado de títulos).

        Obs. Para que se contabilicen los AE 510 y 515 la pregunta: Contabiliza Online de la rutina Cuentas por pagar (FINA050) debe estar como .

        Atención

        El proceso descrito se refiere solamente al escenario neto:

        MV_PABRUTO = 2 (Neto)
        MV_COMPCP = .T.
        MV_BP10925 = 2
        MV_PAPRIME = 1


        Proceso de generación del DIC en el momento de la reversión

        Para compensaciones realizadas con más de un título solamente se permitirá la reversión/borrado por orden de compensación. De la última compensación a la primera, cualquier orden diferente de esta, la rutina mostrará un alerta bloqueando el proceso.

        Al realizar la reversión/borrado de la última compensación, la rutina también borrará el título del tipo DIC. Después de este proceso, si fuera necesario se generará un nuevo DIC referente a las compensaciones anteriores con base en el ultimo PA compensado.


        Ejemplo: Reversión de la 3ª compensación

        Saldo Fact = R$100,00,00(Saldo Fact) + R$ 13,95 (PCC generado por la compensación) + R$ 286,05 (valor revertido) = 400,00

        Movimiento: R$ 300,00

        Se borrarán las retenciones generadas por la compensación, en el ejemplo, el PCC por el valor de R$ 13,95 con base de cálculo de R$ 300,00.

        Borrado del DIC generado por la compensación por el valor de R$ 41,85 (DIC acumulado).

        Saldo PA = 0,00(Saldo PA) + 300,00 (valor revertido) = 300,00

        El sistema evalúa las compensaciones anteriores a la última revertida e identifica si será necesaria la generación de un nuevo DIC.

        Valor del DIC generado = 13,95 (DIC calculado en la 1ª compensación) + 13,95 (DIC calculado en la 2ª compensación) = 27,90

        En este momento se generará un nuevo título del tipo DIC referente a a primera y segunda compensación.


        Ejemplo: Reversión de la 2ª compensación

        Saldo Fact = R$400,00,00(Saldo Fact) + R$ 13,95 (PCC generado por la compensación) + R$ 286,05 (valor revertido) = 700,00

        Movimiento: R$ 300,00

        Se borrarán las retenciones generadas por la compensación, en el ejemplo, PCC por el valor de R$ 13,95 con base de cálculo de R$ 300,00.

        Borrado del DIC generado por la reversión por el valor de R$ 27,90 (DIC acumulado)

        Saldo PA = 0,00(Saldo PA) + 300,00 (valor revertido) = 300,00

        El sistema evaluará las compensaciones anteriores a la última revertida e identifica si será necesaria la generación de un nuevo DIC.

        Valor del DIC generado = 13,95 (DIC calculado en la 1ª compensación) = 13,95

        En este momento se generará un nuevo título DIC referente a la última compensación, en el ejemplo anterior sería el 1º PA por el valor de 300.


        09. MÁS INFORMACIÓN


        NOTITSEL en la reversión de compensación

        Al presentar el asistente NOTITSEL en la reversión de compensación, valide el campo E5_FILORIG en los registros de la compensación, así como también verifique los campos de la clave (Prefijo+número+cuota+tipo+proveedor+tienda) de las tablas SE2 y SE5. Los campos deben tener tamaños correspondientes en las dos tablas.