Adding Lines to a Sales Order

Hello !
I'm using the following code (pretty much) to add items to existing sales orders :
Dim oOrder As SAPbobsCOM.Documents
oOrder = oCompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.oOrders)
oOrder.GetByKey(id)
oOrder.Lines.Add()
oOrder.Lines.ItemCode = newItemCode
oOrder.Lines.Quantity = newQuantity
oOrder.Lines.UserFields.Fields.Item("U_S_Desc").Value = newItemDesc
lretcode = oOrder.Update
This works fine for most nearly all of the orders that are processed, however for some of the orders I get the error : No matching Records Found (ODBC -2028).
I know the record I'm looking for exists, and if Open up the order and add the data manually it works, but something just seems to be stopping the code from doing it.
I think it might be something to do with the Order's date, but exactly what I don't know.
I was wondering if anyone's come across something like this before, of if there's an obvious reason why it wouldn't write ?

Hi,
Just some suggestions, if you haven't already considered:
- Before adding new data you should check if the order really exists, like
if (oOrder.GetByKey(id)) then
oOrder.Update
end if
- The id you search have to be the DocEntry, not the DocNum.
- The order can't be closed, otherwise yoy can't update.
Hope this helps,
Ian

Similar Messages

  • Add Line Item In Sales Order VA01

    HI All,
    I  have new requirement in creation of sales order . Here we have free promotion sales . Here if customer buy one material then he will get some other material as free .In standard sap we can give only one line item as free not more than that .
    Here our requirement is more than one line item . I suggested them maintain all the free materials in one Ztable when ever the original material  will come for  sales order then i have to fetch these materials from ztable  automatically and it should create sales order. I started doing this using user exit  FORM USEREXIT_MOVE_FIELD_TO_VBAP.
    These are the below links i checked in our sdn.
    Adding Line items to sales order on creation using User-Exit in VA01.
    Please give me some idea on this .
    Regards,
    Madhu.

    Hi Asik,
    Thanks for your reply.In my case i can not got for Bom  because the schemes will change for every ten days. I think Bom  creation will fill a lot of data but it wont solve my issue.
    Regards,
    Madhu.

  • Want to automate process of adding schedule lines to a sales order

    Hi Experts,
    I want to change the schedule line data in sales order.So I Found a BAPI_SALESORDER_CHANGE.Is it ok if I go with this BAPI or is there some other way?
    Thanks in advance!!!!!!!!!!

    HI
    Yes it's ok, another solution can be to create a BDC program, but it's better and easier to use that BAPI
    Max

  • Adding Schedule lines to a sales order

    Friends,
      We have a requirement to clear the old un-delivered scheduled lines from a sales order and then add new schedule lines from a EXCEL file.  We were able to clear the old by putting in a new location.  Then, when we go to enter the new schedule lines, it clears the location, marks the Fixed date and Qty, and enters the delivery dates and confirmed quantities.  We tried using BAPI_SALESORDER_CHANGE, but the schedule_lines table only has the required quantity so when used it increases the order quantity, which is not good.  Is there any Function module that we can call to insert new schedule lines without increasing the order quantity other than using a BDC?  Thanks!

    Pasted below is the BAPI documentation for this parameter.
    "Check Table for Schedule Lines
    Description
    This parameter completes the following two tasks:
    Controls processing functions with the value in the UPDATEFLAG field (change indicator).
    The following entries are available:
    ' ':   Create new schedule lines
    I:     Create new schedule lines
    U:     Change existing schedule lines
    D:     Delete existing schedule lines
    Controls the field entry with check fields
    If the UPDATEFLAG field has been activated, the system only copies those fields to the data parameter that have been filled with 'X'."
    Nabheet

  • To add the line item in Sales Order

    Hi Experts,
    I have to insert  the line item between two line item in sales order dynamically.
    How should i do this.
    any idea??
    Thanks in Advance.

    Hi,
    I guess you are talking about BOM, sub-items or free goods, wherein after you put in one item the other material defined gets added automatically in the sales order.
    That is done with the help of Item Category config by functional person.
    Check here for more info
    [Item Category|Re: Item Category;
    You can also use user exit MV45AFZZ form user_exit_move_to_vbap for a specific logic defined at runtime.
    Regards,
    Amit
    Edited by: Amit Iyer on Aug 26, 2009 10:21 PM

  • Automatically add line-items to Sales order

    Hello,
    Our client needs us to add line items to sales orders. The requirement is such that, when the users enter a material on a line item, they wish to see few more materials automatically added as new line items -- item category to be maintained as "Free" items. This appears similar to automatically getting BOM-sub-items for materials which have BOMs maintained. The client is not willing to maintain BOMs for materials in question. They instead have asked us to maintain sub-item materials in a Z-table and then fetch those to populate the subsequent line-items on the sales order.
    So far, we have tried to fiddle around with the XVBAK and XVBAP internal tables in sales exit (MV45AFZZ) and also tried to use BAPI within the same exit. Both methods do not work.
    Could you please guide us ? Thank you.
    Regards,

    Hi,
    I think you can try with product proposal(Item Proposal). T.Code:VA51.
    Using this one can create list of items to be proposed at the time sales order processing.
    Item proposal contains list of items with or without default quantities those were frequently ordered by the customer. You can create any no of items in an Item proposal.Like wise you can create any no.of item proposals.
    But,You can assign only one item proposal per customer in sales tab of the CMR.So that when ever you are creating order for that customer you can access those materials which are listed in an Item proposal completely or selectively,with or without default quantities.
    The items which are proposed from an Item proposal are always changeable.
    Item proposal makes sales order processing simple and fast.
    Only the thing here is it will not automatically explode like in case of BOM.You have to manually select those items from an item proposal.
    Regards,
    Revan
    Edited by: REVAN on Dec 23, 2008 10:55 AM

  • Automatically add line-items to sales orders

    Hello,
    Our client needs us to add line items to sales orders. The requirement is such that, when the users enter a material on a line item, they wish to see few more materials automatically added as new line items -- item category to be maintained as "Free" items. This appears similar to automatically getting BOM-sub-items for materials which have BOMs maintained. The client is not willing to maintain BOMs for materials in question. They instead have asked us to maintain sub-item materials in a Z-table and then fetch those to populate the subsequent line-items on the sales order.
    So far, we have tried to fiddle around with the XVBAK and XVBAP internal tables in sales exit (MV45AFZZ) and also tried to use BAPI within the same exit. Both methods do not work.
    Could you please guide us ? Thank you.
    Regards,

    Ist method:
    Maintain one Ztable with the fields of Material and sub materials.
    write BDC to create order,before entering the material  number check if material is existed in Ztable or not.
    If it exist take that material and added as a another line item.
    if not exist create like normal line item.
    2 nd method:
    Ask your MM functional consultant to maintain supression of materials concept.

  • Is it possible to limit line items in sales order????

    is it possible that i can limit the ender user adding more line items in sales order???

    hi
    there is such standard restriction setting, but instead can use USEREXIT_SAVE_DOCUMENT_PREPARE (user exit)
    Reward if Useful
    Thanx & regards.
    Naren..

  • How to add line item to sales order item table?

    Kindly help me the with the below requirement .
    Add line item to sales order(va01) dynamically on click of button. The button is also custom created push button.
    In the above requirement I have added the pushbutton to va01 tcode. But when I click on that button I need to add line item to sales order item table.
    I tried a lot but I am not successful. If possible can u please help on this.
    Regards,
    Rachel

    Hi!
    It's quite easy even in the standard SAP to add a line item for a customer order, I don't think it worth to develop a new button for this.
    However if you wanted to add a line automatically, the you can do the following in the program MV45AFZZ, FORM USEREXIT_SAVE_DOCUMENT.
    You can use similar code, but with some modifications.
    DATA: lv_posnr.
    LOOP AT xvbap.
    MOVE xvbap-posnr TO lv_posnr.   "get the last posnr
    ENDLOOP.
    ADD 10 TO lv_posnr.
    MOVE 'XYZ' TO xvbap-matnr.   "enter your material number here
    MOVE lv_posnr TO xvbap-posnr.
    * fill additinal field data in XVBAP if necessary
    MOVE 'I' TO xvbap-updkz.                  "Insert line
    APPEND xvbap.
    Regards
    Tamá

  • To add line items to sales order using User exit.

    Hi ,
    I have to add line items to sales order .
    I have tried adding the code in usr exit move field _VBAP // Check VBAP and in savedocument _prepare . But in all the places I dont see it in VA01 . I can see it in the VA02 and VA03 . But I am not able to save the order as they have made the flooring term as mandatory field, and I am supposed to populate the XVBKD structure for this.
    Pls tell me whts the procedure like say , should I popluate the XVBKD / XVBAP / and should i use the bapi_SALES_ITEM_CHECK to populate the structures at the save_document prepare.

    Hi,
    1. It is not possible to delete records using DTW, only importing new records or updating existing ones are supported. These are the only valid operations via DTW.
    2. It is possible to delete the contents of an edit text field by using the character / or -1. However it is not possible to clear an entire row/line using this notation.
    Thanks & Regards,
    Nagarajan

  • How to get Characteristic Values assigned to the line item of Sales Order?

    Hi,
    I want to get the Characteristic Values( Variant Configuration )assigned to First Line Item of Sales Order.
    I was using the Fn. Mod.: VC_I_GET_CONFIGURATION_IBASE,
    this fn. mod. giving all the Characters but not the assigned characteristic values.
    Is there any other way to find characteristic values of sales order.
    Thanks,
    vinayak.
    Message was edited by: vinayaga sundaram

    For example, please see this example program.
    It lists the characteristic names, the values, and the description of the values which are tied to a sales document.
    report zrich_0001.
    * Internal Table for Characteristic Data
    data: begin of i_char occurs 0.
            include structure comw.
    data: end of i_char.
    data: xcabn type cabn.
    data: begin of xcawn,
          atwtb type cawnt-atwtb,
          end of xcawn.
    data: xvbap type vbap.
    parameters: p_vbeln type vbap-vbeln,
                p_posnr type vbap-posnr.
    start-of-selection.
      select single * from vbap into xvbap
                 where vbeln = p_vbeln
                   and posnr = p_posnr.
      clear i_char.  refresh i_char.
    * Retrieve Characteristics.
      call function 'CUD0_GET_VAL_FROM_INSTANCE'
           exporting
                instance           = xvbap-cuobj
           tables
                attributes         = i_char
           exceptions
                instance_not_found = 1.
      loop at i_char.
        clear xcabn.
        select single * from cabn into xcabn
                 where atinn = i_char-atinn.
        clear xcawn.
        select single cawnt~atwtb into xcawn
                   from cawn
                     inner join cawnt
                       on cawn~atinn = cawnt~atinn
                      and cawn~atzhl = cawnt~atzhl
                          where cawn~atinn = i_char-atinn
                            and cawn~atwrt = i_char-atwrt.
        write:/ xcabn-atnam, i_char-atwrt, xcawn-atwtb.
      endloop.
    Regards,
    RIch Heilman

  • Pick Release single line in a sales order

    Hi All,
    I want to pick release a single line from a sales order i.e if i have a sales order which has 3 lines and i want to pick release first line using Release Sales Order form of OM R12. I am giving the delivery detail id in Release Sales Order form, it is creating the concurrent request but it is not pick released. Please suggest what are the other parameters that has to be given so that i can pick release a single line of a sales order.
    Thanks and Regards,
    Mahesh

    Hi,
    Sorry for late reply. You have to use WSH_DELIVERY_DETAILS_GRP.delivery_detail_action.
    Script is as follows.
    DECLARE
    cursor lcu_det is
    SELECT released_status,
    organization_id,
    container_flag,
    source_code,
    lpn_id,
    CUSTOMER_ID,
    INVENTORY_ITEM_ID,
    SHIP_FROM_LOCATION_ID,
    SHIP_TO_LOCATION_ID,
    INTMED_SHIP_TO_LOCATION_ID,
    DATE_REQUESTED,
    DATE_SCHEDULED,
    SHIP_METHOD_CODE,
    CARRIER_ID,
    shipping_control,
    party_id,
    line_direction,
    source_line_id,
    move_order_line_id
    FROM wsh_delivery_details
    WHERE delivery_detail_id = 4369052;
    l_rec_attr_tab WSH_GLBL_VAR_STRCT_GRP.Delivery_Details_Attr_Tbl_Type;
    lr_action_prms WSH_GLBL_VAR_STRCT_GRP.dd_action_parameters_rec_type;
    lr_dummy_defaults WSH_GLBL_VAR_STRCT_GRP.dd_default_parameters_rec_type;
    v_msg_index_out NUMBER;
    x_msg_count NUMBER(10);
    x_return_status VARCHAR2(10);
    x_msg_data VARCHAR2(4000);
    x_action_out_rec WSH_GLBL_VAR_STRCT_GRP.dd_action_out_rec_type;
    BEGIN
    FND_GLOBAL.apps_initialize(1788,50577,660);
    lr_action_prms.caller := 'WSH_PUB';
    lr_action_prms.action_code := 'PICK-RELEASE';
    l_rec_attr_tab(1).delivery_detail_id := 4369052;
    open lcu_det;
    fetch lcU_det into
    l_rec_attr_tab(1).released_status,
    l_rec_attr_tab(1).organization_id,
    l_rec_attr_tab(1).container_flag,
    l_rec_attr_tab(1).source_code,
    l_rec_attr_tab(1).lpn_id,
    l_rec_attr_tab(1).CUSTOMER_ID,
    l_rec_attr_tab(1).INVENTORY_ITEM_ID,
    l_rec_attr_tab(1).SHIP_FROM_LOCATION_ID,
    l_rec_attr_tab(1).SHIP_TO_LOCATION_ID,
    l_rec_attr_tab(1).INTMED_SHIP_TO_LOCATION_ID,
    l_rec_attr_tab(1).DATE_REQUESTED,
    l_rec_attr_tab(1).DATE_SCHEDULED,
    l_rec_attr_tab(1).SHIP_METHOD_CODE,
    l_rec_attr_tab(1).CARRIER_ID,
    l_rec_attr_tab(1).shipping_control,
    l_rec_attr_tab(1).party_id,
    l_rec_attr_tab(1).line_direction,
    l_rec_attr_tab(1).source_line_id,
    l_rec_attr_tab(1).move_order_line_id;
    close lcu_det;
    WSH_DELIVERY_DETAILS_GRP.Delivery_Detail_Action(
    p_api_version_number => 1.0
    ,p_init_msg_list => FND_API.G_FALSE
    ,p_commit => FND_API.G_TRUE
    ,x_return_status => x_return_status
    ,x_msg_count => x_msg_count
    ,x_msg_data => x_msg_data
    ,p_rec_attr_tab => l_rec_attr_tab
    ,p_action_prms => lr_action_prms
    ,x_defaults => lr_dummy_defaults
    ,x_action_out_rec => x_action_out_rec);
    IF x_msg_count > 0 THEN
    FND_MSG_PUB.get (
    p_msg_index => 1
    ,p_encoded => 'T'
    ,p_data => x_msg_data
    ,p_msg_index_out => v_msg_index_out);
    IF x_return_status = 'S'
    THEN
    DBMS_OUTPUT.PUT_LINE(x_msg_data);
    END IF;
    END IF;
    END;
    Thanks and Regards,
    Mahesh

  • ASCP should plan production of all lines of a Sales Order in the same IO

    Requirement details:
    1) We are running an ECC plan in OPM environment (Constrained Classic)
    2) There are 20+ manufacturing plants – all are equally capable of manufacturing any item
    3) Sourcing rules define the sequence in which plants should be loaded (first plant X, go to plant Y when capacity in plant X is full. Go to plant Z when capacity in plant Y is full… and so on.)
    4) Sales Orders are entered in a fashion where 1 SO = 1 container.
    5) There are 5-20 lines per sales order (for items A, B, C, D etc). Together, these items constitute a full container load (FCL)
    6) The composition of this FCL will vary from one Sales Order to another (e.g., customer 1 takes items A,B,C; customer 2 takes A,B,D; customer 3 takes A,B,C,D)
    7) To avoid transfers between plants, all lines of one SO should be assigned to same plant for production – even if that means delaying the shipment. The container will be loaded in that plant itself – instead of transferring it to a distribution center.
    As per our understanding, ASCP does not support such a requirement. We attempted the following:
    1) Defined following profiles:
    MSC: Maximum number of planned orders per demand = 1
    MSO: Maximum Demands per Group = 1
    MSO: Maximum Demands per Slice = 1
    2) Defined Demand Priority Rules:
    Schedule Date – 1
    Sales Orders, Forecasts & MDS Entries Priority – 2
    3) If there are 10 SOs with the same Scheduled Ship Date, they were given Planning Priority as 1, 2, 3 … 10
    4) All lines of a sales order were assigned the same ship set.
    With all the above settings, we could not achieve our goal. Any suggestions from the ASCP Gurus?

    Hi Navneet,
    Thank you for your reply. To answer your queries:
    (1) We have a dummy inventory org mentioned as ship-from org in all SOs (calling it 'dummy' - as physically there is no such IO). This is done because the marketing team does not know from which IO material will be shipped (we do not have GOP in scope).
    (2) Sourcing rules mention that a demand in the dummy IO can be met by orgs X, Y, Z etc (each one with 100% allocation, ranks 1, 2, 3 etc). There are no sourcing rules for transfers between X, Y and Z.
    (3) The intent is to fulfill a SO from single org with none of the items internally sourced from other orgs.
    Regards,
    Parikshit

  • Maximum lines set on Sales Order view

    Hi All,
    This is happening with all sales orders with more than 8 items, where the rest of the items are not seen in the sale order after creation and save. For example 15 different type of material were sold to customer, the billing document view (VF03) showed all 15 line items, the delivery line items showed all 15 lines, but the sales order only showed the first 8 line items. The other last 7 items were not to be seen anywhere on the sales order.
    Is there a maximum view limit on sales orders? Anyone else has had a similar case?
    Thanks
    Sandip

    Hi Balaji,
    I tried to access SE51 but I have no authorization, and even though I maintain user accounts at my company I could not find more details in regards to this Tcode.
    I even tried to find some role associated with it but was unsuccessful.
    Hi Chandrasekhar,
    For the information in VOV8, the Display Range had 'UALL' in the field.
    And wierdly, when I clicked on the Item Overview, all items (15 different types) are shown, but when going back into the Sales Order View for the same order, only the first 8 are shown.
    The main problem here is that when doing a ZRE sales order, as we cannot do 'post goods receipt' for the 9th+n item.
    I appreciate the help.

  • Schedule line date in Sale order for backward sched.

    Dear Experts,
    In my MTO Scenario, I want to Use Backward Scheduling, so as any change in Schedule line dates in Sale order shall take effect at least in planned order Stage, i.e in output of MRP,
    But not happening so..
    I  have customized OPU5 and checked OPU3 as well,
    Please suggest...
    Regards
    Raghu

    HI Mario,
    Thanks for reply,
    I have not worked in this strategy but will try,
    What i found was, in Planned orders detailed scheduling tab, the Scheduling type appeares to be Forward, but when i convert it to Production order it shows backward scheduling.
    This duel behavior is difficult to understand.
    Regards
    Raghu

