Páginas filhas
  • Accounts Payable Clearing - FINA340 - Financials - P12

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Bloco de código
languagejava
themeMidnight
titleExample of Automatic Routine
collapsetrue
#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("Compensation successful")

		Else

			Alert("An error occurred in the compensation process")

		EndIf

	EndIf
	
Return
Informações
titleNote

To use the Automatic Accounts Payable Clearing process, call the function: FinCmpAut. Clearing can be carried out from N to N: N advances/returns (PA or NDF) for N bills (NF, DP, etc.) or vice versa.

Automatic Accounts Payable Clearing

...

Use this operation to clear bills payable: 

 - Clearing bills from a supplier/store with advances from the same supplier/store

 - Clearing bills from a given supplier with advances from the same supplier regardless of the bill receivable store

 - Clear a bill from a given supplier with advances from several suppliers, in which case a supplier range or all suppliers can be established. Then, the bill can be cleared with any advance bill from the same supplier pending in the bill file, irrespective of the supplier for this bill.

...

Deck of Cards
idParameters
effectTypefade
Card
defaulttrue
id1
labelQuestions (F12)
effectTypefade

Question

Description

Consider store?

This field indicates whether to consider the store of the supplier when filtering records to be cleared. Thus, if you select "No", all "PA" bills from all stores are displayed for confirmation of clearing. If you select "Yes", only "PA" bills from the main bill store are considered. 

Consider Supplier?

Select option "Original" to consider same supplier of bill in clearing, or "Others" to clear bills between different suppliers. 

From Supplier?

Enter the initial code of the range of suppliers to be considered in clearing

To Supplier ?

Enter the final code of the range of stores to be considered in clearing

Cons. branches below?

Enter "Yes" to consider branches of your system, or "No" to consider only the branch you logged on. This question no longer affects the clearing process. Use button Branches to select the branches to be considered when selecting bills to be cleared.

From Branch?

Enter the initial code of the range of branches to be considered in clearing. This question no longer affects the clearing process. Use button Branches to select the branches to be considered when selecting bills to be cleared.

To Branch ?

Enter the final code of the range of branches to be considered in clearing. This question no longer affects the clearing process. Use button Branches to select the branches to be considered when selecting bills to be cleared.

Group Entries?

Enter "YES" to group the accounting entries generated through clearing in a single entry 

Display Entries?

Enter "YES" to display onscreen the accounting entries generated through clearing, otherwise "NO" 

Clear Bills? 

Enter option "Regular" for clearing to consider bills of type NF, PA, NDF, or "Tax" to consider TX and TXA generated tax bills.

Accounts online?

Enter "YES" to book online the entries related to accounts payable clearing, otherwise "NO". 

Clear transferred?

Enter "Yes" to allow clearing of bills transferred to bank (Bordereau), otherwise "No"

Clear tax balance?

Define not to zero TX balance when clearing between taxes, leaving the submission of DARF and tax payment pending, the feature of this question is only applied when
the question Clear Bills? = "Taxes"

Consider ps of tax. of PA?

Define, when clearing between regular NF x PA bills, if taxes of type TXA of PA have postings, whether these values are used to clear the balance of TX of NF, the feature of this question is only applied when
the question Clear Bills? = "Regular"
 

Card
id2
labelParameters (SX6)
effectTypefade

Parameter

Description 

Default

MV_CTBFLAG

Enter whether to select booking flags of the offline routines in the accounting entry transaction - SIGACTB.  

.F.

MV_BX10925

Define when withholding of PIS COFINS and CSLL taxes are processed: 1 = At Posting or 2 = At Issue  

1

MV_PABRUTO

Define, at PA generation with taxes, whether 1 = Generate a PA with gross value. 2 = Generate a PA with net value (system default).  

2

MV_LIBCHEQ

Option for release of bank balance when checks are generated before write-off.  

S

MV_PAPRIME

It defines whether, at PA generation with taxes, the INSS and ISS taxes are provisioned in the net PA. 1=Yes 2=No (default)  

2

MV_CTLIPAG

Control postings payable through filled out release date. If .T., the system checks whether field E2_DATALIB is filled out, otherwise it does not control them 

.F.

MV_VLMINPG

Minimum value to post the bill, even if field E2_DATALIB is not filled out and the content of parameter MV_CTLIPAG is .T.  

0

MV_IMPADT

Define the use of IRRF generation in advance payable  


