Declare deep structure with se11

Hi,
I would like to create a new deep structure with a table type component with se11 transaction, not a nested structure.
I know it is possible to do that with Abap but I need to do this with se11 because it has to be accessible from some reports and some function modules as export parameters.
Thanks.

Hello Juan
If you use a DB table name as TYPE for your structure field is is always a structure but not a table type.
The only difference between DB tables and structures is that you can save records in DB tables.
Instead of the DB table name you need the name of a table type which has the DB table as line type.
Example: Structure has two fields
KUNNR (of TYPE kunnr)
DATA   (of TYPE trty_knb1 => table type for KNB1)
Now you can define a table type having the line structure shown above.
Regards
  Uwe

Similar Messages

  • Declaring deep structures in OOP

    Hello experts,
    I would like to ask for your help in solving a problem, i'm currently stuck at this and can't proceed with the requirement.
    I would like to declare a deep structure in a table and was able to come up with this in procedural programming:
    tables: zsd_output_net.
    data: begin of t_table_structure occurs 0.
              include structure zsd_output_net.
    data end of t_table_structure.
    types: begin of t_output_all,
                  bukrs type anla-bukrs,
                  out_table like t_table_structure occurs 0,
    end of t_output_all.
    data: gt_output_all type standard table of t_output_all with header line,
          wa_out_table like line of t_table_structure.
    This worked and I was able to append entries to table out_table. However, I'm having trouble translating this to OOP since OOP does not support declaration with "OCCURS".
    Here's what I came up in OOP:
    data: begin of t_table_structure.
               include structure zsd_output_net.
    data end of t_table_structure.
    types: begin of t_inner_table,
                in_table like t_table_structure,
    end of t_inner_table.
    types: begin of t_output_all,
                bukrs type anla-bukrs,
                out_table type t_inner_table initial size 1,
               end of t_output_all.
    data: gt_output_all type standard table of t_output_all,
          wa_output_all type t_output_all,
          gt_inner_table type standard table of t_inner_table,
          wa_inner_table type t_inner_table,
          wa_out_table like t_table_structure.
    This did not work because out_table just became a structure and not a table in a table. What should I do so that I would get the same effect as with structural programming?

    what I came up in OOP:
    data: begin of t_table_structure.
    include structure zsd_output_net.
    data end of t_table_structure.
    types: begin of t_inner_table,
    in_table like t_table_structure,
    end of t_inner_table.
    data :gt_inner_table type standard table of t_inner_table,
            wa_inner_table type t_inner_table.
    types: begin of t_output_all,
    bukrs type anla-bukrs,
    out_table type gt_inner_table ,
    end of t_output_all.
    data: gt_output_all type standard table of t_output_all,
    wa_output_all type t_output_all,
    wa_out_table like t_table_structure.

  • Se11 structure with se11 table type included

    Hi ABAP Gurus,
    in order to pass a complex datastructure by RFC I want to create a new structure via SE11 which includes in addition to some normal fields an field which represents a table of a certain type. Therefore I created a table type and tried to include that in the structure definition but without success. Any ideas of how I can create such a 'non-flat' structure in the ABAP dictionary ?
    I know that such a thing can be declared as a type in ABAP, but I'm not sure if I can do it in the dictionary.
    Any reply is very appreciated,
    Best regards, Philipp

    Hi,
    You can insert structure into the table, and vice versa is not possible.
    If you want to insert structure GO to Se11 -> provide table name -> chnage/create -> edit -> include -> insert -> provide the strcuture you want to include.
    Thanks,
    Sriram Ponna.

  • Problem with deep structure in OO Context

    Dear All
    As we know deep structures with occurs 0 cannot be declared in Object Oriented context (will give a syntax error). Can some1 please suggest a workaround. I need to declare the following structure in a BADI implementation. But it is a deep structure & gives a syntax error.
    BEGIN OF WI
    OCCURS 0,
    MINDX LIKE SY-INDEX, "Index Merkmal
    WINDX LIKE SY-INDEX, "Index in Datentabelle
    WSELE TYPE C, "Kz. selektiert
    WOHNE TYPE C, "Kz. ohne Wertedefinition
    WWERT TYPE C, "Kz. weitere Werte vorhanden
    ATSON TYPE C, "Kz. Sonderwerte erlaubt
    ESWRT TYPE C, "Kz. Eingeschränkter Wertebereich
    SSTRG TYPE C, "Kz. Stringsuche
    STATU TYPE C, "Status
    ATWRT LIKE CAWN-ATWRT, "Wert sprachneutral
    ATFLV LIKE CAWN-ATFLV, "intern von
    ATFLB LIKE CAWN-ATFLB, "intern bis
    ATAWE LIKE CAWN-ATAWE, "abw. Einheit
    ATAW1 LIKE CAWN-ATAW1, "abw. Einheit bis
    ATCOD LIKE CAWN-ATCOD, "Operator-Ident.
    ATTLV LIKE CAWN-ATTLV, "Toleranz von
    X TYPE C,
    ATTLB LIKE CAWN-ATTLB, "Toleranz bis
    ATPRZ LIKE CAWN-ATPRZ, "Angabe in %
    ATINC LIKE CAWN-ATINC, "Schrittweite
    ATAUT LIKE AUSP-ATAUT, "Author
    WSDEF LIKE CAWN-ATSTD, "Kz. Std.-Wert
    ATZHL LIKE AUSP-ATZHL, "Zähler AUSP
    TXTNR LIKE CAWN-TXTNR, "Text-Nr.
    WTZHL LIKE CAWN-ATZHL, "Zähler CAWN
    AENNR LIKE CAWN-AENNR, "Änderungsnr.
    DATUV LIKE CAWN-DATUV, "Datum von aus Änderungsnr.
    ATZHH LIKE CAWN-ATZHH, "Hierarchie: ATZHL des Parent
    ATWHI LIKE CAWN-ATWHI, "Hierarchie: ATZHL ist Parent
    ATVPL LIKE CAWN-ATVPL, "Kz. Vorplanung
    NATWRT LIKE CAWN-ATWRT, "Sprachneutraler Wert
    CATWRT LIKE CAWN-ATWRT, "CHAR-Wert in DDB
    CATFLV LIKE CAWN-ATFLV, "NONCHAR-Wert in DDB
    KNOBJ LIKE CAWN-KNOBJ, "Beziehungswissen
    KNPRE TYPE C, "KNART: Precondition
    KNACT TYPE C, "KNART: Action
    KNPRO TYPE C, "KNART: Procedure
    VL TYPE VALUE_DESCRIPTION OCCURS 5,
        est_atwrt like ausp-atwrt,      "Eingabestring    (für EH&S) 4.0c
    END   OF WI.
    Help needed urgently!!
    Regards
    Sudhir

    Declare TYPES statement.
    types: BEGIN OF WI,
    MINDX LIKE SY-INDEX, "Index Merkmal
    WINDX LIKE SY-INDEX, "Index in Datentabelle
    WSELE TYPE C, "Kz. selektiert
    WOHNE TYPE C, "Kz. ohne Wertedefinition
    WWERT TYPE C, "Kz. weitere Werte vorhanden
    ATSON TYPE C, "Kz. Sonderwerte erlaubt
    ESWRT TYPE C, "Kz. Eingeschränkter Wertebereich
    SSTRG TYPE C, "Kz. Stringsuche
    STATU TYPE C, "Status
    ATWRT LIKE CAWN-ATWRT, "Wert sprachneutral
    ATFLV LIKE CAWN-ATFLV, "intern von
    ATFLB LIKE CAWN-ATFLB, "intern bis
    ATAWE LIKE CAWN-ATAWE, "abw. Einheit
    ATAW1 LIKE CAWN-ATAW1, "abw. Einheit bis
    ATCOD LIKE CAWN-ATCOD, "Operator-Ident.
    ATTLV LIKE CAWN-ATTLV, "Toleranz von
    X TYPE C,
    ATTLB LIKE CAWN-ATTLB, "Toleranz bis
    ATPRZ LIKE CAWN-ATPRZ, "Angabe in %
    ATINC LIKE CAWN-ATINC, "Schrittweite
    ATAUT LIKE AUSP-ATAUT, "Author
    WSDEF LIKE CAWN-ATSTD, "Kz. Std.-Wert
    ATZHL LIKE AUSP-ATZHL, "Zähler AUSP
    TXTNR LIKE CAWN-TXTNR, "Text-Nr.
    WTZHL LIKE CAWN-ATZHL, "Zähler CAWN
    AENNR LIKE CAWN-AENNR, "Änderungsnr.
    DATUV LIKE CAWN-DATUV, "Datum von aus Änderungsnr.
    ATZHH LIKE CAWN-ATZHH, "Hierarchie: ATZHL des Parent
    ATWHI LIKE CAWN-ATWHI, "Hierarchie: ATZHL ist Parent
    ATVPL LIKE CAWN-ATVPL, "Kz. Vorplanung
    NATWRT LIKE CAWN-ATWRT, "Sprachneutraler Wert
    CATWRT LIKE CAWN-ATWRT, "CHAR-Wert in DDB
    CATFLV LIKE CAWN-ATFLV, "NONCHAR-Wert in DDB
    KNOBJ LIKE CAWN-KNOBJ, "Beziehungswissen
    KNPRE TYPE C, "KNART: Precondition
    KNACT TYPE C, "KNART: Action
    KNPRO TYPE C, "KNART: Procedure
    VL TYPE table of VALUE_DESCRIPTION,est_atwrt like ausp-atwrt, "Eingabestring (für EH&S) 4.0c
    END OF WI.
    types: t_wi type standard table of wi.
    data: wa type wi,
            t_itab type t_wi.

  • Regarding creation of dynamic deep structure

    Hi all,
    I have to construct the dynamic deep structure.
    for example,
    With the help of information about address and t_table, i have to create the deep structure on runtime.
    In one case i need to create the deep strcuture with address alone and in another case i need to create the deep structure with address and t_table.
    DATA : begin of address ,
        address type string ,
        end of address.
    data : begin of t_tab  ,
      name(10) type c,
      age type i,
      address like address,
      end of t_tab,
      t_table like Table of t_tab.
    data: BEGIN OF wa_vig,
       details1 like address,
       details2 like t_table,
       END OF wa_vig.
    data: BEGIN OF wa_vig,
       details1 like address,
       END OF wa_vig.
    Please guide me, how should i acheive this with the help of dynamic declarion .
    regards
    Vignesh

    Hi All,
    I will be happy if i can acheive this using RTTS concept.
    Regards
    Vignesh

  • Structure with a string field as parameter in FM

    Hi,
    I have a requirement wherein based on some id which is the import paramter (table) i have to fetch some text of type string n pass as an export paramater. it has to be a table since for each id there wil a text associated with it.
    For this i have declared a structure with two fields, one client and the other, the text type string.
    While trying to activate my fm, it says that italicsthe structure should be a flat type. You cannot use internal tables. string, references etcitalics
    Please provide a solution.
    Regards,
    herwin.

    Hi Vikranth,
    ya using char or lchar would be one option and the other would be the use of the table type in the the import/export parameters. That worked without giving me that warning message and was able to execute my code properly with the desired output.
    Regards,
    Herwin.
    Edited by: Herwin Wilmet Dsouza on May 11, 2010 12:18 PM

  • How to use STRANS to translate XML to ABAP with deep structure

    every experts, I want to use Tcode: STRANS to translate XML to ABAP, But it does not work well,
    here is XML code,I want to translate this XML into an an Inter table gt_orders with deep structure of oeb, and colum oeb is also and intertable,how can I do this.
    <?xml version="1.0" encoding="gb2312" ?><axmt410><ObjectID>setSalesOrder</ObjectID><azp01>000000</azp01><oea00>1</oea00><ta_oeaecn>SO-140227-3041</ta_oeaecn><oea03>25325017</oea03><oea02>2014-02-27 17:44:44.0</oea02><ta_oea002>2763.0</ta_oea002><ta_oea001>0.0</ta_oea001><oea14></oea14><oea15>25325017</oea15><oea23>RMB</oea23><oeaconf>S3</oeaconf><oea10></oea10><oeaud01>null</oeaud01><ta_oea007></ta_oea007><oea25>101</oea25><ta_oea008>0</ta_oea008><ta_oea009>null</ta_oea009><oeauser>Hanjingya</oeauser><ta_oeanday>2014-02-27 17:44:44.991</ta_oeanday><ta_oeamday>2014-02-28 08:30:14.866</ta_oeamday><ta_oeacday>2014-02-28 08:30:14.866</ta_oeacday><oeaud02>0</oeaud02><ta_oea030>null</ta_oea030><oeb><oeb03>1</oeb03><oeb04>7400208249</oeb04><oeb05>PCS</oeb05><oeb17>921.0</oeb17><oeb13>921.0</oeb13><oeb15></oeb15><oeb12>5</oeb12><oeb09>990001</oeb09><ta_oeb001></ta_oeb001><ta_oeb002>Yunnan</ta_oeb002><ta_oeb003>address1</ta_oeb003><ta_oeb004>zhangdagui、zhanglan</ta_oeb004><ta_oeb005>15974749998、15987782008</ta_oeb005><ta_oeb006>address and street</ta_oeb006><oebud01></oebud01></oeb><oeb><oeb03>2</oeb03><oeb04>7400208250</oeb04><oeb05>PCS</oeb05><oeb17>921.0</oeb17><oeb13>921.0</oeb13><oeb15></oeb15><oeb12>5</oeb12><oeb09>990001</oeb09><ta_oeb001></ta_oeb001><ta_oeb002>Yunnan</ta_oeb002><ta_oeb003>address2</ta_oeb003><ta_oeb004>zhangdagui、chenlan</ta_oeb004><ta_oeb005>15974749998、15987782008</ta_oeb005><ta_oeb006>address and street</ta_oeb006><oebud01></oebud01></oeb></axmt410>
    I write these codes in SAP XSLT  editor
    <xsl:transform xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
       <xsl:output encoding="iso-8859-1" indent="yes" method="xml" version="1.0"/>
       <xsl:strip-space elements="*"/>
       <xsl:strip-space elements="*"/>
       <xsl:template match="/">
         <asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
           <asx:values>
             <ORDERS>
               <xsl:apply-templates select="//axmt410"/>
             </ORDERS>
           </asx:values>
         </asx:abap>
       </xsl:template>
       <xsl:template match="axmt410">
         <OBJECTID>
           <xsl:value-of select="ObjectID"/>
         </OBJECTID>
         <AZP01>
           <xsl:value-of select="azp01"/>
         </AZP01>
         <OEA00>
           <xsl:value-of select="oea00"/>
         </OEA00>
         <TA_OEAECN>
           <xsl:value-of select="ta_oeaecn"/>
         </TA_OEAECN>
         <OEA03>
           <xsl:value-of select="oea03"/>
         </OEA03>
         <OEA05>
           <xsl:value-of select="oea05"/>
         </OEA05>
         <OEA02>
           <xsl:value-of select="oea02"/>
         </OEA02>
         <TA_OEA002>
           <xsl:value-of select="ta_oea002"/>
         </TA_OEA002>
         <TA_OEA001>
           <xsl:value-of select="ta_oea001"/>
         </TA_OEA001>
         <OEA14>
           <xsl:value-of select="ora14"/>
         </OEA14>
         <OEA15>
           <xsl:value-of select="ora15"/>
         </OEA15>
         <OEA23>
           <xsl:value-of select="ora23"/>
         </OEA23>
         <OEACONF>
           <xsl:value-of select="oeaconf"/>
         </OEACONF>
         <OEA10>
           <xsl:value-of select="ora10"/>
         </OEA10>
         <OEAUD01>
           <xsl:value-of select="oeaud01"/>
         </OEAUD01>
         <TA_OEA007>
           <xsl:value-of select="ta_oea007"/>
         </TA_OEA007>
         <OEA25>
           <xsl:value-of select="ora25"/>
         </OEA25>
         <TA_OEA008>
           <xsl:value-of select="ta_oea008"/>
         </TA_OEA008>
         <TA_OEA009>
           <xsl:value-of select="ta_oea009"/>
         </TA_OEA009>
         <TA_OEA013>
           <xsl:value-of select="ta_oea013"/>
         </TA_OEA013>
         <TA_OEA014>
           <xsl:value-of select="ta_oea014"/>
         </TA_OEA014>
         <TA_OEA015>
           <xsl:value-of select="ta_oea015"/>
         </TA_OEA015>
         <TA_OEA016>
           <xsl:value-of select="ta_oea016"/>
         </TA_OEA016>
         <TA_OEA017>
           <xsl:value-of select="ta_oea017"/>
         </TA_OEA017>
         <TA_OEA018>
           <xsl:value-of select="ta_oea018"/>
         </TA_OEA018>
         <TA_OEA019>
           <xsl:value-of select="ta_oea019"/>
         </TA_OEA019>
         <TA_OEA020>
           <xsl:value-of select="ta_oea020"/>
         </TA_OEA020>
         <TA_OEA021>
           <xsl:value-of select="ta_oea021"/>
         </TA_OEA021>
         <TA_OEA022>
           <xsl:value-of select="ta_oea022"/>
         </TA_OEA022>
         <TA_OEA028>
           <xsl:value-of select="ta_oea028"/>
         </TA_OEA028>
         <OEAUSER>
           <xsl:value-of select="oeauser"/>
         </OEAUSER>
         <TA_OEANDAY>
           <xsl:value-of select="ta_oeanday"/>
         </TA_OEANDAY>
         <TA_OEAMDAY>
           <xsl:value-of select="ta_oeamday"/>
         </TA_OEAMDAY>
         <TA_OEACDAY>
           <xsl:value-of select="ta_oeacday"/>
         </TA_OEACDAY>
         <OEAUD02>
           <xsl:value-of select="oeaud02"/>
         </OEAUD02>
         <TA_OEA030>
           <xsl:value-of select="ta_oea030"/>
         </TA_OEA030>
         <OEB>
           <xsl:for-each select="oeb">
             <OEB03>
               <xsl:value-of select="oeb03"/>
             </OEB03>
             <OEB04>
               <xsl:value-of select="oeb04"/>
             </OEB04>
             <OEB05>
               <xsl:value-of select="oeb05"/>
             </OEB05>
             <OEB17>
               <xsl:value-of select="oeb17"/>
             </OEB17>
             <OEB13>
               <xsl:value-of select="oeb13"/>
             </OEB13>
             <OEB15>
               <xsl:value-of select="oeb15"/>
             </OEB15>
             <OEB12>
               <xsl:value-of select="oeb12"/>
             </OEB12>
             <OEB09>
               <xsl:value-of select="oeb09"/>
             </OEB09>
             <TA_OEB001>
               <xsl:value-of select="ta_oeb001"/>
             </TA_OEB001>
             <TA_OEB002>
               <xsl:value-of select="ta_oeb002"/>
             </TA_OEB002>
             <TA_OEB003>
               <xsl:value-of select="ta_oeb003"/>
             </TA_OEB003>
             <TA_OEB004>
               <xsl:value-of select="ta_oeb004"/>
             </TA_OEB004>
             <TA_OEB005>
               <xsl:value-of select="ta_oeb005"/>
             </TA_OEB005>
             <TA_OEB006>
               <xsl:value-of select="ta_oeb006"/>
             </TA_OEB006>
             <OEBUD01>
               <xsl:value-of select="oebud01"/>
             </OEBUD01>
           </xsl:for-each>
         </OEB>
       </xsl:template>
    </xsl:transform>
    and I use below ABAP program for a test, but the items from XML can not translate into Interner table gt_orders-oeb[]
    TYPE-POOLS abap.
    CONSTANTS gs_file TYPE string VALUE 'C:\temp\order02.xml'.
    * This is the structure for the data from the XML file
    TYPES:
       BEGIN OF typ_s_oeb,
         oeb03     TYPE string,    "
         oeb04     TYPE string,    "
         oeb05     TYPE string,    "
         oeb17     TYPE string,    "
         oeb13     TYPE string,   
         oeb15     TYPE string,   
         oeb12     TYPE string,    "
         oeb09     TYPE string,    "
         ta_oeb001 TYPE string,    "
         ta_oeb002 TYPE string,    "
         ta_oeb003 TYPE string,    "
         ta_oeb004 TYPE string,    "
         ta_oeb005 TYPE string,    "
         ta_oeb006 TYPE string,    "
         ta_oeb013 TYPE string,    "
         ta_oeb014 TYPE string,    "
         ta_oeb015 TYPE string,    "
         ta_oeb016 TYPE string,    "
         ta_oeb017 TYPE string,    "
         ta_oeb018 TYPE string,    "
         ta_oeb019 TYPE string,    "
         ta_oeb020 TYPE string,    "
         ta_oeb021 TYPE string,    "
         ta_oeb022 TYPE string,    "
         oebud01   TYPE string,    "
       END OF typ_s_oeb.
    TYPES: typ_t_oeb TYPE TABLE OF typ_s_oeb WITH KEY oeb03.
    TYPES:
       BEGIN OF typ_s_order,
         objectid   TYPE string,   "
         azp01      TYPE string,   "
         oea00      TYPE string,   "
         ta_oeaecn  TYPE string,   "
         oea03      TYPE string,   "
         oea02      TYPE string,   "
         ta_oea002  TYPE string,   "
         ta_oea001  TYPE string,   "
         oea14      TYPE string,   "
         oea15      TYPE string,  
         oea23      TYPE string,   "
         oeaconf    TYPE string,   "
         oea10      TYPE string,   "
         oeaud01    TYPE string,   "
         ta_oea007  TYPE string,   "
         oea25      TYPE string,   "
         ta_oea008  TYPE string,   "
         ta_oea009  TYPE string,   "
         oeauser    TYPE string,   "
         ta_oeanday TYPE string,   "
         ta_oeamday TYPE string,   "
         ta_oeacday TYPE string,   "
         oeaud02    TYPE string,   "
         ta_oea030  TYPE string,   "
         ta_oea013  TYPE string,
         ta_oea014  TYPE string,
         ta_oea015  TYPE string,
         ta_oea016  TYPE string,
         ta_oea017  TYPE string,
         ta_oea018  TYPE string,
         ta_oea019  TYPE string,
         ta_oea020  TYPE string,
         ta_oea021  TYPE string,
         ta_oea022  TYPE string,
         ta_oea025  TYPE string,
         oeb        TYPE typ_t_oeb,
        END OF typ_s_order.
    * Table for the XML content
    DATA: gt_itab       TYPE STANDARD TABLE OF char2048,
           gs_itab       LIKE LINE OF gt_itab.
    * Table and work ares for the data from the XML file
    DATA: gt_orders     TYPE STANDARD TABLE OF typ_s_order,
           gs_orders     TYPE typ_s_order.
    * Result table that contains references
    * of the internal tables to be filled
    DATA: gt_result_xml TYPE abap_trans_resbind_tab,
           gs_result_xml TYPE abap_trans_resbind.
    * For error handling
    DATA: gs_rif_ex     TYPE REF TO cx_root,
           gs_var_text   TYPE string.
    * Get the XML file from your client
    CALL METHOD cl_gui_frontend_services=>gui_upload
       EXPORTING
         filename                = gs_file
       CHANGING
         data_tab                = gt_itab
       EXCEPTIONS
         file_open_error         = 1
         file_read_error         = 2
         no_batch                = 3
         gui_refuse_filetransfer = 4
         invalid_type            = 5
         no_authority            = 6
         unknown_error           = 7
         bad_data_format         = 8
         header_not_allowed      = 9
         separator_not_allowed   = 10
         header_too_long         = 11
         unknown_dp_error        = 12
         access_denied           = 13
         dp_out_of_memory        = 14
         disk_full               = 15
         dp_timeout              = 16
         not_supported_by_gui    = 17
         error_no_gui            = 18
         OTHERS                  = 19.
    IF sy-subrc <> 0.
       MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    ENDIF.
    * Fill the result table with a reference to the data table.
    * Within the XSLT stylesheet, the data table can be accessed with
    * "IPERSON".
    GET REFERENCE OF gt_orders INTO gs_result_xml-value.
    gs_result_xml-name = 'ORDERS'.
    APPEND gs_result_xml TO gt_result_xml.
    * Perform the XSLT styleshee
    TRY.
         CALL TRANSFORMATION zfx_so_xml_to_abap
         SOURCE XML gt_itab
         RESULT (gt_result_xml).
       CATCH cx_root INTO gs_rif_ex.
         gs_var_text = gs_rif_ex->get_text( ).
         MESSAGE gs_var_text TYPE 'S'.
    ENDTRY.
    LOOP AT gt_orders INTO gs_orders.
    ENDLOOP.

    The simplest way seems to me is to use a XSL file for that. The <xsl:output> attributes doctype-system and doctype-public generate the DTD declaration <!DOCTYPE YOUR_ROOT SYSTEM "yourDTDfile.dtd"> and <!DOCTYPE YOUR_ROOT PUBLIC "yourDTDfile.dtd">, respectively.
    When calling transformerInstance.transform() the XSLT processor performs the identity transformation - it just copies elements, attributes, content, processing instructions and comments to the result stream.
    If you're using an xsl file for your transformation already, simply add <xsl:output doctype-system="yourDTDfile.dtd"/> to your existing XSL file.
    If you're only using the identity transformation you'd need to change the line of code where you obtain the transformer instance from the TransformerFactory to:
    t_factory.newTransformer(new StreamSource("test.xsl"));
    and use this as test.xsl:
    <?xml version="1.0"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
       <xsl:output doctype-system="yourDTDfile.dtd"/>
       <!-- this is the identity transformation -->
       <xsl:template match="*|@*|comment()|processing-instruction()|text()">
          <xsl:copy>
             <xsl:apply-templates select="*|@*|comment()|processing-instruction()|text()"/>
          </xsl:copy>
       </xsl:template>
    </xsl:stylesheet>Good luck.

  • Problem with deep structure in Adobe Forms

    Hi ,
    I am converting smartform into adobe forms. While converting the program code in the code initialization of the smart forms also get transformed to adobe forms the problem is my internal table is of type deep structure while passing it through the tables parameter i am getting error in adobe forms .But while passing the internal table through import parameter its not giving error.The same code works fine with smartforms. I dont know why its not taking the structure of internal table in adobe forms properly .It happens only for deep strucure formal normal tables it works fine in table parameters .If any one has come across this scenario please share your ideas.
    Best Regards,
    Sreeram

    If I were you, I would never do this through any program. The only secure, reliable way is to rewrite everything by your own hands. Even if we could argue, your way works as well (and could be faster at the beginning), at the firt moment you will be asked to perform any tiny change in this "imported" thing, you will cry your eyes out (and understand why it is the only useful way to rewrite everything manually).
    regards Otto

  • How to read  xml with deep  structure into intarnal table.

    Hi,
    Could you pls any body provide xslt code for deep structure  convert into internal table.
    sample xml file:
    - <ns0:CREATIONOFCONTRACT xmlns:ns0="http://BPCreationXSD.CreationOfContract">
    - <CREATIONOFCONTRACTDATA>
      <RequestType>L0011</RequestType>
      <ApplicationId>AN-12</ApplicationId>
      <LoanId>QO-22</LoanId>
    - <Borrowerguarantorinfo>
      <Borrowerbpno>101020</Borrowerbpno>
      <Co-borrower1BPNo>101021</Co-borrower1BPNo>
      <Co-borrower2BPNo>101022</Co-borrower2BPNo>
      <Guarantor1BPNo>101023</Guarantor1BPNo>
      <Guarantor2BPNo>101024</Guarantor2BPNo>
      <Branch>New Delhi</Branch>
      </Borrowerguarantorinfo>
    - <Loaninfo>
      <Applicationtype>Fresh</Applicationtype>
      <Purposeofloan>Home Purchase</Purposeofloan>
      <Securedunsecuredflag>Secured</Securedunsecuredflag>
      <Loantype>HL with MRTA</Loantype>
      <Loancurrency>INR</Loancurrency>
      <Loanproduct>MaxiHome Loan Package</Loanproduct>
      <Loanscheme>MaxiHome ZEC</Loanscheme>
      <Loanamount>1500000.00</Loanamount>
      <Loantenure>60</Loantenure>
      <Tiered>No</Tiered>
      </Loaninfo>
      <Periodfrom>01/07/2009</Periodfrom>
      <Periodto>16/09/2019</Periodto>
      <RateType>Fixed</RateType>
      <Ratecode>10.25</Ratecode>
      </CREATIONOFCONTRACTDATA>
      </ns0:CREATIONOFCONTRACT>

    Hi Ramesh,
    Thanks for the info,but I found lot of tables unfortunately I am not getting the value for radio buttons. Also I found a FM FIELD_SELECTION_CUSTOMIZE , IMPORT_DYNPRO etc which will call that screen based on profile but it will not store data any where. I found several tables like TCATS, TFAWC, TFAWF, TFAWT etc.But I am not getting the value for raduio buttons.
    Thanks & Regards,
    Nagaraj Kalbavi

  • Selecting into an internal table with deep structure

    Hi,
    I am working in ECC 6.0 now and it is giving me a syntax error for the following code.
    types: tt_bdc type standard table of bdcmsgcoll
          with default key.
    data:  begin of t_test occurs 0,
            vbeln like vbak-vbeln,
            tab   type tt_bdc,
          end of t_test.
    select vbeln from vbak into table t_test
      where aedat > '20081101'.
    The error is:
    +The work area (or internal table) "T_TEST" is not flat, or contains
    reference or internal tables as components . components. components.
    components. components.+
    I've done this in countless other programs in the past.  How can I use a deep structure this way?  What am I missing?
    Thanks very much!

    Will this solve ur requirement -
    types: tt_bdc type standard table of bdcmsgcoll
          with default key.
    data:  begin of t_test occurs 0,
            vbeln like vbak-vbeln,
            tab   type tt_bdc,
          end of t_test.
    select vbeln from vbak into
      CORRESPONDING FIELDS OF TABLE t_test
      where aedat > '20081101'.

  • Creating dynamic internal table with deep structure

    Hi all,
    I need to create an internal table with deep structure dynamically. I've already created tables with method 'create_dynamic_table' but I'm struggling with the deep structure.
    I would need an internal table with the following structure:
    DATA: BEGIN OF lt_t1,
    s1 TYPE REF TO data,
    s2 TYPE REF TO data,
    END OF lt_t1.
    S1 and S2 have to be tables.
    It might be possible with RTTS but all the examples in the forums (that I've found so far) are related to at least one DDIC-structure. And that's my problem because both tables are created during runtime.
    Thank you in advance
    Nicola

    Hi Frédéric,
    I hope my english is good enough to explain it correctly:
    We use a function builder for SEM-BPS which copies data from one Cube to another. This Cube is transactional, so you can't easily read a structure out of DDIC.
    The export parameter of this function builder is a table with type 'any table'.
    Until today we used a fixed definition e.g.:
      TYPES:
        BEGIN OF xtyp_chas,
         /sie/sr_ocomp TYPE /b52/oisr_ocomp,
         /sie/ts_03psp TYPE /b52/oits_03psp,
         0activity     TYPE /bi0/oiactivity,
         0acty_elemt   TYPE /bi0/oiacty_elemt,
         0costelmnt    TYPE /bi0/oicostelmnt,
         0co_area      TYPE /bi0/oico_area,
         0creditor     TYPE /bi0/oicreditor,
         0currency     TYPE /bi0/oicurrency,
         0curtype      TYPE /bi0/oicurtype,
         0db_cr_ind    TYPE /bi0/oidb_cr_ind,
         0fiscper      TYPE /bi0/oifiscper,
         0fiscper3     TYPE /bi0/oifiscper3,
         0fiscyear     TYPE /bi0/oifiscyear,
         0metype       TYPE /bi0/oimetype,
         0network      TYPE /bi0/oinetwork,
         0part_actty   TYPE /bi0/oipart_actty,
         0part_cctr    TYPE /bi0/oipart_cctr,
         0piobjsv      TYPE /bi0/oipiobjsv,
         0project      TYPE /bi0/oiproject,
         0unit         TYPE /bi0/oiunit,
         0vtdetail     TYPE /bi0/oivtdetail,
         0vtstat       TYPE /bi0/oivtstat,
         0vtype        TYPE /bi0/oivtype,
         0bus_area     TYPE /bi0/oibus_area,
         0cashdetail   TYPE /bi0/oicashdetail,
         0cashtype     TYPE /bi0/oicashtype,
         0comp_code    TYPE /bi0/oicomp_code,
         0coorder      TYPE /bi0/oicoorder,
         0cs_dimen     TYPE /bi0/oics_dimen,
         0cs_unit      TYPE /bi0/oics_unit,
         0int_bus      TYPE /bi0/oiint_bus,
         0part_abcpr   TYPE /bi0/oipart_abcpr,
         0part_coord   TYPE /bi0/oipart_coord,
         0part_wbsel   TYPE /bi0/oipart_wbsel,
         0piovalue     TYPE /bi0/oipiovalue,
         0profit_ctr   TYPE /bi0/oiprofit_ctr,
         0ps_obj       TYPE /bi0/oips_obj,
         0statussys0   TYPE /bi0/oistatussys0,
         zfbwheroj     TYPE /bic/oizfbwheroj,
        END   OF xtyp_chas,
        BEGIN OF xtyp_kyfs,
          0amount      TYPE /bi0/oiamount,
          0quantity    TYPE /bi0/oiquantity,
          zf03oaws     TYPE /bic/oizf03oaws,
          zf03oqty     TYPE /bic/oizf03oqty,
          zf03ozsta    TYPE /bic/oizf03ozsta,
        END OF xtyp_kyfs,
        BEGIN OF xtyp_zf03g003,
          s_chas TYPE xtyp_chas,
          s_kyfs TYPE xtyp_kyfs,
        END   OF xtyp_zf03g003,
        xtyp_zf03g003_t TYPE HASHED TABLE OF xtyp_zf03g003
                          WITH UNIQUE KEY s_chas.
    DATA: lt_ibm_data TYPE xtyp_zf03g003_t,
          ls_ibm_data TYPE xtyp_zf03g003.
    So one table (s_chas) contains the characteristics of the Cube and the other (s_kyfs) contains the keyfigures. That's exactly the format we need for the export parameter. At the end of the program, we use the following coding to fill the export table (eto_chas):
    loop at lt_ibm_data into ls_ibm_data.
      collect ls_ibm_data-s_chas into eto_chas.
    endloop.
    So in this moment I give this table the structure that is needed to move the data into the cube. I can't change the requirement because it is a standard interface.
    I would like to change that coding to be dynamically. Because if somebody changes a charasteristic or a keyfigure in the cube, we would have to change the function builder too. I don't think that the SEM-BPS department will let us know every time they've changed something anyway.
    So I hope that my explanation wasn't too confusing
    Nicola

  • ALV dynamic with deep structure

    Hi All,
    I need to program an ALV Report with a deep structure based on a outbound proxy  structure, so I should pass to ALV function or ALV Method a dynamic table and a dynamic structure.
    I tried to do it but I got a dump using this function module REUSE_ALV_GRID_DISPLAY with these parameters: STRUCTURE_NAME and T_OUTTAB.
    Please, some suggestions about this.
    Thanks in advance.
    Alexis.

    Hi Vasanth
    this is my example:
    DATA: tl_proxy TYPE TABLE OF zpidt_operacion.
    DATA: sl_proxy TYPE zpidt_operacion.
    sl_proxy-dt_operacion-dt_cab_operacion-vkorg = '0001'.
    APPEND sl_proxy TO tl_proxy.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
      EXPORTING
        i_callback_program = sy-repid
        i_structure_name   = 'ZPIDT_OPERACION'
      TABLES
        t_outtab           = tl_proxy
      EXCEPTIONS
        program_error      = 1
        OTHERS             = 2.
    Please, could you tell me how I have to do it.
    Thanks,
    Alexis.

  • Read Table with Key in a Deep Structure

    Hello,
    I'd like to read a table while comparing a value in a deep structure.  So in the following code the key ID is a deep structure within cs_purchase_order_message-purchase_order-item-value.
    For some reason code check returns no errors with the following code, but I get a short dump with a syntax error on id-value when I execute the code.
    read table cs_purchase_order_message-purchase_order-item assigning <fs_xml_item> with key id-value = <fs_item>-number_int.
    How do I use "with key" when the value is in a deep structure?
    Thanks,
    Matt

    Refer to example link below:
    http://sap.ittoolbox.com/groups/technical-functional/sap-dev/read-deep-structure-736023.
    Regards,
    Venkat.

  • BLFA1 with deep structures in release 6/RFBIKR00

    We are trying to upload VENDOR data in release 6 using RFBIKR00 program but when analizing the BLFA1 structure we found that is changed
    there is a deep structure WRF_LFA1_BI_STY (for example)
    that we do not know how to represent in the TXT file
    We are not using this structure, but we asume that we have to send it as part of BLFA1 record.
    Can somebody send me an example of how to write data for this BLFA1 record with this structure.
    In advance Thanks.

    Hi Kiril,
    I see what approach you are thinking about and your explanation is not idiotic at all
    What I understand is that you have 6 Tables with loads of foreign keys and you want to avoid heaps of "loop at" or "select" coding-nestings. What I don't understand is, why would you want to reproduce the logic of your tables, which you already have, upon your context? I'm not seeing through what your application works like for an end user yet, maybe that's why I'm confused.
    In my opinion you won't have many options to avoid some coding which contains a bit of complex Loop-At or Join-Clauses. But if you build a class and outsource the code in some public static methods, this won't be as much work as you think, assuming you make the methods a bit dynamic and reusable.
    Cheers, Lukas

  • How to work with deep structure

    Hi !
    I wanted to ask how to loop, modify, append tables located in deep structures. Deep structures i mean, structures consist of columns which are tables ( usualy exists in user-exit). Please give examples and reference help to this subject.
    Thanks
    Moshe

    Hi
    TYPES: T_TYBSEG TYPE STANDARD TABLE OF BSEG.
    DATA: BEGIN OF T_DOCUMENTS,
            HEADER LIKE BKPF,
            ITEMS  TYPE T_TYBSEG,
          END   OF T_DOCUMENTS.
    DATA: T_BSEG TYPE T_TYBSEG,
          T_BKPF TYPE STANDARD TABLE OF BKPF WITH HEADER LINE.
    Append data:
    SELECT * FROM BKPF INTO TABLE T_BKPF WHERE ....
    LOOP AT T_BKPF.
      MOVE-CORRESPONDING T_BKPF TO T_DOCUMENTS-HEADER.
       SELECT * FROM BSEG INTO TABLE T_BSEG where ....
    Here it uses the table t_bseg to append the items to T_DCOUMENTS-ITEMS: it's very import to clear this table before appending records.
    If you don't clear the internal table you'll append several times the same records.
       REFRESH T_DOCUMENTS-ITEMS.
       APPEND LINES OF T_BSEG TO T_DOCUMENTS-ITEMS.
       APPEND T_DOCUMENTS.
    ENDLOOP.
    Read DATA:
      LOOP AT T_DOCUMENTS.
        LOOP AT T_DOCUMENTS-ITEMS INTO BSEG.
        ENDLOOP.
      ENDLOOP.
    OR
      READ TABLE T_DOCUMENTS (WITH KEY ...) (INDEX <INDEX>).
      IF SY-SUBRC = 0.
         LOOP AT T_DOCUMENTS-ITEMS INTO BSEG.
         ENDLOOP.  
      ENDIF.
    Modify
      LOOP AT T_DOCUMENTS.
        LOOP AT T_DOCUMENTS-ITEMS INTO BSEG.
          IF BSEG-GJAHR = '2005'.
            BSEG-GJAHR = '2006'.
          ENDIF.
          MODIFY T_DOCUMETS-ITEMS FROM BSEG.
        ENDLOOP.
      ENDLOOP.
    So if you use this type of structure the table haven't an headerline, so you always use a workarea to read an update the data.
    Max
    Message was edited by: max bianchi

Maybe you are looking for