EXIT_SAPLEBND_002 of M06E0004 User exit to Reset Release Status if PO

Hi All,
I have implemented a user-exit EXIT_SAPLEBND_002 of M06E0004, as advised, which can reset/cancel the release status of a certain PO document when a certain field has been changed aside from the quantity and price fields.
I would just like to ask if how woud the exit know if something in the document has been changed by the user if he goes to me22n? Basically, the requirement was that everytime a user changes the partially released PO in the header data and other fields aside from price and quantity, the release status should be reset to start all over again.
I have this code, but this should only be ran if a partially released PO has been changed in most of its fields (header/item).
DATA: wa_ekpo TYPE ekpo,
      wa_bekpo TYPE ekpo,
      lv_frgke TYPE ekko-frgke,
      tx_ekko TYPE char200,
      tx_ekbe TYPE char200,
      lv_frgzu TYPE ekko-frgzu.
FIELD-SYMBOLS: <fs_ekko>  TYPE ekko.
tx_ekko = '(SAPLMEPO)ekko'.
ASSIGN (tx_ekko) TO <fs_ekko>.
If <fs_ekko>-frgke = '1' AND
   <fs_ekko>-frgzu IS NOT INITIAL.
<fs_ekko>-frgke = '2'.
<fs_ekko>-frgzu = space.
ENDIF.
UNASSIGN <fs_ekko>.
Kindly send some recommendations.
Regards,
RE

Add this code in user exit exit_saplbend_002 .
Code=> This code use to change release status on PO amount decrease and increase.
================================
**** Start of changes for Release status change on PO amount decrease .
E_CEKKO = I_CEKKO .
DATA : wa_bekpo type BEKPO,
       wa_ekpo TYPE ekpo,
       WA_CEKKO TYPE CEKKO,
       w_reset(1) TYPE c VALUE 'X'.
if sy-tcode eq 'ME22N' OR sy-tcode eq 'ME22'.
WA_CEKKO = I_CEKKO .
IMPORT WA_CEKKO = WA_CEKKO FROM MEMORY ID 'ZREL_COST'.
IF SY-SUBRC NE 0.
  EXPORT WA_CEKKO = WA_CEKKO TO MEMORY ID 'ZREL_COST'.
ENDIF.
ENDIF.
if ( sy-tcode eq 'ME22N' OR sy-tcode eq 'ME22' )
  and sy-ucomm eq 'MESAVE' or sy-ucomm eq 'MECHECKDOC'.
*Import/Export the origninal values.
*Check if the limit is passed.
LOOP AT it_bekpo INTO wa_bekpo .
SELECT SINGLE NETWR FROM ekpo INTO wa_ekpo-netwr WHERE ebeln eq wa_bekpo-ebeln and ebelp eq wa_bekpo-ebelp.
IF SY-SUBRC EQ 0.
IF wa_bekpo-netwr < wa_ekpo-netwr.
    w_reset = 'X'.
  endif.
ENDIF.
ENDLOOP.
*IF limit passed - reset the value to high limit beyond tolerance.
IF w_reset = 'X'.
E_CEKKO-GNETW = WA_CEKKO-GNETW + 1000000.
ENDIF.
endif.
**** End of changes for Release status change on PO amount decrease .