MV_SOLNCP

Define the use of Credit Note request routine  

.F.

MV_MUNIC

Identifies the code of the finance department of the municipality for ISS collection.  

MUNIC

MV_MCUSTO

Currency used to check the credit limit entered in the customer register.  

2

MV_COMSEIC

Enable integration of service purchase order for Easy Siscoserv.  

.F.

MV_ESS0012

Enable integration of Incoming Document from SIGACOM to SIGAESS.  

.F.

MV_ESS0013

Enable integration of bills generated in SIGAFIN by SIGACOM for SIGAESS.  

.F.

MV_ESS0022

Enable SIGAEIC x SIGAESS Integration

.F.

MV_JURXFIN

Enable integration between modules SIGAFIN - Financials and SIGAPFS - Legal. Disabled by default.  


MV_PCOINTE

It indicates whether the integration of Planning and Budget Control processes with Entries/Locks processes is active (1=Yes / 2=No).

2

MV_BXDTFIN

To not allow postings dated before the date set in parameter MV_DATAFIM (1=Allow, 2=Do not Allow)  

2

MV_UNIAO

Identify the code given to the Federal Revenue for payment of Income Tax.  

UNION

MV_ESTADO

Acronym of the state of the company using the System, to calculate the ICMS (7, 12 or 18%).  

SP

MV_PISNAT

Nature for bills related to PIS.

PIS

MV_COFINS

Nature for bills related to COFINS.

COFINS

MV_CSLL

Nature for bills related to CSLL.

CSLL

MV_IRF

Nature for bills related to IRF.

IRF

MV_ISS

Nature for bills related to ISS.

ISS

MV_BP10925

Define whether to consider the gross value of partial posting or the net value plus taxes. (1=Gross Val./2=Net Val.)

1

MV_COMPCP

It indicates whether in an Invoice clearance with a PA, the taxes are proportionated.  

.F.

MV_MRETISS

ISS withholding mode in acquisition of services. 1 = when issuing main bill; 2 = when posting main bill  

1

MV_CPIMPAT

Indicate whether to clear taxes due automatically. 1 - Automatic; 2 - Manual  

2

MV_AG10925

Enter whether to combine CCP taxes in one bill only when the three taxes occur in the same bill.  

2

MV_FINVDOC

Activate control of required documents in routines for releasing bill payable postings/transactions? ("1" = Yes / "2" = No)  

2

MV_CMTXCON

Indicate whether to generate indexation for bills with rate contracted at CP clearing. T = Generate CM / F = Do Not Generate CM  

.F.

MV_CALCCM

Indicate whether to calculate indexation. Valid: "S" - calculate it or "N" - do not calculate it.  

S

MV_TXPRCON

Define whether to use the rate entered in clearing in entire process. T = Rt in Process, F = Individual Rt

.F.

05. ACCOUNTING

The booking of processes applied to an accounts payable clearing via Financials module is done through the standard entries below:

...

SE

...

Taxable Event

...

ON

...

OFF (CTBAFIN)

...

589

...

Cancellation of clearing of accounts payable bills

...

X

...

X

...

597

...

Clearing of accounts payable 

...

X

...

X

Options to set parameters MV_PABRUTO, MV_BP10925, MV_PAPRIME 

When parameter MV_PABRUTO, is equal to 2 (Net), when you generate bills of type PA (advance payment), the generation with net value is maintained, in which the tax values that can be withheld at addition are deducted.

For example, when you clear a bill of type INVOICE with a PA, given that both withhold taxes at posting, for coherent values you should set the parameters below as follows:

  • MV_COMPCP= .T. - Indicate whether in an Invoice clearance with a PA, the taxes are proportionated.
  • MV_BP10925 = 2 - Consider the Net Value in Partial Posting, deducting taxes.
  • MV_PAPRIME = 1 - Consider tax provisioning for net PA. 

When parameter MV_PABRUTO is equal to 1 (Gross), when you generate bills of type PA, it is generated with gross value, not deducting the tax values that can be withheld at addition. Then you must clear an Invoice with a PA by the gross value, setting parameters as follows:  

  • MV_PABRUTO = 1 - Gross and MV_BX10925 = 1 Tax at posting or MV_BX10925=2 Tax at issue
  • MV_BP10925 = 1 - Consider the Gross Value in Partial Posting, without deducting taxes.
  • MV_PAPRIME = 2 - Do not consider tax provisioning for net PA.


