Documentos de Académico
Documentos de Profesional
Documentos de Cultura
In this blog, we will discuss only about most commonly used enhancement package 5 for Procurement business function LOG_MM_CI_3 which offers customers greater long-term value and an easier methodology. Activation of business function using SFW5 transaction
After activation, we will be able to see a) Park Button b) Templates button d) blocking reason PO. c) Document Flow Indicator e) Retail (required only for IS-Retail) in PR &
Park Button:
Use : We can park and hold purchase orders and purchase requisitions for materials and services: Holding of Purchasing Documents : Creating a purchasing document with missing information at that point in time, or may be interrupted when creating the document. In this case, we can still put, for example, an incomplete purchase order on hold, and finish it at a later point in time before saving. Parking of Purchasing Documents : If we want to create a purchasing document, the document may be complete from the materials management point of view, but some financial information may still be missing at that point in time (FI view). In such cases, we can then provisionally save (park) the purchasing document and continue processing it at a later point in time before saving. This function is available in the following transactions:
Create Purchase Order (ME21N) and Change Purchase Order (ME22N) Create Purchase Requisition (ME51N) and Change Purchase Requisition (ME52N) Pushbuttons for park and hold have been added to the user interface. The visibility of these pushbuttons depends on the processing stage of the purchasing document. If we want to exit the creation process before it is finished, we can choose the relevant pushbutton, and the system saves accordingly. Configuration Path to activate Park & Hold button :
Public Templates in Purchase Orders and Requisitions (New) Use : We can create purchase requisitions and purchase orders more efficiently by using templates. We can use the following functions: Create, use, and delete user-specific templates Create, use, and delete public templates, which are available to all users We can use entered data as a template without having to save the document first. From the templates we create, we can copy either header and item data or only item data to a purchasing document. This function is available in the following transactions:
Create Purchase Order (ME21N) and Change Purchase Order (ME22N) Create Purchase Requisition (ME51N) and Change Purchase Requisition (ME52N) In these transactions, there are two additional pushbuttons: Save as Template and Load from Template. To create templates that are available to all users, we need the appropriate authorizations (authorization object Create/Change/Delete Public Templates M_TEMPLATE). Note : When we copy a user, the user-specific templates of the user we are copying are also copied to the new user master record.
Entering of Blocking Reasons in Purchase Orders (New) Use We can save the reasons for blocking a purchase order item in purchase orders. In Customizing for Materials Management, we can create various blocking reasons with language-dependent texts, which are available in a dropdown box when we block purchase orders. When we block a purchase order item, we can select a suitable blocking reason in the item details. We also define in Customizing whether the text for a blocking reason ID can only be copied unchanged, or whether we can overwrite the text with our own reason. If we overwrite the text for a blocking reason ID in the purchase order, we lose the language dependency. Effects on Existing Data: In the transactions ME21N (Create Purchase Order), ME22N (Change Purchase Order), ME23N (Display Purchase Order), and ME29N (Release Purchase Order), there are new fields for selecting and displaying a blocking reason when blocking purchase order items. The system displays the following fields for blocked purchase order items in the item details on the Purchase Order History tab page: Blocking reason ID (BLK_REASON_ID) Blocking reason text (BLK_REASON_TXT) Blocking Reason Config Path:
Use : We can display all the related purchasing and sales documents in purchase requisitions, purchase orders, inbound deliveries, and outbound deliveries with the business function Materials Management - Enhancements in Procurement (LOG_MM_CI_3),
In the item overview, we can use the new pushbutton Extended Document Flow. This pushbutton enables us to display purchasing and sales documents that are related to the selected purchasing or sales item. For example, we can display the sales documents related to a purchase requisition or purchase order item, or the purchasing documents related to delivery items. We can only call the extended document flow for deliveries that reference a purchase order.
In the item overview of the following transactions, we can use the new pushbutton Extended Document Flow: ME52N and ME53N for changing and displaying purchase requisitions ME22N and ME23N for changing and displaying purchase orders VL02N and VL03N for changing and displaying outbound deliveries VL32N and VL33N for changing and displaying inbound deliveries Document flow example:
Important Side-effects note: 1653977 - ME22N - AM 250 Address errors when creating new items 1625040 Template Selection for Purch. not possible 1602965 - MAA2: Commitment, VL09 VL622, and serial numbers (Side effect note : Note 1667310 - MAA2: Short dump when releasing GR blocked stock w/ MIGO 105)
1563462 - ME21n: Activating allocation table fields in retail tab to remove retail tab:
Now let us try to analyze the impact of MR11 in all the scenarios; Scenario 1: Goods Received is Less than Invoice Received (More number of Goods Invoiced) Purchase Order Quantity = 15 Nos GL Entries during Goods Receipt = 10 Nos Debit Credit Stock of Material 10 GR / IR 10 After Invoice receipt Quantity = 15 Nos Debit Credit GR / IR 15 Vendor Account 15 Assuming if the remaining 5 Nos will be received latter Debit Credit Stock of Material 5 GR / IR 5 In our example we imagine that extra Quantity 5 Nos is not delivered. So in order to clear GR/IR we have to run MR11. After executing MR11 Debit Credit Stock of Material 5 GR / IR 5 In this case the MAP of the material will be; Inventory details Before Goods Receipt Material Quantity Amount MAP material X 10 100 10 After Goods receipt Material Quantity Amount MAP material X 20 (10 + 10) 200 (100 + 100) 10
After Executing MR11 Material Quantity Amount MAP material X 25 (10 + 10 + 5) 300 (100 + 100 + 50) 10 Note: No Change in MAP of the material Scenario 2: Invoice received is Greater than Goods Received (GR =I R goods receipt, Invoice contains Freight Charges, transportation charges and any other charges) Purchase Order Quantity = 15 Nos +Freight Charge + Air Charge GL Entries during Goods Receipt = 15 Nos +Freight Charge + Air Charge Debit Credit Stock of Material 25 Material GR / IR 15 Freight GR / IR 7 Air Faire GR / IR 3 After Invoice receipt Quantity 15 Nos Debit Credit Material GR / IR 15 Vendor Account 15 After MR11 Execution Debit Credit Freight GR / IR 7 Stock of Material 7 Air Faire GR / IR 3 Stock of Material 3 In this case the MAP of the material will be; Inventory details Before Goods Receipt Material Quantity Amount MAP material X 10 100 10 After Goods Receipt Material Quantity Amount MAP material X 25 (10 + 15) 350 (100 + 150 + 70 + 30) 14
After Executing MR11 Material Quantity Amount MAP material X 25 (10 + 15) 150 (100 + 150 - 70 - 30) 6 Scenario 3: Goods Received is Greater than Invoice Received Purchase Order Quantity = 15 Nos GL Entries during Goods Receipt = 15 Nos Debit Credit Stock of Material 15 GR / IR 15 After Invoice receipt Quantity = 10 Nos Debit Credit GR / IR 10 Vendor Account 10 Assuming if the remaining 5 Nos Invoice will be received latter Debit Credit GR / IR 5 Vendor Account 5 In our example we imagine that extra Quantity 5 Nos Invoice is not received. So in order to clear GR/IR we have to run MR11. After executing MR11 Debit Credit GR / IR 5 Stock of Material 5 In this case the MAP of the material will be; Inventory details Before Goods Receipt Material Quantity Amount MAP material X 10 100 10 After Goods receipt
Material Quantity Amount MAP material X 25 (10 + 15) 250 (100 + 150) 10 After Executing MR11 (Only Value of the material will be hit, quantity remains same) Material Quantity Amount MAP material X 25 (10 + 10 + 5) 200 (100 + 150 - 50) 8 Scenario 4: Goods Received, Invoice Received but invoice cleared not against the Scenario 5: PO Goods Received, Invoice not Received Purchase Order Quantity = 15 Nos GL Entries during Goods Receipt = 15 Nos Debit Credit Stock of Material 15 GR / IR 15 After executing MR11 Debit Credit GR / IR 15 Stock of Material 15 In this case the MAP of the material will be hit; Inventory details Before Goods Receipt Material Quantity Amount MAP material X 10 100 10 After Goods receipt Material Quantity Amount MAP material X 25 (10 + 15) 250 (100 + 150) 10 After Executing MR11 (Only Value of the material will be hit, quantity remains same) Material Quantity Amount MAP material X 25 (10 + 15) 100 (100 + 150 - 150) 4 All the Scenario explained above is when the Material Stock is equal to the Quantity to be Cleared.
If material Stock is not equal to Quantity to be cleared the actual stock quantity is debited or credited proportionally. The remaining amount is posted to a price difference account. Ideally MR11 should be executed once in a year or twice after getting clearance from MM team and the FI team. Executing MR11 can either over estimate or under estimate the stock value. More Details Can be found from: http://help.sap.com/saphelp_46c/helpdata/en/a8/b99471452b11d189430000e829fbbd/content.htm Also refer the following SAP Notes; 10757 -> FAQ: MR11, clear GR/IR clearing account 790426 -> MR11: Functionality 710865 -> MR11: Important information on account maintenance 1226 Views 12 Comments Permalink Tags: sap_developer_network, financial_excellence, mill_products_and_mining
In SAP Active Global Support, we are underway with a project to simplify the component selection process for our customers. From our analysis of customer feedback and usability studies, we have found that customers have difficulty in navigating through the component hierarchy tree, and as such, often end up choosing incorrect components. We will therefore be reducing the number of MM components visible to customers.
Goal Based on an analysis of incoming message volume, 20 components have been selected for hiding because of a lack of usage, or because they could be easily absorbed by other areas or parent components. See the list below which shows the components which will be hidden.
Benefit The reduction of components will assist us in Support as less component granularity leads to swifter and easier dispatching. Secondly, the reduction will pay dividends on the SMP Message Wizard as fewer components being proposed to the customer in the SMP means easier component selection and increased satisfaction. Please see following table for details of the removed components and their alternative components. We plan to introduce component hiding from 8th of March, 2011. Furthermore, we will use this thread to inform you, our customers, of any updates to the MM component hierarchy as and when we have such details.
Component to be Hidden MM-PUR-ADB-PRN MM-PUR-SSP-CAT MM-PUR-SSP-FOD MM-PUR-SSP-UI MM-PUR-SSP-WFL MM-PUR-GF-DOCU MM-PUR-GF-EURO MM-PUR-OPT-IB MM-PUR-OPT-LB MM-PUR-OPT-PLW MM-PUR-EM-DIC MM-PUR-EM-PO MM-IM-GF-DTF-RES MM-IM-GF-DTF-STK MM-IM-GF-PHI MM-IM-RS-APO MM-IV-ADB-PRN MM-IV-GF-REP MM-IV-INT-BARC MM-IV-INT-SD
Comp Description Document output with Adobe document services Catalog for Shopping Cart Follow-on Documents for Shopping Cart UI configurations / POWL / EP Workflow for Shopping Cart Documentation EURO Investment Buy Load Building Planning Workbench Dependent Item Calculator Empties Management in Purchase Orders Data Transfer: Reservations Data Transfer: Stocks Data Transfer: Physical Inventory Reservations - APO Interface Document Output with Adobe Reporting Barcode Entry Sales and Distribution
Alternative Component MM-PUR-GF-OC MM-PUR-SSP MM-PUR-SSP MM-PUR-SSP MM-PUR-SSP MM-PUR-GF MM-PUR-GF MM-PUR-OPT MM-PUR-OPT MM-PUR-OPT MM-PUR-EM MM-PUR-EM MM-IM-GF-DTF MM-IM-GF-DTF MM-IM-PI-BTC MM-IM-RS MM-IV-ADB MM-IV-GF MM-IV-gf MM-IV-INT
Please feel free to post any comments or queries related to this topic and we will respond at our earliest convenience.
In PO release strategy one of the most used characteristics is the net order value. In case the company exists in multiple countries, we need to define the release strategy taking this into account. Please note that the functionality of the release strategy for having multiple currency code is not available in the standard. You can use the user exit EXIT_SAPLEBND_001 to change the SAP standard behavior. However, there is a workaround available. If you want to use different currencies in your release approval procedure you must create different release strategy and maintain for every currency own characteristics. The header data currency is then converted into local currency (Company code currency) and afterwards the local currency is converted into the currency of the characteristics as explained in the SAP Note 493900 question 13: 13. Question : How is the currency converted? Answer : The header currency is converted to local currency (company code currency) and then the local currency is converted to the characteristic currency. In this blog, we will try to explain how to customize this.
Business scenario Company 1000 exists in two countries. These countries have USD and EUR as local currency.
We would like to define the release strategy with the following characteristics: Plant: Net order value : CEKKO-WERKS CEKKO-GNETW
And for CEKKO-GNETW we would like to have the following release levels: Level USD Level1 0<1500 Level2 > 1500 Exchange rate: 1 USD = 0.69 EUR EUR 0<1000 > 1000
Scenario 1: Define one characteristic who uses CEKKO-GNETW: PO_NET_ORDER_VALUE Maintain values in USD as per the exchange rate conversion. Company Code Currency Strategy 1 PO_NET_ORDER_VALUE Strategy 2 PO_NET_ORDER_VALUE 1000 USD U1 0<1500 USD U2 >1501 USD 2000 EUR E1 0<1032 USD E2 > 1032 USD
Advantages and Desadvantages: (+) easy to mantain when you have a new company code (-) if the exchange rate changes continuously, the values defined for the intervals, need to be maintained often.
Scenario II:
We create characteristics for each currency involved: PO_NET_ORDER_VALUE1 - USD PO_NET_ORDER_VALUE 2 - EUR It is necessary to define a value for any characteristic. There should not be a blank value. Company Code Currency Strategy PO_NET_ORDER_VALUE1 PO_NET_ORDER_VALUE2 1000 USD U1 0<1500 USD > 1 EUR 1000 EUR E1 >1 USD 0<1000 EUR
Advantages and Desadvantages: (+) we do not need to maintain the release value if the exchange rates changes (-) if you add a new country, the maintenance is more difficult
Now I found one even better: ZAG_FIND_BADI. With this programm you get not only the exits, but also the BADIS. I hope you enjoy it as much as i have:
*& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT ZAG_FIND_BADI. TABLES : TSTC, TADIR, MODSAPT, MODACT, TRDIR, TFDIR, ENLFDIR, SXS_ATTRT , TSTCT. DATA : JTAB LIKE TADIR OCCURS 0 WITH HEADER LINE. DATA : FIELD1(30). DATA : V_DEVCLASS LIKE TADIR-DEVCLASS. PARAMETERS : P_TCODE LIKE TSTC-TCODE, P_PGMNA LIKE TSTC-PGMNA .
IF NOT P_TCODE IS INITIAL. SELECT SINGLE * FROM TSTC WHERE TCODE EQ P_TCODE. ELSEIF NOT P_PGMNA IS INITIAL. TSTC-PGMNA = P_PGMNA. ENDIF. IF SY-SUBRC EQ 0. SELECT SINGLE * FROM TADIR WHERE PGMID = 'R3TR' AND OBJECT = 'PROG' AND OBJ_NAME = TSTC-PGMNA. MOVE : TADIR-DEVCLASS TO V_DEVCLASS. IF SY-SUBRC NE 0. SELECT SINGLE * FROM TRDIR WHERE NAME = TSTC-PGMNA. IF TRDIR-SUBC EQ 'F'. SELECT SINGLE * FROM TFDIR WHERE PNAME = TSTC-PGMNA. SELECT SINGLE * FROM ENLFDIR WHERE FUNCNAME = TFDIR-FUNCNAME. SELECT SINGLE * FROM TADIR WHERE PGMID = 'R3TR' AND OBJECT = 'FUGR' AND OBJ_NAME EQ ENLFDIR-AREA.
MOVE : TADIR-DEVCLASS TO V_DEVCLASS. ENDIF. ENDIF. SELECT * FROM TADIR INTO TABLE JTAB WHERE PGMID = 'R3TR' AND OBJECT IN ('SMOD', 'SXSD') AND DEVCLASS = V_DEVCLASS.
SELECT SINGLE * FROM TSTCT WHERE SPRSL EQ SY-LANGU AND TCODE EQ P_TCODE. FORMAT COLOR COL_POSITIVE INTENSIFIED OFF. WRITE:/(19) 'Transaction Code - ', 20(20) P_TCODE, 45(50) TSTCT-TTEXT. SKIP. IF NOT JTAB[] IS INITIAL. WRITE:/(105) SY-ULINE. FORMAT COLOR COL_HEADING INTENSIFIED ON.
DATA : WF_TXT(60) TYPE C, WF_SMOD TYPE I , WF_BADI TYPE I , WF_OBJECT2(30) TYPE C. CLEAR : WF_SMOD, WF_BADI , WF_OBJECT2. *GET THE TOTAL SMOD. LOOP AT JTAB INTO WA_TADIR. AT FIRST. FORMAT COLOR COL_HEADING INTENSIFIED ON. WRITE:/1 SY-VLINE, 2 'Enhancement/ Business Add-in', 41 SY-VLINE , 42 'Description', 105 SY-VLINE. WRITE:/(105) SY-ULINE. ENDAT. CLEAR WF_TXT. AT NEW OBJECT. IF WA_TADIR-OBJECT = 'SMOD'. WF_OBJECT2 = 'Enhancement' . ELSEIF WA_TADIR-OBJECT = 'SXSD'. WF_OBJECT2 = ' Business Add-in'. ENDIF.
FORMAT COLOR COL_GROUP INTENSIFIED ON. WRITE:/1 SY-VLINE, 2 WF_OBJECT2, 105 SY-VLINE. ENDAT. CASE WA_TADIR-OBJECT. WHEN 'SMOD'. WF_SMOD = WF_SMOD + 1. SELECT SINGLE MODTEXT INTO WF_TXT FROM MODSAPT WHERE SPRSL = SY-LANGU AND NAME = WA_TADIR-OBJ_NAME. FORMAT COLOR COL_NORMAL INTENSIFIED OFF. WHEN 'SXSD'.
* FOR BADIS WF_BADI = WF_BADI + 1 . SELECT SINGLE TEXT INTO WF_TXT FROM SXS_ATTRT WHERE SPRSL = SY-LANGU AND EXIT_NAME = WA_TADIR-OBJ_NAME. FORMAT COLOR COL_NORMAL INTENSIFIED ON. ENDCASE.
WRITE:/1 SY-VLINE, 2 WA_TADIR-OBJ_NAME HOTSPOT ON, 41 SY-VLINE , 42 WF_TXT, 105 SY-VLINE. AT END OF OBJECT. WRITE : /(105) SY-ULINE. ENDAT.
SKIP. FORMAT COLOR COL_TOTAL INTENSIFIED ON. WRITE:/ 'No.of Exits:' , WF_SMOD. WRITE:/ 'No.of BADis:' , WF_BADI. ELSE. FORMAT COLOR COL_NEGATIVE INTENSIFIED ON. WRITE:/(105) 'No userexits or BADis exist'. ENDIF. ELSE.
FORMAT COLOR COL_NEGATIVE INTENSIFIED ON. WRITE:/(105) 'Transaction does not exist'. ENDIF. AT LINE-SELECTION. DATA : WF_OBJECT TYPE TADIR-OBJECT. CLEAR WF_OBJECT.
GET CURSOR FIELD FIELD1. CHECK FIELD1(8) EQ 'WA_TADIR'. READ TABLE JTAB WITH KEY OBJ_NAME = SY-LISEL+1(20). MOVE JTAB-OBJECT TO WF_OBJECT. CASE WF_OBJECT. WHEN 'SMOD'. SET PARAMETER ID 'MON' FIELD SY-LISEL+1(10). CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN. WHEN 'SXSD'. SET PARAMETER ID 'EXN' FIELD SY-LISEL+1(20). CALL TRANSACTION 'SE18' AND SKIP FIRST SCREEN. ENDCASE.
tstct. "Transaction Code Texts &--------------------------------------------------------------------*& Variables &--------------------------------------------------------------------DATA : jtab LIKE tadir OCCURS 0 WITH HEADER LINE. DATA : field1(30). DATA : v_devclass LIKE tadir-devclass. &--------------------------------------------------------------------*& Selection Screen Parameters &--------------------------------------------------------------------SELECTION-SCREEN BEGIN OF BLOCK a01 WITH FRAME TITLE text-001. SELECTION-SCREEN SKIP. PARAMETERS : p_tcode LIKE tstc-tcode OBLIGATORY. SELECTION-SCREEN SKIP. SELECTION-SCREEN END OF BLOCK a01. &--------------------------------------------------------------------*& Start of main program &--------------------------------------------------------------------START-OF-SELECTION. * Validate Transaction Code
SELECT SINGLE * FROM tstc WHERE tcode EQ p_tcode. * Find Repository Objects for transaction code IF sy-subrc EQ 0. SELECT SINGLE * FROM tadir WHERE pgmid = 'R3TR' AND object = 'PROG' AND obj_name = tstc-pgmna. MOVE : tadir-devclass TO v_devclass. IF sy-subrc NE 0. SELECT SINGLE * FROM trdir WHERE name = tstc-pgmna. IF trdir-subc EQ 'F'. SELECT SINGLE * FROM tfdir WHERE pname = tstc-pgmna. SELECT SINGLE * FROM enlfdir WHERE funcname = tfdir-funcname. SELECT SINGLE * FROM tadir WHERE pgmid = 'R3TR'
AND object = 'FUGR' AND obj_name = enlfdir-area. MOVE : tadir-devclass TO v_devclass. ENDIF. ENDIF. * Find SAP Modifactions SELECT * FROM tadir INTO TABLE jtab WHERE pgmid = 'R3TR' AND object = 'SMOD' AND devclass = v_devclass. SELECT SINGLE * FROM tstct WHERE sprsl EQ sy-langu AND tcode EQ p_tcode. FORMAT COLOR COL_POSITIVE INTENSIFIED OFF. WRITE:/(19) 'Transaction Code - ', 20(20) p_tcode, 45(50) tstct-ttext. SKIP. IF NOT jtab[] IS INITIAL. WRITE:/(95) sy-uline.
FORMAT COLOR COL_HEADING INTENSIFIED ON. WRITE:/1 sy-vline, 2 'Exit Name', 21 sy-vline , 22 'Description', 95 sy-vline. WRITE:/(95) sy-uline. LOOP AT jtab. SELECT SINGLE * FROM modsapt WHERE sprsl = sy-langu AND name = jtab-obj_name. FORMAT COLOR COL_NORMAL INTENSIFIED OFF. WRITE:/1 sy-vline, 2 jtab-obj_name HOTSPOT ON, 21 sy-vline , 22 modsapt-modtext, 95 sy-vline. ENDLOOP. WRITE:/(95) sy-uline. DESCRIBE TABLE jtab. SKIP. FORMAT COLOR COL_TOTAL INTENSIFIED ON.
WRITE:/ 'No of Exits:' , sy-tfill. ELSE. FORMAT COLOR COL_NEGATIVE INTENSIFIED ON. WRITE:/(95) 'No User Exit exists'. ENDIF. ELSE. FORMAT COLOR COL_NEGATIVE INTENSIFIED ON. WRITE:/(95) 'Transaction Code Does Not Exist'. ENDIF. * Take the user to SMOD for the Exit that was selected. AT LINE-SELECTION. GET CURSOR FIELD field1. CHECK field1(4) EQ 'JTAB'. SET PARAMETER ID 'MON' FIELD sy-lisel+1(10). CALL TRANSACTION 'SMOD' AND SKIP FIRST SCREEN.
The reason for this system behavior is that the classification data cannot be 'transported', it has to be sent by ALE. Therefore you could use transactions:
BD91 for sending characteristics BD92 for sending classes BD93 for sending classifications.
The correct order is important here! Please proceed as in note 45951 described. You can review the following SAP notes for more information: 365604 FAQ: Release strategies in purchasing 86900 Transport of Release strategies (OMGQ,OM 45951 Transporting class data: system / client You can read more about how to set-up ALE in the help.sap.com: R/3 Library -> CA - Cross Aplication Components -> Business Framework Architecture -> ALE Integration Technology -> ALE Quick start). If you do not want to use the ALE to send the release strategy customizing, then the only other solution is to enter the data manually in the new system.
And there you have all the information you need about your customer enhacements, without having to execute many different transactions:
"I
I hope this is an useful tool for you, as it was for me when I first discovered it.
Since the material type is ROH (Raw Material), normally the accounting view is available for the material. Check in MM03, accounting view, the stock valuation data is consistent to the stock quantity in MMBE as zero:
At the moment, the customizing of quantity/value updating flag for the material type ROH could be checked in transaction OMS2:
Since at the moment, the quantity and value updating indicators are ticked for the material type ROH, we expect any goods movement for material TESTMAT_1 in plant 1000 will cause update on stock quantity and valuation data. So firstly we will do a test goods receipt to check out the result: In transaction MIGO, a test GR is done for the material TESTMAT_1 in plant 1000 for 10 PC:
Now let us change the customizing of quantity/value updating flag for the material type ROH:
Now we do a test goods movement again to check out the result. It is a goods issue for 5 PC:
The result shows now the inconsistency between the stock quantity in MMBE and the stock valuation data in MM03:
If now you change back the customizing of quantity/value updating flag for the material type ROH in OMS2, so that the quantity and value updating indicators are ticked for the material type ROH, the inconsistency could be reported by inconsistency check report MB5K:
To prevent such inconsistency, if you want to change the value and/or quantity update of the material types, you have to book out the existing stocks in advance. Ensure that you book out existing stocks in your productive system before you transport the Customizing changes. After the customizing change, book back the stocks.
However this best practice is not aware of by everyone when doing customizing change on value and/or quantity update of the material types. So note 1396442 was introduced to provide reminder message when doing the customizing change. After the note implementation, there will be such warning message:
There is a limit of (999) line items which can be posted per FI document. This is because the line item number (BSEG-BUZEI) field length is defined as (3) numeric positions, i.e., (999) line items. The most commonly used workarounds are as follows:
1. Implement FI summarization (per note 36353).
2. Split the MM document which needs to be posted. For example, in the Goods Movements or the invoice document, there are around 500 line items which will lead to more than 999 line items in the accounting document. Then split the 500 line items into different MM postings, so that each posting will only contain less line items which creates accounting document items less than 999. Now with the new solution from note 1353827 (for MM-IM) and note 1353125 (for MM-IV), the FI documents would be automatically splitted. As a result you would have several FI documents assigned to one MM document. Thus you don't have to worry about the error F5727 or splitting the MM documents. For details you could check the notes above. But there are some points you need to pay attention:
To let system executes an automatic document split in FI for MM postings with more than 999 line items in FI, summarization should not be activated. When system is doing FI document splitting, ACCIT_FI-LOGVO field which contains the mseg line information is used to assure, that the split is not done within one material item.
I.e. the FI document line items for one same MM document item should not be splitted into different FI documents. Let us take a look at an example where this automatic document split in FI happens: This material document contains 533 line items:
Previously when posting such material document, there will be F5727 because the line items in the FI document will be more than 999 line items. But with automatic document split in FI, material document got posted and there are 2 FI documents were created:
Cool, huh?
Why can certain fields not be changed using MEMASSPO, or which fields can be changed?
Posted by Arminda Jack Mar 3, 2010 With the transaction MEMASSPO we can mass change purchase orders fields. But once in a while we find some fields that are not changed by the transaction and we do not know why. MEMASSPO has restrictions, not all fields can be changed. The ME_LIMIT_FIELDS_PO function module basically contains all non-changeable fields for the mass change of the purchase order.
In addition, the following item fields cannot be changed with existing items:
Material number (EKPO-EMATN) Material short text (EKPO-TXZ01) Order quantity (EKPO-MENGE) Order unit (EKPO-MEINS) Net order price (EKPO-NETPR) Purchase order price unit (EKPO-BPRME)
Plant (EKPO-WERKS)
Let us review the customizings and have an example of non-deductible tax in procurement process. The simple example is procurement of non-stock material. 1. The setting of tax record which is assigned to a tax code in purchasing in FI Customizing (transaction FTXP).
2. For the determination of the tax code via the condition technique, condition type NAVS with assigned access sequence 003 is available in the standard system. Let us check the condition type in MM-PUR customizing (transaction M/06):
In principle, you can assign this access sequence also to other condition types. The tax code is only transferred to the purchase order if class 'D' (taxes) is the condition type. If there are several condition types of this class in the condition schema, then the first condition schema which contains a tax code has priority. Non-deductible part of the tax should be regarded as an additional cost item of the procurement because the tax authorities do not refund this amount unlike the deductible part of the tax. Therefore, the non-deductible part of the tax is added to the stock value during the inventory posting. In the purchase order item, the non-deductible tax amount is saved in field EKPO-NAVNW and, if existing, it is saved in the first condition type of category 'N' (non-deductible tax). For this reason, calculation rule 'B' (fixed amount) must be set for the condition type (also refer to Note 138434).
3. Now the condition record needs to be maintained for the condition type NAVS in transaction MEK1:
Please note since we will create a PO for non-stock material, the key combination should be "Taxes: Plant, Account Assignment Origin and Region". Then the tax code is assigned to the condition record.
5. After the GR of the PO, from the accounting document we could see the the non-deductible part of the tax is added to the stock value during the inventory posting:
6. The next step is to create the invoice receipt for the PO:
From the accounting document of above IR, we could see the GR/IR clearing between GR and IR:
Now we have had a simple example to overview the use of Non-Deductible Tax. Let us change the customizing to further understand the configuration of Non-Deductible Tax condition type NAVS. If we change the calculation type from B (Fixed amount) to A (Percentage), then what will happen?
At the moment in table EKPO, EKPO-NAVNW=15 which is still the fix amount instead of the calculated one based on the percentage. In the next step GR we could see the result of the Nondeductible tax more clearly.
As note 501054 stated: Calculation rule 'B' (fixed amount) must be set for the condition type (also refer to Note 138434). Moreover, you have to take into account that the non-deductible tax amount is calculated with function module 'CALCULATE_TAX_ITEM' program-internally. The calculation does not occur within the price determination. As a result of this, the tax amount is only calculated after you have returned from the condition screen and is not calculated on the condition screen when you change the price. 80 Views 1 Comments Permalink
Are you having problems with fields that are not ready for input in MM?
Posted by Arminda Jack Feb 8, 2010 When creating or changing purchasing documents, certain fields (texts, prices etc.) are not ready for input although indicator "optional entry" has been set correctly for the field selection reference key in the customizing, or at least, it looks like it has been done correctly. The best way to explain how to solve this issue is with an example. Lets have one with the "material group" in a purchase order, that appears in the transaction ME22N as not ready for input.
We might check in the customizing, for the field selection reference keys, but we might not find anything wrong. But in a purchase order, as well as in any other purchasing documents, there are more than one field selection key involved in each transaction for a certain document type. It is sometimes difficult to see which keys are influencing the fields, and we have so many keys, that it can be very tiresome to check all of them, one by one. For this reason you can determine exactly the field selection reference keys that are addressed in the relevant transactions, via a debugging session. 1. In Transaction SE37, display function module MEX_FELDAUSWAHL and set a break point at the first statement.
2. Start the transaction you have the issue with, in this case ME22N. The program should stop at the break point set above.
Copy the import fields I_AUSWAHL0, I_AUSWAHL1, I_AUSWAHL2, I_AUSWAHL3, I_AUSWAHL4, I_AUSWAHL5, and I_AUSWAHL6 to the list of field names. The corresponding field contents show the field selection reference keys that are composed as follows: AUSWAHL0: contains the key for the transaction code AUSWAHL1: contains the key for the activity type (AKT + V/H/A; where V = Change, H = Create, A = Display) AUSWAHL2: contains the field selection key of the document type (Table T161) AUSWAHL3: contains the key for the item type AUSWAHL4: contains the key for deleted items AUSWAHL5: contains the key for the price display (Table T160D) AUSWAHL6: contains the key for the sub-item type
3. You can check the field selection reference keys found in Customizing. After checking the 3 keys shown via debugging: ME21N, AKTV, NBF, we could find that the key that was wrong customized was the NBF:
4. All keys from the AUSWAHLn fields are used to determine the field selection and their status. They are set according to the following matrix. Optional Optional Optional Mandatory Mandatory Display Display Hidden Hidden Mandatory Mandatory Mandatory Display Hidden Display Display Display Display Hidden Hidden Hidden Hidden Hidden Hidden
Field status 'Hidden' takes highest priority. This means that if a reference key has defined the field as 'Hidden', all other reference keys are overruled.
Then follow statuses 'Display', 'Mandatory', and finally 'Optional'. Accordingly, a field is assigned the attribute 'Optional' only if all reference keys for the field are set to 'Optional'. I hope this will help you in the future, as it has helped me in the past. 72 Views 1 Comments Permalink
Would you like to prevent copying deleted requisition tems into your purchase order?
Posted by Arminda Jack Feb 1, 2010 When you create a PO referred to a requisition, it can happen that deleted requisition items are also copied. To prevent this you can set the message 06 050 - "Purchase requisition & item & already deleted" to an error message via IMG transaction -> Material Management -> Purchasing -> Environment Data -> Define Attributes of System Messages -> System Messages
" But the checks for the messages can only take place, after adopting all positions, including also the deleted ones.
So, what can we do to avoid copying the deleted requisitions items?. In the transaction ME21N click the "Selection variant" button at Overview screen on the left -> Choose Purchase Requisition
Select the checkbox 'Open only' on the selection screen for the overview.
In this case, the deleted items will not appear on the overview and therefore they can not be adopted.