How to pass item payment term through Idoc segment E1EDP18

We use ORDERS idoc to create sales orders and our customers want to replace the default payment term at item level. I found segment E1EDP18 for this purpose but I don't exactly know how to use it, like where to put the payment term key. Can any one expain with the help of a clear  example how to indicate the payment term there ?
Below is a exerpt of the incoming idoc file I used for testing. In this test I put the paymentt term 0010 in but the information sent in idoc segment is just ignored.
E1EDP01                     10         625.00
    E1EDP05                        ZD64
    E1EDP05                        ZD66
    E1EDP19                     00269020000
    E1EDP18                     0020010
Many thanks

Hi,
         SAP program IDOC_INPUT_ORDERS is not using the item level payment terms sent in IDOC segment P18 to fill the sales order so you need user exit to do this. The program is moving the item level information to an internal table xe1edp18 when the data is parsed from IDOC so you can use this to populate the screen information in the user exit 'CALL CUSTOMER-FUNCTION '002' (IDOC_INPUT_ORDERS).
Let me explain the process from EDI to SAP.
1) EDI 850 will have ITD segment at item level (Example ITD013  *2     *        *10 *        *30 *          *        *) you can ask your EDI team to map them to P18 segment as it has the number of days and also the percentage for cash discount. P18 has 3 qualifiers so you can map 3 different temrs (For example the above sample is 1 Term is 2% in 10 days and Term 2 is net 30 days)
2) During IDOC parsing the program is already filling internal table xe1edp18.
3) In the user exit CUSTOMER-FUNCTION '002' you need to search for the SAP payment terms with the number of days and percentage (This is available in the table T052). Once you find the SAP terms key, you need to populate it for each item. You need to do this after the program filled the item billing data.
Dynpro item business data billin details -
    PERFORM VA01_DYNPRO_POSITION_PDE3 USING XVBAP-POSNR.
*-Zusätzliche Daten für Dynpros vorsehen (Kundenerweiterungen)----
*-additional data's for new dynpro fields (customer exit)----
    SY-SUBRC = 0.
    PERFORM CUSTOMER_FUNCTION_DYNPRO.  -- THis is the user exit call
Hope this is useful.
Ram