Similar Messages

  • User exit to prevent setting status , if there is no budget allocated to WBS

    Hi PS Experts,
    Is it normal to experience unlimited purchases if you have forgotten to add budget $$ against WBS?
    Customer has following steps
    1) User create Project & user status is CREA which prevents most traxn
    2) User will allocate budget to WBS & set user status to OPEN which will allow Release of project.
    3) Release project & create PR/PO
    under step 2, if they forget to add budget any amount of procurement can be done against that WBS.
    We are looking at any user exit to prevent release of WBS which doesn't have budget $$ assigned to it.
    Are there any?
    Thank you so much for help,
    Jatin

    Hi Shishir,
    I am experiencing unlimited PR/PO  allowed for WBS without budget/forget to add budget(Blank entry).
    Is there a configuration which treats 'Blank' as 0. We are experiencing 'Blank' treated as unlimited( 999999999)
    In MM-Physical inventory, there is 'Radio' button to mark 'Zero Count' to make sure user whats to decelare 'Zero' instead of 'Forgot to enter'.Much in similar way , something like this is happening here.
    This is probably system reading 'Blank' field as non-zero. is there a way to alter this behavior?
    Best Regards,
    Jatin

  • User exit for Production Order status

    Hi all ,
    Pl tell me about the : user exit for Production Order status
    ( i want CLSD status after settlement of the Production order .)
    regards,

    Hi,
    for production order you have exits PPCO0001 - PPCO0023. In transaction SMOD you can see the documentation for all this exits. Actually I think exit PPCO0007 could be a possiblity for you. This exit is called by saving the order.
    But maybe it would be better for you to use a special status profile? A user status is set if settlement status is set.
    Also BADI WORKORDER_UPDATE could be interessting for you.
    Regards,
    Sabine

  • User Exit for Requisition Release Strategy

    Hi All,
    Is anyone able to provide any guidance on determining the release strategy of a purchase requisition via a user exit? It has become neccessary to do this due to certain shortcomings of the classes and characteristic functionality.
    I believe it's possible, I just don't know how.
    Thanks.
    Richard

    go SMOD and enter enhancement M06E0004      it is exit LXM06U13

  • User Exit-Prod Order Release

    Hi all!
    Is there any user exit available at the time of the production order release? I found only one exit but it is triggered only when the components of BOM are batch managed.
    thanks a lot

    Hi Deepak,
    Please try searching the user exit in the link below.
    It has the list of all the User Exits available.
    http://www.easymarketplace.de/userexit.php
    Hope it helps.
    regards,
    Raj

  • User exit for triggering release strategy

    Hello Experts,
    My requirement is when changes are made in purchase order (ME22N) then once again release strategy will have to get trigger.
    is the user exits exists for this purpose,if yes, What is it?. I searched alot but not able to find right exits.

    Hello ,
    I think you can achieve this via configuration .Basically you want the release strategy to get redetermined based on the changes in the item or if the price of these items increase a certain level .if you  have the release startegy as changeble in the SPRO ticked it will automatically go for new release strategy if you have the value of release indicator set .This can be done SPRO->MM->Purchase order->Release procedure for purchase order->Define release procedure->Release indicator.
    Set  the appropriate value  .
    Remember you need to know what is that it retrigger that release strategy .
    The link below deals with similar requirement ....
    [http://sap.ittoolbox.com/groups/technical-functional/sap-log-mm/retrigger-release-strategy-for-purchase-requisition-with-any-change-1858101]
    Thanks
    Anjaneya .
    Edited by: Anjaneya Bhardwaj on Aug 31, 2011 8:21 AM

  • User exit for the release of Purchase Order

    Hi Friends,
    I am searching for a user exit which should trigger at the time of Purchase Order release in ME29n transaction.
    If anyone can help me for the same....!!!
    I need the exact exit which triggers at the release of PO....
    Points will be rewarded for the needful replies.
    Regards,
    Mandeep.

    HI,
    Finding the user-exits of a SAP transaction code
    Enter the transaction code in which you are looking for the user-exit
    and it will list you the list of user-exits in the transaction code.
    Also a drill down is possible which will help you to branch to SMOD.
    report zuserexit no standard page heading.
    tables : tstc, tadir, modsapt, modact, trdir, tfdir, enlfdir.
             tables : 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 obligatory.
    select single * from tstc where tcode eq p_tcode.
    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 = '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.
    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.
    *---End of Program
    USE THIS PROGRAM TO GET ANY USER EXIT BY GIVING THE TCODE.
    MMFAB001            User exit for generation of release order
    MRFLB001            Control Items for Contract Release Order
    REGARDS,
    PRIYA.
    Edited by: Priyadharshini Veluswamy on Mar 13, 2008 9:21 AM
    Edited by: Priyadharshini Veluswamy on Mar 13, 2008 9:40 AM

  • User exit for contract release order.......

    Hi All,
    I have a question...
    when we create a sales order and type the sold-to party the system dispalys(pop-up screen) the open contracts against the customer. It is up to us wheather we can copy any one of the contacts into the sales order and create a release order or we can just cancel the pop-up screen and create a new sales order with out reference to a sales order.
    <u>HERE my requirement is as follows</u>.
    1) <b>When a customer has open contacts  and validity period we should  make user to copy  any one of the the existing contracts in the pop-up screen.</b>
    2) <b>At the same time if the customer has got no contracts against him he should be allowed to cerate a plain sales order.</b>
    I have tried with user exit Change document & User exit Save document in include <b>MV45AFZZ</b> but our code (user exit) should fire before or at the time of pop-up screen(containing the open contracts against the customer) which is just not happening.
    Has any one of you came across of any solution for this kind of scenario...
    One last option i have got is to disable the close push button taking the access key  and changing the standard code........but this will effect the other places where this close button is used.
    Please let me know how to go about it.
    Thanks in advance......for your valuable time & precious knowledge.
    With regards,
    <b>Pavan</b>

    Have you tried applying code to EXIT_SAPLV46H_001 - Customer Function When Creating Item?
    Or EXIT_SAPLV46H_002 - Customer Function for Partner Changes?

  • User exit ML81N.....Name of user exit to trigger 'Release Strategy'..urgent

    Hi Guys,
    ML81N work in a manner such that if the net amount for any PO/Service entry is less than $2500 then its 'Release Strategy' tab is not active.
    I have a requirement where i have to make that tab active and select the Lowest Release Strategy when the amount is less than $2500.
    Can anyone please tell me the name of the user exit that controls the 'Release strategy'.
    Points will be awarded...
    Thanks
    Rahul

    Hi
    Your settlement rule says "Settle to Cost Center" only.... I dont think any user exit can help in this case, if you want to settle occasioanlly to 2 cost objects
    Try with these options
    Option A
    1. Remove the 100% validation tick in the settlement profile...
    2. Maintain 2 settlement rules... i.e. One with Cost center and another with PSG... If any warning comes, ignore it
    3. Execute settlement now
    Option B
    1. Maintain settlement rule with PSG as settlement receiver
    2. In the same Settlement rule, Menu GO TO > DETAILS and maintain Cost Center also....
    3. Now execute settlement...
    Option C
    1. Maintain settlement rule with PSG as settlement receiver
    2. In the same Settlement rule, populate Cost Center also as a Valid Characteristic
    3. Now execute settlement...
    BR,Ajay M

  • User exit to change Release date for ME54N

    Dear Folks,
    I need and user exit / BADI to update EBAN-FRGDT (Release date) based on the value in EBAN-FRGKX (Release indicator).
    For example : If the PR release indicator changed to "F", I need to change the EBAN-FRGDT (Release date) to sy-datum and then save.  Please help me. 
    Thanks,
    Kishore. P

    Hi Rohini ,
    I have used BTE 1120 (Business Transaction Event) to change the value date for line items (BSEG-VALUT) for F110.
    May be this can help u ..... try once ....
    Regards,
    AKS

  • User exit in PR Release Strategy/Workflow

    Hi xperts,
    Need to seek some clarification regarding above subject.
    If i were to set in release code config the workflow setting is "9" that is role resolution via user exit, do i still need to config the workflow?
    If i do NOT need to config the workflow (whether by user id or position id or etc), how do I assign authorization of release code to the approver?
    Thanks in advance.

    Thanks Jurgen
    I know that the codes will be assigned via authorization profiles and roles.  Let me rephrase my questions:
    1. If using user exit for triggering workflow, do i need to maintain the workflow config?  or the system will route automatically to the user/approver inbox/email by whatever conditions that hv been setup (or on the other hand, NO need to maintain the workflow cofig)?
    2. If system will automatically route to the approver inbox, how do i identify the approvers user id that i need to assign the role?
    Thanks.
    Anybody??
    Edited by: MM1974 on May 19, 2010 4:31 AM

  • Purchase requisition , ME51N, user exit for change Release date

    Hello.
    Purchase Requisition ( transaction ME51N).
    I want to change the value of u201ERelease dateu201C using user-exit EXIT_SAPLMEREQ_005.
    CALL METHOD im_req_item->get_data
      RECEIVING
        re_data = get.
    set = get.
    set-frgdt = u2026..
      CALL METHOD im_req_item->set_data
        EXPORTING
          im_data = set.
    Next, in dynpro is visible the right value from EXIT_SAPLMEREQ_005, but when saving the system uses another value, not the value from user exit.
    Do you anybody have some experiences with this problem?
    Lumir

    Hi
    The USer Exit you can use for the ME51n Tcode is by using Badi's.The Badi you can use is ME_PROCESS_REQ_CUST BADI.
    Method to be used: PROCESS_ITEM
    This link gives you a brief idea.Hope it helps you.
    BADI for ME51N
    Thanking you.

  • Please give me User Exit  for Credit Release -Urgent-

    Please send the User Exit for Credit release

    Mr.Goutam
    My request is that dont continue your questions in one thread.
    Two options are available for you to post in this forum
    a)  First list out what are all your requirements and ask this forum in which specific area you have doubts.  If all your questions are answered, award points who have given the solution for you.
    b)  Post question one by one and wherever your questions are answered, close the thread and reward points to the members.
    If you take this thread, Initially you raised a question on Credit Limit and many of us have answered your question and the thread should have been closed.  But questions are continuing with same subject but with different topics which I feel is WRONG.
    Hope you understand now.
    Thanks
    G. Lakshmipathi

  • User-Exit for document changes (status)

    Hi!
    I'm looking for an user-exit where I can check if the status of the document has been changed. Therefore I found the exit "EXIT_SAPLCV110_004" with the include "ZXCV110U04" which is triggered when a document (transaction CV02N) is saved. The problem is that there is no structure of the document provided so I cannot check the status of it! The interface if this exit is just
    FUNCTION EXIT_SAPLCV110_004.
    ""Lokale Schnittstelle:
    *" CHANGING
    *" REFERENCE(PFX_OKCODE) TYPE SY-UCOMM
    INCLUDE ZXCV110U04 .
    ENDFUNCTION.
    Is there another exit or how can I check if the status has changed for each document?
    Thanks,
    Konrad

    You can code in EXIT_SAPLCV00_001. Write your code in the program  ZXCV001U01. This has DRAW structure valeus and also DRAZ Item details.
    FUNCTION EXIT_SAPLCV00_001.
    ""Lokale Schnittstelle:
    *"       IMPORTING
    *"             VALUE(I_DRAW) LIKE  DRAW STRUCTURE  DRAW OPTIONAL
    *"             VALUE(I_OK_CODE) OPTIONAL
    *"             VALUE(SOURCEPATH) LIKE  DRAW-FILEP OPTIONAL
    *"             VALUE(SOURCEFILE) LIKE  DRAW-FILEP OPTIONAL
    *"             VALUE(TARGETPATH) LIKE  DRAW-FILEP OPTIONAL
    *"             VALUE(TARGETFILE) LIKE  DRAW-FILEP OPTIONAL
    *"       TABLES
    *"              I_INTDRAZ1 STRUCTURE  DRAZ OPTIONAL
    *"              I_INTDRAZ2 STRUCTURE  DRAZ OPTIONAL
    *"       EXCEPTIONS
    *"              ERROR
    INCLUDE ZXCV001U01 .
    ENDFUNCTION.
    Hope this will help you to check the conditions.

  • ME_PROCESS_PO_CUST method PROCESS_HEADER to reset release status of doc

    Hi Everyone,
    I have read lots of threads regarding the implementation of BAdI ME_PROCESS_PO_CUST. However, I could not find one which fits our requirement which is the resetting/ restart of the release status of a PO whenever a released/approved PO has been changed not only in the quantity field but also in the other details of the document.
    I believe that the method to be used in this sense is the PROCESS_HEADER. Would you know any logic which could help me restart an already released PO document whenever any changes have been made to the document?
    Kindly send your recommendations.
    Thanks and regards,
    Reymar

    Hi,
    I used this code:
    CALL METHOD im_header->get_data
    RECEIVING
    re_data =  lmpoheader.
    IF lmpoheader-frgke = 1 AND
        lmpoheader-frgzu IS NOT INITIAL.
    lmpoheader-frgke = 2.
    lmpoheader-frgzu = ''.
    CALL METHOD im_header->set_data
    EXPORTING
    im_data = lmpoheader.
    ENDIF.
    After saving the PO document, the fields FRGKE and FRGZU were not changed. When I debugged the code, the values of the fields were changed. I just don't know if the last CALL METHOD has been properly executed so that IM_DATA may contain the changed values.
    Thank you and regards,
    RE
    Edited by: Reymar Ellazo on Apr 21, 2009 6:19 PM

