BAPI_SALESORDER_CHANGE - how to change item delivery block(VBEP-LIFSP)

HI all,
I have to change on item delivery block (VBEP-LIFSP)  and header level delivery block (VBAK-LIFSK) ,
In my report i`am using BAPI_SAILBOARDER_CHANGE,
for header:
LT_BAPISDH1X-UPDATEFLAG = 'X'.
         LT_BAPISDH1X-DLV_BLOCK = 'X'.
        LT_BAPISDH1-DLV_BLock = '
for item
LT_BAPISCHDLX-UPDATEFLAG = 'U'.
      LT_BAPISCHDLX-REQ_DLV_BL = 'X'.
      LT_BAPISCHDLX-SCHED_LINE = '0001'.
      LT_BAPISCHDLX-ITM_NUMBER = '10'.
      LT_BAPISCHDL-REQ_DLV_BL = ' '.
      LT_BAPISCHDL-SCHED_LINE = '0001'.
      LT_BAPISCHDL-ITM_NUMBER = '10'.
For header it`s working properly, but for item - not at all - message: "Field header_inx-updateflag is not an input field"
CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
      EXPORTING
        SALESDOCUMENT               = L_SPETAB-vbeln
        ORDER_HEADER_IN             = LT_BAPISDH1
        ORDER_HEADER_INX            = LT_BAPISDH1X
      TABLES
        RETURN                      = LS_RETURN
        SCHEDULE_LINES              = LT_BAPISCHDL
        SCHEDULE_LINESX             = LT_BAPISCHDLX
Any suggestions? Thank you

Hi,
In your code, please change the following:
FROM:
LT_BAPISCHDLX-UPDATEFLAG = 'U'.
LT_BAPISCHDLX-REQ_DLV_BL = 'X'.
LT_BAPISCHDLX-SCHED_LINE = '0001'.
LT_BAPISCHDLX-ITM_NUMBER = '10'.
TO:
LT_BAPISCHDLX-UPDATEFLAG = 'U'.
LT_BAPISCHDLX-REQ_DLV_BL = 'X'.
LT_BAPISCHDLX-SCHED_LINE = 'X'.
LT_BAPISCHDLX-ITM_NUMBER = 'X'.
Please take note that in changing Sales Order, Purchase Orders, etc using BAPI's, there are always two tables to which you need to modify. As you did, you use the table LT_BAPISCHDLX.  Take not the suffix "X" of this table. X means "to change". So in this case, you need to change 3 fields. So like what you did, you pass the values into table LT_BAPISCHDL and in table LTBAPISCHDLX, you need to tell that you are changing these fields via marking them with X.
Moreoever, when updating line items, do it one at a time. Clear your tables before filling them again. For example, you have 4 items in your order, and you want to update two of them, you can't update them at the same time. What you need is to update it one at a time.
Finally, you have to commit your work using BAPI_TRANSACTION_COMMIT.
I hope it helps. cheers