Similar Messages

  • How to set-up Payment terms greater than 10 years

    We have payment terms that go beyond 10 years.  In the configuration of the payment terms, the "Additional months" field (V_T052-ZMONA) only contains 2 characters.  10 years * 12 months = 120 months which is already 3 characters long.
    Anybody know a way of how to set-up payment terms which is greater than 10 years?  Any user exits?
    Appreciate any help!
    DGE
    Edited by: DGE on Jan 3, 2008 5:43 AM

    Hi Amlan Sarkar,
    I went through IMG: Financial Accounting (New)> Accounts Receivable and Accounts Payable> Business Transactions> Outgoing Invoices/Credit Memos> Maintain Terms of Payment.
    Now for me to configure Payment terms up to year 2018 (for example); i need to enter in field "Additional months" value = 120.  120 is 10 years * 12 months, since receivables for the year 2018 is 120 months from the current date.
    How the "Additional months" field is only 2 characters long.  Therefore I am unable to enter the value 120 which is 3 characters long.
    Any ideas on how I can configure this?
    Thank you.

  • How to ue the PAYMENT TERMS

    Hi Experts,
    I am developing one reports, which should give the same output like FBL5N, but my report should calculate the payment terms logic, could any one suggest how i can use payment terms login in my report.
    Any function module would give no,of days for payment terms logic.
    Thanks,
    Gourisankar

    HI,
    Even i got same requirement.
    SELECT belnr                       " Document number
               budat                       " Posting date
               bldat                       " Document date
               waers                       " Currency
               xblnr                       " Reference number
               blart                       " Document type
               shkzg                       " Debit/credit indicator
               wrbtr                       " Amount
               zfbdt                       " Baseline date
               zterm                       " Payment terms
          FROM bsak
          INTO TABLE t_bsik
           FOR ALL ENTRIES IN t_delivery
         WHERE bukrs IN s_bukrs
           AND lifnr IN s_lifnr
          AND belnr IN s_belnr
           AND xblnr EQ t_delivery-vbeln
           AND sgtxt IN s_sgtxt.
    we get payment term from the field zterm.
    and then to get the payment date.
    use the below logic.
    SELECT SINGLE ztagg                " Day Limit
               ztag1                       " Days from Baseline Date...
               ztag2                       " Days from Baseline Date...
               ztag3                       " Days from Baseline Date...
               zstg1                       " Due Date for Special Condition
               zstg2                       " Due Date for Special Condition
               zstg3                       " Due Date for Special Condition
          FROM t052
          INTO lfs_days
            WHERE zterm EQ fs_zterm-zterm.
    and select maximum days from lfs_days.
    and add it to your baseline date.
    that will become ur payment date.
    Hope it is useful to you.
    Regards,
    Manjari.

  • Passing only item level details through IDOC

    Hi All,
    I have a requirement whrerein I am using the standard ORDERS05 IDOC without any additional enhancement.
    The current scenario is that whenever there is a change in any of the line items of a PO, the entire PO is passed through IDOC to XI.
    Now, the requirement is such that if there is a change in any of the line items in the PO, then only the details of that line item should be passed through the IDOC instead of the whole PO.
    Please let me know how can this be achieved.
    Thanks,
    Dawood.

    Hi,
    You have to find out the corresponding exit where Idoc segments are getting filled. In the exit, clear the other details from segment and populate the require data.
    Regards,
    Piyush

  • How to populate the payment block through the BAPI_INCOMINGINVOICE_CREATE

    Hi,
    I am trying to create the incoming invoice through the BAPI (BAPI_INCOMINGINVOICE_CREATE) .
    In MIRO transaction when i create the Invoice without any tax , the <b>payment block shows free for payement</b> . How to give create the invoice with the following condition through the BAPI (BAPI_INCOMINGINVOICE_CREATE) .  when there is Tax : The payment block = 'R' (Invoice verification) .
    No Tax                : The payment block = ' ' (Free for Payment).

    But everytime the invoice is created the Payment block is set to 'R' even if the Tax is not given.
    Following i am populating
    <b>Header Structure:</b>
    <b>Test                   Value Description                      PI Header Data Fields</b>
    ‘X’                Invoice Indicator     HEADERDATA-INVOICE_IND
    SPACE                Document Type     HEADERDATA-DOC_TYPE
    05-11-2006           Document Date     HEADERDATA-DOC_DATE
    17-11-2006           Posting Date                     HEADERDATA-PSTNG_DATE
    123456-B1                Ref Document Number     HEADERDATA-REF_DOC_NO
    9001               Company Code     HEADERDATA-COMP_CODE
    7006924               Vendor Number     HEADERDATA-DIFF_INV
    BRL               Currency                     HEADERDATA-CURRENCY
    BRL               Currency                     HEADERDATA-CURRENCY_ISO
    10000               Gross Amount      HEADERDATA-GROSS_AMOUNT
    05-11-2006          Baseline ate                     HEADERDATA-BLINE_DATE
    DD               Header Text                     HEADERDATA-HEADER_TXT
    0001               Payment Terms     HEADERDATA-PMNTTRS
    123456-B1               Ref Document Number     HEADERDATA-REF_DOC_NO
    Z1               NF Type                       HEADERDATA-J_1BNFTYPE
    space               Payment Block Key      HEADERDATA-PMNT_BLOCK
    <b>For Item Structure:</b>
    <b>Test Data     Description            BAPI Item Data Fields</b>
    000001                     Invoice Item           ITEMDATA-INVOICE_DOC_ITEM
    4500021387     Purchase Order Number   ITEMDATA-PO_NUMBER
    0010                     Purchase Order Item           ITEMDATA-PO_ITEM
    Z1                     Tax Code                           ITEMDATA-TAX_CODE
    SP 50308                     Tax Jurisdiction Code           ITEMDATA-TAXJURCODE
    10000                      Item Amount           ITEMDATA-ITEM_AMOUNT
    200                      Item Quantity           ITEMDATA-QUANTITY
    EA                      Purchase Order Unit           ITEMDATA-PO_UNIT
    Can u please tell me what is the mistake or any other ways of populating the Payment block.
    Always the payment block is 'R' in MIR4 transaction even if i give space in the BAPI

  • Mass change of Vendor Line Items Payment Terms

    Hi all
    We are trying to make a mass change of payment terms for vendor line items.  We have implemented the change required as per SAP note 640908. However when we try to do this not all payment terms are changed.
    The log gives us the following error - 'Field BSEG-ZTERM. does not exist in the screen SAPMF05L 1302'.
    Please how can we solve this error.
    Many thanks
    PRG

    Hi,
    According to note 640908:
    " Notes on error handling:
        If the mass change does not occur as required even though you
        changed and activated all program parts, note that the error log
        for the mass change (Environment -> Mass change -> Error log of
        line item list) may contain useful information for error
        handling."
    " Note: SAP cannot guarantee that the modified mass change will work
      correctly even if you carry out all of the steps as described in the
      manual tasks."
    It is not planned to enter the payment terms by using of
    the field payment term ZTERM but by using of the fields ZBD1T/ZBD1P and
    ZBD2T/ZBD2P and ZBD3T.
    With Best Regards,
    Gladys Xing

  • Automatic Payment Process through IDOC and Receive Message Acknowledgement and BANST file format

    Hi Experts,
    We are implementing payment process to our client through Idoc.
    Normally the process will go like below. Once Payment Initiated --> IDoc will generate --> This Idoc process through PI system and send to Bank.--> Once payment data received bank --> it will generate acknowledgement receipt and Bansta file and send it PI system --> This PI system system again send it --> SAP system. Here I want to know the required configuration from PI system to SAP system while receiving acknowledgement and Bansta file. And let me know if u guys have steps...
    Thanks,
    Raviram

    Hi,
    >is possible using the fileadapter to read this file and with pass it throug PI to IDOC receiver adapter without any mapping?
    yes
    >In that case what should the Message Type we are using in the file-sender adapter look like?
    If you have no mapping it doesnt matter, the message type will not be validated during runtime. You can take the IDoc type imported from the SAP system
    Regards,
    Udo

  • How to get vendor payment terms

    Hi all,
    I am creating a report. I need to get vendor payment terms. There are invoices without PO, how can I retrieve the payment terms for those cases.
    Thanks.

    Hi nene
               in case of invoice without PO, The payment term will be selected from the vendor master data (in View : payment terms transaction in XK03).
    Check payment term in  master data is exist or not.
    the data is in the table LFB1 : Field ZTERM
    Regards
    Wiboon

  • How to prevent change payment term in sales order?

    Hi,
    My client not allow sales admin. to change payment term in sales order. How to do this? (by standard SAP functions or authorization)
    Thanks & Regards,
    Jr.SD

    Either you can run T.Code shd0 or apply User exits in the program MV45AFZZ - USEREXIT_MOVE_FIELD_TO_VBAP to achieve this.
    thanks
    G. Lakshmipathi

  • How to lock the payment terms to default terms in customer master

    Hi experts,
    Kindly share with me your knowledge in locking the payment terms to the default in the customer master ?  We want the payment terms not to be manually editable at the sales order level through va01 and va02.
    Appreciate any help.  Thanks a lot.

    Thanks for the suggestion but we can not find an authorization specific to the payment terms.  If I disable "change" then I would not be able to edit the other fields. 
    We only want the payment terms to be disabled not the others.  Thanks a lot.

  • How to get the payment block through the BAPI_INCOMINGINVOICE_CREATE

    Hi,
    how to populate payment block through the BAPI (BAPI_INCOMINGINVOICE_CREATE).  always it is showing 'R' in MIR4 Transaction after the BAPI is executed.

    check
    BAPI_INCINV_CREATE_HEADER-PMNT_BLOCK
    regards
    Prabhu

  • Change Open Item Payment terms

    First I want to change the payment terms for a certain number of vendors. I do this either vendor by vendor or using the MASS transaction.
    BUT, I have a number of open Items for those vendors. Is there a way to change the Payment Terms for those existing open items?
    In FBL1N - Mass changes I dont see such a possibility.
    Can I do this using an ABAP program and is there any BAPI suitable for this purpose?  I see that the ZTERM field exists both in BSEG and BSIK tables
    Please any hint will be wellcome

    Thanks for your response,
    In FBL1N-MassChanges.
    I leave the BaseLine Date field unchanged.
    I change in the PaymentData block, the First field in Conditions (ZBD1T field) say from 30 Days to 60 Days.
    Will this change my open item DueDate from BaseLine30 to BaseLine60 ?
    Please Confirm if the above is correct.

  • How to make a payment term as Default in Credit note in certain Sales Orgs.

    Hello experts,
    Kindly provide your valuable inputs as How can i make the payment terms( say AU00 =Due Immediately) default for  a few sales organizations.
    As checked, Depending on the type of Credit notes( i.e. WITH OR WITHOUT reference to an invoice), payment terms are used in credit notes processing. Also putting V in invoice reference field will make the payment terms calculation as similar to invoice.
    But I need, that everytime a credit note( any type with /without Ref.) is raised in a given sales org., IT HAS TO BE DUE IMMEDIATELY i.e. payment terms must be AU00( Pay immediately).
    Kindly suggest accordingly.
    Many thanks in advance.

    Hi Ram,
    Thanks for the reply.
    I hope you have seen the scenario- My requirement is to MAKE THE PAYMENT TERM AU00( DUE IMMEDIATELY) SPECIFICALLY FOR CREDIT MEMOS WHICH ARE RAISED UNDER SPECIFIC SALES ORG.
    i.e. If Sales org X,raised a Credit memo( with or without reference to an invoice), THE CREDIT NOTE MUST BECOME DUE IMMEDIATELY.
    I would be greatful, if you can suugest the path/procedure to achieve that. I have received valable inputs about the variant but I am seeking some hint in a CUSTOM Z TABLE creation with any User exit,that can Default this payment terms to CREDIT NOTE.
    Many thanks in advance.

  • How can we change payment terms in existing billing documents

    Hi all,
    we created a billing document with reference to delivery ,before creating accounting document for that billing someone deleted payment terms which are existing in that billing , so i tried to delete billing document and recreate by changing payment terms in sales order ,but while creating billing system throwing error as "update was terminated'.
    what is the best way to process this.
    Edited by: suresh saketh on Aug 27, 2010 2:54 AM

    Hi,
    It has happened billing index is not properly updated-
    check this snote -12934 - how to correct billing index
    Thanks
    Chidambaram

  • How to create new Payment Terms ?

    Hi, I'm required to create a new payment terms in SAP-SD..would you please help me to do so.

    Hello,
    You can create the NEW PAYMENT TERMS in the transacion code OBB8
    Goto that transaction code OBB8 and click on new entries from where you will be driven to another screen in which you have to give the following details
    Payment terms Key
    Due date
    Description
    Account type
    Default dates
    Regards,
    santosh

Maybe you are looking for

  • Calling an action on Click of Radio Button

    Hi, We have a form in which we need to display two radio buttons and two dropdown lists. Depending on the selection of Radio Button the drop down list should change. To get the different data in the dropdown based on the selection of radio button, wh

  • Hi gurus in ALV how to edit the fields on out put list

    hi gurus in ALV how to edit the fields on out put list

  • No AVIVO in 10.1 in XP with Radeon 4670

    Dual booting XP sp3 and Win 7. Flash 10.1 in both. Radeon 4670. When playing a site such as HULU in Win 7 I can adjust the picture using the Video section of my ATI Catalyst controls. I can use dynamic contrast, sharpening, etc. But in XP nothing wor

  • Error when creating PDFs

    We have a team of users at a site office that when they try to generate a PDF, a log file is created instead which opens and says: The system cannot find the file specified. X:\TestProject\TestFolder\TestFile.pdf The PDF is never generated. In this e

  • Packaging material type

    I have created material using the material type VERP this is a packaging material & I want to add packaging material type in the material master but i am not able to find this field there can you guys please tell me the exact view wherein i can menti