Changing Structure in Runtime(WAD)

Hi,
I have one infoprovider "INF" and query "QUERY1" with two structures "Strut1" and "Struct2" in infoprovider.
Can i swap between these two structures in the runtime using the same query and infoprovider. usng WAD custom developement.
Is there any standard command available to this...thanks in advance.
Thanks,
Damodhar.

Hi,
Changing of structures is not possible at query runtime, but what you can do is you can select the Elements of the structure during query runtime.If you are using Web Reports, you would just need to pass the Selection of the Structure element in the URL (helps you to construct the columns of your report)
So for your requirement create a single structure which includes the Columns from both structures and have then selected at runtime.
Regards,

Similar Messages

  • How to extend structures at runtime

    hello,
    is there any chance to
    extend a data structure at runtime?
    normally you define a structure with
    data: begin of x,
          field1 type c,
          field2 type n.
    data: end of x.
    this structure is the basis for your internal tables etc.
    it would be definitely nice to add a third field at runtime if it is needed.
    in other programming languages it would also be possible to add elements to an array. the question ist: how can i add fields to the structure dynamically?
    it could be useful for a lot of situations.
    dynamically generated fieldcatalogue for example.
    i think i could succeed in changing the structure by using field symbols in combination with dynamically creating data objects by the "CREATE DATA" statement.
    has anyone already done something similar?

    Hello Gideon,
    It is possible using ABAP runtime program generation like in code below.
    This program generate a dinamic ALV with N fields. There is a parameter where the user type how many fields he wants to display (or generate).
    Then form f_create_dynamic_table generate an internal table with N fields according to the number in the parameter.
    You can change the program to generate a dinamic structure if you want, in fact it already does it.
    Just cut and paste the program and execute in your system.
    Regards,
    Mauricio
    REPORT zasmm008.
    $$ Declarações -
    TYPE-POOLS:
      kkblo.    "Tipos para lista especial
    FIELD-SYMBOLS:
       TYPE table.
    PARAMETERS p_qtd TYPE i OBLIGATORY DEFAULT 10.
    $$ Eventos -
    INITIALIZATION.
      %_p_qtd_%_app_%-text = 'Dinamic fields quantity'.
    START-OF-SELECTION.
      CHECK p_qtd > 0 AND p_qtd < 100.
      PERFORM f_create_dynamic_table.
      PERFORM f_fill_dynamic_table.
      PERFORM f_create_alv.
    $$ Forms -
    *&      Form  f_create_dynamic_table
    FORM f_create_dynamic_table.
      DATA:
        lv_line           TYPE i,
        lv_word(72)       TYPE c,
        lv_form(30)       TYPE c VALUE 'TABLE_CREATE',
        lv_message(240)   TYPE c,
        lp_table          TYPE REF TO data,
        lp_struc          TYPE REF TO data,
        lv_name           LIKE sy-repid,
        lv_cont(02)       TYPE n,
        lv_lng            TYPE i,
        lv_typesrting(6)  TYPE c.
    The dynamic internal table stucture
      DATA: BEGIN OF lt_struct OCCURS 0,
              fildname(8) TYPE c,
              abptype TYPE c,
              length TYPE i,
            END OF lt_struct.
    The dynamic program source table
      DATA: BEGIN OF lt_inctabl OCCURS 0,
              line(72),
            END OF lt_inctabl.
    Sample dynamic internal table stucture
      DO p_qtd TIMES.
        ADD 1 TO lv_cont.
        CONCATENATE 'FIELD' lv_cont INTO lt_struct-fildname.
        lt_struct-abptype = 'C'.
        lt_struct-length = '4'.
        APPEND lt_struct.
      ENDDO.
    Create the dynamic internal table definition in the dyn. program
      lt_inctabl-line = 'PROGRAM ZDYNPRO.'.
      APPEND lt_inctabl.
      lt_inctabl-line = 'FORM TABLE_CREATE CHANGING P_TABLE P_STRUC.'.
      APPEND lt_inctabl.
      lt_inctabl-line = 'DATA: BEGIN OF DYNTAB OCCURS 0,'.
      APPEND lt_inctabl.
      LOOP AT lt_struct.
        lt_inctabl-line = lt_struct-fildname.
        lv_lng = strlen( lt_struct-fildname ).
        IF NOT lt_struct-length IS INITIAL .
          lv_typesrting(1) = '('.
          lv_typesrting+1 = lt_struct-length.
          lv_typesrting+5 = ')'.
          CONDENSE lv_typesrting NO-GAPS.
          lt_inctabl-line+lv_lng = lv_typesrting.
        ENDIF.
        lt_inctabl-line+15 = 'TYPE'.
        lt_inctabl-line+21 = lt_struct-abptype.
        lt_inctabl-line+22 = ','.
        APPEND lt_inctabl.
      ENDLOOP.
      lt_inctabl-line = 'END OF DYNTAB.'.
      APPEND lt_inctabl.
      lt_inctabl-line = 'DATA: POINTER TYPE REF TO DATA.'.
      APPEND lt_inctabl.
      lt_inctabl-line = 'CREATE DATA POINTER LIKE DYNTAB[].'.
      APPEND lt_inctabl.
      lt_inctabl-line = 'P_TABLE = POINTER.'.
      APPEND lt_inctabl.
      lt_inctabl-line = 'CREATE DATA POINTER LIKE LINE OF DYNTAB.'.
      APPEND lt_inctabl.
      lt_inctabl-line = 'P_STRUC = POINTER.'.
      APPEND lt_inctabl.
      lt_inctabl-line = 'ENDFORM.'.
      APPEND lt_inctabl.
      CATCH SYSTEM-EXCEPTIONS generate_subpool_dir_full = 9.
        GENERATE SUBROUTINE POOL lt_inctabl[] NAME lv_name
                 MESSAGE lv_message LINE lv_line WORD lv_word.
      ENDCATCH.
      PERFORM (lv_form) IN PROGRAM (lv_name) CHANGING lp_table lp_struc.
    Dynamic table in <tb> and its header line in <st>
      ASSIGN lp_table->*  TO .
    ENDFORM.                    " f_create_dynamic_table
    *&      Form  f_create_alv
    FORM f_create_alv.
      DATA:
        ls_layout    TYPE slis_layout_alv,
        lv_cont(02)  TYPE n,
        lt_fieldcat  TYPE slis_t_fieldcat_alv WITH HEADER LINE.
      DO p_qtd TIMES.
        CLEAR lt_fieldcat.
        ADD 1 TO lv_cont.
        CONCATENATE 'FIELD' lv_cont INTO lt_fieldcat-fieldname.
        CONCATENATE 'Campo' lv_cont INTO lt_fieldcat-seltext_s
                    SEPARATED BY space.
        lt_fieldcat-seltext_m = lt_fieldcat-seltext_s.
        lt_fieldcat-seltext_l = lt_fieldcat-seltext_s.
        lt_fieldcat-outputlen = 10.
        APPEND lt_fieldcat.
      ENDDO.
      ls_layout-zebra = 'X'.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
           EXPORTING
                is_layout     = ls_layout
                it_fieldcat   = lt_fieldcat[]
           TABLES
                t_outtab      =
           EXCEPTIONS
                program_error = 1
                OTHERS        = 2.
    ENDFORM.                    " f_create_alv
    *&      Form  f_fill_dynamic_table
    FORM f_fill_dynamic_table.
      DATA:
        lv_line(2)   TYPE n,
        lv_field(2)  TYPE n.
      DO 20 TIMES.
        ADD 1 TO lv_line.
        CLEAR lv_field.
        DO p_qtd TIMES.
          ADD 1 TO lv_field.
          ASSIGN COMPONENT lv_field OF STRUCTURE .
      ENDDO.
    ENDFORM.                    " f_fill_dynamic_table

  • [svn] 3839: Update the channel url to reflect the change in the runtime channel

    Revision: 3839
    Author: [email protected]
    Date: 2008-10-23 07:42:37 -0700 (Thu, 23 Oct 2008)
    Log Message:
    Update the channel url to reflect the change in the runtime channel
    Modified Paths:
    blazeds/branches/3.0.x/qa/apps/qa-manual/ajax/messaging/TextMessageRuntimeDest.html

    Many ways to do this. The easiest is to have a method in one of your classes that reads the data from the database and creates all the proper structure under a RootNode and then returns that RootNode.
    Whenever you want to refresh the tree, just call that method to recreate the root node (and all the underlying structure/nodes) and then re-set the root node of your tree model using the setRoot() method. That will cause it to refresh the display given the new root node.
    Once you have that working, you can get fancier and make it more efficient (only updating/firing events for the nodes that actually changed, etc).

  • The changes made in the WAD web template is not replicating on web browser

    Hi,
    We are using BI 7.0 WAD. Suppose if i create a one web template and if i run it ...it is working fine.
    If i change the present web template and if i do change anything on the present web template and if run this web template it is giving the previous result....it is not reflecting the present changes.
    The changes made in the WAD web template is not replicating on web browser result.
    I went to transaction SMICM, then choose "Goto" from the top menu. From there, go to HTTP Server Cache, then choose Invalidate, then choose Global in system. With this thing also it didnt slove.
    thanks

    Clear your browser cache also and see if the changes are visible.....
    Arun

  • Changing Images at Runtime...it's sending me nuts (I'm a newbie, go easy)

    Hi all,
    I am trying change images at runtime and quite frankly it's driving me nuts. I'm pretty new to Java and don't understand some of the principles but I'm trying. I have this code below, that loads up a few images. I want to be able to change some/all of these images either on a timed even or on a button press, but all the things I've tried don't work. Can someone offer me some help....thanks in advance
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    public class bc extends JFrame implements ActionListener {
         public static void main(String[] args) {new bc();}
         bc() {
              //setUndecorated(true); // - this removed the titlebar!
                    setTitle("BC...");
              setSize(350,125);
              setResizable(false);
              setLocation(50,50);
              setDefaultCloseOperation(EXIT_ON_CLOSE);
              setBackground(new Color(0,0,0));
              getContentPane().setBackground(new Color(255,255,255));
              JPanel hours = new JPanel();
              hours.setLayout(new GridLayout(4,2));
              hours.add(hour14);
              hours.add(hour24);
              hours.add(hour13);
              hours.add(hour23);
              hours.add(hour12);
              hours.add(hour22);
              hours.add(hour11);
              hours.add(hour21);
              JPanel mins = new JPanel();
              mins.setLayout(new GridLayout(4,2));
              mins.add(min14);
              mins.add(min24);
              mins.add(min13);
              mins.add(min23);
              mins.add(min12);
              mins.add(min22);
              mins.add(min11);
              mins.add(min21);
              JPanel secs = new JPanel();
              secs.setLayout(new GridLayout(4,2));
              secs.add(sec14);
              secs.add(sec24);
              secs.add(sec13);
              secs.add(sec23);
              secs.add(sec12);
              secs.add(sec22);
              secs.add(sec11);
              secs.add(sec21);
              JPanel helptext = new JPanel();
              helptext.setLayout(new GridLayout(4,2));
              helptext.add(new JLabel("8"));
              helptext.add(new JLabel("4"));
              helptext.add(new JLabel("2"));
              helptext.add(new JLabel("1"));
    //add action listenters
              changeImg.addActionListener(this);
              JPanel cp = new JPanel();
              cp.setLayout(new GridLayout(1,6));
              cp.setBackground(new Color(255,255,255));
              cp.add(hours);
              cp.add(mins);
              cp.add(secs);
              cp.add(helptext);
              cp.add(changeImg);
              setContentPane(cp);
              setVisible(true);
         public void actionPerformed(ActionEvent ae) {
              hour11.PaintOff(1);
              //JOptionPane.showMessageDialog(this, "changed");
              repaint();
    JPanel hour11 = new PaintOff(0);
    JPanel hour12 = new PaintOff(0);
    JPanel hour13 = new PaintBlank();
    JPanel hour14 = new PaintBlank();
    JPanel hour21 = new PaintOff(0);
    JPanel hour22 = new PaintOff(0);
    JPanel hour23 = new PaintBlank();
    JPanel hour24 = new PaintBlank();
    JPanel min11 = new PaintOff(0);
    JPanel min12 = new PaintOff(0);
    JPanel min13 = new PaintOff(0);
    JPanel min14 = new PaintOff(0);
    JPanel min21 = new PaintOff(0);
    JPanel min22 = new PaintOff(0);
    JPanel min23 = new PaintOff(0);
    JPanel min24 = new PaintOff(0);
    JPanel sec11 = new PaintOff(0);
    JPanel sec12 = new PaintOff(0);
    JPanel sec13 = new PaintOff(0);
    JPanel sec14 = new PaintOff(0);
    JPanel sec21 = new PaintOff(0);
    JPanel sec22 = new PaintOff(0);
    JPanel sec23 = new PaintOff(0);
    JPanel sec24 = new PaintOff(0);
    JButton changeImg = new JButton("change");
    }///---------This is my PaintOff class ---------------\\\
    import javax.swing.*;
    import java.awt.*;
    import java.awt.Image.*;
    public class PaintOff extends JPanel {
    Toolkit tk = Toolkit.getDefaultToolkit();
    public Image imgOff = tk.getImage("off.jpg");
    public Image imgOn = tk.getImage("on.jpg");
    public Image paintMe = tk.getImage("off.jpg");
         PaintOff(int a) {
              if(a == 1) {
                   vOn();
              } else {
                   vOff();
         public void vOn() {
            paintMe = imgOn;
         //JOptionPane.showMessageDialog(new bc(), "shown");
         public void vOff() {
            paintMe = imgOff;
         public void paintComponent(Graphics g) {
              g.drawImage(paintMe,0,0,this);
    }PaintBlank class is not included here, it's basically just the same as PaintOff but only has one image inside.
    When I try and compile this code, I get
    C:\jdk1.4\bin\bclock>javac bc.java
    bc.java:79: cannot resolve symbol
    symbol : method PaintOff (int)
    location: class javax.swing.JPanel
    hour11.PaintOff(1);
    ^
    1 error
    I don't understand this either, I've tried replacing "PaintOff(1)" with "vOn()" but I get the same error. This is baffling to be, as I thought that the hour11 would have access to all the methods inside the PaintOff class?
    Anyway, thanks for any help you guys give me!
    Cheers
    //Chris.

    Hi!
    Your problem is that you've used a widening conversion to convert from PaintOff to a JPanel. JPanel has no such method, and so the compiler is complaining that it can't find it.
    e.g
    public class NoCompile{
         public static void main(String args[]){
              One one = new Two();
              one.methTwo();
    public class Two extends One{
         public Two(){}
         public void methTwo(){
            System.out.println("Executed 2");
    public class One{
         public One(){}
         public void meth1(){}
    } will give you the same sort of error message. To make the compiler happy, use a cast.
    Now this will compile and gives the right result.
    public class NoCompile{
         public static void main(String args[]){
              One one = new Two();
              ((Two)one).methTwo();
    }So in your case, you want to do
    ((PaintOff)hour11).vOn();
    Does that help?
    :) jen

  • Changing picture at runtime using delphi

    Post Author: iman_400
    CA Forum: Other
    Please help me, is there anyway we can change picture at runtime using delphi 7.0 and CRXIR2?

    Hi, Lee;
    For the version of Crystal Reports that comes with .NET, you can use something like one of our samples shows:
    https://smpdl.sap-ag.de/~sapidp/012002523100006252822008E/net_win_smpl.exe
    Look for the sample, vbnet_win_DynamicImage.zip. It uses an ADO.NET dataset to change the image.
    For Crystal Reports XI R2 and Crystal Reports 2008, you can more directly change the image location using built in functionality.
    In the Designer, choose Insert > Picture. Choose a default image to show and save it. Right-click on it and select Format Graphic. Go to the Picture tab and click the formula button for Graphic location. Save the report.
    Then, at runtime you can populate the Formula with the new location for your image, either a URL or disk file location.
    See the following note for more information:
    [Image|https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/sdn_oss_boj_erq/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333233313338333333373334%7D.do]
    Best Regards,
    Jonathan

  • Change to the runtime the logon language with ABAP

    Hello,
    I have a  question.
    Is it possible to change to the runtime the logon language?
    With the URL-parameter example it worked.
    http://www.****bsp/sap/z_page/default.htm?sap-language=en
    But I need this in the event handler with ABAP coding.
    thanks Eren

    you can either use
    CL_HTTP_UTILITY->IF_HTTP_UTILITY~SET_REQUEST_URI
    uri = sap-language=FR
    or
    CL_HTTP_REQUEST->IF_HTTP_ENTITY~SET_FORM_FIELD
    name = sap-client
    value = FR
    or
    use
    SET LOCALE LANGUAGE 'S'. within your abap coding
    Regards
    Raja

  • Changes made in the WAD web template is not replicating on web browser

    Hi,
    We are using BI 7.0 WAD. Suppose if i create a one web template and if i run it ...it is working fine.
    If i change the present web template and if i do change anything on the present web template and if run this web template it is giving the previous result....it is not reflecting the present changes.
    The changes made in the WAD web template is not replicating on web browser result.
    Thanks in adv
    pinky

    Just to add.
    WAD templates are stored as HTML in the HTTP cache.
    Whenever you make changes to the template - it is good practice to delete / invalidate the HTTP Server cache.
    This can be done from
    SMICM --> Goto (menu bar ) --> HTTP Server cache --> Invalidate --> GLobal
    ust to make this thread complete..
    However this is usually done for 3.x web templates since they run off the ABAp stack - not too sure about the JAVA stack - guess portal cache has to be cleared too..

  • Change structure for list editing of functional location

    What is the significance of change structure for list editing (t code il04) of functional location?

    just enter the functional locations you need to create and descriptions and save

  • Tcode to view/change Structures

    Hi,
    I need to add new fields to VA05. OSS Note 350068 intructs to change Table VBMTV.  However, the system generates error message "VBMTV is a structure, not a table" when I tried viewing from SE16.
    What is the tcode to view change Structures?
    Thanks!

    VBMTV is a structure and not a table. In SE11 select radio button Data type and enter VBMTV in corresponding fields and click on display to view the contents of the structure.
    Regards,
    GSL.

  • To change table data runtime when dropdown item is changed

    Hi,
    I have two ui elements(Dropdown by index and table) in single view .
    I need to display table as per drondown index item selection. Means i have to change table data runtime when dropdown item is changed.Please help me in that .Please provide code for same.
    Regards,
    gurprit Bhatia

    Hello gurprit Bhatia,
    On the view create a new action. Fill only the Name and Text and leave the other items default.
    In this event you can populate the table fields.
    Bound this newly created action (event) to the onSelect property of the 'DropDownByIndex'.
    Regards,
    Patrick Willems

  • How to update toplink if i change structure table

    My situation the following :
    Step1:
    I add toplink into project then i add my methods.
    Step 2:
    I will change structure table.
    Step 3:
    How do i can update toplink which don't lost data.
    Please help me!!!

    The mapping tooling for TopLink/EclipseLink in JDeveloper, Eclipse IDE, and the standalone Workbench provide support for importing new table structures and then assiting you with updating your mappings to reflect the changes in the database and the corresponding changes you will make in the persistent domain model.
    Doug

  • Changing structure of tables

    Hi all,
    I would like to know whether it is possible to change the structure of tables in Visual Composer. As far as I know it is only possible to put characteristics and key figures in the colums of the table. However, I would like to put some characteristics in the rows of the table. Is this possible?
    Thanks in advance,
    Ralph

    If I understand you correctly, you are asking for a pivot control in VC, similar to the one in BW?
    Alas, there is no pivot control available in VC, but as long as you use e.g. MDX statements or BW queries and the dynamic port functionality (like in the adding columns), you can always add "rows". VC flattens the multidimensional result into a 2 dimensional.
    The number of rows itself is not limited.
    Other things known from WAD, like hierarchies in rows, automatic coloring, etc. is not available with the current version of VC.
    Hope this answers your question. If not, could you provide an example, what you would like to achieve?

  • Create Dynamic Structure at Runtime via ALV-Methods!

    Hi Experts,
    i try to create at the ABAP Runtime a new Structure.
    FOR EXAMPLE: I have a internal Table "database" and i dont know their Structure or Typ.
    MY Question: How can i get the structuretype for this internal Table "database" ??
                                    I thought that it is possible with ALV-Methods, but i dont find the right way.
    First Step:       I must get the structure of this internal Table.
    Second Step: I must create a workarea/ line of this internal Table, that i can work row for row with the table.
    Have someone an code example for me, because iám very confused about this Problem.
    With kind regards.
    Ersin Tosun

    Hello,
    For this specific requirement, SAP has provided RTTI class.
    Below is a code snippet for your ready reference. In this example we're trying to get the structure of the dynamic table <ITAB> whose structure is not defined till run-time.
    TYPE-POOLS: abap.
    PARAMETERS: p_table TYPE tabname.
    DATA: dref TYPE REF TO data.
    FIELD-SYMBOLS <itab> TYPE STANDARD TABLE.
    CREATE DATA dref TYPE STANDARD TABLE OF (p_table).
    ASSIGN dref->* TO <itab>.
    DATA: go_tab_descr TYPE REF TO cl_abap_tabledescr,
          go_struc_descr TYPE REF TO cl_abap_structdescr,
          wa_comp TYPE abap_compdescr.
    go_tab_descr ?= cl_abap_tabledescr=>describe_by_data( <itab> ).
    CHECK sy-subrc = 0.
    go_struc_descr ?= go_tab_descr->get_table_line_type( ).
    LOOP AT go_struc_descr->components INTO wa_comp.
      WRITE: / wa_comp-name.
    ENDLOOP.
    I must create a workarea/ line of this internal Table, that i can work row for row with the table.
    Sorry i missed the Step 2:
    FIELD-SYMBOLS: <itab> TYPE STANDARD TABLE,
                   <wa> TYPE ANY,
                   <val> TYPE ANY.
    LOOP AT <itab> ASSIGNING <wa>.
      LOOP AT go_struc_descr->components INTO wa_comp.
    *   To access the components of the structure dynamically
        ASSIGN COMPONENT wa_comp-name OF STRUCTURE <wa> TO <val>.
      ENDLOOP.
    ENDLOOP.
    BR,
    Suhas
    Edited by: Suhas Saha on Nov 18, 2010 7:26 PM

  • Dynamic typeing of a type any structure at runtime.

    Hello Gurus,
    i have in my Method a TYPE ANY structure as import parameter declared, the structure has in the calling program a dictionary structure type.
    Can i change (or assign) the new dictionary structure TYPE to the import parameter like for example as below in the third line ??
      l_rcl_struc ?= cl_abap_typedescr=>describe_by_data( i_str_applparam ).
      l_var_ddic_header = l_rcl_struc->get_ddic_header( ).
    ?? data: i_str_applparam type (l_var_ddic_header-tabname). ??
    Greetings,
    Ioan Constantin.

    Hello,
    the structure has in the calling program a dictionary structure type.
    This is pretty basic then
    DATA: DREF TYPE REF TO DATA.
    FIELD-SYMBOL: <STRUC> TYPE ANY.
    CREATE DATA DREF TYPE (l_var_ddic_header-tabname).
    ASSIGN DREF->* TO <STRUC>.
    BR,
    Suhas

Maybe you are looking for

  • How to set default field values in customer master data.

    hi, I want to set default values in customer master data (account group wise). but I don't know how to set it . please help me. (I don't want to change field status in account group rather than I want to set default values for field. ) thank you.

  • Macbook Start and Standby Problem

    Hi My Macbook Pro (Late 2009) seems to have a Problem with any kind of starting up. When i go into standby mode,(close the macbook) and open it again, it turns on for a short second, and shut down completely. It is the same with starting up when it w

  • Batch Psd image conversion into jpegs in pse 10 or 11?

    I want to batch convert some .psd images  into jpegs in pse 10 or 11. I know you can batch convert for image resizing,but don"t see the ability to convert images from one format into another.  Thanks!!

  • Lightbox slideshow opens by itself after closing

    I have lightbox slideshows on a page and after I open them by clicking on a thmbnail and then close them they start opening again on their own without me clicking on a thumbnail.  This started happening after the latest update.  Is this a bug?

  • Album view default

    iTunes 11 defaults to album view which I NEVER USE. THIS IS SO STUPID. How can it be changed to default to song view?