Trapping Events such as Goods Reciept for Purchase Order

Hi,
I want to be able to trap events such as a Goods Reciept and respond to it.
Because this can happen both in the goods reciept form or the AP Invoice Form or by automatic posting, is there a way to 'listen' for this event behind the scenes ?
I also want to do it with reciepting production orders.
Thanks
Nick

HI,
USe SP_TRANSACTIONNITOFICATION for trapping events at SQL server SIDE.
I am suggesting:
1. Create your table
2. Write a simple code in T-SQL into SP_TRANSACTIONNITOFICATION  which the monitored event inserts rows into your table
3. Check the table from your addon and process the rows inside,
Or use the following solution:
Re: Stored Proc - BP Account On Hold
It is hard, but working.
Regards,
J.

Similar Messages

  • Call BAPI_GOODSMVT_CREATE to create a goods receipt for purchase order

    Hi,
    I'm calling the bapi BAPI_GOODSMVT_CREATE to create a goods receipt for purchase order, but the following code doesn't work. It doesn't give me any kind of error message but it does nothing as well...
    Can anyone help me please?
    Thank You
    Hugo
    Code
    DATA: wa_goodsmvt_header  LIKE bapi2017_gm_head_01,
                            wa_goodsmvt_code    LIKE bapi2017_gm_code,
                            wa_bapi2017_gm_head TYPE bapi2017_gm_head_ret-mat_doc.
                      DATA: it_goodsmvt_item LIKE bapi2017_gm_item_create OCCURS  0 WITH HEADER LINE,
                            it_return        LIKE bapiret2 OCCURS  0 WITH HEADER LINE.
                      wa_goodsmvt_header-pstng_date = SY-DATUM.
                      wa_goodsmvt_header-doc_date   = SY-DATUM.
                      wa_goodsmvt_header-ref_doc_no = '4500000020'.
                      wa_goodsmvt_code-gm_code = '01'.          "Goods receipt for purchase Order
                      it_goodsmvt_item-stge_loc  = 'BPF2'.
                      it_goodsmvt_item-move_type = '101' .
                      it_goodsmvt_item-entry_qnt = 17.
                      it_goodsmvt_item-entry_uom = 'KG'.
                      it_goodsmvt_item-mvt_ind   = 'B'.
                      it_goodsmvt_item-po_number = '4500000020'.
                      it_goodsmvt_item-po_item   = '00010'.
                      it_goodsmvt_item-material  = '50'.
                      APPEND it_goodsmvt_item.
                      CALL FUNCTION  'BAPI_GOODSMVT_CREATE'
                        EXPORTING
                          goodsmvt_header  = wa_goodsmvt_header
                          goodsmvt_code    = wa_goodsmvt_code
                        IMPORTING
                          materialdocument = wa_bapi2017_gm_head
                        TABLES
                          goodsmvt_item    = it_goodsmvt_item
                          return            = it_return.
                        data: begin of errmsg occurs 10.
                                include structure bapiret2.
                        data: end of errmsg.
                        data: wmenge like iseg-menge,
                              errflag.
                        clear errflag.
                        loop at errmsg.
                          if errmsg-type eq 'E'.
                            write:/'Error in function', errmsg-message.
                            errflag = 'X'.
                          else.
                            write:/ errmsg-message.
                          endif.
                        endloop.
                        if errflag is initial.
                          commit work and wait.
                          if sy-subrc ne 0.
                            write:/ 'Error in updating'.
                            exit.
                          else.
                            write:/ 'Ok'.
                          endif.
                        endif.
                        CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
                        EXPORTING
                        wait = ' '.

    Hi,
    Thank you for the asnwer! I'm a rookie at ABAP so please forgive my stupid questions
    I've changed the code to:
    DATA: wa_goodsmvt_header  LIKE bapi2017_gm_head_01,
                            wa_goodsmvt_code    LIKE bapi2017_gm_code,
                            wa_bapi2017_gm_head TYPE bapi2017_gm_head_ret-mat_doc.
                      DATA: it_goodsmvt_item LIKE bapi2017_gm_item_create OCCURS  0 WITH HEADER LINE,
                            it_return        LIKE bapiret2 OCCURS  0 WITH HEADER LINE.
                      wa_goodsmvt_header-pstng_date = SY-DATUM.
                      wa_goodsmvt_header-doc_date   = SY-DATUM.
                      wa_goodsmvt_header-ref_doc_no = '4500000020'.
                      wa_goodsmvt_code-gm_code = '01'.          "Goods receipt for purchase Order
                      it_goodsmvt_item-plant     = 'BP01'.
                      it_goodsmvt_item-stge_loc  = 'BPF2'.
                      it_goodsmvt_item-move_type = '101' .
                      it_goodsmvt_item-entry_qnt = 10.
                      it_goodsmvt_item-entry_uom = 'KG'.
                      it_goodsmvt_item-mvt_ind   = 'B'.
                      it_goodsmvt_item-po_number = '4500000020'.
                      it_goodsmvt_item-po_item   = '10'.
                      it_goodsmvt_item-material  = '50'.
                      APPEND it_goodsmvt_item.
                      CALL FUNCTION  'BAPI_GOODSMVT_CREATE'
                        EXPORTING
                          goodsmvt_header  = wa_goodsmvt_header
                          goodsmvt_code    = wa_goodsmvt_code
                        IMPORTING
                          materialdocument = wa_bapi2017_gm_head
                        TABLES
                          goodsmvt_item    = it_goodsmvt_item
                          return            = it_return.
                          write:/ it_return-message.
    And the return message is : Material document data and PO data do not match (Material)
    Any idea of what might be the problem?
    Thanks

  • Goods Receipts for Purchase Order using BAPI_GOODSMVT_CREAT

    Hi experts,
    I am working on the a program where am generating Goods Receipts for Purchase Order. the BAPI_GOODSMVT_CREAT returns an error saying "Material 6003022 not maintained in plant 1001"
    Can any one assist? is there a field I may be missing?
    Here is a sample code.
    DATA: gm_header TYPE bapi2017_gm_head_01.
    DATA: gm_code TYPE bapi2017_gm_code.
    DATA: gm_headret TYPE bapi2017_gm_head_ret.
    DATA: gm_item TYPE TABLE OF bapi2017_gm_item_create WITH HEADER LINE.
    DATA: gm_return TYPE bapiret2 OCCURS 0 WITH HEADER LINE.
    DATA: gm_retmtd TYPE bapi2017_gm_head_ret-mat_doc.
    CLEAR: gm_return, gm_retmtd.
    REFRESH gm_return.
    Setup BAPI header
    "data
    gm_header-pstng_date = sy-datum.
    gm_header-doc_date = sy-datum.
    gm_code-gm_code = '02'.
    " MB1A * Write 971 movement to table CLEAR GM_ITEM.
    MOVE '101' TO gm_item-move_type .
    " MOVE 'Q' TO GM_ITEM-SPEC_STOCK.
    MOVE '6003022' TO gm_item-material.
    MOVE '10' TO gm_item-entry_qnt.
    MOVE 'EA' TO gm_item-entry_uom.
    MOVE '1001' TO gm_item-plant.
    MOVE '' TO gm_item-stge_loc.
    MOVE '0901' TO gm_item-move_reas.
    "  MOVE '4500006877' TO GM_ITEM-WBS_ELEM.
    "  MOVE '0020' TO GM_ITEM-VAL_WBS_ELEM.
    MOVE '0020' TO gm_item-deliv_numb.
    MOVE '4500006881' TO gm_item-po_number.
    MOVE '0010' TO gm_item-po_item.
    APPEND gm_item.
    Call goods movement BAPI
    CALL FUNCTION 'BAPI_GOODSMVT_CREATE'
      EXPORTING
        goodsmvt_header  = gm_header
        goodsmvt_code    = gm_code
      IMPORTING
        goodsmvt_headret = gm_headret
        materialdocument = gm_retmtd
      TABLES
        goodsmvt_item    = gm_item
        return           = gm_return.
    IF NOT gm_retmtd IS INITIAL.
      COMMIT WORK AND WAIT.
      CALL FUNCTION 'DEQUEUE_ALL'.
    ELSE.
      COMMIT WORK AND WAIT.
      CALL FUNCTION 'DEQUEUE_ALL'.
    ENDIF.

    >
    Spark842 wrote:
    > Hi experts,
    > I am working on the a program where am generating Goods Receipts for Purchase Order. the BAPI_GOODSMVT_CREAT returns an error saying "Material 6003022 not maintained in plant 1001"
    >  Can any one assist? is there a field I may be missing?
    >
    > Here is a sample code.
    >
    > DATA: gm_header TYPE bapi2017_gm_head_01.
    > DATA: gm_code TYPE bapi2017_gm_code.
    > DATA: gm_headret TYPE bapi2017_gm_head_ret.
    > DATA: gm_item TYPE TABLE OF bapi2017_gm_item_create WITH HEADER LINE.
    > DATA: gm_return TYPE bapiret2 OCCURS 0 WITH HEADER LINE.
    > DATA: gm_retmtd TYPE bapi2017_gm_head_ret-mat_doc.
    > CLEAR: gm_return, gm_retmtd.
    > REFRESH gm_return.
    > * Setup BAPI header
    > "data
    > gm_header-pstng_date = sy-datum.
    > gm_header-doc_date = sy-datum.
    > gm_code-gm_code = '02'.
    >
    >
    > " MB1A * Write 971 movement to table CLEAR GM_ITEM.
    > MOVE '101' TO gm_item-move_type .
    > " MOVE 'Q' TO GM_ITEM-SPEC_STOCK.
    > MOVE '6003022' TO gm_item-material.
    > MOVE '10' TO gm_item-entry_qnt.
    > MOVE 'EA' TO gm_item-entry_uom.
    > MOVE '1001' TO gm_item-plant.
    > MOVE '' TO gm_item-stge_loc.
    > MOVE '0901' TO gm_item-move_reas.
    > "  MOVE '4500006877' TO GM_ITEM-WBS_ELEM.
    > "  MOVE '0020' TO GM_ITEM-VAL_WBS_ELEM.
    > MOVE '0020' TO gm_item-deliv_numb.
    > MOVE '4500006881' TO gm_item-po_number.
    > MOVE '0010' TO gm_item-po_item.
    > APPEND gm_item.
    >
    > * Call goods movement BAPI
    >
    > CALL FUNCTION 'BAPI_GOODSMVT_CREATE'
    >   EXPORTING
    >     goodsmvt_header  = gm_header
    >     goodsmvt_code    = gm_code
    >   IMPORTING
    >     goodsmvt_headret = gm_headret
    >     materialdocument = gm_retmtd
    >   TABLES
    >     goodsmvt_item    = gm_item
    >     return           = gm_return.
    >
    > IF NOT gm_retmtd IS INITIAL.
    >
    >   COMMIT WORK AND WAIT.
    >   CALL FUNCTION 'DEQUEUE_ALL'.
    > ELSE.
    >   COMMIT WORK AND WAIT.
    >
    >   CALL FUNCTION 'DEQUEUE_ALL'.
    > ENDIF.
    My guess, is that this material is not really maintained in the Plant '1001', to be on the safer side, get the exact values from EKPO itself, also check if this material exists in the table MARC for the plant and storage location.
    MOVE '1001' TO gm_item-plant.   "<< Hard coded
    MOVE '' TO gm_item-stge_loc.
    Replace the above hardcodes to something like this to get the actual value from EKPO.
    select werks lgort into (gm_item-plant, gm_item-stge_loc) from ekpo
       where ebeln = gm_item-po_number
            and ebelp = gm_item-po_item.

  • Is it possible to do goods receipt for purchase order by mb31

    Hello friends,
    I have created one purchase order.Now i want to do goods receipt for that purchase order.I know that throught migo and movt type 101, i can do this.But guys i have one doubt over here.Can i do the goods receipt for purchase order by Transaction code MB31(Goods Receipt for Order).
    When in Transaction code mb31 i put the purchase order number, system gave me the error,"order 44000000298 not found or not permitted for goods movement".Message no. c6001.
    So guys what do you think in this matter?is it possible to do goods receipt for purchase order by mb31.If yes than how to resolve this error.
    Thanking you guys in advance.

    MB31 is for doing goods receipt of production order

  • Goods receipt for purchase order is not allowed

    Hi,
    When I am doing the PO receipt i am facing the error message "Goods receipt for purchase order is not allowed WBS element xxxxxx"
    What could be the problem
    Thanks
    Lucky

    Hi,
    Please check the WBS element in CJ03, in Basic Data, System status,
    Is the WBS is not released or blocked.
    Hope it helps you.
    Thanks

  • Goods receipt  for purchase order not allowed for a particular wbs

    hello everybody..
    Am creating a good receipt for a purchase order using the T-CODE-: MIGO...
    While doing so am getting an error as " goods receipt  for purchase order not allowed(wbs element)".
    What can be done to rectify this error?
    Plz do help me....
    Regards,
    Deepika
    Moderator message: not directly related to ABAP development, please have a look in the appropriate functional forum, study the long text of this error message.
    Edited by: Thomas Zloch on Dec 1, 2010 5:52 PM

    Hi Br. Ajay M,
    Released the order and Status line as follow
    REL  AVAC BUDG GMPS
    but the error changed while reverse the document
    item 0001 Order is invalid.
    Many thanks for your kindly reply.
    regards,
    Steven

  • Menu path - for goods receipt for purchase order (MB01)

    Hi
    What is the menu path for Goods receipt for purchase order (MB01) - ECC6.0

    hi
    the path is too deep
    plz just log in ur system and find MB01
    Materials Management >  Purchasing  >  Master Data   > Subsequent Settlement >  Vendor Rebate Arrangements  >  Environment   > Condition/Arrangement  > Environment   >Pricing  > Environment    Value assignment  >  Inventory management  > Goods receipt  >For purchase order   >  MB01 - PO number known
    regards
    KI

  • SAP how to determine the account in Goods receipt for purchase order?

    We know when we make a Goods receipt for purchase order,we will use the account in GBB and BSX define in OBYC. But where can we find the rule? I mean why system can find the account in GBB and BSX , not the other TEcode?

    HI
    This is again based on the movement type which SAP has created a link internally.
    So if you see when a document is posted it basically derives the GL accounts based on the Movement type,Valuation class,valaution area and so on.
    Good luck
    Hari

  • Message no. BS007-Goods receipt for purchase order not allowed

    Hello SAP Experts,
    I have created an internal order to collect expense within the order.
    When I tried to reverse an GR against the PO created with the internal order assigned, the following Error occured.
    "Goods receipt for purch. order" is not allowed (ORD 145116170204)
    Message no. BS007
    Diagnosis
    The current status of object 'ORD 145116180204' prohibits business transaction 'Goods receipt for purch. order'.
    Procedure
    To process business transaction 'Goods receipt for purch. order', you first have to change the status of object 'ORD 145116170204' to allow the transaction 'Goods receipt for purch. order'.
    This gives you an overview of the system and user statuses that affect the transaction. A transaction can only be executed if there is at least one status that allows it and there is no status that forbids it.
    The order was previous TECOed, and change it's status to Release, but still have the error.
    Please give possible solutions. Thank you in advance.
    Regards,
    Steven Lin

    Hi Br. Ajay M,
    Released the order and Status line as follow
    REL  AVAC BUDG GMPS
    but the error changed while reverse the document
    item 0001 Order is invalid.
    Many thanks for your kindly reply.
    regards,
    Steven

  • Goods receipt for purchase order with account assignment 'K'

    Hello All,
    There are couple of purchase orders with acc.*** "K". On doing the GR for these PO's they have been done with mvt type 103 & mvt typ 105.
    I understand that material has been directly consumed to the respective cost center.
    How do track the internal movement for these materials??
    I need to view the stock for these materials at the cost center as in MMBE the stock is seen as ZERO.
    All these materials are with QM proc ACTIVE. So a goods receipt is done 105, then the inspection lot is cleared. However, in this case as the material is directly consumed, it is NOT displayed in QA32.
    Is the above procedure correct??? Is it better to receive stock against mvt type 101 & then do a 201 mvt ??
    Request your inputs.....
    Regards,
    Manoj Reddy

    Account assignment inventories are not maintained. To maintain a report for cost center receiving/issuing you need to make a customized report with help of ABAP.
    Other way is to pull report in MB51, with selection criteria COST CENTER and it will give you result of stocks available on cost center. For stocks received on cost center, you can pull report with cost center and movement 101.
    201 is used for goods issue to cost center from warehouse, the stock you receive from PO against 101 is directly charged to cost center, so no need to issue later to cost center.
    Edited by: Afshad Irani on May 17, 2010 2:17 PM

  • MPN Material Field in Goods Receipt for Purchase Order

    Hi,
    I have created PO for MPN material "MFG-A" for IM material " 123". ( ECC 6.0)
    Already the material "123" is maintained with other MPN material "MFG-B"
    The have checked the " MPN Change" check box in the respective Mfg Part profile( IMG: OMPN) 
    While I am doing goods receipt, the MPN material field is in display mode.
    But in other system the field is in change mode.
    Default the system will show "MFG-A" as the MPN material is maintained in PO.
    But I need to  change the MPN materail at the time of GR.
    I would like to change the MPN material from "MFG-A" to "MFG-B" while doing GR time.
    kindly guide me what are the settings required to change MPN Material Field in Goods Receipt.
    Thanks in Advance,
    Kumar.

    Hi,
    I have maintained all the settings.
    But the issue was, I have not put the field "MPN material" (GOITEM-EMATN) as input field in field selection group in Inventory management.( it was in display mode )
    Once I have changed to input option, I can able to change the MPN material while GR.
    Regards,
    Kumar

  • Goods Receipt for Purchase Order Using BAPI 'BAPI_GOODSMVT_CREATE'

    MB01->....->Adopt+details->...........
    How to fill the table GOODSMVT_ITEM(TALBE of BAPI_GOODSMVT_CREATE'), and final document created  like following:
    Item Quantity          EUn Material           Plnt  SLoc PO         Item  S DCI
                           BUn Material description          Batch      R MvT S T
       1 1                 KG  CB-602             8010  WH06 4500000752 10
                                                             DDDD         101 +
       2 1.020             KG  CRB-2120           8010       4500000752 10    O
                                                             9999         543 -

    Hi
    <u>Please take a look at the links for sample coding of the function module - BAPI_GOODSMVT_CREATE.</u>
    <b>http://www.sap-img.com/abap/bapi-goodsmvt-create-to-post-goods-movement.htm
    http://www.4ap.de/abap/bapi_goodsmvt_create.php</b>
    Hope this will help.
    Please reward suitable points.
    Regards
    - Atul

  • How to create a Goods receipt for Purchase order

    Hi All,
    How to create a GR for PO and then i need to invoice the PO
    Please tell me ASAP.
    Regards,
    Sagar.

    Thanks for ur reply
    I understood how to do it.
    Can u please say me how to invoice a PO.
    my mail id is:[email protected]
    Thanks

  • Goods receipt for purchase order.

    i wanna set period like this
    "you have opened next period (12) i.e. period for March 2010. Close next period and reopen current period (11) is Feb 2011"
    what is the transaction code used to set  this.
    how to set periods for company code .
    explain the steps involved one by one please.

    Dear ,
    1. Goto MMRV
        entered Company code and check the current & previous period. There has option to allow entery for previous period.
    2. T-Code MMPV
        Entered Company code and period and year select check & Close option
    Regards,
    PK

  • Goods-Receipt Block for Purchase Order depending on Goods-Receipt Date

    Hi,
    I want to set up the system so it can block the Goods-Receipt for Purchase Order respectively Scheduling Agreement if the Goods Receipt is about to take place 30 days or more before the Desired Delivery Date.
    For Example: If I have a Purchase Order with the desired delivery date 30.09.2008. I want to set up the system so, that it bans (forbids) the Goods Receipt before the 01.09.2008.
    If possible I would want to do that without additional programming. Is it possible to set up the system using only customising settings?
    Thanks for your help
    Bogdan

    Hello Marius-Bodgan,
    as this question is marked answered I assume you have received an solution for your requirement. Could you please share the solution with me by posting it here? I have the same requirement and did not find any possibility to do this in customizing.
    Thanks in advance,
    Emanuel
    Found the solution in thread Re: Goods Receipt
    Edited by: Emanuel Penalver on Jul 15, 2008 11:48 AM

Maybe you are looking for

  • Setting back ground on images to be transparent

    Hello, Is there a way to set a picture box to be transparent when mounted in Indesign. We are mounting EPS's into indesign and they have a clipping path. The background to the image is always white can this be set in a Document preference to set back

  • Setting off the advance payment with the payment

    Hi, when i run the F110 for payment say for XX vendor suppose there is a advance given to him before i want to set off that from the Vendor balance at that time, is there ant possibility for that? Gayani

  • Accessing parent variables in externally loaded swf - Help please

    I thought I knew how to do this, but maybe someone might be able to see why this is not working... here's what I have (simplified to only show necessary code): Main Timeline: var currentItem:String = 'applesauce'; (then some code to load an external

  • Error message while trying to install iTunes 7.02

    Hello, i have the following problem: i bought the new IPod-Shuffle generation 2. In order to use it, i had to install iTunes 7.0.2 The installtion is not working for me because the installation routine tries to de-install the previous version, but th

  • Ignore time component when comparing dates

    DB version:10gR2 In one of our codes , the client wants the dates to be compared by ignoring the time component from the date. ie they don't want MM:DD:YYYY HH:MI:SS, they just want MM:DD:YYYY, So I am modifying   when ship_date > est_date_del   to