Similar Messages

  • How to place a delivery block at line item level from Inbound ORDERS IDoc?

    Hi EDI/ABAP Experts,
    Can anyone please tell me how to place a delivery block at line item level from Inbound ORDERS IDoc?
    I tried using exit "EXIT_SAPLVEDA_001'. But there is no LIFSP field in either of XVBEP and YVBEP structures.
    Can you guys throw some light. How to place a delivery block @ line item level on sales order from Inbound ORDERS IDoc.
    Thanks,
    Matt .

    Look into the Include: LVEDAF5A that is the only place where this exit is hit... double click on the Structures and look which structure has billling block field.. and use that..
    FORM CUSTOMER_FUNCTION_IDOC USING IDOC_DATA.
      CALL CUSTOMER-FUNCTION '001'
        EXPORTING SEGMENT = IDOC_DATA
                  DVTCOMAG = VTCOMAG
                  DXMESCOD = IDOC_CONTRL-MESCOD
                  CONTRL   = IDOC_CONTRL
        TABLES    DXBDCDATA = BDCDATA
                  DXVBAP    = XVBAP
                  DXVBEP    = XVBEP
                  DYVBEP    = YVBEP
                  DXVBADR   = XVBADR
                  DYVBADR   = YVBADR
                  DXVBPA    = XVBPA
                  DXVBUV    = XVBUV
                  DD_FLAG_P = D_FLAG_P
                  DXKOMV    = XKOMV
                  DXVEKP    = XVEKP
                  DYVEKP    = YVEKP
        CHANGING  DXVBAK   = XVBAK
                  DD_FLAG_K = D_FLAG_K
        EXCEPTIONS
                  USER_ERROR = 01.
    If you are in ECC6.0  you can also use Enhancement point : INTERPRET_IDOC_ORDERS_01 SPOTS ES_SAPLVEDA. in include: LVEDAF2U

  • BAPI_SALESORDER_CHANGE using this i want to change the Delivery Block

    Hi ABAP Gurus,
    i am working on a urgent requirement of changing the Delivery Block of sales order VA02. I am trying to do this using FM            BAPI_SALESORDER_CHANGE .
    Please see the following code which i am giving for the time being.
    it_headerx-updateflag = 'U'.
    append it_headerx.
    it_bapischdl-itm_number = '00010'.
    it_bapischdl-req_dlv_bl = '01'.
    APPEND it_bapischdl.
    it_bapischdlx-itm_number = 'X'.
    it_bapischdlx-req_dlv_bl = 'X'.
    APPEND it_bapischdlx.
    CALL FUNCTION 'BAPI_SALESORDER_CHANGE'
      EXPORTING
        salesdocument               = '0000000560'
       order_header_in             = it_header
        order_header_inx            = it_headerx
      SIMULATION                  =
      BEHAVE_WHEN_ERROR           = ' '
      INT_NUMBER_ASSIGNMENT       = ' '
      LOGIC_SWITCH                =
      NO_STATUS_BUF_INIT          = ' '
      TABLES
        return                      = it_return
      ORDER_ITEM_IN               =
      ORDER_ITEM_INX              =
      PARTNERS                    =
      PARTNERCHANGES              =
      PARTNERADDRESSES            =
      ORDER_CFGS_REF              =
      ORDER_CFGS_INST             =
      ORDER_CFGS_PART_OF          =
      ORDER_CFGS_VALUE            =
      ORDER_CFGS_BLOB             =
      ORDER_CFGS_VK               =
      ORDER_CFGS_REFINST          =
       schedule_lines              = it_bapischdl
       schedule_linesx             = it_bapischdlx
      ORDER_TEXT                  =
      ORDER_KEYS                  =
      CONDITIONS_IN               =
      CONDITIONS_INX              =
      EXTENSIONIN                 =
    But the Delivery block is not changing from Credit limit to Pending Allocation
    But i am getting the following messages in the it_return table
    1     S     V4     233     ORDER_HEADER_IN has been processed successfully
    2     S     V1     041     No data was changed
    I am waiting for your suggestions
    Thanks in Advance

    Hi Prashanthi,
    Check whether delivery number is already created or not for that  order.
    If deliver already  existthen u can not create delivery block on that.
    and also check whther r u calling bapi commit after this.
    Regards,
    Siva

  • How to change the payment Block?

    Dear all,
    How to change the payment Block?
    Please help.
    Regards
    Mahfuz

    Hello,
    Please go through the below mentioned links it will help you
    Mass Removal of Payment block
    Payment block in customer/vendors - how to clear | SCN
    Posting block removal in the payment proposal editing
    Regards,
    Basappa

  • Line item Delivery block is greyed out

    Dear All
    I want to restrict the transfer of Requirements for those Sales orders line items which needs Sales Order BOM for Make to Order scenario. So that Requirement does not get transferred with Standard Production BOM until the Sales Order BOM is created.  For that I want to put a delivery block at line item which will restrict transfer of Requirement. However Delivery block field is grey in Main Screen of Sales order in shipping tab.
    Can the delivery block be always put in Header or at Schedule line level and Not at line item level.
    Regards,
    Neeraj Srivastava

    Putting a delivery block will not stop the transfer of requirements. You have to give a reason for rejection to stop the transfer of requirements. Once you want the requirements to be passed the reason for rejection may be removed.
    Delivery block can be given at header level and schedule line level. If the delivery block field is greyed then you need to check whether the used ID has got necessary authorization to release the block. Only if authorization is available the delivery block field will be in change mode.
    Regards,
    GSL.

  • How to change proposed delivery data in a SO

    Hi Gems,
        I am new to SD.
    I am creating SO with order type OR.
    The system is proposing Delivery date (and some other date like goods issue date, loading date etc.) as 2 days ahead of the current date.(these dates can be changed manually)
    U can find all these date in schedule line/Shipping.
    I want to change the proposed date to current date.
    beside this there are 2 other date in Availability control.
    1) Complete delivery (Dely/Conf. Date)
    2) Dely Proposal (Dely/Conf. Date)
    these are also proposing dates 2 days ahead and not giving permission to change it manually to current date (u can able to change it to any future date but not to any past date of proposed date).
    There is no problem while creating SO. But when I am trying to create delivery it's giving error as 'Dely/Conf. Date' is in future.
    Now, how to change these dates?
    Please help me to solve this problem.

    Hi Surajit
    As you have maintained 2 days , so go to VA02-> item data->schedule lines tab->check the delivery date
    If the delivery date is 14.02.2009 then go to VL01N and give manually the delivery date as 14.02.2009 ,
    then you can do  delivery
    Example :
    Today's date : 12.02.2009 ;
    Maintained days : 2 days
    Delivery date : 14.02.2009 ;
    Check the following parameters wheather you have maintained or not :
    In shipping point details check pick, pack , goods in transit  time
    In VOV8 check the Lead time in days
    In MMR check the GR time , In house production time
    Regards
    Srinath

  • How to change a delivery from complete order to partial order

    Hi,
    We have create a delivery from a sale order that initially it was a complete order. During the picking of the TO we found a difference of stock of one unit. We asked to the client if they accept the partial order and they said that there was no problem.
    We change the sales order from complete to partial, but the delivery is not accepting the difference, is always warning that we haven't arrive to the quantity.
    I have read that there is no way to change the delivery so we have to delete it and create a new one. But we have a problem, the original one was of 56 pallets and all of them are done and label except the last one, if I delete de delivery I will have to move the TO again to the stock and dismount the 56 pallets, and repeat the picking, so, somebody knows a solution to avoid this and not move again everything just for one piece?
    Thanks

    Hi Allen
    Well the problem is that the order is finished but with a difference os 1 unit of the 259 that we have to pick.
    If I cancel the order I will have to move all the material to the bins that they proceed and repeat the picking with a new order to pick exactly the same amount of material that I have now.
    The problem is, how do I make a new delivery and a new order but without moving the material to the bins and repeat the picking again?
    Best Regards and thanks for your time
    Edited by: enriquerolo on Mar 5, 2012 7:32 AM

  • How to Change Item catgegory in sales Order

    Hi all,
    I am creating sales order with reference to sales contract but at the time of sales order we don't have en off stock to deliver to customer , so we have deiced to go for Third party sales process
    But the problem is while creating a sales order with reference to Sales contract the line item of the sales order line item in grad Mode ( Not changeable mode )
    Finally i find out why sales order line item in gray mode Due to Structure Scope Using in item category TAS as D to Explore the BOM In Contract and Sales order  that a reason system gray out sales order line item
    Can any one guide me how sales order line item should be in active mode so i can change the Item category as a TAS third party item category
    Help me regards this
    Thanks
    Rajesh

    Hi all,
    Thanks for replay
    all ready i maintain manual item category in VOV4 the movement i am creating sales order with reference to contract the sales order line item showing in GRAY  mode i cant choose manual item category while i choosing F4 its showing TAS but i cant select that item category because sales order line in gray mode
    and Find out the reason why sales order line item coming in Gray Mode because i am Using Structure Scope D  In Item Category
    to Explore Variant config 
    can any one suggest me how to change the item category
    Thanks
    Ram

  • How to Extract the Delivery Blocks

    Hi,
    I have a task to extract the Delivery Block reason of orders to BW.
    Is there a standard datasource for it?
    Best Regards

    Hi Paolo,
    I need the delivery blocks. Not delivery details.
    For example, an incompleted order was saved in 01/01/07 with delivery block of reason YI (Initial Entry),  and in 05/01/07 were added some lines to the order but it still block of reason 04 (Credit limit). In 10/01/07 the order was closed (the delivery block is blank).
    For that order I need to extract three lines:
    SO ___DeliveryBlockReason date
    100999 _______YI _________01/01/07
    100999 _______04_________ 05/01/07
    100999 _____(blank) _______10/01/07
    Hope it's more clearer now.
    Regards,

  • How to auto reset delivery block in item level in sales order

    hi i have one scenario. After creation of sales order it needs to be approved through work flow at item level so that without approval no delivery can be made. We have blocked the items in sales order now we want after approval the blocked status should be auto reset from block to free. how to do it.

    Hi,
    How is the approval taking place? Is it through work flow? If yes, You can write code for BDC or BAPI for removing the block after the approval step.
    If it is manual approval, then you can write a program with BDC/BAPI for removing the block with input as sales order number.
    Ask the approver to run this program after the approval.
    Thanks,
    Vinod.

  • Urgent - How to change Item category for Open Purchase Order

    Hi Team,
    Lil bit tricky issue.
    My client has asked us to change the existing Item Category values, Combinations, Category Set etc. Its been changed and uploaded successfully.
    The question here is how we need to handle the category for Open Purchase Order. How to update the same.
    Do we need to do manually or any other way ?
    Please advice
    Regarads,
    John

    Hi John,
    This is reallly a tricky issue!
    I guess you cannot change the category of an existing PO's.
    This field will be greyed out once we save the form...there were no profiles/other setups to enable this field.
    For all new PO's since you have changed the new category value that should not be a issue.
    Lets wait for some of our colleuges opinion.
    I guess PO cancel should be the final option if we dont hear any new work arounds.
    Thanks
    -Arif.

  • How to change existing database block size in all tablespaces

    Hi,
    Need Help to change block size for my existing database which is in 8kb of block size.
    I have read that we can only change block size during database creation, but i want to change it after database installation.
    because for some reason i dont want to change the database installation script.
    Can any one list the steps to change database block size for all existing table space (except system, temp ).
    want to change it to 32kb.
    Thank you for you time.
    -Rushang Kansara

    > We are facing more and more physical reads, I thought by using 32K block size
    we would resolve that..
    A physical read reported by Oracle may not be - it could well be a logical read from the o/s file system cache and not a true physical read. With raw devices for example, a physical I/O reported by Oracle is indeed one as there is no o/s cache for raw devices. So one needs to be careful how aone interprets number like physical reads.
    Lots of physical reads may not necessarily be a bad thing. In contrast, a high percentage of "good/fast" logical reads (i.e. a high % buffer cache hit ratio) may indicate a serious problem with application design - as the application is churning through the exact same data again and again and again. Applications should typically only make a single pass through a data set.
    The best way to deal with physical reads is to make them less. Simple example. A database deals with a lot of inserts. Some bright developer decided to over-index a table. Numerous indexes for the same columns exist in difference physical column orders.
    Oracle now spends a lot of time dealing (reading) with these indexes when inserting (or updating a row). A single write I/O may incur a 100 read I/Os as a result of these indexes needing to be maintained.
    The bottom line is that "more and more physical I/O" is merely a symptom of a problem. Trying to speed these up could well be a wasted exercise. Besides, the most optimal approach to "lots of I/O" is to tune it to make less I/O.
    I/O is the most expensive operation for a RDBMS. It is very difficult to make this expense less (i.e. make I/Os faster). It is more effective to make sure that you use this expensive resource in an optimal way.
    Simple example. Single very large table with 4 indexes. Not very efficient design I/O wise. Single very large partitioned table with local indexes. This can reduce I/O on that table by up to 80% in my experience.

  • How to change item value after re-loading the page.

    Hi all,
    I have two pages 1,2. From page 1 I am calling page2 (like LOV) by using callMyPopup and in page2 i am setting some variables and returns/refreshes to page1 refreshes using window.opener.window.location=new_url java script, at same time it pass few parameters to page1. How can I write some pl/sql code to show some message to user on page1. I mean I am returning some numbers so i want change into meaning full text. I tried processes no luck. Please help me.
    Thanks

    Hey James.
    Please share with everyone,
    Which version of Oracle Apex are you using?
    What is the Database version.
    and what is the Browser version and type?

  • How to change Item mang method to 'None' from Serial No. On release only .

    I need help in changing the Item management method to "NONE". I hv created the item as Manage by Serial No. On Relase only. I hv aslo entered the Opening balance of 6000 pcs. But now i want to change the mange item to NONE. But when i try 'Goods Issue' its asking serial no for 6000 pcs. Please help
    Thanks in advance

    I have the reversed situation.
    We started with SBO 2004 A PL37. We migrated the inventory from legacy system which doesn't support Batch / Serial No.
    For those Items that we need Batch / Serial Numbers tracking, we set them accordingly in Item Master.
    So, now we have Items On Hand which was migrated into the system as not tracked by Batch / Serial Number. So, when we wanted to deliver the Items, we could not enter the Serial / Batch Numbers.
    What we did was to set Manage Item By to None, did a Goods Issue, Set Manage Item by to Batch or Serial and then do a Goods Received. We were able to change the Manage Item By in SBO 2004 PL37.
    We have upgraded to SBO 2005 A SP1 PL43. We noticed we could no longer change the Manage Item By. As such, we could not add Serial Numbers to the On Hand items. We also could not transfer it out first (Manage Item By = 'None') and receive it back.
    What can we do? Do we change the Manage Item By at the table level? That is not adviseable. We still have many such items.

  • How to change "Custom Delivery has failed to these recipients or group from another user" From Microsoft Outlook

    By default, the system generated mailbox comes from sender “Microsoft Outlook” like the screen shoot below .Sometimes we might need to change the display name of the system generated mailbox because of some reasons.
    The simplest way to change the field of the display name on the red line is to
    make this change in the ADSIEdit. Make short of long, here are the steps:
    Open ADSIEdit.msc
    Configuration -> Services -> Microsoft Exchange -> Company Name -> Transport Settings
    Right-click “CN=MicrosoftExchange329e71ec88ae4615bbc36ab6ce41109e” to properties.
    Locate the display name attribute, it should be Microsoft Outlook, then change it to Desired Display name that users want to see when they receive an NDR.
    Close ADSIEdit.
    Up to now, this can satisfy the needs of most people. But in my case, I also want to change the SMTP address ([email protected])
    to be easy to understand.
    We can use the below command to get the value of the MicrosoftExchangeRecipientPrimarySmtpAddress
    Get-OrganizationConfig | FL MicrosoftExchangeRecipientPrimarySmtpAddress
    To change the value of MicrosoftExchangeRecipientPrimarySmtpAddress is little bit tricky.
    If we make any organizational changes by running Set-Organizationconfig command then it reverts back this value to default value Microsoft Outlook.
    First we need to change the value by running the below command
    Set-OrganizationConfig -MicrosoftExchangeRecipientEmailAddressPolicyEnabled $False
    And then we need to set an appropriate email address from which it can send out NDR’s to the internal users.
    Set-OrganizationConfig -MicrosoftExchangeRecipientPrimarySmtpAddress
    [email protected]
    Note:
    MicrosoftExchangeRecipientEmailAddressPolicyEnabled –
    If this parameter is set to
    $false, you must manually add new e-mail addresses to the Microsoft Exchange recipient when
    e-mail address policies are added or modified. If this parameter is set to
    $true,
    every change we did above will be removed.
    Please click to vote if the post helps you. This can be beneficial to other community members reading the thread.

    Yes, i want customize the DSN messages but i just want to edit user will send DSN message to client.
    because on my system, fortimail reject the user send mail not from domain. But user system on exchange 2013 send DSN message to client is blank, i just see From Microsoft outlook not a identify user. 
    example:
    From: Microsoft Outlook  <--- Exchange 2013
    but on exchange 2010, they identify a user mailbox to send client.
    From: Microsoft Outlook [mailto:MicrosoftExchange329e71ec88ae4615bbc36ab6ce41109e@xxx] 
    Thanks,

Maybe you are looking for