Create change log on Sales order in exit MV45AFZZ

Hello all,
We use userexit MV45AFZZ (FORM USEREXIT_SAVE_DOCUMENT_PREPARE) to set a reason for rejection. We do this by updating the itab xvbap setting abgru.
This works fine.
Now we want that is visible in the change log of the sales order when this reason for rejection is done. How can I fill the sales order change log in a standard sap way?
I've already found FM "VERKBELEG_WRITE_DOCUMENT" but I don't have a clou if it's the correct one and if it is what do I have to fill?
Any help would be great!
Kind regards,
Patrick Keltjens

Hi,
If you need to highlight that VBAP-ABGRU was set by userexit and not by the user, you should store this information in an application log  (SLG1) programmatically.
At first you have to configure your specific application log via SLG0.
Further info can be found here:
[http://wiki.sdn.sap.com/wiki/display/Snippets/ApplicationLogginginSAPUsing+ABAP]
Regards,
Andrea

Similar Messages

  • Creating change log for sales order

    hi all,
    i want to create change log for any given sales order if it exists.
    can any one tell me how to do that??

    Hi Gouri,
    CDHDR and CDPOS are the tables for all change history.
    CDHDR contains the details such as who made the change, when, using what tcode and the change type ie. update, delete.
    CDPOS contains the field name which was changed, its old value and its new value.
    The change document object is VERKBELEG for sales documents.
    The object value is the SD document number with leading zeros.
    The following link will be also useful.
    http://www.sap-img.com/ab024.htm
    Regards,
    Nitin.

  • Manually trigger Availability Check in the Sales Order User Exit MV45AFZZ

    Hi All,
    As per the normal scenario where sales orders are created and the schedule line delivery dates are determined.
    Based on some business logic for few customers we need to change the delivery priority and confirmation delivery date.
    We are implementing this logic in the user exit MV45AFZZ in the routine USER_EXIT_SAVE_DOCUMENT_PREPARE.
    The availability check logic is already implemented by then. Now we have scenarios where the date redetermined by the custom logic is greater than the one determined by the standard availability check done by SAP.
    We have changed the values of the field VBEP-EDATU as per our logic but we still have 2 lines in the schedule line data where the requested date is greater than the confirmed date.
    This can be tackled if we can redo the Availability Check.
    Can someone provide pointers on how can we trigger the availability check manually in the code.
    Regards,
    Karthik

    What was the solution?

  • How to get Changed fields in Sales order to create a report

    Dear Gurus,
    How to get the log from sales order for the change of particular field.
    In my scenario, If an user remove the delivery block from sales order I want to capture the date on which this delivery block
    is removed and by whom (User)?
    I know that I can get the log of change but can I get in the form of field updates because further I want to use that date and user name to create a report.
    I hope u got my query. Please reply soon that I can create a report.
    Thanks in advance.
    regards,
    Sanjay

    Hi
    You can use the table CDPOS for tracking the changes at the Table level with the Sales order number
    or Else you can also use AUT10 transaction to track the logs/chanages with START DATE, END DATE and the Transaction code in your case it is VA02
    Please check and revert back
    regards,
    santosh

  • Change Confirmed Qty in Sales Order User exit/ATP User exit

    HI
    We have a requirement to change the ATP Qty for certain meterials & Order Types  duing sales Order User exit(FORM USEREXIT_MOVE_FIELD_TO_VBEP.? ) or ATP User exit.( ATP...OUT?).
    Is this ok to update the XVBEP in FORM USEREXIT_MOVE_FIELD_TO_VBEP of MV45AFZZ ?
    Our requirement will be like this, for one order type ZSAL( and for certain Materials)  we need to reserve 4 qty, if any order comes with 10 qty and the confimed qty is only 6( total available stock at present) , then we should only confirm  2 qty for the other order type( For Non ZSAL Order Type), and reserve the 4 QTY for ZSAL Order Type.
    If there are multiple schedule lines for an Item, we need to reduce the qty equally( as possible) from all schdule lines.
    i.e. date1 qty 4
         date2 qty 6,
    in  this case we should confirm  Date1 QTY 2, date2 qty 4, so that the remaining 4 will be reserved for ZSAL Order type.
    Whats the Best way to achieve this ?
    Edited by: agrud agrud on Sep 8, 2011 4:01 AM

    Hi Agrud,
    Did you check the possibilities with configuration.If it is not possible with configuration then you can use that exit.Before i used this but only to display not to change any thing.
    Regards,
    Madhu.

  • User exit to update the incompletion log in sales order for pricing error

    Hi experts,
    I have to check the some mandotory pricing conditions in sales order, if that conditions are not exist in sales order then i need to show the information message as well as i need to update it in incompletion log of sales order. (incopletion log we can see on menu bar 'EDIT' or ctrl+F8 on main screen of VA01). So that user can save the sales order but it will be in incomplete status.
    I have completed it upto showing the information message using user exit 'MV45AFZZ', but after this i don't know how to update it in incompletion log of sales order for pricing. I tried to update in tables VBUK-UVPRS, but i am not getting the desired result.
    Please anyone can tell me how to update it. In which user exit i can update the incompletion log.
    Thanks and Regards,
    Vicky.

    Hi Vinod,
    I am sending you my code please check it,
       if TKOMK-SPART = 10.
        if XKOMV is not INITIAL.
          clear v_JEXP.
        READ TABLE XKOMV with key kschl = 'JEXP'.
        if sy-subrc = 0.
          check XKOMV-kwert = 0.
          message i003(ZT) with 'Value should not be 0 for conditioin type JEXP'.
          v_JEXP = 'X'.
        else.
          message i003(ZT) with 'Maintain the mandatory Conditioin type JEXP'.
          v_JEXP = 'X'.
        endif.
        if v_JEXP = 'X'.
      XVBUV-MANDT = sy-mandt.
      XVBUV-POSNR = '000010'.
      XVBUV-TBNAM = 'VBAP'.
      XVBUV-FDNAM = 'PRSOK'.
      XVBUV-FEHGR = 20.
      XVBUV-STATG = '06'.
      XVBUV-FCODE = 'PKON'.
      XVBUV-SORTF = 9999.
      XVBUV-LFDNR = 0000.
      XVBUV-UPDKZ = 'I'.
      append XVBUV.
        endif.
    endif.
    endif.
    Please suggest something to solve this.
    Thanks and Regards,
    Vicky.

  • User Exit in the change mode of Sales Order

    Dear Guru's
    In my requirement I want to stop the user from editing the status of Delivery block and Billing Block into the change view of Sales Order.
    I have 2 users for them whenever they may see the change mode of sales order they should see Delivery and Billing Block in gray
    that they should not be able to remove the block or change the block.
    But I have two other users also who can release and change the Blocks.
    Therefore I think mine is the User Exit case but I dont know which is the User Exit I have to give to the ABAPer
    Please suggest me the User Exit, Thanks in advance for answer and Suggestions.
    regards,
    Vojas

    Dear Vojas,
    As per me User exit will be used, as there are check about the users in your requirement. Please try with in MV45AFZZ, there are seceral user exit, I guess in  USEREXIT_READ_DOCUMENT may be used, ask your abaper to put a check on the current user and if the user which is not in your list of authorized one then change the Blocks in Display mode, or uneditable mode.
    Thanks,
    Raja

  • Create and Change functionality for Sales order

    Hii All,
                Can any one please suggest me any Standard program or BAPI or IDOC for Sales order, it should cover create as well as change fuctionality of Sales order.
    this is very urgent to me.
    Suitable Answer will be Rewarded.
    Thankyou,
    Shobha.

    For change you can use:
    BAPI_SALESORDER_CHANGE         Sales order: Change Sales Order
    For create you have the following choices:
    BAPI_SALESORDER_CREATEFROMDAT1 Sales order: Create Sales Order
    BAPI_SALESORDER_CREATEFROMDAT2 Sales order: Create Sales Order
    BAPI_SALESORDER_CREATEFROMDATA Create Sales Order, No More Maintenance
    BAPI_SALESDOCU_CREATEFROMDATA with business object 'BUS2032'
    The difference between the create ones is the functionality you get e.g. create_from_data2 is the 'most powerful' but you also have to provide the most data. It just depends on what you want it to do.
    In terms of IDOCS:
    message type:
    SALESORDER_CREATEFROMDAT201 or
    SALESORDER_CREATEFROMDAT202 or
    ORDERS05
    Hope that helps,
    Michael
    Here is an example we use, you might want to populate additional fields or leave fields out in case you want different data to be transferred to the IDOC - however some fields are mandatory.
    create the order header structure
      ls_header-doc_type   = ls_screen-order_type.
      ls_header-sales_org  = gc_vkorg_aa01.
      ls_header-distr_chan = gc_distr_aa.
      ls_header-division   = gc_divis_aa.
      ls_header-purch_no   = ls_screen-po_num.
      ls_header-po_method  = ls_screen-po_source.
      ls_header-ship_cond  = ls_screen-ship_cond.
    create partner input table (sold to)
      ls_partner-partn_role = gc_role_sold.
      ls_partner-partn_numb = ls_screen-sold_to.
      APPEND ls_partner TO lt_partner.
    create partner input table (ship to)
      ls_partner-partn_role = gc_role_ship.
      ls_partner-partn_numb = ls_screen-ship_to.
      APPEND ls_partner TO lt_partner.
    items are added by looping at a table
        ls_item-material = <fs_upload>-matnr.
        ls_item-req_qty  = <fs_upload>-quantity.
      process the quantity, it needs to be three decimals, because it
      will be moved into a string in the BAPI and divided by 1000 before
      it is moved back into a number field (1.500 => 001500 => 1.5)
        ls_item-req_qty = ls_item-req_qty * 1000.
      truncate remaining decimal places if exist (1.2525 => 1252.5 => 1252 => 1.252)
        ls_item-req_qty = trunc( ls_item-req_qty ).
        price is taken from the file
          ls_item-cond_type = gc_cond_so_upld_price.
          ls_item-cond_val1 = <fs_upload>-price.
        condition one (price) is multiplied by 10 in the BAPI
          ls_item-cond_val1 = ls_item-cond_val1 / 10.
        no discount
          ls_item-cd_type2   = gc_cond_so_upld_disc.
          ls_item-cd_value2  = 0.
        ls_item-item_categ = ls_screen-item_cat.
          APPEND ls_item TO lt_item.
    then BAPI is called
      CALL FUNCTION 'BAPI_SALESDOCU_CREATEFROMDATA'
        EXPORTING
          order_header_in           = ls_header
          business_object           = gc_bus_obj
        IMPORTING
          SALESDOCUMENT             = lv_vbeln
          RETURN                    = ls_return
        tables
          order_items_in            = lt_item
          order_partners            = lt_partner.
      IF ls_return-type NE gc_msgty_error AND
         ls_return-type NE gc_msgty_abend.
      No errors where found
        CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
      ELSE.
      There was an error or abend
        CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
      ENDIF.

  • Change in document type while creating billing document from sales order

    While creating billing document from Sales order it is creating with document type RV which is standerd one but i want to change Document type.
    How can i change it?
    Regards
    Raj

    Hi
    If you use another existing document type, check that it has a number range suitable to you.  Else create a new 'z' type and assign an entirely new number range, not used in the other doc types.
    It is useful to make the FI document number the same number.  If I understand from the forums, the FI number range must be external.  Search the forum for this.  It is very useful for the Finance people.
    Kind regards
    Dawn
    Edited by: Dawn Verrell on Sep 9, 2010 4:10 PM

  • Incompletion log for sales order

    Hi, Experts.
    I am looking for the user-exit for incompletion log for sales order, If the user choose DC = '20', so the incompletion log will check the field of Incoterms.

    hi,
    yes shiva sir is right.
    Form  USEREXIT_CHECK_VBKD
          This Userexit can be used to add additional logic for         *
          checking the sales details for completeness and consistency.  *
          US_DIALOG  -  Indicator, that can be used to suppress         *
                        dialogs in certain routines, e.g. in a          *
                        copy routine.                                   *
          This form is called from form VBKD_PRUEFEN.     
    just adding to the context:
    there are two ways of doing it.
    1. hard code - vbak-vtweg - DC = '20' then system has to check the fields vbkd-inco1 = knvv-inco1, vbkd-inco2 = knvv-inco2.
    2. create a Z table and link the user exit to check what the entries are there in Z table and react according to the entries.  before that in Z table should be with this fields called - vtweg, inco1 &2.
    hope this clears your issue.
    balajia

  • Change status for sales order in crmd_order

    Hi,
    I am creating a report which has to change for all sales order with status "Open" to status "Processed". Is there any function or bapi to do this ?? Supposing, there is no function, which tables do i have to change ???
    thanks in advance!!!
    Maria

    Mmmm it doesn't work... I have tried this:
        CALL FUNCTION 'CRM_STATUS_CHANGE_EXTERN_OW'
          EXPORTING
      CHECK_ONLY                = ' '
            OBJNR                     = i_crmd_orderadm_h-guid
            USER_STATUS               = 'I1003'
      SET_INACT                 = ' '
      IV_REF_KIND               =
      IV_OBJECT_TYPE            =
      IV_NO_1O_MAINTAIN         =
    IMPORTING
      STONR                     =
    EXCEPTIONS
       OBJECT_NOT_FOUND          = 1
       STATUS_INCONSISTENT       = 2
       STATUS_NOT_ALLOWED        = 3
       OTHERS                    = 4.
    If sy-subrc = 0.
    endif.
    But noting has change in tag Status in tx. CRMD_ORDER.. still have in "system status": In process and in "User status": Order Rep Processed.
    Thanks in advance !!!

  • Fast change option in Sales order-Additiinal field required

    Dear al
    We want to add schedule line category field in Fast change option in Sales order as we have a requriment of changing schedule line category for more than 20 lines in sales order...After sales order is created ,we go and change the schedule line category ...
    Tried using MASS transaction but this doesn't have Schedule line category field.(VBEP table)
    Table name-VBEP
    Field name-ETTYP
    In VA05 also there is no option to change schedule line category mass update...
    Should we have to do in screen painter only for adding this field...
    Please confirm
    Regards
    Sudha

    Hi Sudha
    It would be better if you tell with which Ztable you have updated the data and how. It would be better if you share what you have done
    Regards
    Srinath

  • Trigger partner determination when ship-to is changed on the sales order

    Hi,
    Here is my scenario...
    I am defaulting my rail carrier partner function based on the ship-to party partner function into the sales order using the standard configuration i.e. by maintaining SH as entry in the "source" field for rail carrier partner function of the sales document partner determination procedure. Every thing is fine until the ship-to party in the order is not changed by the user. when the user changes the ship-to party the carrier is not re-determined (the old rail carrier partner function which defaulted into the order from the old ship-to party record stays in the document). I know standard SAP doesn't re-determine partners. Can anyone came accross this issue?
    I would like to know if there is an user exit that i could use and write a code to trigger parter determination when a ship-to partner is changed in the sales order.
    -Sree.
    Edited by: SREE on Sep 15, 2008 4:40 PM

    Hi,
    Try to use user exit FORM USEREXIT_SAVE_DOCUMENT_PREPARE in program MV45AFZZ.
    Regards,

  • Enable - Create With Reference in Sales order

    Hi All,
    I want to enable - Create With Reference in Sales order
    We have 1 billing doc type YX1 to be used as reference for a sales order type ZX3
    How to enable Create with reference from Sales Document type YX1 to Sales Document type ZX3.
    Currently, I am getting error 'Copying from sales document type YX1 to ZX3 is not supported'.
    Please let me know the steps to be followed.
    Thank you!
    Regards,
    Shanu Jain

    Hi,
    The error clearly suggests that there is no copy control maintained b/w invoice YX1 and sales order type ZX3. You need to maintain that in SPRO > Sales and Distribution > Sales Documents > Copy control for sales documents. (You may check the correct node here). Here, you select the billing document to sales document.
    Check for source and destination. You can take the source as F2 and CR (if ZX3 is a credit Memo request) as Destination document. You can copy the same and change the source and destination as YX1 as source and ZX3 as destination. Then, at the item level, if you have a new item category you can specify it as the 'Proposed Item Category'. Save it.
    Now try to create the sales document ZX3 w.r.t YX1... It should work.
    Hope this helps
    Thanks
    Mukund S

  • Order change management in Sales order(MTO Scenario)

    Dear All,
    Iam trying to map OCm functionality.How is 'Initial object' created based on changes to the direct assignment of change numbers by using direct assignment.What exactly is this?I have a sales order of 10 pc. against which a prod. order is also created for 10 pc. If there is a change in qty. of sales order from 10 pc. to 15 pc.Is it possible to refelect the same in existing Prod.Order using OCM or any other functionality.

    Hi
    order cahage management is tio track the changes made in production order .
    It is no way to update the production order with changes made in sales order.
    Regards
    YMREDDY

Maybe you are looking for

  • How to check if the visitor is registered or Not

    Hi im using PHP-Mysql in dreamweaver and i can login successfully .. now i want to make conditional region based on if the visitor is registered or not how can i check that? thanks in advance.

  • File reader in applet?

    Can anybody tell me if it's possible to use the filereader in an applet? Because i am trying to fill a list using a file on init and I am getting a java.security.AccessControlException: access denied (java.io.FilePermission urlFile.txt read) error.

  • How to add many lines in the Text View in Web Dynpro

    Hi friends, I have one Text Edit in Web Dynpro. I need to show the result of FM READ_TEXT in Text Edit View element, without lose the text format. Cardinality of my node is 0:n and attribute datatype is string_table. after assigning the values using

  • Change Owner/Reviewer Of Report

    I have a request to change the ownership / review / individual on a report in our system that compares PRs to POs. I know the name of the program and variant of the report, as well as the user data that needs to be changed. Please advise on how I can

  • CS6 REDEMPTION CODE INVALID

    I'm pulling me hair out!   Trying to install Photoshop CS6 (mac). Went to web site www.adobe.com/go/getserial and typed my 24 digit redemption code into the six fields. I was very careful not to mix the zero (0) with the leter O. When I pressed "ente