Informações
titleImportant
If you do not configure the system with one of these two options, upon reversal, the bill of type PA may acquire the status partially cleared.
Informações
titleNote
Parameter MV_COMPCP has no effect if parameter MV_PABRUTO is set to 1. You need to set these parameters whether bills have taxes or not.



Informações
titleNatures

The clearing between Invoice x PA, from the invoice as well as from the PA, is not allowed if parameter MV_PABRUTO is set to 2 (Net) and the natures are different.

However, we recommend using the same financial nature for Invoice and PA bills, to make sure the tax values generated do not diverge.



05. ACCOUNTING

The booking of processes applied to an accounts payable clearing via Financials module is done through the standard entries below:

SE

Taxable Event

ON

OFF (CTBAFIN)

589

Cancellation of clearing of accounts payable bills

X

X

597

Clearing of accounts payable 

X

X


Card documentos
InformacaoThe booking of clearing will always be made based on the data of the Cleared Bill and it can be any type of obligation: NF, TX, DP, etc. as long as the transfer (SE5) has the following classification: E5_TIPODOC = 'CP' and E5_MOTBX = 'CMP'
TituloIMPORTANT!

Booking Variables

Totvs custom tabs box
tabsOnline,Offline,Example
idsonline,offline,example
Totvs custom tabs box items
defaultyes
referenciaonline

The following list of variables to configure Standardized Entry 597 (Accounts Payable Clearing) for online booking of Payable Clearing (FINA340):

VALOR - Stores the value cleared
VALOR2 - Addition Value
VALOR3 - Deduction Value
VALOR4 - Variation of Adjustment for Inflation
VLRINSTR - Stores the value cleared
nSldReal - Stores the value cleared in the corresponding currency of bill
ABATIMENTO - Deduction Values
REGVALOR - Recno of current record
STRLCTPAD - Key of main bill + document number

These variables are fed with data from the record that originated the clearing. Whereas for records selected for clearing, the booking is made by SE5. 

In online booking, you cannot change the booking branch. The booking occurs at the branch selected.


Example:

Select NF1 and click Clear.

On the screen for selecting bills to be cleared, select PA1 and PA2.

When booking online, the NF1 information will be in the booking variables. Whereas the clearing data of each PA will have their respective SE5 records selected.


Reversal Variables:

VALUE - Stores the value cleared
VLRINSTR - Stores the value cleared

Totvs custom tabs box items
defaultno
referenciaoffline

When we force the selection of bills to be cleared, the booking brings both bills (example: Invoice x PA), booking the value of both bills, which may cause a double entry.

The variables available for offline booking (CTBAFIN):

VALOR - Stores the value cleared
VALOR2 - Addition Value
VALOR3 - Deduction Value
REGVALOR - RECNO of current record
STRLCTPAD - Key of main bill + document number

These variables are fed with data from the record that originated the clearing. Whereas for records selected for clearing, the booking is made by SE5.

Totvs custom tabs box items
defaultno
referenciaexample

Example: LP597

In field CT5_HIST, enter: U_HIST597()

Create the following function:


Bloco de código
languagejava
themeMidnight
firstline1
linenumberstrue
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)

Card documentos
InformacaoThe booking of clearing will always be made based on the data of the Cleared Bill and it can be any type of obligation: NF, TX, DP, etc. as long as the transfer (SE5) has the following classification: E5_TIPODOC = 'CP' and E5_MOTBX = 'CMP'
TituloIMPORTANT!

Informações
titleInformation

Booking of DIC type

The booking of DIC type generated by clearing can be done by LP 510 - Addition of Bill Payable, because it is generated through the FINA050 (Accounts Payable) automatic routine.


Booking of taxes generated when clearing.

LP 597 - Clearing Payable itself can book taxes generated by clearing, through variables: NPIS340, NCOF340, NCSL340, NIRF340, NISS340.In the other cases, the booking remains unchanged, as documented below


See Also:

Booking

...

of CR/CP Clearings

06. TABLES

  • SE2 - Accounts Payable Register 
  • SE5 - Checks Register 
  • SED - Natures Register
  • SA2 - Suppliers Register
  • FK2 - Postings Payable
  • FK3 - Calculated Taxes
  • FK4 - Withheld Taxes
  • FK5 - Bank Transactions
  • FK6 - Accessory Values
  • FK7 - Auxiliary Table  
  • FKA - Transaction Tracking

...