Maybe you are looking for

  • Keyboard and mouse no longer work when booting into Rhapsody

    I still have a bootable partition with the last release of Rhapsody (aka Mac OS X Server) on my Power Mac G4 but it's been a while (years!) since I actually booted it up. The G4 also has bootable partitions with Mac OS X 10.2, 10.3 and 10.4 (and is i

  • Email Issue in GRC 10

    Dear Expert, Currently i am facing a strange issue regarding email notification and I am not sure where was the problem stuck even I have raised a message to SAP but till no any success. In our case we are getting a notification and approval mail in

  • Film download error on ipod touch

    I have tried to download a film to my son's ipod touch, but it won't download.  It says "download error.  tap to retry" - when I tap it does the same. How can I get it to download?  Or obtain refund from itunes? TIA Nadine

  • Aperture 3 and Photoshop workflow

    I have recently been opening a lot of my RAW files in Photoshop (via external editor). However when I do so Aperture comes becomes quite sluggish when viewing the newly saved 256MB PSD with the context of Aperture. I am just wondering what people use

  • How do I copy photos from an external disk onto an ipad

    When synchronizing using iTunes, either you get events you can select from iPhoto on our Mac, or, you can select photos from a folder on an external dirve attached to our Mac.  What we cannot seem to do is get both events we can select from iPhoto on