Restricting a user(based on Responsibility) from updating the sales order

Hi,
We have a requirement here, that for a prticular responsibility the user shouldn't be able to update anything in the sales order. He can although perform below operations -
1. Query the order to view the details.
2. Release the OM holds, if any.
Other than these two things.. He shouldn't be able to make/save any changes to the order. We are using R12.
Now, what we tried is -
1. Created a forms personalization, that would check
if fnd_global.resp_id = <desired resp_id>
then raise form trigger failure in when-validate-record.
this is restricting the user to make any change in order. But, issue is he can still book an entered order.
So, requirement drills down to -
1. How to restrict the user from booking an entered order.
2. How to restrict the user to perform any other thing than releasing the hold (from actions).
Any help regarding this will be highly appreciated. Also, please let me know, if it is possible using Processing constraints or any other standard means.
Regards
Bhushan

i think you are putting this filter on employee table.If you want to apply adat level security then put these filters on groups.create one group and assign al user on which you want to apply data level security.on this group put this filter
upper("Employee"."DEPARTMENT") = upper(VALUEOF(NQ_SESSION."DEPARTMENT")).
And create another group and assign Jeff to that group and dont apply any filter on this group.You can apply these filters on individual users also but its a good parctise to make use of groups.
Regards,
Sandeep

