Skip to main content

Posts

Showing posts with the label PO

[SAP MM] Restrict Conditions update in a purchasing document

Below are the options that can avoid that conditions update in the condition tab of the Purchase Order : Use T-code OMET to set function authorizations and define that the conditions cannot be changed.  Consider changing the condition type by using T-code M/06. If you set the indicator 'Manual Entries' to D, then it is not possible to change the condition in the purchase order.

[SAP MM] Trigger release strategy even for reduction of PO value

 At times, there is a a situation where the business requires a release strategy to be triggered if there are any changes to the purchase order document value either increase or decrease of document value. In general, standard SAP does trigger a release strategy if there is an increase in document value but however, if there is any decrease in the document value system doesn't trigger release strategy. This post covers the technical changes that we have to make to trigger release strategy if there is any decrease in the document value to that of the released amount. Release strategy at purchase order level is triggered based on the function module - 'ME_REL_STRATEGIE_EKKO' so we are required to make changes in this FM to accomplish this requirement. Perform reset is used to reset the release strategy post-release of the document. IF  cekko -gnetw  GT f1 .            PERFORM reset              USING e_frgst e_frggr                   e_frgzu e_frgkz e_frgrl .           e_

Logic to fetch PO approver Name - MM

Logic to display final approver name  Fetch FRGGR FRGSX FRGKE by passing EBELN and FRGRL Eq ‘X’ Into table EKKO Pass FRGGR FRGSX into table T16FS and Fetch FRGC1 , FRGC2 , FRGC3 , FRGC4 , FRGC5 , FRGC6 , FRGC7 , FRGC8. If NOT FGRC1 IS INTIAL AND FRGC2 IS INITIAL PASS FGRC1 INTO TABLE T16FW  AND FETCH OBJID PASS  OBJID INTO TABLE USR21 AND FETCH PERSNUMBER PASS PERSUMBER INTO TABLE ADRP AND FETCH NAME_TEXT Display NAME_TEXT in the report output to display processor name ELSEIf NOT FGRC2 IS INTIAL AND FRGC3 IS INITIAL PASS FGRC2  INTO TABLE T16FW  AND FETCH OBJID PASS  OBJID INTO TABLE USR21 AND FETCH PERSNUMBER PASS PERSUMBER INTO TABLE ADRP AND FETCH NAME_TEXT Display NAME_TEXT in the report output to display processor name ELSEIf NOT FGRC3 IS INTIAL AND FRGC4 IS INITIAL PASS FGRC3 INTO TABLE T16FW  AND FETCH OBJID PASS  OBJID INTO TABLE USR21 AND FETCH PERSNUMBER PASS PERSUMBER INTO TABLE ADRP AND FETCH NAME_TEXT Display NAME_TEXT in the repor

Mass blocking of Purchase Orders

At times, business requires to mass block PO's and release whenever required. For this to accomplish, We cannnot be done through Mass Transaction as system will consider as 'L' even though we pass Value 'S' in LOEKZ field. For this to accomplish we are required to perform LSMW - Batch input method where recording need to be performed to ME22. Below is the sample LSMW export file for reference. [Recording        ] : ME22 [Recording Text   ] : po change /SAPDMC/LSGBDC                ZTEST_IMP      ME22           0001                                        0000TME22