Sometimes you will find some tables begin with K9R* which is generated by old derivation rules. Now these old derivation rules are not availble in system any more but these tables remain. Or when you try to delete some unused characteristics in COPA, these K9R* tables will prevent you from that.
If you really want to delete unused chars from the CO-PA field catalogue,you have to delete first all those old K9R* derivation tables that have been generated in the past for such chars but that are currently not used any longer in derivation.You can delete each such UNUSED K9R* derivation table by executing function module KED0_DELETE_DERIVATION_TABLE for this table.
For example,for each generated K9R* table that is part of the Where-usedlist of the corresponding data element RKEG_WWxxx, you have to check whether this table is still used in table TKEDRS for a currently existing derivation rule. If it's not used you can delete it with function module KED0_DELETE_DERIVATION_TABLE. This is a little laborious (to run the function module for quite a lot of old K9R* tables that are currently not used any longer in derivation), but if the derivation rules would have been been deleted correctly in the customizing transaction KEDR the corresponding generated K9R* tables and RKEAK9R* access routines would have been deleted automatically in this context by the system.
Sometimes you open T-code CO03 (Production Order display), from menu:Goto-> Costs ->Analysis to the report result there. But you find there is no "Total target costs" updated for your production order. If you check in report T-cd KKBC_ORD, you have the same result.
The possible reasons are:
- variance calculation has not been done yet - the order is not set to DLV/TECO - there is no Valid Standard Cost Estimate
Then what should you check?
1st: You should check if your order has status "VCAL" (Variances calculated) or not. If there is no, it means "variance calculation has not been done yet".
In fact the target costs are calculated and written to the database only at the point of variance calculation.
Before that point, you can still see the 'online' calculation of the target costs for example in CO03 cost analysis report in report 'Target/Actualcomparaison', only if good receipt have taken place. This is only for information purposes since no variance calculation has taken place yet.
So you should perform variance calculation in KKA2 and check the result again.
2nd: Production orders with full settlement are taken into account in the variance calculation if the status is "Technically completed" or "Delivered". If the status has not been set, the system generates message KV011 "Order does not have status DLV or TECO".
The order has to be TECO OR DLV to be relevant for the variance calculation. The DLV status has priority over TECO. But if DLV is not active TECO becomes relevant. You can check the DLV and TECO date with the Note 530563 - WIP calculation: Status DLV and TECO DLV (AFPO-LTRMI) TECO (AUFK-IDAT2)
3rd: Another prerequisite to be able to do the variance calculation is: a standard cost estimate for the order material must be available with a validity (from - to dates ) which includes the date of DLV or TECO for the order.
In case you have had a released cost estimate in a different date, please check if an adjustment for the cost estimate date is still possible or not. If possible, you can re-run variance calculation in KKS2 afterwards.
If you wish to change the existing released cost estimate then you could re-organise the material with CKR1, this will delete the released cost estimate. OR you can use CKR1 with 'REDO' as outlined in Note 410619 - CKR1:Cancellation of the release via OK code = REDO possible , which will revoke the released status.
But sometimes it is not feasible since it may have other effect on Material Ledger etc.
The target costs are typically calculated based on the itemization of the used cost estimate. The calculation then is:
Target costs = planned costs / planned output quantity or lot size * actual output quantity
Target quantity = planned quantity / planned output quantity or lot size * actual output quantity.
If there are lot size independent items in the itemization, the calculation is:
Target costs = planned costs
Target quantity = planned quantity
This also depends on the target costs version. The above relates to target cost version 0 (most commonly used).
In case of Valuated Sales Order Stock the cost estimate is used which was used to valuate the sales order stock. See Note 520000 - FAQ: Valuated special stock.
A little bit different to the above is the case in which the production order cost estimate is used. Quite common in the Valuated Sales Order Stock. In this case the itemization needs to be created on-the-fly within the variance calculation which is then standardized to the output quantity. First the input quantities are valuated with the according prices and after that the itemization is standardized to the output quantity as described above.
Please also refer to the online documentation below:
Steps for Allocation Cycle – Segment – Cost Center mapping
Business Purpose:
Cost allocation is a very common tool deployed within organizations to collect cost for a specific purpose. This cost is then spread across other cost centers/departments/inventory units after a certain period. After several periods, financial controllers and auditors often struggle in SAP to find out what was the origination and destination of cost allocation in SAP. This whitepaper details step by step process to get sending and receiving cost centers relationship from several allocation cycles.
Scenario:
Business may be looking for a list of all sending cost centers and receiving cost centers from different cycles/years in the past to do cost allocation analysis.
SAP Technical Steps:
1. Go to Cost center master data KS03 > Environment > Where Used List > Cycles in CO-OM and download the list. Record Cycle Names and Segment Numbers.
2. Go to table T811K (Allocations: Key Fields) and input “Controlling Area name & Cycle concatenated” in Cycle field with cycle names obtained from KS03 data.
Identify Sending Cost Centers:
3. Get sending cost center from field “From value (and to value if any)” where field = “KOSTL” and “I (Type of Set)” = 2 (Sending cost center) from T811K data.
4. Get the sending cost center group from field “Set Identification” from T811K data.
5. Get related set nodes for the current set. Remove setclass and Controlling area number prefix from the receiving cost center ID.
6. Go to SETNODE table and input Set Class = 0101, Org Unit = 0003 (Controlling area), Set Name from T811K data. Extract and get subset ID for further process.
7. Go to SETLEAF table and input Set Class = 0101, Org Unit = 0003 (Controlling area), Set Name = Subset ID from SETNODE Table data.
8. Rerun T811K sets in SETLEAF as some of the cost center hierarchies don’t have any nodes, but directly assigned with cost centers.
Identify Receiving Cost Centers:
9. For Receiving cost center, get “Set Identification” for fields where field = “KOSTL” and “I (Type of Set)” 3 = ReceiverSet from T811K data
10. Get related set nodes for the current set. Remove setclass and Controlling area number prefix from the receiving cost center ID.
11. Go to SETNODE table and input Set Class = 0101, Org Unit = 0003 (Controlling area), Set Name from step 4. Extract and get subset ID for further process.
12. Go to SETLEAF table and input Set Class = 0101, Org Unit = 0003 (Controlling area), Set Name = Subset ID from SETNODE Table data.
13. Rerun T811K sets in SETLEAF as some of the cost center hierarchies don’t have any nodes, but directly assigned with cost centers.
Here is a demonstration for an indirect activity allocation – using activity category 2 (indirect determination, indirect allocation). This type of activity quantity allocation involves most number of calculation steps than other activity allocation since the activity quantity is indirectly determined and allocated indirectly based on tracing factors and as we shall see activity quantity is not entered directly by the user at any point for any cost center. Here is a practical case scenario where this is applicable:
Our aim is to determine activity called “Tester Hours” for the Cost center called “Quality Control” and further allocate to the receiver cost center involving goods receipt and finished product. Now we do not know how many Tester Hours will be utilized by the Quality Control so the logic is that we determine from the number of items that are being tested, we know that 0.4 hrs are needed per piece. Also we know that 4000 items and 6000 items of goods receipt and finished product respectively are to be tested. From this information we are going to determine the activity quantity (indirect determination) and allocate the same to the cost center where the goods receipt and finished products are tested (indirect allocation).
Let us jump right into it with the below master data ready:
Tester Hours: ZACT3 (name of activity type, category 2 indirect determination and indirect allocation)
Sender quality control cost center: 53001 (name of cost center, where ZACT3 quantity will be indirectly determined and it is the sender during indirect allocation)
Receiving goods receipt cost center: 53003 (name of cost center, where goods receipt testing takes place and the receiver during indirect allocation)
Receiving finished product cost center: 53004 (name of cost center, where finished product testing takes place and the receiver during indirect allocation)
Statistical Key figure: 5ZSKF3 (name of the statistical key figure which contains the number of tester items at the cost center 53003 and 53004)
Here is the activity type master data screen shot tcode: KL02
Below screen shot displays the statistical key figure entered for the cost center 53004 and 53003, kindly note activity allocation has not yet taken place. The SKF unit ‘AU’ is slightly misleading Image may be NSFW. Clik here to view. think of it as unit 'number of items'. Using tcode: S_ALR_87013618 we can view the SKF entered as shown below. Image may be NSFW. Clik here to view.
Creation of a plan indirect determination and indirect allocation cycle is done using tcode: KSC7
Kindly note the selection rule: “Quantities calculated inversely”, Receiving tracing factor is Plan statistical key figure
The sender is the cost center 53001 while the receivers are cost center group ZCCGRP1 which contains the cost centers 53001,53002,53003,53004. We can also enter the cost center 53003 and 53004 alone as receivers for this scenario. Please note that the activity quantity on the sender and receiver are zero as on this step.
In the sender values tab the weighting factor is 40/100 = 0.4 as per our requirement i.e. 0.4 hrs/piece. In the receiver tracing factor tab screen, the receiving tracing factor is the plan statistical key figure 5ZSKF3 entered in the version 912.
Viewing the plan line items in KSCB we can confirm that the Quality Control cost center 53001 has been the sender for the receiver cost center 53003 and 53004. Though the activity ZACT3 quantity has not been entered at any step the quantities have been indirectly determined for the Quality Control cost center 53001 and allocated to the goods receipt cost center 53003 and finished product cost center 53004.
Similar steps are to be followed using tcode KSC1 and KSC5 for creating actual indirect activity allocation cycle and execution respectively. Kindly note that until now the cost for the activity ZACT3 has not been dealt with, since in this scenario the cost per unit of activity i.e. 5 USD/HR is known we can perform an assessment cycle based on the plan activity units i.e. activity dependant costs can be entered for the respective cost centers with tracing factors as activity quantities. Hope this blog has been useful to understand indirect activity allocation using activity category 2.
I just want to share if anyone may need. It is complete scenario from configuration to planning, actual posting and final revaluation. I used some of the comments/posts on the forum - That I see it valuable and clear
1. Master data & set up
1.1 KL01-Create activity type
Set the ‘Price indicator’ to “1” (Plan price, automatically based on activity) in the ‘Allocation default values’ section in order that the plan prices are calculated automatically. -> This means that the cost center budget entered in transaction KP06 will be divided by the quantity entered in transaction KP26 when you run the plan price calculation in transaction KSPI.
You need to set the ‘Act. Price indicator’ to “5” (Actual price, automatically based on activity) in the ‘Variance Values for Actual Allocation’ section in order that the actual prices are calculated automatically. This means that the actual costs posted a cost center will be divided by the actual quantity consumed in the cost center when you run the ‘Actual Price Calculation’ in transaction KSII.
You can decide the method used to c alculate activity prices by setting the appropriate indicators in the Controlling Area settings. To do this go to transaction OKEV, highlight the appropriate version and double-click on the folder “Settings for each fiscal year”. Then double-click on the appropriate year and go to the tab “Price Calculation”.
In the ‘Plan’ section, you can choose the method for calculation the price which can be “Periodic” (where the budget for each period is divided by the quantity of that period) or “Average” (where the budget for all the periods are divided by the quantity for all periods and the result is assigned to every period).
In the ‘Actual’ section you also choose one of the above mentioned methods.
In addition you need to specify whether you want the difference between the actual and plan price is updated in the same transaction that was originally posted or if it should be posted in a different transaction. You do this by selecting the relevant indicator in the “Revaluation” field
For actual activity price calculation, the cost object that the cost center’s quantities have been consumed in can be revalued based on the “Revaluation” setting mentioned above. In order for the revaluation to take place however, you need to run a separate transaction for the cost object (after you have run the actual price calculation transaction KSII). This transaction will depend on the type of cost object that is being revalued. See the below table for the cost objects and their corresponding revaluation transactions.
Cost Object
Revaluation Transaction (Individual)
Revaluation Transaction (Collective)
Production Orders
CON1
CON2
Process Orders
CON1
CON2
Product Cost Collectors
CON1
CON2
QM Orders
CON1
CON2
Networks
CON1
CON2
Internal Orders
KON1
KON2
Note that if you use the Material Ledger to calculate actual costs of your materials, then you do not need to run the above revaluation transactions. Instead, you can set the ‘Activity Update Indicator’ to “2” (Activity update relevant to price determination) in the ‘Activate Actual Costing’ transaction (SPRO – > Controlling -> Product Cost Controlling -> Actual Costing/Material Ledger -> Actual Costing -> Activate Actual Costing). You would then also need to set up the general ledger account that the cost center will be credited with by going to transaction OBYC and entering the account in transaction key/general modification GBB/AUI.
Price 568 = total cost 11360/ total activity 20 -> correct
In this example, an document is generated when run KSII is because of one of the IOs have closed status, then that IO can not be revaluated, system posted to a cost center instead.
KON1 – Revaluation at actual price (KON2 for collective processing)
You may face "Inappropriate status" if IO have close status -> can not revaluate IO anymore -> system post to other cost object/ cost center right after run KSII function as seen above.
A budget is only as powerful as it is customized. Given your organization's unique business structure and requirements, set up Funds Management in SAP PSM to keep your costs and expenses on track. First set up your master data and define a budgetary structure; then integrate budgetary management, actuals and commitments updates, and AVC processes.
Configure SAP PSM-FM for your budget needs
Set up a budget structure that reflects your organization
Customize budgetary management, actuals and commitment updates, and availability controls
I hope you will find this guide helpful and I'll be glad to receive your feedbacks. It will be very a great contribution both to myself, in my new role as SAP guides author, and, which is more important, to SCN in its mission to support and evolve SAP products.
When we are executing cost run for SFG or FG through T.Code CK11N or CK40N then we can not measure our costing how much accurate or not. So, manually we can mention plan prince in the material master and can compare our estimated costing as per below mention process.
Menu path
Accounting Controlling - Product Cost Controlling- Product Cost Planning - Information system -Summarized Analysis ®Analyze Costing Run -S_ALR_87099930
Transaction code : S_ALR_87099930
Before cost release we have to verify with Materials predefine plan cost for get accurate price through Transaction code S_ALR_87099930
Goods receive (MIGO) has been completed with per pc price 0.20 USD and raw material was consumed. When Bill submitted, after amendment per pc price would be 0.30 USD.
Purpose
Due to raw materials price change, When bill entering (MIRO), residual amount would be adjusted with “Gain/Loss Price/Qty variance” GL.
Please follow the below mention screenshot, invoice quantity 2000 pc with revise unit price 0.30 USD instead of 0.20 USD. As a result, total Invoice amount would be 600 USD. Balance amount offering 400 USD because goods received (MIGO) amount was 400 USD.
Most of us have bugged one time or other by the SAP session automatically logged off if not worked on it for a given period of time. Setting up the feature of logging off the inactive users like this improves the security as unattended systems do not stay active indefinitely . Controlling such time out is beyond control , however, as an expert SAP user, you can trick SAP and stay logged in even after the defined inactive interval set by the system administrator provided you have access to a particular type of SAP report.
This is how you can do it:
All you need to do is open up a SAP report ( a T-code) which has ‘Office integration ‘ option. For example , Cost Center standard report ‘S_ALR_87013611 -> Cost Centers: Actual/Plan/Variance’ . After running this report , you can see the office integration button like this on tool bar .
After clicking the button, Office integration option will appear in end. As default, ‘Inactive’ is marked .Change it ‘Microsoft Excel’ using the radio button and click OK.
If your company deals with business in Brasil, it is almost sure that this subject crossed your path on the last few months. In that case, I want to apologize for not writing this post before. But if your company is still trying to adequate to those changes or it is going to implement or roll-out SAP in Brasil anytime from now and beyond, this post may be very handy.
I will first explain the concept behind this requirement and on my next post I will walk through the configuration required for that.
This subject cross multiple-areas (MM, SD and FI).
The EC 87/2015 (Emenda Constitucional 87/2015 or just constitutional amendment 87/2015) changes the way how ICMS is due in the goods and services trade between a company that is ICMS Tax Payer and an end-consumer (not tax contributor) located in a different state (region) than the region where the goods or services comes from.
Note that the end-consumer can be an individual (person) or a company that buys the product for consumption (not for resale or manufacturing).
This amendment presents the procedures to be adopted by taxpayers of ICMS in the tax sharing among states of origin and destination of the goods.
What is changing?
Before the EC 87/2015, in those trades, the ICMS was fully due to the origin state (where the goods or services were supplied from). After the EC 87/2015, the ICMS due in those processes would be share:
The origin state will have the rights on the ICMS correspondent to the interstate tax rate.
The destination state will have the rights to the ICMS tax that corresponds to the difference between his internal tax rate and the interstate rate.
Who must collect the tax rate difference (interstate rate x standard rate difference) in those situations?
If the ship to is ICMS Tax Contributor, then he needs to collect the taxes
If the ship to is not ICMS Tax Contributor, then the Ship from needs to collect the taxes
In order to establish standards to the application of the EC 87/2015, the States decided to discuss a federal regulation (CONFAZ), which originated the ICMS agreement 93/15
Some of the items covered in the ICMS Agreement 93/15 were:
The tax collection due by rate difference should be done via GNRE – Guia Nacional de Recolhimento de Tributos Estaduais – It’s like an existing standard form to pay taxes. Over the Tax treasury code 10008-8 – ICMS Recolhimento Especiais
It was planned the possibility of States to grant taxpayer identification located in separate federal unit, enabling the payment of a monthly basis tax until the fifteenth day of the month the goods leave or the start of the service provision, following the same methodology adopted in transactions subject to the tax substitution regime
Opens the possibility of supervision, jointly or separately, by the federal units involved in operations or services, even if the taxpayer is not established in the State responsible for opening the inspection
The rules established by this agreement are applicable including to companies in the “Simples Nacional” regime.
In regards to the usage of the ICMS credits, the tax contributor can deduce from their ICMS debit, pertinent to the tax difference rate, the amount correspondent to the tax due to the state government entity.
Before we go to the SAP solution, it is important to understand how the law is applicable to your company and your business.
Each State has your own methods to the application of the EC 87/2015, since a Complement Law (Lei Complementar or just LC) wasn’t issued to this EC, each UF (federated unit/state) has full legislative jurisdiction. Some of the notes in this post may not apply to a specific State/UF (federated unit).
What are the changes in the NFe Layout?
The NT2015/003 presents the NFe Layout changes to adapt the XML in accordance to the EC 87/2015.
At this date, the latest version of this NT is 1.50 and you can download it from here: NT2015/005 V1.50
The tax collection due by rate difference should be done via GNRE – Guia Nacional de Recolhimento de Tributos Estaduais – It’s like an existing standard form to pay taxes. Over the Tax treasury code 10008-8 – ICMS Recolhimento Especiais
Tax payment responsibility
Service Provider
Goods provider
Tax Payment Types
By operation
Taxpayers without State Inscription
Must issue and pay the GNRE before issuing the goods or when starting the service
Inform in the GNRE the Nota Fiscal number
The GNRE must follow with the DANFE during the goods transport
Each NFe will correspond to one GNRE
By calculation
Taxpayers with State inscription
Must inform the State Inscription number in the NFes issued
Submit monthly the documents with the tax collected records (GI ST National) until the 10thday of the subsequent month of the tax calculation, even that there were no business started with no taxpayers
Must Issue and pay the GNRE until the 15thday of the subsequent month of the tax calculation
II. Amount of ICMS due to the destination UF (Federated Unit/State): inform the amount of ICMS due to the destination UF due to the operations performed to the end consumers that are non-taxpayers;
III. Return or cancellations: Inform the amount that corresponds to the ICMS over returns or cancellations amounts related to services where the operation were informed in the field ICMS Amount due to the Destination UF in the current tax collection period or previous period.
IV. Prepayments: to inform, incorporated, the ICMS mounts due to the destination UF over the operations to end-consumer non-taxpayers, collected in advance, document by document, via GNRE, as a result of the inapplicable of the deadline for payment;
V. Total of ICMS due to the destination UF: to inform the balance of ICMS due to destination UF (field ICMS Amount due to UF of destination less fields Returns and Cancellations Prepayments).
Article 1 - The establishment located in another federated unit is required to make payment or retention of ICMS in favor this State shall declare the polling information relating to this tax through National Information Guide and ICMS Calculation Tax Substitution – aka GIA-ST…
§ 1 - The National Guide to Information and Statement of ICMS Replacement Tax - GIA-ST (...) shall be submitted until ten (10) of the month subsequent to the determination of the tax…
First GIA-ST to be reported containing the EC87/15 is 10/02/2016
SP created the FECOEP which is effective in the end of Feb/2016.
The SP State law 16.006, from November 24th2015, implemented the Fundo Estadual de Combate e Erradicação da Pobreza – FECOEP (State Fund for Combat and Eradication of Poverty), effective 90 days after the law was posted.
I - Changed the "Description" column of the table 2.6.1.1 - Abertura do arquivo digital e Bloco 0, of register 0015 to "Dados do Contribuinte Substituto ou Responsável pelo ICMS Destino".
II – Added the C101 record in the table 2.6.1.2 - Block C:
III – Added the D101 record in the table 2.6.1.3 - Block D:
IV – Added the records E300, E310, E311, E312, E313 and E316 in Table 2.6.1.4 - Block E:
V – Added item 2 - ICMS Difal / FCP, in item 2 of Regras de Formação do Código de Ajuste da Apuração do ICMS, of item 5.1.1 Tabela de Códigos de Ajuste da Apuração do ICMS of item 5.1 - Ajustes dos Saldos da Apuração do ICMS
VI – Added the following codes in the generic table of item Obs, item 5.1.1 Tabela de Códigos de Ajuste da Apuração do ICMS of item 5.1 - Ajustes dos Saldos da Apuração do ICMS:
XX209999 - Other debts to calculate adjustment ICMS Difal / FCP for UF XX;
XX219999 - Reversal credits for calculating adjustment ICMS Difal / FCP for UF XX;
XX229999 - Other receivables to determine adjustment ICMS Difal / FCP for UF XX;
XX239999 - Reversal of debts to calculate adjustment ICMS Difal / FCP for UF XX;
XX249999 - Deductions of tax calculated in determining ICMS Difal / FCP for UF XX;
XX259999 - Special Debit ICMS Difal / FCP for UF XX;
VII - Changed the 0015 record name to "DADOS DO CONTRIBUINTE SUBSTITUTO OU RESPONSÁVEL PELO ICMS DESTINO".
VIII - Changed the description of the field 02 - UF_ST record 0015 to “Sigla da unidade da federação do contribuinte substituído ou unidade de federação do consumidor final não contribuinte - ICMS Destino EC 87/15”
IX - Changed the description of the field 03 - IE_SR record 0015 to "Inscrição Estadual do contribuinte substituto na unidade da federação do contribuinte substituído ou unidade de federação do consumidor final não contribuinte - ICMS Destino EC 87/15."
X - Included the following records in APPENDIX B - LAYOUT OF BOOKKEEPING TAX DIGITAL C101 REGISTER
INFORMAÇÃO COMPLEMENTAR DOS DOCUMENTOS FISCAIS QUANDO DAS OPERAÇÕES INTERESTADUAIS DESTINADAS A CONSUMIDOR FINAL NÃO CONTRIBUINTE EC 87/15.
If any of the subjects below come to your path, you may find this post helpful. This is only required for companies in Brazil, so if your company has business places in Brazil, you may need to configure:
ICMS Partition, Poverty Fund, EC87/15 and NT2015.003 changes…
Those changes impacts multiple areas (MM, SD, FI)
If you search online, you are going to see here similar SAP Official documentation released by the localization team. But many of those documents are in Portuguese discussion forums. They did a very good job to such complicate subject but without their guidance, implementing it would have been much more painful.
Since I did use SAP Localization Team documentation and the several discussions on SCN as source of information to build this solution, you may end seen here things that you already saw.
I want to share my personal experience with this subject and also provide some screenshots to help you if this subject crosses your path anytime in the future. This post will focus on TAXBRA/RVABRA (if you are still running TAXBRJ/RVXBRA, consider migrating it soon)
I will skip the business requirement, the law and why those changes are required as this was already discussed on my previous post:
3 – Main OSS Note: 2232757 - Interstate consumption operations for ICMS non-taxpayer
4 – SCN SPED & NFE Forum (Portuguese)
What to do then?
My recommendation was implement ALL OSS Notes listed in the KBA Note above when relevant to the SAP Release and also to update the NFe environment to the SP23.
Depending on the release and support package you are running, you may have to implement less than 20 OSS Notes or more than 150 OSS Notes… So, be prepared with Basis/ABAP resource for that. And many of those OSS Notes have several Manual Pre and Post implementation steps.
Make sure to keep track on any configuration step mentioned in the OSS Note, either as an attachment or in the OSS Note Solution details. Once those OSS notes are implemented, the configuration steps should not take that long… few hours (or few days depending the number of pricings you have and how complex they are, you may need to adjust, move and reconfigure the pricing steps to open space to the new entries).
After updating the NFe environment to the SP23, check any OSS Note released that were not added to the SP23 and implement them too. If you want narrow the number of OSS Notes for this application area, check the descriptions if it mention things like:
NT 003/2015
ICMS Partition
Note 2015.003
Configuration
To help speed-up the configuration and harmonize the creation of several new tax related elements, SAP provided BCSets (according to you tax procedure: TAXBRA/RVABRA or TAXBRJ/RVXBRA). Those BCSets are in the attachment’s session of OSS Note 2232757.
J1BTAX > Condition Setup > Nota Fiscal Mapping > Tax Values MM
CREATION OF PROCESSING KEYS FOR FI
OBCN
MW6: Partition Origin;
MW7: Partition Destination;
MW8: Part.Spec.Funds;
DEFINITION OF ACCOUNT KEYS FOR SD
OB40
Configuration not delivered via BCSet
Creation of Condition Formula for SD and MM
Those formulas will be assigned to condition DINC on TAXBRA and RVABRA (or equivalents)
VOFM > Formulas > Condition Value
FORM FRM_KONDI_WERT_980. *{ INSERT 1 *Manual Instructions FOR SAP Note 2232757 *Technical Note 2015/003 - Interstate Consumption Operations FOR non ICMS-contributors *Version 5 * STEP # 2- ormula_SD_605_higher* Determination of non ICMS-Contributor according to Technical Note 2015/003 * Created according to SAP Note 2232757 * Relevant for Sales and Distribution Customizing * Relevant only for BrazilDATA: lv_iedest TYPE j_1bnfe_iedest.CONSTANTS: lc_no_icms_contributor TYPE j_1bnfe_iedest VALUE '9'.* Select the ICMS Taxpayer value according to Vendor'sSELECT SINGLE j_1biedest FROM j_1bticmstaxpay INTO lv_iedest WHERE j_1bicmstaxpay = komk-icmstaxpay.* Check if ICMS Taxpayer refers to non ICMS-contributor IF sy-subrc = 0 AND lv_iedest = lc_no_icms_contributor. xkomv-kbetr = 100000. ENDIF.*} INSERT ENDFORM.
FORM FRM_KONDI_WERT_981.
*{ INSERT 1*Manual Instructions FOR SAP Note 2232757 *Technical Note 2015/003 - Interstate Consumption Operations FOR non ICMS-contributors *Version 5 * step # 2- formula_MM_605_higher* Determination of non ICMS-Contributor according to Technical Note 2015/003 * Created according to SAP Note 2232757 * Relevant for Materials Management Customizing * Relevant only for BrazilDATA: lv_business_place TYPE j_1bbranc_, lv_iedest TYPE j_1bnfe_iedest, lv_icmstaxpay TYPE j_1bicmstaxpay.CONSTANTS: lc_no_icms_contributor TYPE j_1bnfe_iedest VALUE '9'."Gets business place using plant SELECT SINGLE j_1bbranch INTO lv_business_place FROM t001w WHERE werks = komp-werks."Gets ICMS Taxpayer indicator from Business Place SELECT SINGLE icmstaxpay INTO lv_icmstaxpay FROM j_1bbranch WHERE bukrs = komk-bukrs AND branch = lv_business_place.SELECT SINGLE j_1biedest FROM j_1bticmstaxpay INTO lv_iedest WHERE j_1bicmstaxpay = lv_icmstaxpay.IF sy-subrc = 0 AND lv_iedest = lc_no_icms_contributor. xkomv-kbetr = 100000. ENDIF.*} INSERT ENDFORM.
Calculation Procedure SD
Add the entries below to the SD pricing procedures:
* Use the number you created the formula in your system.The “Step” values described above may vary according to the Calculation Procedure existing entries. Those steps can be in different numbers but the order / sequence is relevant for correct calculation.
The Tax Codes used for consumption purchase must be updated. Those are the Tax Codes where at J_1BTAXCODEV the Usage is “CONSUMPTION”Activate the Conditions ICEP, ICAP and ICSP (this can also be done via FV11/FV12).Example:Image may be NSFW. Clik here to view.
Define ICMS Partilha
The ICMS Partilha is the partition of ICMS tax due to difference between intrastate (state of destination) and interstate operations. In this case, this difference will be shared between the state of origin and the state of destination, according to Constitutional Amendment 87/2015 (Emenda Constitucional 87/2015) and ICMS Agreement 92/2015 (Convênio ICMS 92/2015), defined by the Brazilian Government.Define the percentage of ICMS Partilha, according to the state of destination, using the J_1BTPARTILHA view, informing the tax rate defined by the Brazilian government. You also need to define a valid initial date to start the tax
Note that you can change 01, 02, 09 to anything you want, as longer as the IE Indicator 1, 2 and 9 are mapped and for the EC87 purpose, the customer/business place will have the entry assigned to 9 on their field ICMS Tax Payer.
Cutover Activities
MAINTAIN TAX SD CONDITIONS OFFSET
Select VK11 Transaction and add the following data for the Conditions BX9O, BX9P, BX9D, ICEO, ICAO and ICPO:
“Country”: BR;
“Amount”: 100,000-
“Unit”: %;
”Calculat. Type”: A
CREATION OF G/L ACCOUNTS AND ASSIGN TO TAX ACCOUNTS
Case needed, you may create the related to G/L Accounts assigning to the Account Keys created previously through OB40 Transaction;
To the Sales and Procurement Scenarios, it will be needed to identify if the customer or the branch involved in the process is ICMS non-contributor. To check this, the formulas in the procedure are used.
The formulas will use the information from ICMSTAXPAY (branch) and IEDEST (Customer).
“Fundo de Pobreza” Poverty fund Settings on J1BTAX
You should maintain the transaction J1BTAX the base and rate of poverty fund, being configurable based on UF region. SAP extended tables J_1BTXIC1, J_1BTXIC2 and J_1BTXIC3 to add 2 new fields. Remember that the program first reads exceptions for material, then the dynamic exceptions and only then the default setting only by region. The program will read the data from poverty fund from the target state configuration.
Note that the Poverty Fund Rate/Base should not be added to the Interstate rate entry, for example, if you are shipping from SP to RJ, you should have an entry from RJ to RJ and then add the Poverty Fund Rate/Base.
The Poverty Fund rate/base is always added to the Internal ICMS Rate, never to the interstate rate.
The Poverty Fund rate must be part of the Destiny Internal ICMS Rate. The system will do the calculation to find the rate without the Poverty Fund rate (19% - 1% = 18%).
I have an entry to this customer in my dynamic exception to calculate ICMS 12% in interstate ICMS rate. I will NEVER add the Poverty Fund Rate to the interstate entry.
Activate VOFM Formulas
SE38 > RV80HGEN
Customer Master Data
Review customer master data where end-consumers must have the ICMS Tax Payer Indicator 9 (No ICMS Contributor).
Business Place Master Data
If your branch is Non ICMS Contributor, then assign the ICMS Tax Payer 09. If not, your branch will not be affected by the calculation of Poverty Fund when buying goods for consumption.
With the configurations and following the steps above, it should be enough to get the system (Sales Orders and Purchase Orders) when relevant, calculating the ICMS Partilha and Poverty Fund.
On my next post I will show some examples of this postings in the system.
Material Ledger and Value flow monitor. CKMLCP and CKMVFM
The objective of the blog is to explain the differences in the value flow monitor.
By reading this blog you can able to answer for the following questions:
Why should we use Value flow Monitor..?
The reason why price differences/ exchange rate differences not apportioned to the SFG/FG Materials.?
Material Ledger and Value Flow Monitor – Not Distributed and non-allocated balances:
The blog is more about the value flow monitor– Not Distributed and non-allocated balances, before that I will give brief introduction to Material Ledger as it is helpful for the new comers.
Objective of the Material Ledger:
The primary objective of the material ledger functionality is arriving the actual cost and we can see the results in multiple valuations and multiple currencies.
How system arrives the actual cost:
Initially all the transactions are happening with the standard price, during CO Month end process we will get the variances and those variances got settled when we execute the settlement.
By following the CO Month end process (OH Calculation – There are many methods, WIP calculation, Variance calculation and Settlement), we are able to settle the variances to the production or process order, but unable to get the actual price.
Importance of ML Run:
By performing ML run these variances/ price differences / exchange rate differences will get settled to the respective material. We will get the actual price. Actual price can be called as a periodic unit price (PUP).
I will start the primary topic – Value flow monitor – Not Distributed and Non Allocated Balances:
By reading the functionality of ML, management and every one feels that all the variances and differences due to price and exchange rate should get settled to the material and expecting no balances should be appeared in PRD GLs.
Expectation – Differences should be zero. But it is very much difficult in real time scenarios...but .....Why...?
We will look into the that......Here I am posting two questions:
Is the actual price arrived during ML run is accurate only if there is no differences found in Value flow monitor….?
Is there any hard and must rule, that the differences should be cleared to arrive the actual price..?
By the end of this blog you can able to answer those questions. Please find the further details:
Nature of the differences:
Differences
Price differences
Exchange rate differences
Single level differences
Single level price differences
Multilevel differences
Multilevel price differences
Multilevel exchange differences
Reason for the differences which are appearing in the Value flow monitor:
There are many differences, it depends on the transaction history of that material.
Example – This I have faced recently.
There is a huge difference appearing in the value flow monitor. Management asking for the clearing that difference.
Then I went into the transaction history of that material.
I found some process orders which were partially confirmed and GR not happen. They feels that getting the output from that process order is no longer possible then they have confirmed with lower quantity and completed the final delivery.
During CO Month end process, system posted a huge variance and got settled.
After performing ML run, while analyzing the Value flow monitor found these differences which are not apportioned to material.
System is clever ignored the difference (Which is not practical and genuine) while calculating actual price calculation.
Still, there is an option of apportioning these differences if management feels it is required.
If we apportion, in my case resulted price will be negative….so we strict to Value flow monitor.