Conditions segment in PORDCR102-PO create IDOC?

Hi ,
Iam populating some fields in the E1BPMEPOCONDHEADER segment of the IDOC PORDCR102. But the condition record is not getting generated in the PO.
Kindly can anyone throw some light on the mandatory fields that needs to be populated in this segment and is there any necessity to populate some other linked segments along with this segment inorder to get the condition record created.
I am populating some fields below :
E1BPMEPOCONDHEADER-COND_TYPE = 'ZA00'.
E1BPMEPOCONDHEADER-COND_VALUE = '12'.
E1BPMEPOCONDHEADER-CURRENCY = 'USD'.
E1BPMEPOCONDHEADER-CURRENCY_ISO = 'USD'.
E1BPMEPOCONDHEADER-COND_UNIT = 'EA'.
E1BPMEPOCONDHEADER-COND_P_UNT = '1'.
E1BPMEPOCONDHEADER-APPLICATIO = 'EF'.
Please help on this...
Thanks

you need to pass
CONDITION_NO
ITM_NUMBER 
in 1BPMEPOCONDHEADER and 1BPMEPOCONDHEADERX also..

Similar Messages

  • Populating the Conditions segment in PORDCR102-PO create IDOC

    Hi Gurus,
    Iam populating some fields in the E1BPMEPOCONDHEADER segment of the IDOC PORDCR102. But the condition record is not getting generated in the PO.
    Kindly can anyone throw some light on the mandatory fields that needs to be populated in this segment and is there any necessity to populate some other linked segments along with this segment inorder to get the condition record created.
    I am populating some fields below :
      E1BPMEPOCONDHEADER-COND_TYPE = 'ZA00'.
      E1BPMEPOCONDHEADER-COND_VALUE = '12'.
      E1BPMEPOCONDHEADER-CURRENCY = 'USD'.
      E1BPMEPOCONDHEADER-CURRENCY_ISO = 'USD'.
      E1BPMEPOCONDHEADER-COND_UNIT  = 'EA'.
      E1BPMEPOCONDHEADER-COND_P_UNT = '1'.
      E1BPMEPOCONDHEADER-APPLICATIO = 'EF'.
    Please help
    Thanks
    Venkatesh P

    you need to pass
    CONDITION_NO
    ITM_NUMBER 
    in 1BPMEPOCONDHEADER and 1BPMEPOCONDHEADERX also..

  • Populating the Conditions segment in PORDCR101-PO create IDOC

    Hi ,
    Iam populating some fields in the E1BPMEPOCONDITION segment of the IDOC PORDCR101. But the condition record is not getting generated in the transaction ME22N.Kindly can anyone throw some light on the mandatory fields that needs to be populated in this segment and is there any necessity to populate some other linked segments along with this segment inorder to get the condition record created.
    Iam passing the below given fields.
    E1BPMEPOCOND-ITM_NUMBER
    E1BPMEPOCOND-COND_VALUE
    E1BPMEPOCOND-CURRENCY
    E1BPMEPOCOND-CURRENCY_ISO
    E1BPMEPOCOND-COND_UNIT
    E1BPMEPOCOND-COND_P_UNT
    E1BPMEPOCOND-CHANGE_ID .
    Thanks,
    Kittu.

    hi,
    I am having the same requirement i.e file-xi-r3 create po, can any one tell me the necessary steps needed for this. i am new to all this and still learning things, so please help me.
    thank you
    email [email protected]

  • Creating IDOC segments

    currently we have custom program that  is creating IDOC segments.
    Please provide some documentation or step by step process to create segments in IDOC type.
    Thanks,
    Tanya

    Hi Tanya,
    It is very difficult to list all the steps here. I am trying to briefly explain the steps:
    TO CREATE IDOC WE NEED TO FOLLOW THESE STEPS:
       1. CREATE SEGMENT (WE31),
       2. CREATE IDOC TYPE (WE30),
       3. CREATE MESSAGE TYPE (WE81) AND
       4. ASSIGN IDOC TYPE TO MESSAGE TYPE (WE82).
    CREATING A SEGMENT
       1. GO TO WE31.
       2. ENTER THE NAME FOR THE SEGMENT AND CLICK ON THE CREATE ICON.
       3. TYPE THE SHORT TEXT.
       4. ENTER THE VARIABLES AND DATA ELEMENTS.
       5. SAVE IT AND GO BACK.
       6. GO TO EDIT -> SET RELEASE.
       7. FOLLOW STEPS TO CREATE MORE NUMBER OF SEGMENTS.
    CREATE IDOC TYPE
       1. GO TO WE30.
       2. ENTER THE OBJECT NAME; SELECT BASIC TYPE AND CLICK CREATE ICON.
       3. SELECT THE CREATE NEW OPTION AND ENTER A DESCRIPTION FOR BASIC IDOC TYPE AND PRESS ENTER.
       4. SELECT THE IDOC NAME AND PRESS ENTER.
       5. THE SYSTEM PROMPTS TO ENTER A SEGMENT TYPE AND ITS ATTRIBUTES.
       6. CHOOSE THE APPROPRIATE VALUES AND PRESS u2018ENTERu2019.
       7. THE SYSTEM TRANSFERS THE NAME OF THE SEGMENT TYPE TO THE IDOC EDITOR.
    CREATION OF IDOC TYPE
       1. FOLLOW THESE STEPS TO ADD MORE NUMBER OF SEGMENTS TO PARENT OR AS PARENT-CHILD RELATION.
       2. SAVE IT AND GO BACK.
       3. GO TO EDIT -> SET RELEASE.
    CREATE MESSAGE TYPE
       1. GO TO WE81.
       2. CHANGE THE DETAILS FROM DISPLAY MODE TO CHANGE MODE.
       3. AFTER SELECTION, THE SYSTEM WILL GIVE THIS MESSAGE u201CTHE TABLE IS CROSS-CLIENT (SEE HELP FOR FURTHER INFO)u201D. PRESS ENTER.
       4. CLICK NEW ENTRIES TO CREATE NEW MESSAGE TYPE.
       5. FILL DETAILS.
       6. SAVE IT AND GO BACK.
    ASSIGN MESSAGE TYPE TO IDOC TYPE
       1. GO TO WE82.
       2. CHANGE THE DETAILS FROM DISPLAY MODE TO CHANGE MODE.
       3. AFTER SELECTION, THE SYSTEM WILL GIVE THIS MESSAGE u201CTHE TABLE IS CROSS-CLIENT (SEE HELP FOR FURTHER INFO)u201D. PRESS ENTER.
       4. CLICK NEW ENTRIES TO CREATE NEW MESSAGE TYPE.
       5. FILL DETAILS.
       6. SAVE IT AND GO BACK.
    Please let me know if you require any further information
    Rgds,
    Harmees

  • Create Idoc in a User Exit

    Hello everyone,
    we have a requirement where we want to create and send an idoc out through a user exit.has anyone done anything like this before?i think it is possible.if anybody has any headup on how to do it please let me know.ok yea i know the function module which is to be used.its idoc_output_inotif.there is a tcode INOT which sends the idoc out but OSS says we cant use it 4.6c onwards and thats the reason this need of creating an idoc in user exit arises.
    i have tried executing the FM independantly and punching in a few values and i saw that it created an idoc in the system.so my guess is, if i can call this FM in one of the user exits for the transaction IW51/52, and pass all the needed values i should get an idoc.
    if anyone has manually created an idoc in a user exit please suggest me some options.
    thanks a lot.

    Hi Sanket ,
    Distribution Model is required when you use message control to send IDOCS . Since you are triggering your IDOC in a uaer exit , a distribution model is not required . Simple create a partner profile in WE20 and assign your message type in outbound parameter. You need not fill the message control parameters in WE20.
    ( If you use message control , the process code links the respective FM like  idoc_output_inotif in your case ).
    But in your case you will have to trigger your IDOC in user exit . You have two options here -
    First Try -  idoc_output_inotif in the user exit to fill the segments , then use  FM MASTER_IDOC_DISTRIBUTE to trigger the send process.
    If this  does not work then use
    L_IDOC_HEADER_CREATE -Once
    L_IDOC_SEGMENT_CREATE ( Once for each segment ).
    ( This will create IDOC on data base )
    L_IDOC_SEND - Once to trigger the IDOC created above.
    Hope this helps .
    Cheers

  • 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

  • Unable to create IDOCs after client copy

    I'm unable to create IDOCs after a client copy.  I receive a SAPSQL_ARRAY_INSERT_DUPREC or insert of duplicate rows ABAP dump.
    Does anyone know what how to fix this.  Thank you in advance.
    Runtime Error          SAPSQL_ARRAY_INSERT_DUPREC
    Except.                CX_SY_OPEN_SQL_DB
    Date and Time          22.10.2007 16:50:51
    ShrtText
    The ABAP/4 Open SQL array insert results in duplicate database records.
    What happened?
    Error in ABAP application program.
    The current ABAP program "SAPLEDI1" had to be terminated because one of the
    statements could not be executed.
    This is probably due to an error in the ABAP program.
    What can you do?
    Print out the error message (using the "Print" function)
    and make a note of the actions and input that caused the
    error.
    To resolve the problem, contact your SAP system administrator.
    You can use transaction ST22 (ABAP Dump Analysis) to view and administer
    termination messages, especially those beyond their normal deletion
    date.
    is especially useful if you want to keep a particular message.
    Error analysis
    An exception occurred. This exception is dealt with in more detail below
    . The exception, which is assigned to the class 'CX_SY_OPEN_SQL_DB', was
    neither
    caught nor passed along using a RAISING clause, in the procedure
    "F09_IDOC_INSERT_WITH_NUMBER" "(FORM)"
    Since the caller of the procedure could not have expected this exception
    to occur, the running program was terminated.
    The reason for the exception is:
    If you use an ABAP/4 Open SQL array insert to insert a record in
    the database and that record already exists with the same key,
    this results in a termination.
    (With an ABAP/4 Open SQL single record insert in the same error
    situation, processing does not terminate, but SY-SUBRC is set to 4.)
    How to correct the error
    Use an ABAP/4 Open SQL array insert only if you are sure that none of
    the records passed already exists in the database.
    You may able to find an interim solution to the problem
    in the SAP note system. If you have access to the note system yourself,
    use the following search criteria:
    "SAPSQL_ARRAY_INSERT_DUPREC" CX_SY_OPEN_SQL_DBC
    "SAPLEDI1" or "LEDI1F09"
    "F09_IDOC_INSERT_WITH_NUMBER"
    If you cannot solve the problem yourself and you wish to send
    an error message to SAP, include the following documents:
    1. A printout of the problem description (short dump)
    To obtain this, select in the current display "System->List->
    Save->Local File (unconverted)".
    2. A suitable printout of the system log
    To obtain this, call the system log through transaction SM21.
    Limit the time interval to 10 minutes before and 5 minutes
    after the short dump. In the display, then select the function
    "System->List->Save->Local File (unconverted)".
    3. If the programs are your own programs or modified SAP programs,
    supply the source code.
    To do this, select the Editor function "Further Utilities->
    Upload/Download->Download".
    4. Details regarding the conditions under which the error occurred
    or which actions and input led to the error.
    The exception must either be prevented, caught within the procedure
    "F09_IDOC_INSERT_WITH_NUMBER"
    "(FORM)", or declared in the procedure's RAISING clause.
    To prevent the exception, note the following:
    System environment
    SAP Release.............. "640"
    Application server....... "auaplxr3q"
    Network address.......... "128.197.135.5"
    Operating system......... "AIX"
    Release.................. "5.3"
    Hardware type............ "000B439ED600"
    Character length......... 8 Bits
    Pointer length........... 64 Bits
    Work process number...... 1
    Short dump setting....... "full"
    Database server.......... "auaplxr3q"
    Database type............ "ORACLE"
    Database name............ "Q63"
    Database owner........... "SAPR3"
    Character set............ "en_US.ISO8859-1"
    SAP kernel............... "640"
    Created on............... "Mar 22 2007 20:48:46"
    Created in............... "AIX 1 5 00538A4A4C00"
    Database version......... "OCI_920 "
    Patch level.............. "175"
    Patch text............... " "
    Supported environment....
    Database................. "ORACLE 9.2.0.., ORACLE 10.1.0.., ORACLE
    10.2.0.."
    SAP database version..... "640"
    Operating system......... "AIX 1 5, AIX 2 5, AIX 3 5"
    Memory usage.............
    Roll..................... 16128
    EM....................... 4189928
    Heap..................... 0
    Page..................... 0
    MM Used.................. 1469352
    MM Free.................. 2718056
    SAP Release.............. "640"
    User and Transaction
    Information on where terminated
    The termination occurred in the ABAP program "SAPLEDI1" in
    "F09_IDOC_INSERT_WITH_NUMBER".
    The main program was "SAPMSSY1 ".
    The termination occurred in line 108 of the source code of the (Include)
    program "LEDI1F09"
    of the source code of program "LEDI1F09" (when calling the editor 1080).
    Processing was terminated because the exception "CX_SY_OPEN_SQL_DB" occurred in
    the
    procedure "F09_IDOC_INSERT_WITH_NUMBER" "(FORM)" but was not handled locally,
    not declared in the
    RAISING clause of the procedure.
    The procedure is in the program "SAPLEDI1 ". Its source code starts in line 5
    of the (Include) program "LEDI1F09 ".
    Source Code Extract
    Line
    SourceCde
    78
    perform call_badi tables list_container_insert
    79
    using  control
    80
    ident.
    81
    Aufruf des Badi's für das einstreuen neuer Segmente
    82
    perform call_insert_badi tables list_container_insert
    83
    using control
    84
    ident
    85
    changing maxsegnum.
    86
    87
       free list_container_insert
    88
    FREE_RETURN = 1.
    89
    ELSE. " no other IDoc is open in create-mode
    90
    LOOP AT LIST_CONTAINER_CREATE WHERE MANDT EQ SY-MANDT
    91
    AND   DOCNUM EQ IDENT.
    92
    LIST_CONTAINER_CREATE-DOCNUM = DOCNUM.
    93
    MODIFY LIST_CONTAINER_CREATE.
    94
    ADD 1 TO MAXSEGNUM.
    95
    ENDLOOP.
    96
    if control-mestyp eq c_mestyp.
    97
    CALL FUNCTION 'FUNCTION_EXISTS'
    98
    EXPORTING
    99
    funcname           = c_func
    100
    EXCEPTIONS
    101
    FUNCTION_NOT_EXIST = 1.
    102
    IF syst-subrc IS INITIAL.  "Anwendungssystem
    103
    perform call_transform
    104
    tables list_container_create
    105
    using  control.
    106
    ENDIF.
    107
    endif.
    >>>>>
    INSERT EDID4 FROM TABLE LIST_CONTAINER_CREATE.
    109
    Aufruf des Badi's für das Anwendungsmapping einzelner Felder
    110
    perform call_badi tables list_container_create
    111
    using  control
    112
    ident.
    113
    perform call_insert_badi tables list_container_create
    114
    using  control
    115
    ident
    116
    changing maxsegnum.
    117
    118
      free list_container_create
    119
    FREE_RETURN = 0.
    120
    ENDIF.
    121
    122
    insert status records
    123
    124
    SYN_ERROR_IN = ' '.
    125
    CNTR_STATUS = 0.
    126
    REFRESH LIST_STATUS.
    127
    CLEAR LIST_STATUS.
    Contents of system fields
    Name
    Val.
    SY-SUBRC
    0
    SY-INDEX
    2
    SY-TABIX
    1
    SY-DBCNT
    1
    SY-FDPOS
    0
    SY-LSIND
    0
    SY-PAGNO
    0
    SY-LINNO
    1
    SY-COLNO
    1
    SY-PFKEY
    SY-UCOMM
    SY-TITLE
    CPIC and RFC Control
    SY-MSGTY
    SY-MSGID
    SY-MSGNO
    000
    SY-MSGV1
    SY-MSGV2
    SY-MSGV3
    SY-MSGV4
    Active Calls/Events
    No.   Ty.          Program                             Include                             Line
    Name
    13 FORM         SAPLEDI1                            LEDI1F09                              108
    F09_IDOC_INSERT_WITH_NUMBER
    12 FUNCTION     SAPLEDI1                            LEDI1U19                               33
    EDI_DOCUMENT_CLOSE_CREATE_TAB
    11 FUNCTION     SAPLEDIR                            LEDIRU01                              273
    IDOC_INBOUND_WRITE_TO_DB
    10 FORM         SAPLEDIN                            LEDINF01                              457
    ONE_IDOC_STORE
    9 FUNCTION     SAPLEDIN                            LEDINU05                              234
    IDOC_INBOUND_ASYNCHRONOUS
    8 FORM         SAPLEDIN                            LEDINV05                               19
    IDOC_INBOUND_ASYNCHRONOUS
    7 FORM         SAPMSSY1                            SAPMSSY1                              254
    XAB_RUN_DRIVER
    6 FUNCTION     SAPLSXAB                            LSXABU01                                9
    RFC_RUN_XAB_DRIVER
    5 FUNCTION     SAPLERFC                            LERFCU01                               59
    ARFC_EXECUTE
    4 FUNCTION     SAPLERFC                            LERFCU02                              229
    ARFC_DEST_SHIP
    3 FORM         SAPLERFC                            LERFCV02                               28
    ARFC_DEST_SHIP
    2 FORM         SAPMSSY1                            SAPMSSY1                               69
    REMOTE_FUNCTION_CALL
    1 MODULE (PBO) SAPMSSY1                            SAPMSSY1                               30
    %_RFC_START
    Chosen variables
    Name
    Val.
    No.      13 Ty.          FORM
    Name  F09_IDOC_INSERT_WITH_NUMBER
    CONTROL-MESTYP
    USERCLONE
    554544444222222222222222222222
    53523CFE5000000000000000000000
    C_MESTYP
    FIDCCH
    444444222222222222222222222222
    694338000000000000000000000000
    SY-XFORM
    IDOC_INBOUND_ASYNCHRONOUS
    444454444544545544454445522222
    94F3F9E2F5E4F139E382FEF5300000
    LIST_STATUS-STAPA2
    22222222222222222222222222222222222222222222222222
    00000000000000000000000000000000000000000000000000
    C_FUNC
    IDOC_TRANSFORM
    444455544544542222222222222222
    94F3F421E36F2D0000000000000000
    SYST-REPID
    SAPLEDI1
    5454444322222222222222222222222222222222
    310C549100000000000000000000000000000000
    SY-UNAME
    Q63CLNT140
    533444533322
    1633CE414000
    %_DUMMY$$
    2222
    0000
    SY-MSGV1
    22222222222222222222222222222222222222222222222222
    00000000000000000000000000000000000000000000000000
    SYST-SUBRC
    0
    0000
    0000
    ALE_IDOC_TO_APL_OK
    62
    33
    62
    LIST_CONTAINER_CREATE[]
    Table IT_20[9x1068]
    FUNCTION-POOL=EDI1DATA=LIST_CONTAINER_CREATE[]
    Table reference: 14
    TABH+  0(20) = 070000008036F5B8000000000000000000000000
    TABH+ 20(20) = 0000000E00000014000000090000042CFFFFFFFF
    TABH+ 40(16) = 0400002300000CA0000824C401000000
    store        = 0x070000008036F5B8
    ext1         = 0x0000000000000000
    shmId        = 0     (0x00000000)
    id           = 14    (0x0000000E)
    label        = 20    (0x00000014)
    fill         = 9     (0x00000009)
    leng         = 1068  (0x0000042C)
    loop         = -1    (0xFFFFFFFF)
    xtyp         = TYPE#000048
    occu         = 8     (0x00000008)
    access       = 1     (ItAccessStandard)
    idxKind      = 0     (ItIndexNone)
    uniKind      = 2     (ItUniqueNon)
    keyKind      = 1     (default)
    cmpMode      = 8     (cmpManyEq)
    occu0        = 1
    collHash     = 0
    groupCntl    = 0
    rfc          = 0
    unShareable  = 0
    mightBeShared = 0
    sharedWithShmTab = 0
    isShmLockId  = 0
    gcKind       = 0
    isUsed       = 1
    >>>>> Shareable Table Header Data <<<<<
    tabi         = 0x070000008036F610
    pghook       = 0x07000000802D86D0
    idxPtr       = 0x0000000000000000
    refCount     = 0     (0x00000000)
    tstRefCount  = 0     (0x00000000)
    lineAdmin    = 16    (0x00000010)
    lineAlloc    = 16    (0x00000010)
    store_id     = 23    (0x00000017)
    shmIsReadOnly = 0     (0x00000000)
    >>>>> 1st level extension part <<<<<
    regHook      = Not allocated
    hsdir        = Not allocated
    ext2         = Not allocated
    >>>>> 2nd level extension part <<<<<
    tabhBack     = Not allocated
    delta_head   = Not allocated
    pb_func      = Not allocated
    pb_handle    = Not allocated
    LIST_CONTAINER_CREATE
    1400000000000511747000000009E1BPADRML                     00000002#èXD63        070TST_QA140_1
    3333333333333333333333333333434544544222222222222222222222333333330E54332222222233355555433353
    14000000000005117470000000095120142DC0000000000000000000000000000238846300000000070434F11140F1
    CONTROL
    1400000000000511747640 64        2SAPQ63    LSQ63CLNT140
    3333333333333333333333233222222223545533222245533444533322222222222222222222222222222222222222
    14000000000005117476400640000000023101630000C31633CE414000000000000000000000000000000000000000
    G_MAXSYNERR
    1
    0000
    0001
    <%_TABLE_EDID4>
    ALE_DISPATCH_ERROR
    27
    33
    27
    ALE_IDOC_READY_FOR_APL
    64
    33
    64
    %_SPACE
    2
    0
    IDENT
    0000000000000001
    3333333333333333
    0000000000000001
    ALE_IDOC_TO_APL_ERROR
    63
    33
    63
    No.      12 Ty.          FUNCTION
    Name  EDI_DOCUMENT_CLOSE_CREATE_TAB
    IDENTIFIER
    0000000000000001
    3333333333333333
    0000000000000001
    NO_DEQUEUE
    X
    5
    8
    SYN_ACTIVE
    Y
    5
    9
    IDOC_CONTROL
    1400000000000511747640 64        2SAPQ63    LSQ63CLNT140
    3333333333333333333333233222222223545533222245533444533322222222222222222222222222222222222222
    14000000000005117476400640000000023101630000C31633CE414000000000000000000000000000000000000000
    SYNTAX_RETURN
    0
    0000
    0000
    INT_EDIDD[]
    Table IT_10[9x1062]
    FUNCTION-POOL=EDINDATA=G_T_DATA_RECORDS[]
    Table reference: 9
    TABH+  0(20) = 0700000080284B80070000008028530800000000
    TABH+ 20(20) = 000000090000000A0000000900000426FFFFFFFF
    TABH+ 40(16) = 0400000900000AA8000824C401000000
    store        = 0x0700000080284B80
    ext1         = 0x0700000080285308
    shmId        = 0     (0x00000000)
    id           = 9     (0x00000009)
    label        = 10    (0x0000000A)
    fill         = 9     (0x00000009)
    leng         = 1062  (0x00000426)
    loop         = -1    (0xFFFFFFFF)
    xtyp         = TYPE#000039
    occu         = 8     (0x00000008)
    access       = 1     (ItAccessStandard)
    idxKind      = 0     (ItIndexNone)
    uniKind      = 2     (ItUniqueNon)
    keyKind      = 1     (default)
    cmpMode      = 8     (cmpManyEq)
    occu0        = 1
    collHash     = 0
    groupCntl    = 0
    rfc          = 0
    unShareable  = 0
    mightBeShared = 0
    sharedWithShmTab = 0
    isShmLockId  = 0
    gcKind       = 0
    isUsed       = 1
    >>>>> Shareable Table Header Data <<<<<
    tabi         = 0x0700000080320D90
    pghook       = 0x07000000802E1508
    idxPtr       = 0x0000000000000000
    refCount     = 0     (0x00000000)
    tstRefCount  = 0     (0x00000000)
    lineAdmin    = 16    (0x00000010)
    lineAlloc    = 16    (0x00000010)
    store_id     = 17    (0x00000011)
    shmIsReadOnly = 0     (0x00000000)
    >>>>> 1st level extension part <<<<<
    regHook      = 0x0000000000000000
    hsdir        = 0x0000000000000000
    ext2         = 0x07000000802852A8
    >>>>> 2nd level extension part <<<<<
    tabhBack     = 0x0700000080284B30
    delta_head   = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
    pb_func      = 0x0000000000000000
    pb_handle    = 0x0000000000000000
    NO_IGNORE
    2
    0
    EDI_IDOC_SYNTAX_ERROR_IN
    60
    33
    60
    DOCNUM
    0000000000511747
    3333333333333333
    0000000000511747
    EXCLUSIVE
    E
    4
    5
    SYNCHRONOUS
    S
    5
    3
    APL_TESTIDOC_CHECK_OK
    55
    33
    55
    FREE_RETURN
    0
    0000
    0000
    INT_EDIDD
    1400000000000000001000009E1BPADRML                  00000000##XD63        070TST_QA140_17  X00
    3333333333333333333333333434544544222222222222222222333333330054332222222233355555433353322533
    14000000000000000010000095120142DC0000000000000000000000000000846300000000070434F11140F1700800
    SUB_INT_ACK_POSITIVE
    14
    33
    14
    G_INSERT_OK
    2
    0
    LIST_CONTAINER_INSERT_TMP[]
    Table[initial]
    LIST_CONTAINER_INSERT_TMP
    0000000000000000000000000                              00000000##
    2223333333333333333333333333222222222222222222222222222222333333330022222222222222222222222222
    0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    %_ARCHIVE
    2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
    0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    No.      11 Ty.          FUNCTION
    Name  IDOC_INBOUND_WRITE_TO_DB
    PI_DO_HANDLE_ERROR
    X
    5
    8
    PI_NO_DEQUEUE
    X
    5
    8
    PI_RETURN_DATA_FLAG
    X
    5
    8
    PI_RFC_MULTI_CP
    0000
    3333
    0000
    PI_STATUS_MESSAGE
    000000000000000000000000000000000000000000000000000000000000
    2223333333333333333333333333333333333333333333333333333333333332222222222222222222222222222222
    0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    PE_IDOC_NUMBER
    0000000000000001
    3333333333333333
    0000000000000001
    PE_INBOUND_PROCESS_DATA
    140BAPI                                                  6
    3334454222222222222222222222222222222222222222222222222223222222222222222222222222222222222222
    1402109000000000000000000000000000000000000000000000000006000000000000000000000000000000000000
    PE_STATE_OF_PROCESSING
    0
    0000
    0000
    T_DATA_RECORDS[]
    Table IT_10[9x1062]
    T_LINKED_OBJECTS[]
    Table IT_11[0x100]
    FUNCTION-POOL=EDINFORM=ONE_IDOC_STOREDATA=LT_LINKED_OBJECTS[]
    Table reference: 10
    TABH+  0(20) = 000000000000000007000000802853F000000000
    TABH+ 20(20) = 0000000A0000000B0000000000000064FFFFFFFF
    TABH+ 40(16) = 0400000900002BB00010249401000000
    store        = 0x0000000000000000
    ext1         = 0x07000000802853F0
    shmId        = 0     (0x00000000)
    id           = 10    (0x0000000A)
    label        = 11    (0x0000000B)
    fill         = 0     (0x00000000)
    leng         = 100   (0x00000064)
    loop         = -1    (0xFFFFFFFF)
    xtyp         = TYPE#000190
    occu         = 16    (0x00000010)
    access       = 1     (ItAccessStandard)
    idxKind      = 0     (ItIndexNone)
    uniKind      = 2     (ItUniqueNon)
    keyKind      = 1     (default)
    cmpMode      = 2     (cmpSingleMcmpR)
    occu0        = 1
    collHash     = 0
    groupCntl    = 0
    rfc          = 0
    unShareable  = 0
    mightBeShared = 0
    sharedWithShmTab = 0
    isShmLockId  = 0
    gcKind       = 0
    isUsed       = 1
    >>>>> Shareable Table Header Data <<<<<
    tabi         = Not allocated
    pghook       = Not allocated
    idxPtr       = Not allocated
    refCount     = Not allocated
    tstRefCount  = Not allocated
    lineAdmin    = Not allocated
    lineAlloc    = Not allocated
    store_id     = Not allocated
    shmIsReadOnly = Not allocated
    >>>>> 1st level extension part <<<<<
    regHook      = 0x0000000000000000
    hsdir        = 0x0000000000000000
    ext2         = 0x0700000080285390
    >>>>> 2nd level extension part <<<<<
    tabhBack     = 0x0700000080285340
    delta_head   = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
    pb_func      = 0x0000000000000000
    pb_handle    = 0x0000000000000000
    PC_CONTROL_RECORD
    1400000000000000000    30        2          LSQ63CLNT140
    3333333333333333333222233222222223222222222245533444533322222222222222222222222222222222222222
    14000000000000000000000300000000020000000000C31633CE414000000000000000000000000000000000000000
    %_VIASELSCR
    0
    4
    %_SPACE
    2
    0
    L_STATUS
    64
    33
    64
    L_ALE_SUCCESS_MESSAGE
    B1                  S005                                                  No filters
    4322222222222222222253332222222222222222222222222222222222222222222222222246266676772222222222
    21000000000000000000300500000000000000000000000000000000000000000000000000EF069C45230000000000
    ST_PREVIOUS_PARTNER_DATA-SYNCHK
    X
    5
    8
    C_TRUE
    X
    5
    8
    SYST-REPID
    SAPLEDIR
    5454444522222222222222222222222222222222
    310C549200000000000000000000000000000000
    C_ELEMENT_UNPROCESSED_IDOCS
    Unprocessed_IDocs
    56776667766544667222222222222222
    5E02F353354F94F33000000000000000
    ST_PREVIOUS_STATE_OF_PROCE
    0
    0000
    0000
    ST_INBOUND_PROCESS_DATA-EDIVR2
    6
    3
    6
    SY-MSGV4
    22222222222222222222222222222222222222222222222222
    00000000000000000000000000000000000000000000000000
    L_SYN_ACTIVE
    Y
    5
    9
    SY-XFORM
    IDOC_INBOUND_ASYNCHRONOUS
    444454444544545544454445522222
    94F3F9E2F5E4F139E382FEF5300000
    L_SYNTAX_RETURN
    0
    0000
    0000
    %_DUMMY$$
    2222
    0000
    SY-REPID
    SAPLEDIR
    5454444522222222222222222222222222222222
    310C549200000000000000000000000000000000
    No.      10 Ty.          FORM
    Name  ONE_IDOC_STORE
    IDOC_NUMBER_IN
    0000000000000000
    3333333333333333
    0000000000000000
    STATE_OF_PROCESSING_IN
    0
    0000
    0000
    INBOUND_PROCESS_DATA_IN
    2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
    0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    GT_NEW_IDOC_IDENTIFICATIONS[]
    Table[initial]
    G_LAST_IDOC_NUMBER
    0000000000000000
    3333333333333333
    0000000000000000
    SYST-REPID
    SAPLEDIN
    5454444422222222222222222222222222222222
    310C549E00000000000000000000000000000000
    CURRENT_CONTROL_RECORD_IN-DOCNUM
    0000000000000000
    3333333333333333
    0000000000000000
    CONV_ERROR
    2
    0
    C_TRUE
    X
    5
    8
    SY
    0000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000
    0002000000010009000000000000000000000000000100000001000000010000000000000000004C00000000000000
    STATUS_MESSAGE_IN
    000000000000000000000000000000000000000000000000000000000000
    2223333333333333333333333333333333333333333333333333333333333332222222222222222222222222222222
    0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    C_IDOC_SELECT_AND_WRITE_TO_DB
    5
    3
    5
    SY-REPID
    SAPLEDIN
    5454444422222222222222222222222222222222
    310C549E00000000000000000000000000000000
    STATUS_MESSAGE_IN-STAMID
    22222222222222222222
    00000000000000000000
    GT_NEW_IDOC_IDENTIFICATIONS
    0000000000000000
    3333333333333333222222222222222222222222222222222222222222222222222222222222222222222222222222
    0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    SPACE
    2
    0
    STATUS_MESSAGE_IN-STAMNO
    000
    333
    000
    RET_FLAG
    X
    5
    8
    G_RFC_CODEPAGE
    0000
    3333
    0000
    RSJOBINFO-JOBSUBRC
    0
    0000
    0000
    SY-XFORM
    IDOC_INBOUND_ASYNCHRONOUS
    444454444544545544454445522222
    94F3F9E2F5E4F139E382FEF5300000
    SY-LANGU
    E
    4
    5
    G_T_DATA_RECORDS[]
    Table IT_10[9x1062]
    LT_LINKED_OBJECTS[]
    Table IT_11[0x100]
    CURRENT_CONTROL_RECORD_IN
    1400000000000000000    30        2          LSQ63CLNT140
    3333333333333333333222233222222223222222222245533444533322222222222222222222222222222222222222
    14000000000000000000000300000000020000000000C31633CE414000000000000000000000000000000000000000
    %_DUMMY$$
    2222
    0000
    SWO_%OBJID
    2222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222
    0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
    No.       9 Ty.          FUNCTION
    Name  IDOC_INBOUND_ASYNCHRONOUS
    IDOC_CONTROL_REC_40[]
    Table IT_3[1x524]
    FUNCTION-POOL=EDINFORM=IDOC_INBOUND_ASYNCHRONOUSDATA=IDOC_CONTROL_REC_40[]
    Table reference: 3
    TABH+  0(20) = 07000000802D876007000000802D449000000000
    TABH+ 20(20) = 0000000300000003000000010000020C000000E0
    TABH+ 40(16) = 0400000900001FE0000A249001000000
    store        = 0x07000000802D8760
    ext1         = 0x07000000802D4490
    shmId        = 0     (0x00000000)
    id           = 3     (0x00000003)
    label        = 3     (0x00000003)
    fill         = 1     (0x00000001)
    leng         = 524   (0x0000020C)
    loop         = 224   (0x000000E0)
    xtyp         = TYPE#000136
    occu         = 10    (0x0000000A)
    access       = 1     (ItAccessStandard)
    idxKind      = 0     (ItIndexNone)
    uniKind      = 2     (ItUniqueNon)
    keyKind      = 1     (default)
    cmpMode      = 2     (cmpSingleMcmpR)
    occu0        = 0
    collHash     = 0
    groupCntl    = 0
    rfc          = 0
    unShareable  = 0
    mightBeShared = 0
    sharedWithShmTab = 0
    isShmLockId  = 0
    gcKind       = 0
    isUsed       = 1
    >>>>> Shareable Table Header Data <<<<<
    tabi         = 0x07000000802DB9D8
    pghook       = 0x0000000000000000
    idxPtr       = 0x0000000000000000
    refCount     = 0     (0x00000000)
    tstRefCount  = 0     (0x00000000)
    lineAdmin    = 10    (0x0000000A)
    lineAlloc    = 10    (0x0000000A)
    store_id     = 9     (0x00000009)
    shmIsReadOnly = 0     (0x00000000)
    >>>>> 1st level extension part <<<<<
    regHook      = 0x0000000000000000
    hsdir        = 0x0000000000000000
    ext2         = 0x07000000802D88A0
    >>>>> 2nd level extension part <<<<<
    tabhBack     = 0x07000000802D8710
    delta_head   = 0000000000000000000000000000000000000000000000000000000000000000000000000000000
    pb_func      = 0x0000000000000000
    pb_handle    = 0x0000000000000000
    IDOC_DATA_REC_40[]
    Table IT_4[9x1063]
    FUNCTION-POOL=EDINFORM=IDOC_INBOUND_ASYNCHRONOUSDATA=IDOC_DATA_REC_40[]
    Table reference: 4
    TABH+  0(20) = 07000000802D880807000000802D896000000000
    TABH+ 20(20) = 00000004000000040000000900000427FFFFFFFF
    TABH+ 40(16) = 04000009000020500008249001000000
    store        = 0x07000000802D8808
    ext1         = 0x07000000802D8960
    shmId        = 0     (0x00000000)
    id           = 4     (0x00000004)
    label        = 4     (0x00000004)
    fill         = 9     (0x00000009)
    leng         = 1063  (0x00000427)
    loop         = -1    (0xFFFFFFFF)
    xtyp         = TYPE#000138
    occu         = 8     (0x00000008)
    access       = 1     (ItAccessStandard)
    idxKind      = 0     (ItIndexNone)
    uniKind      = 2     (ItUniqueNon)
    keyKind      = 1     (default)
    cmpMode      = 2     (cmpSingleMcmpR)
    occu0        = 0
    collHash     = 0
    groupCntl    = 0
    rfc          = 0
    unShareable  = 0
    mightBeShared = 0
    sharedWithShmTab = 0
    isShmLockId  = 0
    gcKind       = 0
    isUsed       = 1
    >>>>> Shareable Table Header Data <<<<<
    tabi         = 0x07000000802E1550
    pghook       = 0x07000000802D8860
    idxPtr       = 0x0000000000000000
    refCount     = 0     (0x00000000)
    tstRefCount  = 0     (0x00000000)
    lineAdmin    = 16    (0x00000010)
    lineAlloc    = 16    (0x00000010)
    store_id     = 12    (0x0000000C)
    shmIsReadOnly = 0     (0x

    Hi Rohan,
    Welcome to SDN!
    This error means that you're trying to duplicate a record on the DB... check the IDOC  number ranges... it might help
    Regards
    Juan
    Please reward with points if helpful

  • Creating IDOC for article using BD10 tcode

    Hi Excperts,
    we are creating idoc for the articles using bd10 tcode.
    we are using idoc type ARTMAS05.  But system not filling the segment  E1BPE1MLEART                   Retail Data Transfer: Vendor-Specific EANs     . Could you anyone help me , why sap standard program is dropping this segment.
    do we need set up any data in material master for his segment. .
    you will be rewarded.
    Regards
    Rama.

    Hi Rama,
    Generally if the segment is not being filled it is because the values do not exist.
    The segment is not mandatory. So your IDoc should still be created.
    Try:
    By selecting the Send material in full indicator, you can also distribute the following dependent data for the material (depending on the type of system) in addition to the actual material master data:
    Retail system
    Listing conditions
    Purchasing info records
    Source list records
    Purchasing conditions
    Sales conditions
    BOM allocations
    Best regards,
    Glynn

  • JAVA CODE  NOT CREATING IDOC

    Hi all
    I m facing problem to upload data through idoc.the scenario is like we receive electric meter reading in flat file format. And to upload that data JAVA code is written which will create an IDOC FILE this authorization is only give to 2-3 person in organization and to basis guy also as user changed it’s password in SAP and in JAVA the java code is not going to create the IDOC file and data is not going to upload. after changing user password in sap system ,user not able to upload the data.
    ISU_MR_UPLOAD01 is the idoc file generated. So is there any authorization issue, password issue how to see and view IDOC IN SAP, can any one help me out into this.
    The error with java throws is as;
    1ST ERROR IN TRACE FILE
    ERROR file opened at 20061109 133610 India Standard, SAP-REL 640,0,59 RFC-VER 3  MT-SL
    T:2736 ======> User TR has no RFC authorization for function group SYST .
    T:2736 <* RfcReceive [1] : returns 3:RFC_SYS_EXCEPTION
    2ND ERROR ON COMMAND PROMT
    C:\j2sdk1.4.2_07>cd bin
    C:\j2sdk1.4.2_07\bin>java sandsupload
    Creating IDoc...Exception in thread "main" com.sap.mw.idoc.IDoc$Exception: (2) I
    DOC_ERROR_METADATA_UNAVAILABLE: The meta data for the IDoc type "ISU_MR_UPLOAD01
    " is unavailable.
            at com.sap.mw.idoc.jco.JCoIDoc$JCoDocument.<init>(JCoIDoc.java:233)
            at com.sap.mw.idoc.jco.JCoIDoc$JCoDocument.<init>(JCoIDoc.java:187)
            at com.sap.mw.idoc.jco.JCoIDoc.createDocument(JCoIDoc.java:10521)
            at sandsupload.main(sandsupload.java:35)
    the part of java code
    try {
                //create a JCo client pool
                JCO.addClientPool( "MyPool",    //pool name
                                   3,           //maximum pool connections
                                   "333",       //SAP client
                                   " TR",    //user ID
                                   " XYZ",  //password
                                   "EN",        //language
                                   " 1.1.1.1   ", //app server host name
                                   "00" );   //system number
                //create an IDoc repository
                IDoc.Repository idocRep = JCoIDoc.createRepository("MyIDocRepository", "MyPool");
                //create a new and empty MATMAS02 document
                System.out.print("Creating IDoc...");
         Line where it shows error
                IDoc.Document doc = JCoIDoc.createDocument(idocRep, "ISU_MR_UPLOAD01");
                //get the root segment from the document
                //The root segment does not contain any fields or data. It is only
                //used as the standard parent segment and won't be transmitted when
                //the document is sent to an SAP system.
                IDoc.Segment segment = doc.getRootSegment();
                //create and add a new and empty child segment of type E1MARAM
                //and fill the segment data

    Hi Gaurav,
    Same exception on the same line has been reported and marked as solved here :
    IDOC_ERROR_METADATA_UNAVAILABLE:
    Btw, I think this forum is not visited often by JCO and ABAP connectivity experts, so maybe you could get a faster response to your problems while posting in "Java Programming" or maybe in some forum under the category ABAP Development.
    HTH
    Peter

  • Problem while creating IDOC

    Hi Friends..
    I have created IDOC through program.
    IF Shipment = 'X'.
        perform shipment.  -
    >Shipment report
        perform shipping.  -
    >Idoc creation form
        PERFORM ftp2.
        PERFORM move_ftp_entries.
        perform shipment_display.
      ELSEIF Receipt = 'X'.
        perform Receipt.  -
    >Receipt Report
        perform Receiving.----
    >Idoc creation form
        PERFORM ftp1.
        PERFORM move_ftp_entries.
        perform receipt_display.
      ELSEIF Test = 'X'.
        perform Test.    -
    > Test report
        perform testdata.----
    > Idoc creation form
        PERFORM ftp.
        PERFORM move_ftp_entries.
        perform test_display.
      ENDIF.
    if I follow the above condition Idoc created for every report perfectly.But when I come to the following logic no idoc was created...
       perform shipment.  -
    >Shipment report
        perform shipping.  -
    >Idoc creation form
        PERFORM ftp2.  -
    >FTP generation form
        PERFORM move_ftp_entries.
        perform shipment_display.----> Display form
        perform Receipt.  -
    >Receipt Report
        perform Receiving.----
    >Idoc creation form
        PERFORM ftp1.
        PERFORM move_ftp_entries.
        perform receipt_display.
       perform Test.    -
    > Test report
        perform testdata.----
    > Idoc creation form
        PERFORM ftp.
        PERFORM move_ftp_entries.
        perform test_display.
    I want to generate IDOC for all my three reports.
    Thanks
    Gowrishankar

    Hi Gowri,
    Tell me one thing. As per your logic you are displaying /generating one report and creating the responding idoc. Correct me if i am wrong. Can you please explain a bit more about your requirement.
    Thanks,
    Priyabrata

  • Doubt in creating idocs

    Hi
    I had created IDOCS by following this procedure
    <b>Step 1 – Analyse Hierarchy Levels:</b>
    Analyse the data relationships being processed in the interface. Define the appropriate hierarchical Parent-to-Child relationships.
    Navigate to transaction code WEDI
    Transaction WEDI displays the IDOC main menu. This allows navigation around the various development and control areas to create a customised IDOC.
    <b>Step 2 – Create a new segment:</b>
    via wedi : Development - IDOC Segments or Transaction code WE31.
    • Enter segment name and click on Create.
    The&#61662; name of the segment type must start with Z1 , and have a maximum of eight characters.
    • Enter description and enter the relevant field names and data elements.
    The segment should represent a structure in the program so for&#61662; each field in the segment a field name and a data element must be defined.
    • Save the segment and enter Person Responsible and Processing Person .
    • Go to Edit and Set Release.
    • Repeat this procedure for each new Segment in the IDOC.
    <b>Step 3 – Create a new IDOC Type</b>
    via wedi Development - IDOC Types or Transaction WE30.
    • Enter segment name (starting with Z), click on Basic Type and then Create.
    • Create as new, enter Person Responsible and Processing Person and enter description.
    • On ‘Create Basic Type’ screen decide where segments should be inserted and go to Edit/Create Segment.
    • Complete relevant fields in the Maintain Attributes screen:
    • From the relevant segments created in Step 2 enter the Segment type and if mandatory segment.
    • The Minimum and Maximum number of segments to be allowed in the sequence. (One minimum and one maximum if segment is mandatory).
    • The Parent Segment and Hierarchy Level will be automatically created depending on where in the IDOC tree you decided to create that particular segment.
    • Repeat this process for each segment needed in the IDOC type, deciding whether to add the next segments at the same level or as a ‘Child’.
    • When IDOC created return to initial screen. Go to Edit and Set Release.
    • Go to Transaction WE60 to view the IDoc Type you have created.
    <b>Step 4 – Create new Message Type</b>
    via wedi Development - Message Types or Transaction WE81.
    • Display/Change and click on New Entries
    • Create a new Message Type and Save.
    <b>Step 5 – Link Message Type to IDOC Type</b>
    via wedi Development - IDOC Type/Message or Transaction WE82.
    • Display/Change and then click on New Entries.
    • Enter Message Type, Basic Type (IDOC Type) and Release (46C) and Save.
    <i><b>Now my problem from this step</b></i>
    <b>Step 6 – Create an entry in EDP13 via transactions WE20 and BD64.</b>
    The partner profile for the Idoc must be set up and generated in the transaction BD64 and transaction WE20.
    • WE20 – Add Message Type to appropriate Partner Type, Enter Message Type, Receiver Port and Idoc Type and Save.
    • BD64 – Create a Model View, Enter Sender and Receiver Ports, Attach Message Type. Go to ‘Environment’ on Menu and click on Generate Partner Profiles and generate (not save) profile.
    <i><b>From where i have to add message type to partner type</b></i>
    Can any one explain me clearly step by step after this step
    Helpfull points will be surely rewarded
    Regards
    Pavan

    Hi Pavan,
      You have the Partner number? which is nothing but your Logical system name or vendor or customer. I think in your case, it is Logical system.
      Select or create an logical system. If already exist, select the option LS in the left hand side and display it. IN WE20. Now, give you Message type and save it.
    But, If we say in your case as ALE, Goto Tcode SALE, Nagivate and create logical system for sender and reciver.
    2. Then assign these Logical system to the clients.
    3. GOto Tcode SM59 and create RFC destination.
    4.Tcode- BD64 , Display it and select create model view options. and save it.
    5. Now, go for Assign message type and assingn the message type alon with your logical system name for recevier and sender.
    6. Goto Status bar ENVIRONMENT and select generate partner profile. Automatically, a partner profile will be generated.
    7.Now GOTO EDIT , Model view -
    distribute.
    Thanks
    Manju.

  • Create Idoc Type under ECC6

    Hi folks,
    I've created a new Idoc segment for an existing idoc (The original idoc doesn't have the fields I need).  I'm now trying to create a new Idoc type taking into consideration the new Idoc Extension I've created.  When I type my new idoc type and select 'basic type', I believe I should get prompted (somewhere) to enter the Basic Idoc type and Extension type, but when I create a new basic type, I don't get the option to add my new extension.  And If I copy the original basic type, I don't get my new segments.
    Can someone please tell me what I'm missing in the create new Idoc Process?
    Cheers,
    Steve

    Hi Stephen..
    According to ur Scenario (Adding  new Segments to a Basic type ) , you should not create  a Basic idoc type . Rather you should create an Extended idoc type in WE30.
    That will ask for the Basic type and the new segments can be added here.
    This is the Complete info:
    1.     
    IDOC Enhancement
    This is the Complete Steps and Info on this...with an Example...
    Enhancing ALE
    For example, if in an outbound interface you find that the IDOC type does not contain all the data you need to pass to the other system, you can extend the IDOC to accommodate the additional fields and enhance the ALE function modules to populate the fields. Similarly, if in an inbound interface, there is additional data that needs to be posted to the R/3 application, you can extend the IDOC type to have additional fields populated by the external system or translator or the other R/3 system and then enhance the inbound ALE function modules to post the additional data to the R/3 application.
    let us use the SAP Customer Master application as an example. Specifically, letâs focus on the IDOC extension and ALE function module enhancement of IDOC type DEBMAS02 and message type DEBMAS (Customer Master) and the IDOC reduction of message type MATMAS.
    IDOC EXTENSIONS
    Letâs first look at the concept of IDOC extension. SAP delivers Basic IDOC types such as DEBMAS02, MATMAS02, ORDERS02, and WMMBID01. By extending the Basic IDOC type, you are actually creating a new IDOC type. You create a new segment with the additional fields. This new segment has to be associated with one of the existing Basic IDOC segments. Then you create a new extension type, which is associated with the Basic IDOC type. This results in a new IDOC type. In order for ALE function modules to relate to this new IDOC type, the IDOC type is linked to the corresponding message type.
    Note that you should not add fields to existing segments but should create a new segment and associate it with an existing segment. This, in a nutshell, is the process of creating IDOC extensions.
    In our example, the Basic IDOC type DEBMAS02 is used to communicate Customer Master data to the SAP Customer Master application. Even though the application has a screen to enter and store a contact personâs business address (see Figure 1), DEBMAS02 does not have a segment or fields that communicate the contact personâs business address. If your business requires that this business address be communicated to the other system through the ALE interface for Customer Master, then you have to extend the DEBMAS02 IDOC type, and enhance the corresponding ALE function module.
    In DEBMAS02 the contact person fields are present in segment E1KNVKM and the business address of the contact person is stored on the SADR SAP table. You need to create a new segment, Z1SADRX, that is associated with E1KNVKM. This will be done in the process of creating an extension type ZDEBMASX. This extension type will then be associated with a new IDOC type, ZDEBMASZ. IDOC type ZDEBMASZ will be linked to message type DEBMAS for Customer Master. The final step in the IDOC extension process is to check the new objects. This check also verifies the structural integrity of the IDOC type. Letâs look at each of these steps in more detail.
    1. Create an Extension Type and a New Segment.
    Determine the fields on table SADR that you are going to provide for in the new segment Z1SADRX. You need fields for name, street, city, region, and country to give the business address of the contact person. You also need fields for the address number. ADRNR is a field in SAP tables such as SADR that uniquely identifies the address of an entity. This field is cross-referenced from other tables to the SADR table to obtain the full description of the address. Because this is an IDOC type for master data, the first field of the new segment will be MSGFN. The message function field informs the receiving system of the action to be taken for that particular segment. In the code that you write for populating the new segment, the value of the message function is the same as that of the parent segment E1KNVKM. In all, you will have 12 fields in segment Z1SADRX (see Table 1).
    To create an extension type and new segment:
    • Use transaction WE30 or from WEDI go to Development -> IDOC types.
    • Enter ZDEBMASX for Object Name.
    • Choose Extension Type.
    • Click on Create.
    • You will see a pop-up screen. Choose Create New, and enter a description. For version 4.x, enter DEBMAS02 in the Linked Basic Type field. Enter.
    • You will see a screen with ZDEBMASX and its description in the first line. Click on this line, and press Create. For version 4.x, expand the tree of segments, and place the cursor on E1KNVKM.
    • You will see a pop-up screen. Enter E1KNVKM as the reference segment. Enter.
    • For 4.x, press Create after placing the cursor on segment E1KNVKM.
    • You will see a line appear with E1KNVKM hierarchically below ZDEBMASX, with a description "Customer Master contact person (KNVK)."
    • Click on this line and press Create. You will receive a message indicating that the new segment being created will be a child segment of E1KNVKM. Enter. A pop-up box appears for the new segment.
    • Enter Z1SADRX as the segment type, 1 for Minimum, 1 for Maximum. Leave Mandatory segment unchecked. These entries imply that there is only one Z1SADRX segment for every occurrence of the E1KNVKM segment, and also that this segment is not mandatory. Note that if the parent segment is not mandatory, then the child segment should not be mandatory, because this could result in a syntax error during the creation or processing of the IDOC.
    • For 4.x, you must first create the IDOC segment Z1SADRX (Iâll explain why in a moment) from the menu path WEDI -> IDOC -> Development -> IDOC Segment.
    • Click on Segment Editor.
    • On the next screen, click on Create.
    • Enter a development class for the object. Enter.
    • This will take you to the screen for segment definition. Enter a description for the segment. Enter the field name, data element, and the data element documentation name. In most cases, all three fields may have the same values. If you are using a field in the segment that is not present in the ABAP/4 data dictionary, you must first create the domain, data element, field, and appropriate documentation before using it in the new segment.
    • Enter these three columns for all 12 fields. Save.
    • Click on Generate/Activate, F3 to step back.
    • From screen Maintain Segment, go to Segment Type -> Release. A checkbox now appears beside the segment definition Z1SADRX (see Figure 2). Check this box. Save.
    • Save again to store the descriptions of the segment, F3 to step back.
    • Save the extension type.
    It is possible to have several new segments with relevant Basic IDOC type parent segments in a single extension type. However, you can form only one IDOC type based on a single extension type.
    2. Create an IDOC Type.
    The next step is to create an IDOC type by associating the extension type that you created with the Basic IDOC type. This is a simple process:
    • From transaction WE30 or WEDI go to Development -> IDOC Types.
    • Enter ZDEBMASZ for Object Name.
    • Click on IDOC Type.
    • Click on Create.
    • Enter DEBMAS02 for Basic IDOC type.
    • Enter ZDEBMASX for extension type.
    • Enter a description.
    • Enter.
    • You will see a display of the composite IDOC type with all segments, including Z1SADRX (see Figure 3).
    It is possible to associate only one extension type with a Basic IDOC type for a given IDOC type. However, you can have multiple new segments in an extension type.
    3. Link IDOC Type to Message Type.
    The next step is to link the new IDOC type to its corresponding message type. This is important, because this relationship is referenced in the partner profile parameters where you specify the message type and IDOC type to be used for that particular representative system. To link the message type:
    • Use transaction WE82, or from WE30, go to Environment -> IDOC Type / Message Type, or from WEDI go to Development -> IDOC Type -> Environment Î IDOC Type / Message Type.
    • Click on Display <-> Change.
    • Click on New Entries.
    • Enter DEBMAS for message type.
    • Enter DEBMAS02 for Basic IDOC type.
    • Enter ZDEBMASX for extension type.
    • Enter your SAP R/3 release number for Release.
    • Save.
    This data is stored on the EDIMSG table and is accessed by several ALE processes to relate the message type to the IDOC type.
    4. Check the IDOC Type.
    Before checking the IDOC type for consistency, it is important to perform another step that releases the extension type to the IDOC type:
    • From WEDI go to Development -> IDOC Types -> Extras -> Release Type, or from transaction WE30 go to Extras -> Release Type.
    • For the Object Name ZDEBMASX and radio button Extension Type, click Yes.
    • The extension type has now been "released."
    You canât edit the extension type once itâs released. To cancel the release for further editing or deactivation, go to WE30 Î Extras Î Cancel release. The final step in the IDOC extension process is checking the validity of the IDOC type:
    • From transaction WE30 or WEDI go to Development -> IDOC types.
    • Enter ZDEBMASX for Object name.
    • Click on Extension Type.
    • From the Development Object menu select Check.
    • Repeat the operation for IDOC type ZDEBMASZ.
    • A check log will be generated for each run with details of correctness or errors (see Figure 4).
    In some situations it is possible to receive errors during the check process, especially segment length errors. The incorrect IDOC segment can be repaired and corrected by executing program RSEREPSG. This program checks the formal consistency and repairs incorrect segments. In test mode it will generate a log of formal correctness for the specified segment only. For the program to repair segments in normal mode, the underlying IDOC structures (DDIC structures) must be active. This program rectifies the lengths of the DDIC structures and not the fields themselves. RSEREPSG can also be used to change the person responsible for the object and the release flag.
    Menu paths may vary slightly depending on the release/version of SAP R/3, but the procedures and the principles are the same.
    ALE FUNCTION MODULE ENHANCEMENTS
    Having extended the IDOC type to contain additional fields for an inbound or outbound application, you now want to enhance ALE function modules for populating the additional segment on the outbound or applying the additional segment data on the inbound application.
    The core working code for ALE processes for a given application area is always encapsulated in ABAP/4 function modules. These function modules are associated with such control information as message types and process codes. So the ALE process checks this control information and derives the name of the function module to invoke for that particular IDOC processing from certain database tables. These function modules contain objects known as customer functions, which can be considered SAP Enhanced user exits. A function module is called at a particular point during the processing of the main program or function module, and it can be used to influence data processing at that point by adding code to the customer function. The customer function behaves like a normal function module and has import and export parameters, tables (internal tables) statement, and exception processing. Unlike a conventional user exit, customer functions give you the ability to modify only data available to you by the function moduleâs parameters and internal tables. While most ALE/EDI function modules are supported by customer functions, there are ALE/EDI processes that still use conventional user exits. There are a few ways to determine which function module to enhance for a given message type/process code:
    • For master data distribution, from SALE go to Extensions -> Master data distribution -> Setup additional data for message types. Search for message type DEBMAS in this example. You see an entry for DEBMAS associated with function module MASTERIDOC_CREATE_SMD_DEBMAS. This data is stored on table TBDME. The function module names for all master data message types follow this pattern: MASTERIDOC_CREATE_SMD_messagetype. This function module calls another function module of name MASTERIDOC_CREATE_DEBMAS or MASTERIDOC_CREATE_messagetype. Search for the words customer function, and you find several hits that can be used to add code to the function module.
    • From WEDI got to Control -> Inbound process codes -> Inbound with ALE service -> Processing by function module (transaction WE42), or from WEDI go to Control -> Outbound process codes -> Outbound with ALE service -> With function module (transaction WE41). There will be function modules associated with the process codes. For inbound, the function modules usually follow this pattern: IDOC_INPUT_messagetype: for example, IDOC_INPUT_CHRMAS for inbound characteristics master.
    • Use transaction WE57 or from WEDI go to Development -> Message/Application Object. The entries list the function module, Business Object, message type, and IDOC type that are used for inbound ALE/EDI interfaces.
    Customer functions are not specific only to ALE and EDI but also to all programs/modules in SAP R/3. Customer function is a SAP enhancement component; the other two types are menu and screen enhancements.
    All customer function exits are maintained in SAP enhancements and are found by using transaction SMOD. After executing transaction SMOD, pull down (F4) on the enhancement name field, and execute again. This provides you with a list of all SAP enhancements available. SAP enhancements are grouped by development class pertaining to an application area. Choose Application development R/3 SD master data distribution for development class VSV to lead to a screen that lists VSV00001 as an enhancement (see Figure 5). Press Component +/- to display its function exit components. There are four possible components listed, all of which are function exits (and are function modules) that are called from the ALE function modules in the form Call Customer Function Î001â. This is a special occurrence of the ABAP statement Call. Go to item Exit_SAPLVV01_ 001, which you need to enhance for the Customer Master outbound example of an IDOC extension. In the ALE-function module MASTERIDOC_CREATE_DEBMAS, the statement CALL Customer Function 001 is translated in the background to call component EXIT_SAPLVV01_001. Although this function exit can be edited using transaction SE37, you will use a simpler approach.
    When you use SAP enhancements and their components, you manage them with an SAP object known as a project, which is like an envelope containing the selected enhancements and their components. A project can be used to control the execution of components and to transport them to other clients and instances in SAP. Basically, the process involves creating a project, including enhancements and components that are to be enhanced, editing the components, and then activating the project. The following process creates a project for our example Customer Master IDOC extension:
    • Execute transaction CMOD.
    • Enter name of project, say CSTMAST1.
    • Click on Create.
    • Enter a description of the project.
    • Save.
    • Click on SAP Enhancements.
    • Enter VSV00001 for Enhancement.
    • Save.
    Once youâve created the project, edit the function exit components and activate the project. Remember that the code in the function exit enhancement will execute only if the project is activated. In fact, this is a convenient SAP enhancements feature, whereby the work in progress (developing code in the customer function) will not affect users of that application. When the code is completed, the project can be activated so the enhanced functionality takes effect. It can also be deactivated for maintenance.
    As mentioned earlier, customer functions (function exits) are embedded in ALE function modules and can be used to influence the creation and modification of IDOC data on an outbound application or to post additional or modified IDOC data to an inbound R/3 application. Function exits are similar to regular function modules, with import/export parameters, tables (internal tables), and exceptions.
    The two important factors to consider while developing the customer function are:
    1. The point in the ALE function module where the function exit occurs
    2. The data made available by the customer function that can be modified or posted to the R/3 application, based on the direction.
    Because some function modules have several customer functions, it is critical to choose the function exit best suited for that particular enhancement. Do not attempt to perform activities that the function exit is not designed for. The importance of this point is illustrated by the following description of enhancing function modules for outbound and inbound ALE interfaces.
    Outbound interfaces. In an outbound ALE interface you use function exits (customer functions) to populate additional segments created by an IDOC extension or to modify the existing IDOC data segments as per business requirements. Previously, you identified that enhancement VSV00001 has a component EXIT_SAPLVV01_001 (function exit), which can be used for populating the additional data segment Z1SADRX that you created in the IDOC extension ZDEBMASX (IDOC type ZDEBMASZ, based on Basic IDOC type DEBMAS02). You also learned that the ALE function module that calls this function exit is MASTERIDOC_CREATE_DEBMAS, which has a statement Call Customer Function 001.
    Browse the function module MASTERIDOC_CREATE_DEBMAS using transaction SE37. You will find that this customer function is invoked for every segment of IDOC type DEBMAS02. In fact, the function exit is called soon after the creation of an existing segment has been populated with data and appended to the IDOC data table (internal table). Also, the function exit is exporting the message type, IDOC type, and the segment name and is importing the IDOC extension type. It is also passing the IDOC data internal table. This indicates that the ALE function module is allowing you to populate additional segments for every existing segment and modify the existing segmentâs data.
    Letâs write ABAP/4 code to accomplish the task of populating IDOC segment Z1SADRX with a contact personâs business address:
    • From SE37, display function module MASTERIDOC_CREATE_ DEBMAS.
    • Find Customer Function 001.
    • Double-click on 001.
    • The function EXIT_SAPLVV01_001 will be displayed.
    • Double-click on INCLUDE ZXVSVU01.
    • You will be asked to create a new include object. Proceed as desired.
    • Enter code (as in Listing 1).
    • Be sure to perform a main program check (Function Module -> Check -> main program) and extended program check (Function module -> Check -> Extended check).
    Now that you have extended the IDOC and enhanced the ALE function module based on the requirements for the contact personâs business address on the Customer Master, letâs test the interface. You should create a logical system and define a port for this interface. You should also configure the Customer Distribution Model to indicate that message type DEBMAS is being distributed to this logical system. The only difference in configuration between a regular outbound ALE interface and an enhanced one is the partner profile definition. While maintaining the outbound parameters of the partner profile, make sure the IDOC type is ZDEBMASZ. The fields for Basic IDOC type and extension type are automatically populated with DEBMAS02 and ZDEBMASX, respectively.
    To maintain the contact personâs business address of a customer:
    • Use transaction BD12 or from BALE go to Master Data ->Customer -> Send and send that Customer Master record by executing the transaction after filling in the relevant fields such as customer number, message type, and logical system.
    • Use transaction WE02 or WE05 to verify the IDOC created. You should see the new segment Z1SADRX populated with the correct data.
    Reward if Helpful.

  • Urgent  -   How to create IDOC

    Hi all,
    I need step by step documentation to create IDOC.
    points will be assigned.
    thanks
    andrea

    Hi ,
    There are basically two types of IDOCs:- Basic IDOCs and Extended IDOCs
    Basic IDOC type defines the structure and format of the business document that is to be exchanged between two systems.
    Extending the functionality by adding more segments to existing Basic IDOCs.
    Creation of IDOC
    To Create Idoc we need to follow these steps:
    Create Segment ( WE31)
    Create Idoc Type ( WE30)
    Create Message Type ( WE81)
    Assign Idoc Type to Message Type ( WE82)
    Creating a Segment
    Go to transaction code WE31
    Enter the name for your segment type and click on the Create icon
    Type the short text
    Enter the variable names and data elements
    Save it and go back
    Go to Edit -> Set Release
    Go thro' this link:-
    http://help.sap.com/saphelp_46c/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
    Regards,

  • SD How to create IDoc once Sales Order Invoice (Billing) has been created ?

    Hi,
    How to create IDoc once Sales Order Invoice (Billing) has been created ?
    I.e Once you click on save button of Invoice , IDoc Should genrate Automatically.
    Thanks

    Hello,
    Go to T.code VV31 and select the billing output type and select the access sequence required and in the details screen of create condition records give all the required entries for eg: may be Billing Type, Sales Organsiation etc.and in the medium choose the option as 6(EDI) and time select as 4 that is immediately after saving the document.Also please ensure that particular partners for whom idoc should be generated they need to have partner profile setup with the billing message types. Hope this helps.

  • How to create IDOC

    <b> HI ,
       USING ALE I WANT TO TRANSFER MATERIAL DATA , FOR THIS I HAV CREATED THE RFC PATH FOR RECEIVER AND SENDER .
    USING MATMAS I transfered it  ,
    But I want to create an idoc for this , Is there any way to create an idoc for any data transfer . If yes then wt's the congiguration .. Tell me about the steps for creating idoc  ..
    Regards
    Naren
    </b>

    HI,
    Follow below steps to create custom IDOC.
    1.Create segments through transaction WE31.
    2.Create IDoc Type through transaction WE30 by attaching created segments.
    3.Message type through transaction WE81.
    4.Link Idoc and message type in WE82 transaction.
    Check the transaction WEDI for ALE settings
    Check these links for more details on IDoc's:
    ALE/ IDOC
    http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
    http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
    http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
    http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
    http://www.sapgenie.com/sapedi/index.htm
    http://www.sappoint.com/abap/ale.pdf
    http://www.sappoint.com/abap/ale2.pdf
    http://www.sapgenie.com/sapedi/idoc_abap.htm
    http://help.sap.com/saphelp_erp2005/helpdata/en/0b/2a60bb507d11d18ee90000e8366fc2/frameset.htm
    http://help.sap.com/saphelp_erp2005/helpdata/en/78/217da751ce11d189570000e829fbbd/frameset.htm
    http://www.allsaplinks.com/idoc_sample.html
    http://www.sappoint.com/abap.html
    http://help.sap.com/saphelp_erp2004/helpdata/en/dc/6b835943d711d1893e0000e8323c4f/content.htm
    http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
    http://edocs.bea.com/elink/adapter/r3/userhtm/ale.htm#1008419
    http://www.netweaverguru.com/EDI/HTML/IDocBook.htm
    http://www.sapgenie.com/sapedi/index.htm
    http://www.allsaplinks.com/idoc_sample.html
    ALE/ IDOC/ XML
    http://www.sapgenie.com/sapgenie/docs/ale_scenario_development_procedure.doc
    http://www.thespot4sap.com/Articles/SAP_XML_Business_Integration.asp
    http://help.sap.com/saphelp_srm30/helpdata/en/72/0fe1385bed2815e10000000a114084/content.htm
    IDOC Convertion
    /people/kevin.wilson2/blog/2005/12/07/changing-fields-in-an-idoc-segment
    http://www.intelligententerprise.com/channels/applications/feature/archive/kasturi.jhtml
    IDOC Convertion
    /people/kevin.wilson2/blog/2005/12/07/changing-fields-in-an-idoc-segment
    http://www.intelligententerprise.com/channels/applications/feature/archive/kasturi.jhtml
    Njoy SAP

Maybe you are looking for