Idoc segment with 1000 char

Hi
I have a custom IDOC created with one of the segments being 1000 char. The data is populated through a custom program.
In WE02 I am unable to see all the 1000 char. Even if I export the IDOC to a spreadsheet or word doc it does not show completely all the characters.
I am able to use FM IDOC_Read_Completely to read the IDOC and view the complete segment but I am looking for a standard transaction.
Any inputs on how the I can view all the data in the segment in a standard trx ?.

hi,
the data in the edid4-sdata is filled with according to Segement field lenght.
you can directly read from table with Idoc number from table EDID4 in se16.
or we05 or we02 or we19 or BD87 transactions.
prabhudas

Similar Messages

  • How to map IDoc segment with qualifiers

    Hi everyone!
    I have the following problem: In an IDoc of type DESADV01 there can be several segments of type E2EDS01. Each segment has a different qualifier, which is the value of the field SUMID in this case. My target structure (type EDIFACT) now has several segments, each again with a sort of qualifier. Now I have to map the values of certain source segments to the respective target segments.
    Exaple (in XML format):
    Source
      <E1EDS01 SEGMENT="1">
        <SUMID>021</SUMID>
        <SUMME>0000000001.000</SUMME>
        <SUNIT>KGM</SUNIT>
      </E1EDS01>
      <E1EDS01 SEGMENT="1">
        <SUMID>022</SUMID>
        <SUMME>0000000001.000</SUMME>
        <SUNIT>KGM</SUNIT>
      </E1EDS01>
    Target
      <S_MEA>
        <C_C502>
          <D_6313>N</D_6313>
        </C_C502>
        <C_C174>
          <D_6411>KGM</D_6411>
          <D_6314>1</D_6314>
        </C_C174>
      </S_MEA>
      <S_MEA>
        <C_C502>
          <D_6313>G</D_6313>
        </C_C502>
        <C_C174>
          <D_6411>KGM</D_6411>
          <D_6314>1</D_6314>
        </C_C174>
      </S_MEA>
    (i have omitted several details here, but I'm only interested in the general procedure anyway).
    So in general the source segment with qualifier "021" should be mapped to a target structure with qualifier "N" etc.
    How can this be done using standard XI mapping techniques?
    Regards, Joerg

    Hi everyone!
    Thanks for your input data - unfortunately this wasn't quite what I was looking for. However I thik I solved my original problem and I just wanted to share this solution with you - maybe it helps others, maybe some of you have suggestions what I could do differently.
    To sum up the requirement: There can be multiple input segments, each with a certain qualifier. These input segments have to be mapped to the target segments, respectively - however, the qualifiers change. There can be several segments with qualifiers that do not match the requirement, and required segments might be missing.
    So here's what I came up with:
    Use the qualifier of the source segments as an input to a <b>FixValues</b> function. In this function, map the desired qualifiers to the value <b>true</b>, use <b>false</b> as the default value. Map the output of the <b>FixValues</b> function to a <b>createIf</b> function and use this to create the desired output segment. This way, for each of the required segments, one target segment will be created. All other segments (with unwanted qualifiers) will be removed.
    So far, this technique worked for me - do you have improvements/suggestions?
    Regards, Joerg

  • Read IDOC segment with qualifier

    Hi,
    I need to read data into a workArea from a IDOC segment which has Qualifiers for it.
    The IDOC or BASIC type is   DELVRY03.
    Segment                                E1EDT13.
    Qualifier                                 006
    Thx in advance
    Mac

    DATA:
    lx_e1edt13      TYPE e1edt13.
    FIELD-SYMBOLS:
      <fs_idoc_data>  LIKE LINE OF idoc_data.
    LOOP AT idoc_data ASSIGNING <fs_idoc_data> WHERE segnam = 'E1EDT13'.
      lx_e1edt13 = <ls_idoc_data>-sdata.
      IF lx_e1edt13-qualf = '006'.
    your code
    or get the data into internal table as per your requiremnt
      ENDIF.
    ENDLOOP.

  • IDOC segment with multiple lines

    Hi,
    I have a requirement where I need to populate the multiple lines in one segment without getting created multiple segment.
    I am generating material with multiple line data in the additional data using MATMAS05 IDOC for segment E1MTXHM but its generating multiple sub segments. I need to have multiple lines in one segment and not multiple segment.
    Please let me know how to achieve multiple lines in one segment.
    Thanks & Regards,
    Rayan

    Hi Subas,
    I haven written any code as I am triggering IDOC through BD10. This is a testing requirement and we need any IDOC irresepective of MATMAS, DEBMAS, CREMAS etc etc which can have multiple lines in a single segemnt.
    Sample IDOC:
    Z2XXXXD000                                       00002300002203CTDI-PA
    90210 Testing Address
    CA
    Beverly Hills
    United States                                                             
    Z2XXXD000                                       00002400002203ON TESTING
    303 308 5319                                                                               
    Z2XXXXC000                                       00002500000102Z004E          
    Actually every IDOC I am generating is getting multiple segment and each segment holding one line and my requirement is that all the lines should be get accomadated in a single segment like the above sample IDOC.
    Actually each segment has segment name and IDOC no. followed by field values but my requirement is within one segment name and IDOC no. all the field values get accomadated. Hope you got the understanding of what my requirement is? Please guide me how to trigger multiple line in a segment.
    Thanks & Regards,
    Rayan

  • Dump while extracting IDOC segments with FM 'EDI_SEGMENTS_GET_ALL'

    Hi All,
    I am fetching all the available segments for a perticular IDOC with the help of function module "EDI_SEGMENTS_GET_ALL".
    In production i am getting dump because of large no. of segments for the IDOC.
    The short dump is as follows:
    Runtime error          TSV_TNEW_PAGE_ALLOC_FAILED
           Opgetreden op   11.11.2008 om 23:11:41
    No storage space available for extending the internal table.
    What happened?
    You attempted to extend an internal table, but the required space was
    not available.
    Error Analysis
    The internal table (with the internal identifier "IT_11") could not be
    enlarged any further. To enable error handling, the internal table had
    to be deleted before this error log was formatted. Consequently, if you
    navigate back from this error log to the ABAP Debugger, the table will
    be displayed there with 0 lines.
    When the program was terminated, the internal table concerned returned
    the following information:
    Line width: 1062
    Number of lines: 351368
    Allocated lines: 351368
    New no. of requested lines: 8 (in 1 blocks)
    Information about breaking off
    The termination occurred in the ABAP program "SAPLEDI1" in
    "EDI_SEGMENTS_GET_ALL".
    The main program was "SAPMSSY1 ".
    The termination occurred in line 39 of the source code of the (Include)
    program "LEDI1U03"
    of the source code of program "LEDI1U03" (when calling the editor 390).
    Is there any other function module or method sothat i can fetch all the segments without causing dump.
    Thanks in advance
    Taj

    Try to call fm  EDI_DOCUMENT_CLOSE_READ after fm call EDI_SEGMENTS_GET_ALL?
    * procedure to read idoc (open - read - close)
      call function 'EDI_DOCUMENT_OPEN_FOR_READ'
      if sy-subrc = 0.
       " <<<<< clear your internal table
        call function 'EDI_SEGMENTS_GET_ALL'
    endif.
    * close idoc after usage
      call function 'EDI_DOCUMENT_CLOSE_READ'

  • I need to use 1000 char in my  idoc, so how to define this in my table

    Hi,
    I am receiving a 1000 char from an external system. I should receive this through a separate segment in my idoc.But while creating a table with CHAR 1000, i am getting activation error.what could be the solution .idoc can transfer only CHAR data type. so i CANT use string.i tried using IDOCLINE data element. but for data type CHAR, only 255 length is allowed.
    Regards,
    Nakkeeran

    HI,
    what error you are getting and what declaration you are doing , if you can share then some one can help you.
    Basically there should not be any problem for declaring that.
    Try this
    data : Itab type table of  IDOCLINE .
    and this is not 255 chars it is 1000 chars long and will suit your req.
    Hope this helps you
    Raj.
    Edited by: Raj on Dec 16, 2008 3:57 AM

  • Difference between IDOC segments starting with E1 and E2

    Hi all,
    What is the difference between IDOC segments starting with E1 and E2
    Thanks

    Hi Kajol,
    A segment in SAP system is technically implemented as three physically separate pieces.
    1. Segment type u2013 the version-independent name of the segment. Standard SAP names begin with E1.
    2. Segment definition u2013 contains the fields which represent the data. Its maximum size is 1000 bytes. Standard SAP definitions start with E2 with the last 3 characters implying the version of the segment.
    3. Segment documentation u2013 represents the data dictionary documentation for each field in the segment definition. It begins with E3 for SAP provided segments.
    For example, E1EDP01 will be your segment type and E2EDP01003 will be your segment definition with 003 indicating its version.By default, the segment type points to the latest segment definition.
    Kindly do reward points if you find this as useful.
    Regards,
    Aswin

  • IDOC: How to create child segment with abap code.

    Hi,
    I'am trying to write an abap code to create segments for an Idoc which structure is the following:
    ZLE_00060_DLVY
    >  E1EDL20
    > Z1DEL_CONS
    >Z1DEL_MAT_HEADER
    > Z1DEL_MAT
    > E1EDL20RET2
    > E1EDL22
    > E1EDL21
    > E1EDL23
    > E1EDL51
    I receive a sintax error: Error in IDoc with status 26 .
    Checking the result I note all segment at the same level and an error about the segment E1EDL22
    EDI: Syntax error in IDoc (segment cannot be identified)
         Message no. E0078
    Diagnosis
         The segment E1EDL22 does not occur at the current level of the basic
         type DELVRY05 (extension ZLE_00060_DLVY).
         This error can have several reasons:
         o   The segment E1EDL22 is assigned to a group whose header segment does
             not occur.
         o   The segment E1EDL22 does not exist in the syntax description of the
             basic type DELVRY05 (extension ZLE_00060_DLVY).
         o   The sequence of segments in the group in which the segment appears
             is incorrect.
         Previous errors ('mandatory' segment or group missing) may be due to
         this error.
    Procedure
         Please check the IDoc or the syntax description of the basic type
         DELVRY05 (extension ZLE_00060_DLVY).
    After the error I have:
    data records
    E1EDL20
    Z1DEL_CONS
    Z1DEL_MAT_HEADER
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    Z1DEL_MAT
    E1EDL20RET2
    E1EDL22
    E1EDL21
    Abap code:
            idoc_data-segnam = 'Z1DEL_CONS'.
            idoc_data-sdata = s_z1del_cons.
            append idoc_data.
              idoc_data-segnam = 'Z1DEL_MAT_HEADER'.
              s_z1del_mat_header-tsegment = 'MATERIAL'.
              idoc_data-sdata = s_z1del_mat_header.
              append idoc_data.
            clear idoc_data-sdata.                            <<<<<<<<<<< how to indent the structure because this is a child.
             idoc_data-sdata = s_Z1DEL_MAT.
             idoc_data-segnam = 'Z1DEL_MAT'.
             append idoc_data.
             idoc_data-segnam = 'E1EDL20RET2'.
             idoc_data-sdata = s_E1EDL20RET2.
             append idoc_data.
             clear idoc_data.
             idoc_data-segnam = 'E1EDL22'.
             idoc_data-sdata = s_e1edl22.
             append idoc_data.
             clear idoc_data.
             idoc_data-segnam = 'E1EDL21'.
             idoc_data-sdata = s_e1edl21.
             append idoc_data.
    Any help will be well appreciated.
    Thanks in advance.
    Regards,
        Giovanni

    Hi,
    following in debugging mode the abap code of the INCLUDE ZXTRKU02 where is defined the TABLES IDOC_DATA STRUCTURE  EDIDD, I find that all field of the table IDOC_DATA are not set. More exactly my expectation is to find values for SEGNUM, HLEVEL, PSGNUM.
    In a few words I need to execute an enhancement, via abap code, of the struscure of the idoc before sending it out since I have a requirement to test this enhancement in my XI environment, receiving as input this ideoc modified.
    Then, I need to add a new segment and one child.
    Any suggestion will be well appreciated.
    Thanks in advance.
    Regards,
        Giovanni

  • Problem with creation of IDOC Segment Type

    Hi,
    I tried to create IDOC Segment Type Z1LFA1 but error
    prompted "Structure Z1LFA1 already exist.".
    I tried deleting it at se11  but prompted
    "You cannot edit object R3TR TABL Z1LFA1 with the
    standard editor"                          
    and at sm30-TADIR, but prompted
    with "Cannot delete object directory entry, object exists."
    How will go about this??
    Please help!
    Thanks!

    hi,
    yup, tried doing that on we31 but the segment does not exist yet.
    we're currently upgrading from 4.6 to ecc, I think the structure
    was tranferred to our ecc client but the idoc segment and idoc type were not. I'll just have to transport it then.
    Thanks!

  • How to map idoc segment field E1IDB02-FIIKONTO with BSEG-ESRNR.

    Hi,
    I have searched for lot of threads in the forum , and also i tried myself but i am not able to map this fields segment with my logic, so please anyone kindly contribute in mapping idoc segment field  with the logic given below:
    idoc type :PAYEXT  outbound idoc.
    message type: PEXR2002
    This is my logic: i need to populate the ISR number(BSEG-ESRNR  ) in idoc segment field( E1IDB02-FIIKONTO)
    DATA : str1 TYPE string,
          len1  TYPE i,
          len2  TYPE i,
          str2  TYPE string,
          str3  TYPE string.
    str1 = '01-1234-4'. ---> BSEG-ESRNR  "ISR Subscriber Number
    REPLACE FIRST OCCURRENCE OF '-' IN str1 WITH '_'.
    REPLACE ALL OCCURRENCES OF  '-' IN str1 WITH space.
    CONDENSE str1.
    len1 = STRLEN( str1 ).
    IF len1 LT '9'.
    len2 = '9' - len1.
    CASE len2.
       WHEN '1'.
         REPLACE ALL OCCURRENCES OF '_' IN str1 WITH '00'.
       WHEN '2'.
         REPLACE ALL OCCURRENCES OF '_' IN str1 WITH '000'.
       WHEN '3'.
         REPLACE ALL OCCURRENCES OF '_' IN str1 WITH '0000'.
       WHEN '4'.
         REPLACE ALL OCCURRENCES OF '_' IN str1 WITH '000000'.
       WHEN OTHERS.
    ENDCASE.
    ELSEIF len1 EQ '9'.
    REPLACE ALL OCCURRENCES OF '_' IN str1 WITH '0'.
    ELSEIF len1 GT '9'.
    REPLACE ALL OCCURRENCES OF '_' IN str1 WITH space.
    CONDENSE str1.
    ENDIF.
    Thanks in Advance.

    Resolved.

  • What is max no, min no asked when attaching a segment with the idoc in we30

    hi,
    when creating a new idoc i am attaching a segment with the new idoc its asking for Maximum number, minimum number . what is this maximum and minimum number.

    hi preetha,
    Segm.type       Z1xxxxH    
    mandaotry segment Y                           
    Minimum number  1          
    Maximum number  1          
    Parent segment             
    Hier.level      1          
    min and max are 1 for header denoted as XXXXH
    this is one segment that is assigned to the idoc.
    in defining idoc u need to assign the number of header and child segments..
    a child segment will be like this                                   
    segment.type       ZXXXXD             
    minimum number  1                   
    maximum number  6                   
    parent segment  ZxxxxH             
    hier.level      2                   
    zxxxd is the child segment with 6 entry levels
    this tells u the maximum number for the child level              
    means more than 6 are not to be see if u open the idoc in we19.
    all in
    this idoc has 1 parent segment (one entry)
                  1 child segment  (6 entries)
    hope this helps
    regards,
    Vijay

  • 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 report with domain lookup

    Does anyone know of a report that will list an IDOC's segments with the qualifier texts expanded.
    Example:
    The E1EDK14-QUALF segment belongs to domain EDI_QUALFO (IDOC qualifier organization) which has 19 values in its value table.
    I'd like a report that would print the IDOC segment by segment along with the qualifiers value text.

    Hello Ed,
    Use function module 'IDOCTYPE_READ_COMPLETE'. This will give you a list of segments with description, a list of fields with description, a list of domain values for the fields and a list of message types connected to that IDOC type.
    You need to populate PI_IDOCTYP with the IDOC type and possibly PI_CIMTYP with the extension, if you are using an extension with that type. If not, Idoc Type is sufficient.
    Regards,
    Michael

  • Find the idoc segment link with Sap Table

    Dear Abaers,
    I am new to Idoc. i have one Idoc (Orders01) for creating sales order.
    I had seen the t-codes WE 30 and WE 60 to know the field description.
    The fielddescription shows names like name1 name2 ort01 etc.
    i want to know what are the db tables involved for that particular idoc segment.
    Thanks in Advance,
    Arati

    Hi Arati,
    to get the description name:
    WE30 transaction and check the segments name available.
    With the segment name, go to WE31 and check the fields used and column 'Data element'.
    Double-click in data element (or inform in se11), you have the description value of the field.
    About the tables involved:
    Click in 'Where use list' os this data element.

  • Changing the content in an IDOC segment at runtime with EXIT_SAPLF050_006

    I am using IDOC FIDCC2 type. I have to change some values of the segment E1FISEG.
    In EXIT: EXIT_SAPLF050_006, I am making these changes, but after the execution.
    When the IDOC is generated, I noticed that the value of this field is not updated in the IDOC segment.
    I'll have something misconfigured?
    The code is as follows:
    CREATE OBJECT wa_obj.                                         "Creando el Objeto.
    BREAK dchirra.
    IF idoc_contrl-mescod EQ 'MPA'.                            "Chequeando Variante lógica de mensaje valida.
      LOOP AT idoc_data INTO e_idoc_data WHERE segnam = 'E1FISEG'.
        CLEAR: ze1fiseg, ze1finbu.                                  "Limpiando estructuras.
        MOVE e_idoc_data-sdata TO ze1fiseg.                         "Llenando estructura del Segmento.
        CALL METHOD wa_obj->get_data                                "Llamando a estractor del objeto.
          EXPORTING
            reserve    = ze1fiseg-reserve                           "- Campo RESERVE.
            estructura = 'E1FISEG'                                  "- Estructura
          CHANGING
            ze1finbu   = ze1finbu                                   "- Segmento ZE1FINBU.
            ze1fiseg   = ze1fiseg.                                  "- Segmento ZE1FISEG.
    Buscando Segmentos Hijos.-
        LOOP AT idoc_data INTO e_idoc_data2 WHERE segnam = 'E1FINBU' AND psgnum = e_idoc_data-segnum.
          MOVE e_idoc_data2-sdata TO ze1finbu.                      "Llenando estructura del Segmento.
          CALL METHOD wa_obj->get_data                              "Llamando a estractor del objeto.
            EXPORTING
              reserve    = ze1finbu-reserve                         "- Campo RESERVE.
              estructura = 'E1FINBU'                                "- Estructura
            CHANGING
              ze1finbu   = ze1finbu                                 "- Segmento ZE1FINBU.
              ze1fiseg   = ze1fiseg.                                "- Segmento ZE1FISEG.
          e_idoc_data2-sdata = ze1finbu.                            "Data Segmento.
          MODIFY idoc_data FROM e_idoc_data2.                       "Modificando data del IDOC
        ENDLOOP.
        e_idoc_data-sdata = ze1fiseg.                               "Data Segmento.
        MODIFY idoc_data FROM e_idoc_data.                          "Modificando data del IDOC
      ENDLOOP.
    ENDIF.

    IF idoc_contrl-mescod EQ 'MPA'
    is this condition is getting satisfied everytime since you are modifying only on this condition.
    I couldnot understand you comments as its not in English, however i tried understanding your logic,seems correct .
    Please check whether condition mentioned above is getting satisfied or not?
    Regards,
    Mayank

Maybe you are looking for

  • Email will Not Sync

    My Yahoo email has stopped syncing to my Droid X. Has worked fine for 8 months until 2 days ago.  

  • Mac Book Pro Time

    So every time i logout, shutdown, or restart my MacBook Pro resets the time back to January 1, 2008. Although it says that the date is Tuesday, January 2, 2001? So when i tried to open Date and Time Preferences it just doesn't start up. No matter how

  • Inventory snapshot scenario - Data load frequency?

    Hi, I have gone through "How to" document for inventory snapshot extraction. Here are few questions for which I could not find answers in the document - 1. Process 1 loads initial stock using BX data source into ODS. 2. Then Process 2 - I assume ther

  • Doubt in BDC session method program

    hi, I tried to execute this program..i am getting error in the bolded line..can you give suggestions.. REPORT ZPRABA1. TABLES:LFA1. DATA:BEGIN OF IT_ITAB OCCURS 0, LIFNR LIKE LFA1-LIFNR, LAND1 LIKE LFA1-LAND1, NAME1 LIKE LFA1-NAME1, END OF IT_ITAB. D

  • Alarming bug in AIR SDK 4.0.0.1390, -useLegacyAOT no

    I've uploaded small testcase which does some simple testing of equivalence of fractions (by parsing Numbers, Strings, etc).  The testcase SWF passes when packaged without -useLegacyAOT no, but fails when using the new halfmoon compiler.  I've filed t