Maybe you are looking for

  • Creating and Dropping a temporary table in Bi publisher?

    Hi all. My database is sybase. I created a new data set in BI publisher where it creates a temporary table, uses that temp table in a select query and then I dropped the temporary table. I wrote all these 3 SQL statements in a single dataset. This is

  • Yep. I have the same problem as all of you! Mini not recognized!

    My Mini was working fine, then it stopped showing up in Windows or iTunes. I have reset it numerous times, put it into disk mode, tried the Windows disk management, etc. The iPod updater will not work of course, since Windows does not even know the M

  • TV Monitor settings

    Sorry if this is posted elsewhere, I couldn't find it. I have Final Cut Express HD 3.5.1. I really haven't used it much. In previous versions I had my tv hooked up with my dazzle pass thru and used the commands "Video" & "FireWire" in the View Menu t

  • Rc 3:  orphan-delete fixed but problems with unidirectional 1:n

    The orphan-delete problem is already fixed with rc3 released today: parent.getChildren().clear(); tx.begin(); pm.attachObject(parent); tx.commit(); results in "delete from children". Looks great as long I map parnt-children relationship in bidirectio

  • Oracle Streams in 10g

    Hi All, I am new to Oracle Streams in 10g, Could any one explain me what is Oracle streams and why we have to use it and related documents. Please don't hesitate me to reply. Thanks, Redro.