Zero Condition Value in IDOC segment

Hello SAP Experts,
I have a requirement that the zero value condition type should get populated in the pricing segment of idoc E1EDP05 under E1EDP01.
When we try, this no condition type comes in this segment. Based on this , I have to map certain data in my Ztable.
Request for the guidance to meet this requirement
Thanks in advance,
Casimer

Hi Casimer,
sorry, this won't work without a modification.
The system outputs conditions and taxes in the INVOIC or ORDRSP IDoc       
under the following conditions.                                                                               
o  The print indicator in the pricing procedure must be set.           
       For example ('X' for item E1EDP04 and E1EDP05)                      
              ('S' for header level E1EDK04 and E1EDK05)                                                                               
o  The value of the condition must be <> 0.                                                                               
o  The condition must not be flagged as statistical.                                                                               
o  The accrual field should be empty.                                                                               
o  The condition must be active.                                       
Balazs

Similar Messages

  • How to update condition value using e1edp05 segment during order creation

    Hi,
    I have a requirement where I need to update the item level condition value (komv-kbeter)  to the condition type (komv-kschl) from the incoming idocs (orders05).
    But  the same is configured  in such a way to populate automatically with the default condition value zero during the order creation level using VA01 at condition tab.
    I am able to populate condition values from incoming idoc using segment E1EDP05 which is good, but it was getting created as new entry with the same condition type  instead of updating the condition value to the existing condition type(which got populated from automatically from configuration) .
    So I want to restrict to one entry instead of two with same condition type. Is there any userexit/gap to restrict automatic population of condition type thru programming or to update with idoc (orders05) value rather than inserting as new row?
    My client doesn’t want to restrict the pricing automation from configuration. So I have to handle through programming level.
    Your  inputs are appreciated

    It doesn't really matter if it's a credit/debit memo, it's the same transaction anyway and pretty much the same functionality. What is your requirement exactly? Do you always have to override the price from Siebel or, let's say, some price is automatically proposed and you might or might not need to override it?
    We use a custom (Z..) condition for price override. When a material is entered in VA01, some price (condition PR00, for example) is assigned automatically. Then, let's say, a special price has been negotiated with this customer just for this purchase. So the user goes into Conditions, types in condition code Z... and types in the new price. This basically annuls the previous PR00 condition. I'm not a functional consultant and can't give you all the config details, but your SD person should be able to help.
    I'm still positive that conditions cannot be removed or changed by IDoc. One thing I would suggest for your situation: do not create ZCD2 condition initially and then just add ZCD2 condition when you receive the data from Siebel. Otherwise it seems that you would have to write a user exit or a requirement to deal with the duplicate conditions.

  • Value for IDoc Segment field SEGMENT

    Hello,
    In the Integration Repository, while creating Message Mapping between a flat file (inbound) & an IDoc (outbound), I'm getting an error that not all target fields are mapped. In the target structure (IDoc), each segment has a field named <b>SEGMENT</b>. Can someone please tell me what value should go here. These are not part of the IDoc but seem to be a requirement in XI message mapping.
    There is also a segment called <b>BEGIN</b> (<u>Type</u> - xsd:string) which is defined as required. Please write as to what should be populated in this segment.
    Any help is greatly appreciated.
    Thanx in advance.
    Homiar.

    My current scenario is
    File Adapter -
    > XI -
    > SAP R/3 (Idoc Adapter).
    I will be using FIDCPP2 IDOC.  
    1. For an instance following is the structure, in this case how can I achieve getting a set of data in one IDOC and another set in other IDOC based on document no.
    CC        Doc No.        line items        
    UK01         456                 1
    UK01         456                 2  -
    > IDOC 1
    UK03         456                 3
    UK04         450                 1
    UK04         450                 2 -
    > IDOC 2
    UK04         450                 3
    i). Is there any way to create instances of idocs in XI or any alternative way out.
    ii). Where/ how can I give the condition, that based on Document No. should create another IDOC instance.

  • ZERO condition Value in pricing

    Hi Gurus,
    I have requirement where the condition should allow/accept a zero value when entered in a sales order.
    It is necessary to fill at least an amount of 0,01 in. Weu2019d like to fill in the amount of 0,00 so that there is no pricing for the item.
    Could you please tell me where I need to change the settings.
    Thank You in advance.
    Regards
    Kumar

    Hi,
    In transaction V/08, go to the pricing procedure, which is shown in the sales order. Go to the item pricing condition type and de-select the check mark, under mandatory column.
    Also check in transaction code OVA2, incompletion procedure, for the sales document item procedure, the field related to net price must be removed.
    Regards,

  • Populating value in idoc segment E1EDP02 for INVOIC01- incoming invoice

    Hi Friends,
    I am working to get the incoming freight invoice posted to MIRO, using
    IDOC : INVOIC01
    message type: INVOIC
    process code: INVL
    function module : IDOC_INPUT_INVOIC_MRM
    Vendor does not send the PO number only send the bill of lading number(shipment number). So i have customised the IDOC with one segment for getting bill of lading number. My requirement is get bill of lading number and then get PO no and populate into segment E1EDP02. I am not able to populate this field and hence each time the IDOC fails with message :
    Required field BELNR(001) is missing in segment E1EDP02
    Required field ZEILE(001) is missing in segment E1EDP02
    Please tell me how to get this field populated and get the issue resolved. I have been trying to figure out for couple of days but no success OR My approach is incorrect for posting invoice to MIRO with populating field segment.
    Please suggest.
    Thanks
    Deepak

    Thanks everyone for getting the issue resolved. I have implemented implicit enhanencement and before the function module strarts procesing, I loop over segments and fill up the PO number to E1EDP02 for bill of lading number. There was also a case of error handling for IDOC. That is to check if the amount sent by vendor is correct as compared to the amount on the shipment cost docuemnt, if they dont match then I need to send an email to the business informing them for bill of lading number and amount. There is also another check to find out if the bill of lading number has already been invoiced, if invoiced I again need to inform the business user.
    So keep all the requirements in mind I went with Implicit enhancement, thus populating the required segment and if the validations fail for amount or invoice document already generated, then I send the mail to business with bill of lading number and reason of failure. In such case IDOC is not executed and after sending the mail, the logic exits out of function module.
    I

  • Multiple idoc segment values to field fixed length FCC

    Friends,
    I need help to resolve a mapping issue. here is the brief about the scenario.
    Scenario: IDoc to Flat file Fixed length fields
    Issue: Idocs has values in multiple segments. i need to check condition for each segment occurrence if value exists then pass value if not then pass constant (i have to pass constant so that i can get the actual column width after FCC)
    Iam using the following logic.
    If condition then value1 -> remove contexts -> split by value -> target
    My scenario works fine for the above mapping however when i try introduction a constant in "if then else" then all my contexts in the target structure messes up.
    Thanks for your help.
    Regards,
    Pavan

    Did you tried MapWithDefault before Remove Contexts? To give more perfect solution , we would like to see a sample structure.
    raj.

  • Replaced value is not getting relected in IDOC segment field

    Hi,
    Need your help for the below issue.
    I am replacing the PO # with Delivery Doc # . But the replaced value is not getting reflected in the IDOC segment field(e1bp2017_gm_item_create-po_number.).
    Function Module  which I am using is IDOC_INPUT_MBGMCR as a copy.
    Here is my code given below:
    SELECT
                SINGLE vbeln
                  INTO lx_vbeln
                  FROM lips
                 WHERE vgbel EQ e1bp2017_gm_item_create-po_number.
    Move lx_vbeln TO e1bp2017_gm_item_create-po_number.
    MOVE-CORRESPONDING e1bp2017_gm_item_create
                   TO goodsmvt_item.
    Then this is passed as  TABLE in "BAPI_GOODSMVT_CREATE".
    Please do the needful.

    Hi Dheepa,
    Check it in debug whether the filed is empty or having po#, when ur code is executed for the replacement. if it is empty, po# is populated after ur code. in this case you need to write the code in suitable place.
    Reddy

  • How to Read Idoc - Segment fields values and status messages

    Hi,
      I am having one requirement as i want to read the segments along with the field values and also i want to read all the status messages.
    first i read the idoc data from EDIDS and segments data from EDID4 and the staus messges from T100. but still i am not getting all the status messages.
    is there any other table which contains the information of IDOC segments and field values and also the status messages.
    Regards,
    Kumar

    You need to use
    V_MSGNO = EDIDS-STAMNO.
    CALL FUNCTION 'MESSAGE_PREPARE'
      EXPORTING
        MSG_ID   = EDIDS-STAMID
        MSG_NO   = V_MSGNO
        MSG_VAR1 = EDIDS-STAPA1
        MSG_VAR2 = EDIDS-STAPA2
        MSG_VAR3 = EDIDS-STAPA3
        MSG_VAR4 = EDIDS-STAPA4
      IMPORTING
        MSG_TEXT = V_TEXT.
    WRITE: / V_TEXT.

  • Can I have mannual condition value as zero in Sales order

    Hi
    I need to enter a mannual condition type in sales order in %, but it should not give me any value and it should be zero. In Pricing procedure I haven't maintained any values in from & to column, but then it is taking the value either from the base price or from some other value. Can any one tell me how to control this....and get zero as value in sale order though I enter in %.
    Regards,
    Ragu

    Hi,
    What is the function of the condition type if its effect is not to be evaluated in the pricing screen.
    anyways if thats the case, in the pricing procedure you can specify the counter no. in the from and to fields related to the condition type.
    you can enter the counter no. of the base price on which you want the percentage of the particular condition type to be executed.
    hope it would solve your problem.
    regards,
    Siddharth.

  • IDOC segment fields prefixing blank space with values

    Hi Experts,
    I am sending data through custom IDOC from SAP to XML which generates successfully but getting 2 problems in the data.
    its having 3 level idoc segments:
    SEGMENT1 with 1 field (field_name(20))
    SEGMENT2 with 3 fields, (code_g(20), field_name(20), value(20))
    SEGMENT3 with 4 fields, (code(20), field_name(20), Language(2) & text(20))
    When i check the idoc in WE02,
    1. i found that segment2-value field is prefixing some space along with the values.
        Eg: if the output is "0111" whihc is plant, in the output (WE02) it is giving "       0111"
    2. Segment3-language is no where in the output and text which should come as "011" is coming like "       EN011" means it is concatinating language field value and displaying it with the text field value with prefixing space.
    This is happening in PRD not in QA & DEV. I also checked the transport req and everything, Its same everywhere.
    Can anyone please help me on this.
    Regards,
    Nik

    Hi,
    This issue happnes when u are moving the data to iDOC segement with offset.
    to aviod this improper move instead of using offset statement use below mentioned code.
    decalare a structure as
    Data SEG1 type SEGMENT1 ,
            SEG2 type SEGMENT2,
           SEG3 type SEGMENT3.
    then while moving
    SEG2-code_g = 'XXXX'
    SEG2-field_name = 'YYYY'
    SEG3-value = 'ZZZZ'
    here u are moving the segment values to idoc data (SDATA) and then append it.
    move seg3 to idoc-sdata.
    then append it to idoc.
    hope this helps

  • IDOC Segment - wrong value in WE02

    HI,
    I am working on ECC 6.0. I have changed the value of idoc segement in user exit by modifying table t_idoc_data.User exit name is EXIT_SAPLMRMH_011.
    Once the invoice is created, invoice contains the value which is chaned in the exit but idoc log ( we02) shows the unchanged value.
    Say segment in e1edp04 filed mwskz was having value 'MAT'.
    I am changing it to 'M' . Then invoice is having value as 'M' but log shows 'MAT'.
    Any clue??
    Regards,
    Shweta

    Shweta
    Inbound IDOCs are created in the system first and then they are sent for processing through Inbound Process Code... You are doing modifications after creation of IDOC, so there is no way you will see modified data in the IDOC....
    You may Update the IDOC Data, once you processed it with the Process Code...
    Thanks
    Amol Lohade

  • Condition value routine getting value zero at header level.

    Hi Gurus,
    I am trying to create one condition value routine in which I am passing xkwert = ( wa_vbap-cmpre * komp-mglme ) / 1000.
    The condition works fine at item level where I get condition value as desired but at the header level, where it should show sum for all line items, it is showing 0. When I debugged, I found that somewhere in standard program, where it sums for line item, it is changing to negative and that is why it is getting zero but I was not able to correct it.
    I am writing the code as follows.
    DATA: wa_tab TYPE c LENGTH 1000,
          I_VBAP TYPE STANDARD TABLE OF VBAP,
          lv_komv like xkomv,
          WA_VBAP TYPE VBAP.
    FIELD-SYMBOLS <f1> TYPE ANY TABLE.
      UNASSIGN <f1>.
    wa_tab = '(SAPMV50A)XVBAP[]'.
    ASSIGN (wa_tab) TO <f1>.
    IF sy-subrc = 0.
       i_vbap[] = <f1>.
    ENDIF.
    READ TABLE i_vbap INTO wa_vbap WITH KEY posnr = komp-kposn.
    IF sy-subrc = 0.
       xkwert = ( wa_vbap-cmpre * komp-mglme ) / 1000.
       CLEAR wa_vbap.
    ENDIF.
    CLEAR: I_VBAP,
            lv_komv.
    What should I do? please help.
    Regards,
    Manish

    I found the solution.
    If xkwert is initial.
    xkwert = gkomv-xkwert.
    endif.
    Regards,
    Manish

  • To Update the IDOC segment values through report program

    My requirement is to update the Idoc segment through the report program. Any SAP provided standard function module is available to update the Idoc segment values. Please help needed.

    DATA: LT_EDIDD TYPE STANDARD TABLE OF EDIDD."Local Table to Hold EDIDD
        LT_EDIDD = I_EDIDD. "table should have the data
    *-- Opening the IDoc for Edit
        CALL FUNCTION 'EDI_DOCUMENT_OPEN_FOR_EDIT'
          EXPORTING
            DOCUMENT_NUMBER               = X_EDIDC-DOCNUM
          TABLES
            IDOC_DATA                     = IT_EDIDD
          EXCEPTIONS
            DOCUMENT_FOREIGN_LOCK         = 1
            DOCUMENT_NOT_EXIST            = 2
            DOCUMENT_NOT_OPEN             = 3
            STATUS_IS_UNABLE_FOR_CHANGING = 4
            OTHERS                        = 5.
        IF SY-SUBRC <> 0.
          MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
    *-- Editing the IDoc
        CALL FUNCTION 'EDI_CHANGE_DATA_SEGMENTS'
          TABLES
            IDOC_CHANGED_DATA_RANGE = LT_EDIDD
          EXCEPTIONS
            IDOC_NOT_OPEN           = 1
            DATA_RECORD_NOT_EXIST   = 2
            OTHERS                  = 3.
        IF SY-SUBRC <> 0.
          MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
                  WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
    *-- Closing the IDoc after Edit
        CALL FUNCTION 'EDI_DOCUMENT_CLOSE_EDIT'
          EXPORTING
            DOCUMENT_NUMBER  = X_EDIDC-DOCNUM
            DO_COMMIT        = 'X'
            DO_UPDATE        = 'X'
            WRITE_ALL_STATUS = 'X'
          EXCEPTIONS
            IDOC_NOT_OPEN    = 1
            DB_ERROR         = 2
            OTHERS           = 3.
        IF SY-SUBRC <> 0.
          MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
              WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
        ENDIF.
    thanks
    vijay

  • Condition value is zero in TAX procedure TAXINN

    Dear All,
    Myself in an implementation project. Have configured CIN. There is a problem in Tax procedure.
    Our access sequence is tax classification.
    In PO i have mentioned the tax code and when i click taxes button the condition value for BED condition type is ZERO. (actually it should be 200 INR). But the calculation thereafter is correct. ie, Primary education cess on BED is 2% on BED is 4 INR .
    Expecting your valuable suggestions..

    hi
    please check following details
    J1ID for material
    condition maintain in FV 11
    GL assigned in OB 40 for tax code
    tax code assigned to company  code
    Regards
    sangita

  • VKP0 is not to be maintained as  mandatory condition while creating IDOC

    We have a very awkward need from our client.The bussiness doesnt want the condition type VKP0 to be mandatory condition while creating IDOC for article master data.
    In the bussiness terms they send some articles to POS without creating price.They dont want to have the value of KONWERT field as 'ZERO'..
    We have upgraded ECC 5.0(IS Retail) to ECC 6.0(IS Retail).It was techinical upgrade hence no functional configuration has been done.
    Moreover we have compared POS outbound profile in ECC 6.0 with ECC 5.0.Every configuration is same and all required prerequisites for POS Outbound profile are same in both the versions.The Idoc in ECC 5.0 is getting created even though the price of the artilce is not required to be mainatained.
    All of us know that if prices are not maintained system shows'X' mark in price field in T.Code WPER2.
    But,instead the IDOC is getting created in ECC 5.0.
    Please help us to make the IDOC creation possible in ECC 6.0 even without  creating the price.
    Edited by: ajay das on Nov 15, 2008 8:00 PM

    Hello Ajay,
    Are IDocs for other transactional data getting created? In case these are, you can try to check the message control settings.
    Regards,
    Nimish

Maybe you are looking for