Professional Documents
Culture Documents
(Configuration) Gap 006 - Consumption and Asset Tax Codes
(Configuration) Gap 006 - Consumption and Asset Tax Codes
It needs to be adjusted the the existing Tax Codes for assets and consumption and also create a
new ones tax codes according to the Business Area requirements. These new tax codes needs to
have the correct behavior in the Nota Fiscal and SPEDs as well.
CONFIGURATION'S AUTHOR
Diego Zanelli
Tcode or RICEFW J1BTAX
Path or Table Condition setup >> Condition Types >> Condition Types
MM
Note Create new coditions for PIS and COFINS in excluded base
Tcode or RICEFW J1BTAX
Note Create Tax Type for new coditions for PIS and COFINS in
excluded base
Tcode or RICEFW J1BTAX
Path or Table Condition setup >> Nota-Fiscal Mapping >> Tax Values MM
Note The ICMS, PIS and COFINS conditions that is used for CIAP
need to be assigned to the column Other Base instead of Base
in the incoming Nfe.
COFINS OTHER BASE
From:
To:
PIS OTHER BASE
From:
To:
PIS EXCLUDED BASE
New Entry:
Note Customizing to post DIFAL as cost using the cost object and
GL Account defined in the Purchase Order
From:
To:
New Entries:
Tcode or RICEFW J1BTAX
Note Define the tax group 26 to consider also ST, otherwise will
not be possible to calculate the ST as DIFAl for consumption
purchasing using the new tax codes.
Tcode or RICEFW J1BTAX
Path Condition setup >> Condition Mapping >> Map Tax Tables
to Cond. Tablex
Note Define the tax group 26 to consider also ST, otherwise will
not be possible to calculate the ST as DIFAL for consumption
purchasing using the new tax codes.
Tcode or RICEFW OB40
Transaction ICX
Transaction NAV
Transaction COM
Transaction PIM
Transaction VS2
TO
NEW ENTRIES
Tcode or RICEFW J1BTAX
TO
NEW ENTRIES
Tcode or RICEFW J1BTAX
Table J_1BTXST3
Tcode or RICEFW J1BTAX
TO
Tcode or RICEFW J1BTAX
Note Review and creation of the Tax Codes for Consumption and
Assets
FROM
TO
"C1" - Aquis. Consumo/Ativo: ICMS (cost) + ICMS Difal (cost) Observação:
Tax Type Base Amount Tax Rate Tx Value Excluded Base Other Base Lei Fiscal - Poderá ser utilizado para compras de
ICMS X X X IC9 uso/consumo e ativo administrativo (sem
PIS X YS0 créditos)
COFINS X YG0
IPI X IP1
FROM
TO
"C2" - Aquis. Consumo/Ativo: ICMS (cost) + ICMS Difal (cost) + ICMS-ST (cost)
Tax Type Base Amount Tax Rate Tx Value Excluded Base Other Base Lei Fiscal
ICMS X X X IC9
PIS X YS0
COFINS X YG0
IPI X IP1
ST X X X -
FROM
TO
"C3" - Aquis. Consumo/Ativo: ICMS (cost) + ICMS Difal (cost) + IPI (cost)
Tax Type Base Amount Tax Rate Tx Value Excluded Base Other Base Lei Fiscal
ICMS X X X IC9
PIS X YS0
COFINS X YG0
IPI X X X IP0
FROM
TO
"C4" - Aquis. Consumo/Ativo: ICMS (cost) + ICMS Difal (cost) + ICMS-ST (cost) + IPI (cost)
Tax Type Base Amount Tax Rate Tx Value Excluded Base Other Base Lei Fiscal
ICMS X X X IC6
PIS X YS0
COFINS X YG0
IPI X X X IP0
ST X X X -
FROM
TO
"C5" - Aquis. Consumo/Ativo: IPI (cost)
Tax Type Base Amount Tax Rate Tx Value Excluded Base Other Base Lei Fiscal
ICMS X IC9
PIS X YS0
COFINS X YG0
IPI X X X IP0
FROM
TO
"ZC" - Ativo ICMS (cred) + PIS (cred) + COFINS (cred)
Tax Type Base Amount Tax Rate Tx Value Excluded Base Other Base Lei Fiscal
ICMS X X X IC9
PIS X X X YS0
COFINS X X X YG0
IPI X IP1
FROM
TO
"ZD" - Ativo: No tax
Tax Type Base Amount Tax Rate Tx Value Excluded Base Other Base Lei Fiscal
ICMS X IC9
PIS X YS0
COFINS X YG0
IPI X IP1
FROM
TO
"ZG" - Ativo: PIS (cred) + COFINS (cred)
Tax Type Base Amount Tax Rate Tx Value Excluded Base Other Base Lei Fiscal
ICMS X IC9
PIS X X X YS0
COFINS X X X YG0
IPI X IP1
FROM
TO
FROM
TO
FROM
TO
BadI BADI_J1B_DIFAL_RECALCULATION
Interface IF_EX_BADI_J1B_DIFAL_RECALC
Method IF_EX_BADI_J1B_DIFAL_RECALC~RECALCULATE
The behavior for the standard solution for DIFAL is not according to business area requirement,
because of that it was necessary to implement the BadI for DIFAL recalculation.
method IF_EX_BADI_J1B_DIFAL_RECALC~RECALCULATE.
FIELD-SYMBOLS: <FS_MWSKZ> TYPE MWSKZ.
DATA: local_destination_rate(12) TYPE p DECIMALS 6.
IF
is_difal_recalculation-ship_to CS 'SP'
AND
is_difal_recalculation-destination_rate <> 1.
IF is_difal_recalculation-destination_rate < '0.180000'.
local_destination_rate = '0.120000'.
ELSE.
local_destination_rate = is_difal_recalculation-destination_rate.
ENDIF.
IF
is_difal_recalculation-ship_to CS 'SP'
AND
is_difal_recalculation-destination_rate <> 1
AND
is_difal_recalculation-is_cte = ''
AND
" is_difal_recalculation-destination_rate <> is_difal_recalculatio
n-inter_rate AND
local_destination_rate <> is_difal_recalculation-inter_rate AND
is_difal_recalculation-destination_rate > 0.
cv_difal_rate = ( 1 - is_difal_recalculation-inter_rate * is_difal_r
ecalculation-inter_base_reduction ) /
" ( 1 - is_difal_recalculation-destination_rate ) -
1 .
( 1 - local_destination_rate ) - 1 .
ASSIGN ('(SAPLV61A)KOMP-MWSKZ') TO <FS_MWSKZ>.
IF <FS_MWSKZ> IS ASSIGNED.
IF <FS_MWSKZ> EQ 'ZD' OR <FS_MWSKZ> EQ 'CP'.
* incluir alíquota de ICMS na base, porque para os Tax Codes ZD
e CP não há cálculo de ICMS.
cv_destination_base_value = is_difal_recalculation-
inter_base_value / ( 1 - IS_DIFAL_RECALCULATION-INTER_RATE ).
ELSE.
cv_destination_base_value = is_difal_recalculation-
inter_base_value.
ENDIF.
ELSE.
cv_destination_base_value = is_difal_recalculation-
inter_base_value.
ENDIF.
cv_difal_value = cv_destination_base_value * cv_difal_rate
.
ELSE.
CLEAR: cv_difal_rate, cv_destination_base_value, cv_difal_value.
ENDIF.
ENDIF.
endmethod.
WITHOUT DIFAL
WITH DIFAL
"C3" - Aquis.Cons./Ativo:ICMS(cst)+ICMSDifal(cst)+IPI(cst)
Tax Type Base Amount Tax Rate Tx Value Excluded Base Other Base Lei Fiscal
ICMS X X X IC9
PIS X YS0
COFINS X YG0
IPI X X X IP0
"C5" - Aquis. Consumo/Ativo: IPI (cost)
Tax Type Base Amount Tax Rate Tx Value Excluded Base Other Base Lei Fiscal
ICMS X IC9
PIS X YS0
COFINS X YG0
IPI X X X IP0
Implementar enhacement, copiando o código standard e no else da linha 12/13, acrescentar
verificação se é o Tax Code ZD, se for, então mantem RV_ACTIVE = X.
REPLICAR S01
Tax Code ZR
OB40 para ZR: COM, PIM e VS2
EXCEÇÃO PIS(26) PARA ZR
EXCEÇÃO COFINS(26) PARA ZR