Similar Messages

  • Hi All, We are in to Release 11.5.10.2.There is a specific requirement to Prevent users from creating Manual Sales Orders in oracle and yet users should be able to book the Sales Orders Imported from CRM system into Orcale.Please advise.

    Hi All, We are in to Release 11.5.10.2.There is a specific requirement to Prevent users from creating Manual Sales Orders in Oracle and  yet users should be able to book the Sales Orders Imported from CRM system into Orcale.Please advise.

    Thanks for your advise.
    However, I missed to mention that we have two set of users  One is for Finished Goods and another for Spares.
    Only Spares users need to be prevented from creating Direct/Manual Sales Orders in Oracle.
    As you suggested, if this will be done at Form level, that may Disallow FG users also to create Manula Sales Orders which should not be the case.
    Further, I tried to test one scenario through Processing Constraints but it did not work.
    Application
    OM
    Validation Type
    Entity
    Temp
    Short Name
    TBL
    Validation Semantics
    Created By
    Equal To
    User(Myself)
    Processing Cosntraint
    Application
    OM
    Entity
    Order Header
    Constraint
    Operation
    User Action
    Create
    Not Allowed
    Conditions
    Group
    Scope
    Validation Entity
    Record Set
    Validation Template
    101
    Any
    Order Header
    Order
    Above Created
    Please advise.

  • Function Module to update the sales order header status

    Hi,
      I am looking for a function module to update the Sales order header status.
      Pls. let me know if anybody has used any FM to update the SO status.
    Thanks,

    By mentioning status do you mean Object status or Document status??
    For Object status you may use FM: STATUS_MAINTAIN
    For document status it changes according to flow.
    Regards
    Eswar

  • User Exit or BADI to update the service order  in R/3

    Hi,
    When creating a service order the following fields need to be populated automatically using an user exit or badi.
    1. Planner Group
    2. PMActType – Plant maintenance activity type
    3. Cost/Profit Centre
    4. WBS element
    5. Work center
    so my requirement is there any function module or Badi or user exit to update the service order details when service order is created / changed.
    Pls do the needful.
    Reg
    Ramana

    Hi Ramana,
    Go to SPRO Transaction and follow the below path
    Customer relationship management>Transactions>Settings for Service Processes>Business Add-Ins and you will find 8 BADI's.
    Check these BADI's useful for you.
    Regards,
    Lijo Joseph

  • User Exit or BADI  to update the  service order

    hi,
    When creating a service order the following fields need to be populated automatically using an user exit or badi.
    1.     Planner Group
    2.     PMActType – Plant maintenance activity type
    3.     Cost/Profit Centre
    4.     WBS element
    5.     Work center
    so my requirement is there any function module or  Badi or user exit to update the service order details when service order is created / changed.
    Pls do the needful.
    Reg
    Ram
    Message was edited by:
            RAMANA MYLAPALLI

    Best Possible way is.
    go to se24 -> type in CL_EXITHANDLER -> Go to get_instance method.
    Put a breakpoint on CALL METHOD cl_exithandler=>get_class_name_by_interface.
    Now run the transaction and check which all BADI and user exits are invoked when u call the transaction.
    Idenitfy the BADI which can be useful to you.
    Reward if u find it useful.
    Thanks
    Kartavya

  • Need to update the sales order status

    Hi Friends,
    I have one query.
    we are doing archiving of sales documents.during the preprocessing we have identified that there are some non-archivable documents due to status check.
    Example:As per Sales order schedule line category "CT" is relevant for delivery. Now we had a talk with business and removed the "item relevant for delivery indiacaotor" from schedule line category.
    This config changes will apply for newly created sales orders.
    Now the requirement is to update the status of old sales orders with this new config change to make these non archivable data to be ARCHIVED.
    can any one help me out by providing relevant SAP note or by sending me the program name which will update the old order status with the new config changes.
    Thanks & regards,
    Shaik Hussain

    Hi Liam,
    In the Program MV45AFZZ in the FORM userexit_save_document
    you use the following fn module to change the user status
    'STATUS_CHANGE_EXTERN'
    Example
    IF t180-trtyp = 'H'.  "Only creation time
      READ TABLE xvbap WITH KEY matnr = c_matnr.
      IF sy-subrc = 0.  "If above material exist then change status
        LOOP AT xvbap WHERE cuobj NE space
                       AND  matnr =  c_matnr.
          l_objnr = xvbap-objnr.
          CALL FUNCTION 'STATUS_CHANGE_EXTERN'
            EXPORTING
              objnr               = l_objnr
              user_status         = 'E0013'  "Send ej IDOC
              set_chgkz           = 'X'
            EXCEPTIONS
              object_not_found    = 1
              status_inconsistent = 2
              status_not_allowed  = 3
              OTHERS              = 4.
        ENDLOOP.
      ENDIF.
      sy-subrc = 0.  "Restore the previous condition
    ENDIF.
    Reward if helpful *********

  • How to update the sales order header & item data in TM system

    Hi Experts,
    Greetings!
    I need your help,I have a one requirement sales order data came from ECC these sales order data need to update in TM Sales order header table as well as item table also these fields are additional fields.
    Can anyone please guide me I am very new in TLM .
    Thanks in advance.
    Thanks&Regards,
    Siva.

    Hi Siva
      "/SCMTMS/TRQ~ROOT" is for sales order header and "/SCMTMS/TRQ~ITEM" is for details.
      I assume you need to
    enhance the structures for these nodes to hold your add. fields;
    and do the same for the input parameter of service TransportationRequestRequest_In (which is used to create OTR) from PI side;
    Pass the add. fields during service call (impelment in ERP system);
    Map the fields from service paremeter to node attribute (implement in TM system, BAdI   /SCMTMS/TRQ_SE_TPNRQ_REQ~CHANGE_MODIFICATION create modification table for the input parameter).
    I cannot find source code for all of that; hope it helps.
    Sensen

  • Error while updating the sales order through Process Order API

    Hi,
    Please any one will help plz.
    I am updating the promise_date through oe_order_pub.process_order(Process Order API) i am getting the following error.
    FND_AS_UNEXPECTED_ERROR N PKG_NAME OE_Order_Cache N PROCEDURE_NAME get_tax_calculation_flag N ERROR_TEXT ORA-01403:no data found
    Please any one will help plz
    Below is my code.
    Declare      
    l_archive_file_name VARCHAR2(1000);
    l_shipment_exists NUMBER:=0;
    l_header_id NUMBER;
    l_line_id NUMBER;
    p_header_rec Oe_Order_Pub.Header_Rec_Type;
    l_line_tbl oe_order_pub.line_tbl_type := oe_order_pub.g_miss_line_tbl;
    l_header_rec OE_ORDER_PUB.Header_Rec_Type;
    l_header_val_out_rec OE_ORDER_PUB.Header_Val_Rec_Type;
    l_header_adj_out_tbl OE_Order_PUB.Header_Adj_Tbl_Type;
    l_header_adj_val_out_tbl OE_Order_PUB.Header_Adj_Val_Tbl_Type;
    l_header_price_att_out_tbl OE_ORDER_PUB.Header_Price_Att_Tbl_Type;
    l_header_adj_att_out_tbl OE_ORDER_PUB.Header_Adj_Att_Tbl_Type;
    l_header_adj_assoc_out_tbl OE_ORDER_PUB.Header_Adj_Assoc_Tbl_Type;
    l_header_scredit_out_tbl OE_Order_PUB.Header_Scredit_Tbl_Type;
    l_header_scredit_val_out_tbl OE_Order_PUB.Header_Scredit_Val_Tbl_Type;
    l_line_rec OE_ORDER_PUB.line_rec_type;
    l_line_out_tbl OE_ORDER_PUB.Line_Tbl_Type;
    l_line_val_out_tbl OE_ORDER_PUB.Line_Val_Tbl_Type;
    l_line_adj_out_tbl OE_ORDER_PUB.Line_Adj_Tbl_Type;
    l_line_adj_val_out_tbl OE_ORDER_PUB.Line_Adj_Val_Tbl_Type;
    l_line_price_att_out_tbl OE_ORDER_PUB.Line_Price_Att_Tbl_Type;
    l_line_adj_att_out_tbl OE_ORDER_PUB.Line_Adj_Att_Tbl_Type;
    l_line_adj_assoc_out_tbl OE_ORDER_PUB.Line_Adj_Assoc_Tbl_Type;
    l_line_scredit_out_tbl OE_Order_PUB.Line_Scredit_Tbl_Type;
    l_line_scredit_val_out_tbl OE_Order_PUB.Line_Scredit_Val_Tbl_Type;
    l_lot_serial_out_tbl OE_Order_PUB.Lot_Serial_Tbl_Type;
    l_lot_serial_val_out_tbl OE_Order_PUB.Lot_Serial_Val_Tbl_Type;
    l_action_request_out_tbl OE_Order_PUB.Request_Tbl_Type;
    l_msg_count NUMBER;
    l_msg_data VARCHAR2(2000);
    l_return_status VARCHAR2(1);
    l_index NUMBER;
    l_rows_processed NUMBER:=0;
    l_line_mawb VARCHAR2(240);
    l_line_hawb VARCHAR2(240);
    l_line_flight_num VARCHAR2(240);
    l_org_id NUMBER :=143;--FND_GLOBAL.ORG_ID;
    l_resp_id NUMBER:=FND_GLOBAL.RESP_ID;
    l_resp_appl_id NUMBER:=FND_GLOBAL.RESP_APPL_ID;
    l_user_id number := FND_GLOBAL.USER_ID;
    l_promise_date date;
    BEGIN
    SELECT ol.org_id, oh.header_id, ol.line_id,ol.promise_date
    INTO l_org_id, l_header_id, l_line_id,l_promise_date
    FROM apps.oe_order_headers_all oh, apps.oe_order_lines_all ol
    WHERE ol.header_id=oh.header_id
    AND ol.line_id =1319526; --&line_id
    -- apps.fnd_global.apps_initialize(&l_USER_ID,&l_resp_id,&l_resp_appl_id);
    apps.fnd_global.apps_initialize(67778,51017,660);
    p_header_rec := OE_ORDER_PUB.G_MISS_HEADER_REC;
    p_header_rec.header_id :=835035;-- l_header_id;
    p_header_rec.operation := OE_GLOBALS.G_OPR_UPDATE;
    l_line_tbl := oe_order_pub.g_miss_line_tbl;
    -------------------------Line Record -------------------------------
    l_line_tbl(1) := oe_order_pub.g_miss_line_rec;
    l_line_tbl(1).header_id := 835035;
    l_line_tbl(1).line_id := 1319526;
    l_line_tbl(1).promise_date := sysdate;
    l_line_tbl(1).operation := oe_globals.g_opr_update;
    BEGIN
    apps.oe_order_pub.process_order
    (p_api_version_number => 1.0
    ,p_init_msg_list => fnd_api.g_true
    ,p_return_values => fnd_api.g_true
    ,x_return_status => l_return_status
    ,x_msg_count => l_msg_count
    ,x_msg_data => l_msg_data
    ,p_header_rec => p_header_rec
    ,p_line_tbl => l_line_tbl
    -- out variables
    ,x_header_rec => l_header_rec
    ,x_header_val_rec => l_header_val_out_rec
    ,x_header_adj_tbl => l_header_adj_out_tbl
    ,x_header_adj_val_tbl => l_header_adj_val_out_tbl
    ,x_header_price_att_tbl => l_header_price_att_out_tbl
    ,x_header_adj_att_tbl => l_header_adj_att_out_tbl
    ,x_header_adj_assoc_tbl => l_header_adj_assoc_out_tbl
    ,x_header_scredit_tbl => l_header_scredit_out_tbl
    ,x_header_scredit_val_tbl => l_header_scredit_val_out_tbl
    ,x_line_tbl => l_line_out_tbl
    ,x_line_val_tbl => l_line_val_out_tbl
    ,x_line_adj_tbl => l_line_adj_out_tbl
    ,x_line_adj_val_tbl => l_line_adj_val_out_tbl
    ,x_line_price_att_tbl => l_line_price_att_out_tbl
    ,x_line_adj_att_tbl => l_line_adj_att_out_tbl
    ,x_line_adj_assoc_tbl => l_line_adj_assoc_out_tbl
    ,x_line_scredit_tbl => l_line_scredit_out_tbl
    ,x_line_scredit_val_tbl => l_line_scredit_val_out_tbl
    ,x_lot_serial_tbl => l_lot_serial_out_tbl
    ,x_lot_serial_val_tbl => l_lot_serial_val_out_tbl
    ,x_action_request_tbl => l_action_request_out_tbl
    --dbms_output.put_line('l_msg_data-->' ||l_msg_data ||' l_return_status --> ' ||l_return_status);  
    END;
    commit;
    END;
    Regards,
    Sangu

    Hi Sangu,
    See if the following notes help you:
    Error when calling API from SQL*Developer, eg. ORA-01403 in API OE_ORDER_PUB.PROCESS_ORDER (Doc ID 1054295.1)
    Cancellation Of Transfer Orders Is Not Possible - ORA-01403: no data found in Package OE_Order_PVT Procedure Process_Order (Doc ID 391307.1)
    Thanks &
    Best Regards,

  • Issues in Web service created for updating the Sales Order

    Hi All,
    We created a Web service using the Web service tool in CRM 7.0 ( Using the Component WS_DESIGN_TOOLS )
    Web service was created for three modes such as READ, CREATE and CHANGE Modes.
    READ Web Service we tested and its working fine as we were able to see the data for an existing Sales Order in the Web Service.
    We expect that the Change Web Service will update the data of an existing Sales Order.
    Through our Web service we are passing the Order GUID ,Order ID and some Header Fields as well as Item Fields but  the in the Web Service we are getting a message that Web service executed successfully but the CRMD_ORDERADM_H Table isnot getting updated.
    What could be problem.
    Any suugestions will be highly appreciated.
    Regards,
    Sijo

    Hi Gourav,
    I checked in SICF for the Webservice name created.
    this is the service path
    /default_host/sap/bc/srt/rfc/sap/ for the corresponding Web Service created in DEV 200 Client.
    I checked in SOAMANAGER and saw  that the  endpoitnts were zero.
    the Search Operation for Webservice have got three query fields mainly
    Object Id, Posting Date,Procees Type
    If we give Process Type
    sign - blank
    option - blank
    low - YPO ( Custom )
    High - blank we are getting 126 entries.
    and if we check for the Process Type YPO (Custom ) in CRMD_ORDERADM_H Tbale also we are getting the same no of entries.
    but only for option BT , for Posting Date issue is thr..
    Any inputs to move forward will be highly appreciated.
    Regards,
    Sijo.
    Edited by: sijokjohn85 on Mar 5, 2010 10:52 PM

  • Update the sales order ( Quantity ).

    Hi Experts,
    I am using BAPI_SALESORDER_CHANGE. I want to change only Quantity of a sales order for that I pass it in ITEM Table and set the flag for these values in ITEMX table.
    After executing BAPI it runs Successfully so I commit it by using BAPI_TRANSACTION_COMMIT.
    Now my query is after commited BAPI it does not update the  related sales order in database.
    Why is it occurs meantime it is possible manually by VA02.
    Suggess what to do to solve this?
    Points will be sured for helpful answers.
    Thanks & regards
    Alok Vishnoi

    Hi Alok,
    If you want to change the quantity in a sales order item using BAPI_SALESORDER_CHANGE you have to pass the new quantity in the Schedule Lines (SCHEDULE_LINES) table to the BAPI_SALESORDER_CHANGE. Then only the new quantity gets reflected at the item level.
    If u just change the quantity at the Item level it will not get effected.
    I hope it is useful. Please let me know if u need any information.
    Regards,
    Suresh Linga.

  • Disable to update a sales orders

    Hi
    How can i disable the update a sales order if some one try to change project field? Can i use the SPO_TransactionNotification?
    I could not find a way to work in the sp. So i´m asking if someone already had the same situation and can help me.
    Kind Regards
    Margarida Pedroso
    Edited by: Margarida Pedroso on Jan 27, 2010 1:03 PM

    Hi Margarida,
    if your requirement is to prevent users from updating existing sales orders, you can do that within the application:
    Admisnistration -> System Initialisation -> Document Settings -> By document -> select 'Sales Orders' -> remove the tick in the checkbox 'Allow changes to existing orders'.
    All the best,
    Kerstin

  • Approval process when updating a Sales Order

    I have created a UDF that specifies whether a Sales Order has been "Picked" and would like to ensure that a user cannot modify the Order after this change of status without an Approval. I have my SQL code and it works properly but only when the Sales Order is created and does not get triggered when it gets modified.
    Thanks, Richard.

    This is far more complex to implement and can hamper the performance. 
    FYI.  The user updating the Sales Order can be only found in the ADOC (History table)
    SELECT TOP 1 T0.DocNum AS 'Document Number', T0.UserSign AS 'User Signature', T0.UpdateDate AS 'Update Date' FROM  ADOC T0  WHERE T0.ObjType = N'17'   AND  T0.DocEntry = @list_of_cols_val_tab_del AND T0.UserSign != 1 ORDER BY T0.UpdateDate DESC
    Apart from the aboce, you have to also check in the ADOC table, the Update datetime with the Update datetime of the sales order and the updated field. You have to test this thoroughly before implemting
    Suda

  • How to update the sales text in the Sales Order.

    Dear all,
    I want to Update the sales text in the Sales Order. I used the "CREATE_TEXT" but i couldn't update using it.
    Can u please guide me, how to use the Function Module to update the sales Order line item text values.
    Thank U
    Uwanthi

    HI
    Check this link
    User Exit to update Sales order text (Terms of delivery) on saving it
    Regards,
    Krishna

  • Mass updates in sales order for Text note

    Hello,
    I have 1200 open sales orderswhich needs updates for
    Delivery Priority
    Delivery Blocks
    Billing Blocks
    Incoterms
    Shipping notes
    I can update first four items by MASS Tcode. Hoever, Shipping notes can not be found in MASS. While making Delivery of these pending order Shipping Notes is to be added which is different from standard. It can be achieved by CATT.
    I shall appreciate if you have any idea about some other easy/standard options available.

    Hi
    You Can update the sales order texts by the following methods
    BAPI --BAPI_SALESORDER_CHANGE
    LSMW
    BDC
    ECATT
    regards
    Prashanth

  • How to update the condition price in the sales order for all the items

    Hi,
    How to update the condition price for all the itmes in the sales order to carry out the new price automatically through a stand alone program, for all the orders in the billing due list table?
    Thanks,
    Balaram

    Hi,
    There is a change in the requirement.
    Scenario:
    I have created a sales order with some 4 condition types, in that 2 condition types are of class A & B and the other two is of class C. Here I need to update the condition price of class A & B only and the remaining condition types should not get update even though there is an updated price is available.
    For the above scenario, I need to write a standalone program. Do we have any function modules to update the price of the single condition in the sales order? Please tell me how we can update the sales order at item condition level.
    Thanks.
    Balaram

Maybe you are looking for

  • My MacBook Pro is slower than my older Macbook Pro. What's the problem and how do I fix it?

    So I have 2 MacBook Pro's, one fast and one slow. I can't seem to figure out why my older mac is faster compared to my more newer one. The same apps run much slower on my new mac. Here are the specs for both computers: MacBook Pro                    

  • Question regarding MultiProvider

    I have 2 cubes, One is Snapshot of Daily Inventory cube, which gets refreshed everyday with Full Init load. The other cube is a Monthly Inventory Cube which gets updated every month end. Each of them have the same dimension and the same KeyFigures. T

  • 8350i direct connect messages issue

    Hi I was wondering if there was a solution for the messages popping up in the messages folder when someone direct connects me?  Yes I have turned off the forward to none and really could not make heads or tails of the one post there is on this issue.

  • MEDIA COMPOSER 8.3.0 CRASH, HELP!!!

    I HAVE A PROBLEM Process:               AvidMediaComposer [2474] Path:                  /Applications/Avid Media Composer/AvidMediaComposer.app/Contents/MacOS/AvidMediaComposer Identifier:            com.avid.mediacomposer Version:               8.3.

  • Physicall inventory with Handling Units

    hello, I´m trying to do a program that simulates HUINV03 transaction. Sap Help recomend to use FM HUINV_DOCUMENT_COUNTING to introduce data as HUINV03 does. When I execute the FM via abap report the results seems OK, but when I go to post the documen