How to block deleteion of sales order items

We need to be able to block users from deleting sales order items. The objects V_VBAK_VKO and V_VBAK_AAT can be used at the 'order header' level but these do not prevent a user deleting an individual item in an order. Does anyone know of a way of achieving this through authorisations?

Thanks for your responses. We have decided to use USEREXIT_CHECK_XVBAP_FOR_DELET in MV45AFZB with some code based on the AUTHORITY-CHECK syntax below:
AUTHORITY-CHECK OBJECT 'S_CARRID'
                  ID 'CARRID' FIELD pa_carr
                  ID 'ACTVT' FIELD '03'.
  IF sy-subrc = 4.
    MESSAGE e045(sabapdocu) WITH pa_carr.
  ELSEIF sy-subrc <> 0.
    MESSAGE e184(sabapdocu) WITH text-010.
  ENDIF.
In our case we will reference object V_VBAK_AAT.

Similar Messages

  • How to block inventory at sales order level

    Hi to all,
                i am using sapb1 2005 pl36 i want to block invetory at sales order level means what i want, if any user create sales order of item1 if instock qty of that item1 is 10 and commited is 10 then availabale inventory is 0 nos .means sales order  should not posted it should be block at sales order level.so how it can possible .if it possible through addon pls send code of perticular.i will await for positive reply .
    Regards,
    Vishal

    Vishal,
    You can use Application_FormDataEvent to block the add.
      Private Sub Application_FormDataEvent(ByRef args As SAPbouiCOM.BusinessObjectInfo, ByRef bubbleEvent As Boolean) Handles MyApplication.FormDataEvent
        If args.BeforeAction Then
          Select Case args.EventType
            Case SAPbouiCOM.BoEventTypes.et_FORM_DATA_ADD
              ' get document form
              Dim form = MyApplication.Forms.Item(args.FormUID)
              ' get docucment matrix
              Dim matrix = DirectCast(form.Items.Item("38"), SAPbouiCOM.Matrix)
              For row = 1 To matrix.RowCount
                ' get ItemCode
                Dim ItemCode = DirectCast(matrix.Columns.Item("1").Cells.Item(row).Specific, SAPbouiCOM.EditText).String
                ' Do a query on inventory or use Company object
                ' If a line is not allowed block adding the order:
                bubbleEvent = False ' order is now blocked!!
              Next row
          End Select
        End If
      End Sub

  • How to do INIT for Sales order Itema Data (DS 2LIS_11_VAITM)

    Hi all
    I have a report on sales order item data, I have to reload it. DS 2LIS_11_VAITM
    Can any of you pls explain me the steps to do the INIT? Refill set up tables etc
    Many Thanks in advance
    Ishi

    Hi Hari
    Many Thanks for the explanation and steps. I deleted set up tables and executed to fill it.
    It says in R/3 Start of Processing, I ticked to continue and its still running.
    In the mean time I checked RSA3 and it says 1007 records selected. I am refreshing it and the no. of records are still the same.
    Can you tell me how long it takes to fill the table?
    And the R/3 system is still running (Start of Processing)
    Thanks again
    Ishi

  • How to get PO from sales order item in CRM

    Hi,
    I am building a BI extractor which needs PO for a given complaint. I am able to get the sales order/item for a complaint using crm_order_read FM. Is there anyway to get the PO based on this SO-item. Are their tables that link these two.
    Thanks!

    Table CRMD_ORDERADM_I -> Give Item GUID in filed GUID and get the document header guid in field HEADER. Then use function module CRM_ORDER_READ and table ET_SALES to get the Sales Data for the right item. The PO you are interested in can be any of the fields related to PO in this set. Usually it is PO_NUMBER_UC.
    Alternately, if you want to use only the table reads use this.
    1. Table CRMD_LINK --> get the record with GUID = Item GUID and OBJTYPE_SET = 11 (for Sales Set)
    2. Table CRMD_SALES --> get the record with GUID = CRMD_LINK-GUID_SET
    Get your PO information from this Sales set record for your item. But since, PO is usually associated with the header, you can do the same as above but with the GUID = Header GUID in the CRMD_LINK table.

  • How to enable GOS at sales order item

    Hi Experts,
    I have a requirement where I have to provide the customer an option to see the workflow overview at sales order item level (using Generic Object Services).
    I have developed a class based custom workflow for sales order approval and wish to intergrate GOS in VA02/VA03 at item level and not header level. I know that this is possible at header level using Business Object 2032. But I wish to know if this is possible at item level and that too in a class based workflow approach.
    Please provide your valuable suggestions.
    Thanks,
    Ajay

    Hi Janos,
    Thanks a lot for your reply. The breakpoint wasn't triggered in FM SUSR_USER_LOGONDATA_GET. Please check if the steps I followed are correct.
    1. Set external breakpoint in the FM SUSR_USER_LOGONDATA_GET.
    2. Run transaction VA02 for an order pending approval.
    Am I missing something here ? Do I need any authorization ?
    Thanks,
    Ajay

  • How to know if a Sales order item created with or without reference

    Hi,
    I am working on user exit USEREXIT_MOVE_FIELD_TO_VBAP, and I just wanted to know if there is a way to know if a sales order item is created with or without reference to a contract.
    I need to write the code in USEREXIT_MOVE_FIELD_TO_VBAP, however, when an SO line item is created with reference the userexit is being called twice and when the SO line item is created without reference the user exit is being called only once.
    My aim is to check if a SO line item is created with reference to a valid contract. If the item is without reference to a contract or the referenced contract is not valid, then I will have to determine the contract based on the customer contracts.
    Any help on this would be greatly appreciated.
    Best regards,
    Siva

    Hi Vindo,
    The Userexit USEREXIT_MOVE_FIELD_TO_VBAP is called twice when the SO line item is created with reference to contract. The first time the user exit is called there will be no value filled in vbap-vgbel and the second time it comes to the userexit then vbap-vgbel will have a value. I think CVBAK-VBELN will contain the reference if the so line item is created with reference and the value of CVBAK-VBELN contrains blank if the item is not referenced. Anyway thanks for your reply.
    Best regards,
    Siva

  • How to supress tab for Sales Order item (VA01)

    Hi,
    Please suggest the ways to suppress tab (example "Country") which appears at Sales Order item for some countries.
    Thanks,
    Edited by: Dipesh Kothari on Oct 6, 2009 8:34 PM

    Hi
    If you want to suppress the tab which is appearing at sales order line item then using t.code SHD0  and give the t.code VA01 and business object as BUS2032 and then select the line item data and then you can suppress the fields as per your requirement
    Kindly let us know  why you want to suppress the fields ?
    Regards
    Srinath

  • How to Block Customer from Sales Order Type

    Hello Gurus!
    I was wondering if there was a way to block a specific customer from a sales order type? 
    We have 4 Sales Organizations, and 2 of them use this customer, with different sales order type for each sales organization.  So I only want to block this customer for 1 sales organization and a sales order type.....is this possible.  If so, please advise!
    I just want to block a customer from a sales order type. 
    Thank you for your time!
    Best regards,
    WC

    Hi,
    I have an wild idea just check it works or not--
    Create a dummy customer pricing procedure.whenever u want to bleck a customer for any particular order type assign this dummy pricing procedure in customer master(Sales Tab).
    Do not define any pricing procedure in SPRO against this customer pricing procedure
    The moment user will try to process any order type (which u want to block for a customer), the system will not determine any pricing procedure & consequently it will not allow to save the order.
    Hope it will solve the problem.
    Regards
    Sanjay

  • Sales order item text to delivery item text

    Hi All,
    Please find my query below :
    sales order is maintining  item level text . is there any posibility to update same text at the item level in delivery ?  Means after creating delivery the sales order item text tranfered to delivery item  text.
    How can i update the sales order item level text to delivery item level text.
    is there any user-exit or any configuration process or any other process. please let me know
    Thanks in advance
    Regards
    Sudhakar

    Check this [link|http://saptechsolutions.com/pdf/VOFMCopyRequirementRoutines.pdf]
    Refer to page 19. you will have to assign the requirement to the access sequence of the header/item text determination, this, you can ask your functional consultant to do it,. If you want to code your own requirement, then refer to the link that I provided you above.
    KR,
    Advait

  • Link between Delivery Header & Sales Order Item for extraction to 2nd level

    Hi Guys ,
    I am having a requirement that need to pull the following data to 2nd level DSO
    1.  Delivery Header Data
    2. Sales Order Item data. ( Sales Document, Item, Item RDD, Material)
    So I am planning create a 2nd level DSO on top of Delivery header and need to pull the sales order ITEM level data ( Sales document , Order ITEM, ITEM RDD date , Material)  through start routine u2026
    How can I pull the Sales Order Item data through start routine?  i.e I need the link between Delivery Header & Sales Order Item Data .
    or I need the link between LIKP ( Delivery Header) Vs VBAP ( Sales Document Item).
    Thanks
    Edited by: krismady on Sep 22, 2010 2:26 AM
    or I need the link between LIKP ( Delivery Header) Vs VBAP ( Sales Document Item).

    Hi Krish,
    You can use VBLEN (Sales Document) to link Delivery header DS (2LIS_12_VCHDR) and Delivery item DS (2LIS_12_VCITM). Now In delivery item DS (2LIS_12_VCITM) you have VGBEL (Reference doc.) and VGPOS (Reference item) which is nothing but sales order document number and sales item in Order item DS (2LIS_11_VAITM) .
    So you need to link in above way to get other values in your DSO.
    It is proven method.
    Thanks,
    Uday Shankar.

  • Value of NET in Sales Order item (Pricing)

    Hi,
    I have created a Price correction order. Where I put the corrected price and all the calculations happen on the entered corrected price. Like the discounts and taxes.
    All the calculations in the Pricing is perfect.
    But the value in Net for the line item is calculating incorrect value.
    For e.g. If Corrected price is 100 and the Net value for this is 60 (including discounts and taxes). Then the value in Net in the Sales order will show the Value (100 + 60) = 160.
    All the calculations in the Pricing procedure are perfect.
    Please help me with this issue, How the value is NET (Sales order item) is calulated. Is this associated with any routine.
    Thanks and regards,
    Sheetal

    Hi,
    NET will be  Prices + Surcharges - Discount.
    so, see the discounts and surcharges in your order.
    And, please give all the condition type and corresponding rates in the next post, so that i can be more helpful.
    thank you

  • Project Revenue Plan Not Update from Sales Order Item

    I am generating a network and project from the sales order item using Assembly processing. I am using milestone billing on the sales order item and the milestones attached to the project network activities are appearing as billing blocks on the sales order item billing plan. However, the project revenue is not getting updated from the sales order billing plan. Can someone please help?
    I have deleted the billing plan on the billing WBS element and activated revenue planning update from sales order in cusomization for PS. I am looking at CNS41 under the project revenue sched in version 0. Is there a different report I should be looking at?
    Regards,
    Venkat.

    HI Venkat,
    You are looking at the correct report & I believe you have also done the necessary customization. If you create a sales order and reference it to a quotation, the related plan values in the WBS element are refreshed automatically.
    When the payment data is recorded, the terms of payment and the customer payment history are taken into consideration. One of the probable causes could be the credit limit of the customer might have been exceeded. Take help of your SD consultant & increase the credit limit for that customer (from the sales document), t-code FD32 if it is permitted in the business.
    After the new credit limit is set execute the following steps:
    u2022     Go to the t-code Change billing request (VA02)
    u2022     Open the required billing request
    u2022     Remove the account assignment of WBS element from each line item
    u2022     Save the billing request
    u2022     Reopen the billing request in change mode
    u2022     Reassign the WBS elements to all line items
    u2022     Now the changed credit limit will take affect
    u2022     Check the Planned Revenue for the said project in CNS41, it should get updated.
    Rgds
    Deepak

  • Sales order item assignemnt block ,if we click edit extra blank line on items level i want remove that line how to do it?

    Hi Team,
    Sales order item assignemnt block ,if we click edit ,Item assignment block extra blank line on items level is showing , i want remove that line how to do it?
    Thanks&regards
    Kalpana

    Hi Ravi,
    With the help of Dharmakasi Thotakura...
    As suggested to do changes in DO_INITCONTEXT and GET_I_T_TABLE methods ....i have implemented these two methods...Now problem only one column ITEM_NO will be disabled  remaining cloumns not disabled...i want to disable entire column including ACTION column also..Action Column contains INSERT and DELETE buttons.how to do it?
    METHOD
    do_init_context.
    CALL METHOD SUPER->DO_INIT_CONTEXT.
    DATA : lr_ent TYPE REF TO cl_crm_bol_entity,
    lr_btadminh TYPE REF TO cl_crm_bol_entity,
    lv_object_id TYPE string,
    lo_context TYPE REF TO /RCRM/15IT__ITEMS_CN00.
    * gv_flag TYPE crmt_boolean.
    lr_ent ?= me->typed_context->btitems->collection_wrapper->get_current( ).
    lr_btadminh ?= lr_ent->get_parent( ).
    lv_object_id = lr_btadminh->get_property_as_string( iv_attr_name = 'OBJECT_ID' ).
    lo_context ?= me->typed_context->btadmini.
    clear lo_context->gv_flag.
    IF lv_object_id IS NOT initial.
    lo_context->gv_flag = abap_true.
    ELSE.
    CLEAR lo_context->gv_flag.
    ENDIF.
    ENDMETHod
    METHOD
    get_i_t_table.
    CALL METHOD super->get_i_t_table
    EXPORTING
    index = index
    component = component
    RECEIVING
    rv_disabled = rv_disabled.
    DATA: lv_component TYPE name_komp,
    lo_entity TYPE REF TO cl_crm_bol_entity,
    lo_property TYPE REF TO cl_crm_bol_entity,
    lv_string TYPE string.
    IF rv_disabled = 'FALSE'.
    lv_component = component.
    lo_property ?= collection_wrapper->find( iv_index = index ).
    lo_entity ?= lo_property.
    lv_string = lo_entity->get_property_as_string( iv_attr_name = lv_component ).
    IF lv_string IS INITIAL or lv_string = '0000000000'.
    IF gv_flag IS NOT INITIAL.
    rv_disabled = 'TRUE'.
    ENDIF.
    ENDIF.
    ENDIF.
    ENDMETHOD.
    Thanks
    Kalpana

  • Mass Removal of Billing Block at Sales Order item level

    Dear Experts,
    Does any one know how to remove billing block at sales order item level at mass level ?
    Is there any standard t code for the same. Kindly let me know the same
    thnx in advanve
    regards,
    Sagar

    Hi Sagar Wagh,
    I want to make a little correction,
    Go to T-code V.23
    Give your criteria like
    Sales organization
    Distribution channel
    Division
    Then in the last of screen there is check box Delete billing block
    check this box and excute
    System will ask you
    Do you really want to delete billing
    blocks for all docs. to be selected?
    Click at yes
    System will show you the list of all documents
    Select all and Click at Delete billing block
    System will delete the billing block in one go from all the documents.
    Regards,
    MT
    Edited by: M T on Feb 23, 2010 6:03 PM

  • How to Cancell Sales Order Items......

    Hi Experts,
    How to Cancell Sales Order Items ?
    Presently I am deleteing Indidually Items in Sales Order but I am getting records through Report.
    Is there any proper way to Cancel Sales Order Items / Full Sales Order and also I can get report of which items has been cancelled and so on.
    Pl. reply.
    Yusuf

    you can not cancel sales order.. SAP has not given that option.. only opition you have is delete the line items by going to VA02, if its open sales order or blocking the sale order..
    reward if it helps..
    ramki

Maybe you are looking for

  • Jewelry, how do you display diffracted light?

    What software or gadget is used to show off jewelry online, in a manner where the viewer can rotate , e.g. a diamond to not just any angle in a circle but to any angle in a sphere, so as to be able to see diffracted light? A half degree movement in A

  • Managed Server is Not coming UP from STARTING state

    Managed Server is Not coming UP from STARTING state

  • XControl (question sur "data in")

    J'ai construit un XControl (indicateur) (ceci dit, pas facile d'aborder les XControl ... pas beaucoup de docs, peu d'explications, Il faut chercher par soi-même) J'ai besoin de lui envoyer 2 données ... un U32 et un booléen. J'ai configuré "data in"

  • IDOC_INPUT_ORDERS error Field RV45A-VBAP_SELKZ (1) is not an input field

    Hi, We got one error message while processing one inbound idoc with IDOC_INPUT_ORDERS function module and the idoc status is 51 status message 'Field RV45A-VBAP_SELKZ(1) is not an input field'. We have tried to reprocess the same idoc through BD87 bu

  • MDM Java Connector Config Error.

    We deployed "com.sap.mdm.tech.connector.sda", "com.sap.mdm.tech.mdm4j.sda" using SDM. The deployment was successful. We wanted to set all the parameters like UserName, Password,Server, Port, RepositoryLanguage as Key-Value pair in MDM Connector prope