How to add columns dynamically in a classical rep deending on a parameter

hi all,
i have a scenario where ii have to add columns in my report depending on a certain parameter.the report should dymnamically add the columns based on the parameter.

Hello Diego
Revert your logic and remove or do not display columns if the corresponding parameter is missing or does not have the expected value(s).
Using ALV lists you would accomplish this using the following coding:
IF ( <parameter is missing or has not expected value> ).
  ls_fcat-tech = 'X'.
  MODIFY gt_fcat FROM ls_fcat
    TRANSPORTING tech
    WHERE ( fieldname = <column> ).
ENDIF.
The column for which this attribute is set in the fieldcatalog will appear neither in the ALV list nor in the layout.
Now for a classical report (WRITE report ?!) you should develop a similar logic. You have to encapsulate the displaying or writing for each column and make this dependent from the parameter, e.g.:
LOOP AT gt_data INTO ls_data.
IF ( <parameter is missing or has not expected value> ).
" do nothing -> skip this column
ELSE.
  PERFORM write_column USING ...
ENDIF.
ENDLOOP.
Regards
  Uwe

Similar Messages

  • How to add column dynamically based on user input in oracle?

    **how to add column dynamically based on user input in oracle?**
    I am generating monthly report based on from_date to to_date below is my requirement sample table
    EMPLOYEE_CODE| Name | CL_TAKEN_DATE | CL_BALANCE | 01-OCT-12 | 02-OCT-12 | 03-OCT-12
    100001.............John...........02-OCT-12...............6
    100002.............chris...........01-OCT-12...............4
    Based on user input, that is, if user need the report from 01-OCT-12 TO 03-OCT-12, i need to add that dates as column in my table, like 01-OCT-12 | 02-OCT-12 | 03-OCT-12....
    below is my code
    create or replace
    procedure MONTHLY_LVE_NEW_REPORT_demo
    L_BUSINESS_UNIT IN SSHRMS_LEAVE_REQUEST_TRN.BUSINESS_UNIT%TYPE,
    --L_LEAVE_TYPE_CODE           IN SSHRMS_LEAVE_REQUEST_TRN.LEAVE_TYPE_CODE%TYPE,
    L_DEPARTMENT_CODE IN VARCHAR2,
    --L_MONTH                    IN SSHRMS_LEAVE_REQUEST_TRN.LVE_FROM_DATE%TYPE,
    L_FROM_DATE IN SSHRMS_LEAVE_REQUEST_TRN.LVE_FROM_DATE%TYPE,
    L_TO_DATE in SSHRMS_LEAVE_REQUEST_TRN.LVE_TO_DATE%type,
    MONTHRPT_CURSOR OUT SYS_REFCURSOR
    AS
    O_MONTHRPT_CURSOR_RPT clob;
    v_return_msg clob;
    BEGIN
    IF (L_BUSINESS_UNIT IS NOT NULL
    AND L_FROM_DATE IS NOT NULL
    and L_TO_DATE is not null
    -- AND L_DEPARTMENT_CODE IS NOT NULL
    THEN
    OPEN MONTHRPT_CURSOR FOR
    select EMPLOYEE_CODE, EMPLOYEE_NAME AS NAME, DEPARTMENT_CODE AS DEPARTMENT,DEPARTMENT_DESC, CREATED_DATE,
    NVL(WM_CONCAT(CL_RANGE),'') as CL_TAKEN_DATE,
    case when NVL(SUM(CL2),0)<0 then 0 else (NVL(SUM(CL2),0)) end as CL_BALANCE,
    from
    SELECT DISTINCT a.employee_code,
    a.EMPLOYEE_FIRST_NAME || ' ' || a.EMPLOYEE_LAST_NAME as EMPLOYEE_NAME,
    a.DEPARTMENT_CODE,
    a.DEPARTMENT_DESC,
    B.LEAVE_TYPE_CODE,
    B.LVE_UNITS_APPLIED,
    B.CREATED_DATE as CREATED_DATE,
    DECODE(b.leave_type_code,'CL',SSHRMS_LVE_BUSINESSDAY(L_BUSINESS_UNIT,to_char(b.lve_from_date,'mm/dd/yyyy'), to_char(b.lve_to_date,'mm/dd/yyyy'))) CL_RANGE,
    DECODE(B.LEAVE_TYPE_CODE,'CL',B.LVE_UNITS_APPLIED)CL1,
    b.status
    from SSHRMS_EMPLOYEE_DATA a
    join
    SSHRMS_LEAVE_BALANCE C
    on a.EMPLOYEE_CODE = C.EMPLOYEE_CODE
    and C.STATUS = 'Y'
    left join
    SSHRMS_LEAVE_REQUEST_TRN B
    on
    B.EMPLOYEE_CODE=C.EMPLOYEE_CODE
    and c.EMPLOYEE_CODE = b.EMPLOYEE_CODE
    and B.LEAVE_TYPE_CODE = C.LEAVE_TYPE_CODE
    and B.STATUS in ('A','P','C')
    and (B.LVE_FROM_DATE >= TO_DATE(L_FROM_DATE, 'DD/MON/RRRR')
    and B.LVE_TO_DATE <= TO_DATE(L_TO_DATE, 'DD/MON/RRRR'))
    join
    SSHRMS_LEAVE_REQUEST_TRN D
    on a.EMPLOYEE_CODE = D.EMPLOYEE_CODE
    and D.LEAVE_TYPE_CODE in ('CL')
    AND D.LEAVE_TYPE_CODE IS NOT NULL
    group by EMPLOYEE_CODE, EMPLOYEE_NAME, DEPARTMENT_CODE, DEPARTMENT_DESC, CREATED_DATE
    else
    v_return_msg:='Field should not be empty';
    end if;
    END;
    my code actual output
    EMPLOYEE_CODE| Name | CL_TAKEN_DATE | CL_BALANCE
    100001....................John............02-OCT-12.................6
    100001....................chris...........01-OCT-12.................4
    how to add column dynamically based on from_date to to_date?
    Thanks and Regards,
    Chris Jerome.

    You cannot add columns dynamically. But you can define a maximum number of numbers and then hide unused columns in your form useing SET_ITEM_PROPERTY(..,VISIBLE, PROPERTY_FALSE);

  • How to add Image dynamically in Webdynpro ABAP

    Hi Experts,
    How to add Image dynamically in Webdynpro ABAP.
    My requirement is i maintain all the images in a table.
    image source has to pick the table URl dynamically and display.
    is that possible in webdynpro?
    and also please give the suggesion,
    without using MIME objects is that anyway to get images?
    Thanks in advance.
    Regrads,
    Jeyanthi

    Hi,
      are those icons wou want to display then. he following code will be useful.
    data : lo_IMG type ref to CL_WD_IMAGE.
    LO_IMG = cl_wd_IMAGE=>new_IMAGE( id = img_id SOURCE = 'ICON_BW_APD_TARGET' tooltip = sts_tltp ).
    lo_cont->add_child( the_child = lo_img ).
    here lo_cont is the container where you want to add the image dynamically and source is the attribiute through which you can change the ICON image. this thing you can getit from data base table and change accordingly.
    Regards,
    Anil kumar G

  • How to add Column to Adobe flex mx:DataGrid in mxml and/or actionsctpt?

    I have simple mxml code
    <mx:DataGrid id="DGG"
                 editable="true">
        <mx:dataProvider>
            <mx:Object scheduledDate="4/1/2006"/>
        </mx:dataProvider>
    </mx:DataGrid>
    <mx:Button id="SetBut"
               label="Set Array as Data Provider"
               click="SetDP(); AddBut.visible = true;"
               x="100.5"
               y="164"
               width="211"/>
    <mx:Button id="AddBut"
               label="Add a column!"
               click="AddCol();"
               x="100.5"
               y="194"
               width="211"
               visible="false"/>
    <mx:Script>
        <![CDATA[
            import mx.controls.dataGridClasses.DataGridColumn;
            import mx.collections.ArrayCollection;
            [Bindable]
            public var MyAC:ArrayCollection=new ArrayCollection([{scheduledDate: "4/1/2006", homeTeam: "Chester Bucks"}]);
            public function SetDP():void
                DGG.dataProvider=MyAC
            public function AddCol():void
                MyAC.addItem({scheduledDate: "4/5/2007", homeTeam: "Long Valley Hitters", Umpire: "Amanda Hugenkis"});
                DGG.columns.push(new DataGridColumn("Umpire"));
        ]]>
    </mx:Script>
    I want to add rows to my table datagrid how to do such thing?
    How to add Column to Adobe flex mx:DataGrid in mxml and/or actionsctpt?
    (You can put this code in Flash or AIR app - it will compile with no errors, but will not add any columns=( )

    Change this:
                 public function SetDP():void
                    DGG.dataProvider=MyAC
                    MyAC.addItem({scheduledDate: "4/5/2007", homeTeam: "Long Valley Hitters", Umpire: "Amanda Hugenkis"});
                public function AddCol():void
                    var dgc:DataGridColumn = new DataGridColumn("Umpire");
                    var ca:Array = DGG.columns;
                    ca.push(dgc);
                    DGG.columns = ca;
    Dany

  • How to add column in Dynamic VO

    Hello All,
    We are on 11.5.10 and
    i am trying to add a column toProduct - Supplier Items - click Orders page
    when i click about this page it is showing this
    POS_SUPPLIER_INQUIRIES177_POS_PO_LINES_D2177_177POS_PO_LINES_DDynamicVO
    This has Dynamci VO.
    How do i add column to this view.
    It seems that this view is based on AK Region POS_PO_LINES_D and this region is based on a view POS_PO_LINES_V.
    Please help me in doing this.
    Thanks,
    Mehta.

    Check the page's controller code. That will point you to the base definition of the VO used in the dynamic view.
    --Shiv                                                                                                                                                                                                                                                   

  • How to add columns for existing table dynamically?

    Hi,
    I created table structure only. I want to add columns for this existing  table. Columns are not fixed, according to the  user choice i  need to write code.
    Plz give me reply asap.
    Thanks
    Shirisha

    Hi Shirisha,
    I think the following code snippet will help you.
    int l_no_cols = 0;
    //Get the number of columns in this variable, something like the following
    //l_no_cols = wdContext().currentContextElement().get<Context_attribute_name>;
    IWDTable l_tab;
    IWDTransparentContainer l_tbl_cont = (IWDTransparentContainer)view.getElement("TableDataCont");//ID of Container
    l_tab = (IWDTable)view.getElement("TableData");//ID of Table
    l_tab.setVisible(WDVisibility.VISIBLE);
    l_tab.bindDataSource(wdContext.nodeTable_Data().getNodeInfo());
    for(int a = 1; a <=l_no_cols; a++)
    //Creating the column
    IWDTableColumn l_tab_col = (IWDTableColumn)view.createElement(IWDTableColumn.class,"COL"+a);
    //Creating Caption for Column Header
    IWDCaption l_tab_cap = (IWDCaption)view.createElement(IWDCaption.class,"Caption"+a);
    l_tab_cap.setText("Col"+i);               
    l_tab_col.setHeader(l_tab_cap);
    //Creating Table Cell Editor for column
    IWDInputField l_tab_cell = (IWDInputField)view.createElement(IWDInputField.class,"CellEditor"+a);
    //creating context node attribute for the column dynamically
    wdContext.nodeTable_Data().getNodeInfo().addAttribute("Col"+i,"com.sap.dictionary.String");
    l_tab_cell.bindValue(wdContext.nodeTable_Data().getNodeInfo().getAttribute("Col"+i));
    l_tab_col.setTableCellEditor(l_tab_cell);
    l_tab.addColumn(l_tab_col);
    l_tbl_cont.addChild(l_tab);
    Regards,
    Alka

  • How to add a dynamic table to a Crystal ReportViewer?

    Hi All,
    I'm trying to create my first crystal report, but I want to create the data dynamically. I want to create my table on the fly then, just dump the table into the crystal report.
    1. I'm not sure how to setup the fieldnames in the report to point to my dynamic table.
    2. How do I add the columns name in my dynamic table to my report?
            DataTable m_tExample = new DataTable();
            // Add Column Names
            m_tExample.Columns.Add("firstname", typeof (string));
            m_tExample.Columns.Add("lastname", typeof( string));
            // Add Test Data
            m_tExample.Rows.Add("MT","Long");
            m_tExample.Rows.Add("D", "Chiat");
            m_tExample.Rows.Add("Matdt", "Sdmith");
            m_tExample.Rows.Add("Kevin", "Cloley");
            m_tExample.Rows.Add("Maitt", "Diurkee");
            m_tExample.Rows.Add("Paam", "Duurkee");
            m_tExample.Rows.Add("William", "Never");
            m_tExample.Rows.Add("Tang", "Hong");
            m_tExample.Rows.Add("Mike", "Lopez");
            m_tExample.Rows.Add("Bill", "Chao");
            m_tExample.Rows.Add("Az", "Mattizra");
            m_tExample.Rows.Add("Raja", "Crash");
            m_tExample.Rows.Add("Jimmy", "Compton");
            m_tExample.Rows.Add("Ray", "Johnson");
            m_tExample.Rows.Add("Janice", "Howard");
            m_tExample.Rows.Add("Tony", "Scott");
        // Add DataSet to Viewer?
            CrystalReportViewer1.ReportSource = m_tExample.DataSet;
            CrystalReportViewer1.DataBind();
    NOTE: When I'm in the designer, I only see a text object to place in the report detail for a fieldname.
    VS 2005, Crystal Report 2008
    Thanks.

    Hello,
    Once you get the Data Set create save it as XML and then create a new report off the XML file. Then you can set the data set to the report and the XML is not required any more.
    First, to be able add fields to a report you need to use RAS. Report.Engine doesn't have the ability.
    If you search in this forum you will find lots of examples on how to...
    If you want to create the report then see these RAS samples:
    http://wiki.sdn.sap.com/wiki/display/BOBJ/NETRASSDK+Samples#NETRASSDKSamples-Exporting%2FPrinting
    Don

  • How to add columns in field-symbol

    Dear All,
                  Have made a report for HR - ZHR_CTC by using logical database and field-symbol. Report is working fine, but now have to add columns e.g business area text, positions text etc.
    Have added columns in field-symbol.But not able to fetch data into that.
    Data has to be fetched from different trasparent table comparing <field-symbol>-field.
    Plz suggest the proper way to do it.
    <<text removed>>
    Regards,
    Gulrez Alam
    Edited by: Gulrez Alam on Dec 16, 2008 11:02 AM
    Edited by: Matt on Dec 16, 2008 11:36 AM

    Hi Rimpa,
                   Thanks a lot for you reply, have tried ur suggestion but it's not working. I am not able to understand how to insert data into field-symbol. Plz give some more clarifications about the same.
    Regards,
    Gulrez Alam

  • How to add column access BADI to appraisal template.

    I am not able to see option to add column access BADI in template at Processing  tab--> Further template behaviour.
    Kinldy let me know how to add it.
    I am able to see only following options
    BC         Business Check
    D1         Default Appraiser
    D2         Default Appraisee
    DE         Default Execution Period
    DN         Default Appraisal Document Name
    DP         Default Part Appraiser
    DR         Default Review Date
    DV         Default Validity Period
    HA         Header Data Change
    PM         Maximum Number of Part Appraisers
    Thanks in advance.
    Dhananjy

    Hello Ravikiran,
    Based on the Role and Status of the appraisal form, turn the Column On/Off/Hide..
    sample code...
    case s_header_status-ap_status.
              when c_status_in_preparation.
                availability = 'H'.
                column_owner   = space.
              when  c_status_in_planning.
                case s_body_columns-column_id.
                  when 'OBJ0'.
                    availability   = 'X'.
                    column_owner   = 'X'.
                    exit.
                  when 'Z003'.
                    availability   = 'X'.
                    column_owner   = 'X'.
    Hope it helps...
    Regards,
    Jothi.P

  • How to add columns for wad in web apllication designer

    hi,
    can any one tell me how to add new columns for analysis item in wad.
    i found an option of adding new rows but not able to find a option of new columns in analysis item.
    please suggest me.
    i will assign points

    Hi,
    There is no functionlaity to add new columns.
    For adding new combinations to the transaction data, the input ready new rows are used. Why do you need new columns?

  • How to Add the Dynamic List Wizard Form to a Spry Accordion Panel?

    Is it possible to add ADDT Dynamic Forms to the Spry Widgets?
    - I have been trying to add the Dynamic List Wizard to my existing Accordion but everytime I do, the Accordion turns into plain text?
    -Also, If it is possible then how do I target the Panels and have the detail record open up in Panel number 2?
    I plan on having the ADDT Dynamic Form in Panel 1, and want the Add, Edit, New, Delete form to open up in Panel 2.
    Thanks for your help,
    jlig

    I figured this out.
    1) First add all the Fields to the Form using the ADDT Insert Record Form Wizard.
    2) View the ADDT form in the browser to make sure the fields all display.
    3) In DW design view, move the cursor just to the left of the ADDT Form and hit Enter to Add a line just above the ADDT Table.
    4) With the cursor below the Red Form line and just above the ADDT table add the SPRY widget. (ex..Tabs)
    5) Now highlight the rows you want to move & hit Cut, then open up Tab1, highlight Content1 and hit Paste.
    I decide to leave my date_added, modified_By & date_modified fields below the SPRY tab widget so that these fields are visible all the time. When I click on the Insert button, the record was added correctly to my Table after Validation passed.
    Thanks,
    jlig

  • How to add a dynamic filter in query panel

    I want to display the data in recent week, is it possible to add a dynamic filter in query panel?
    eg. filter--> actionDate >= CurrentDate - 7
    BO version: BOX I 3.1

    We are still trying to get this filter to work. Can anybody give us an example of how it should look on the sensor?
    The sensor filter that we would like to create should “exclude” any source IP, any source port to specific destination hosts on all destination ports (icmp has none) from capturing events and storing them in the event store on the sensor.
    This is the filter that we have so far on the sensor. What’s the problem with it?
    service event-action-rules rules0
    filters edit icmp-w-echo-filter-sensor-sensor-0-D
    signature-id-range 2100
    subsignature-id-range 0-255
    attacker-address-range 0.0.0.0-255.255.255.255
    victim-address-range a.b.c.x,a.b.c.y
    attacker-port-range 0-65535
    victim-port-range 0-65535
    risk-rating-range 0-100
    no actions-to-remove
    deny-attacker-percentage 100
    filter-item-status Enabled
    stop-on-match False
    no user-comment
    exit
    filters move icmp-w-echo-filter-sensor-sensor-0-D begin
    exit

  • How to add column comments to table

    at the time of creating the table, how to add the comments t columns.

    Hi,
    I do not see any way in which you can add comment on column while issuing create table command. You can add comment on the column only after the table is created.
    Regards
    Anurag Tibrewal.

  • How to add column to compressed table

    Hi gurus,
    Can any one help me how to add a column to compressed tables
    Thanks in advance

    The only difference is if added column has default value. In that case:
    SQL> create table tbl(id number,val varchar2(10))
      2  /
    Table created.
    SQL> insert into tbl
      2  select level,lpad('X',10,'X')
      3  from dual
      4  connect by level <= 100000
      5  /
    100000 rows created.
    SQL> select bytes
      2  from user_segments
      3  where segment_name = 'TBL'
      4  /
         BYTES
       3145728
    SQL> alter table tbl move compress
      2  /
    Table altered.
    SQL> select bytes
      2  from user_segments
      3  where segment_name = 'TBL'
      4  /
         BYTES
       2097152
    SQL> alter table tbl add name varchar2(5) default 'NONE'
      2  /
    alter table tbl add name varchar2(5) default 'NONE'
    ERROR at line 1:
    ORA-39726: unsupported add/drop column operation on compressed tables
    SQL> alter table tbl add name varchar2(5)
      2  /
    Table altered.
    SQL> update tbl set name = 'NONE'
      2  /
    100000 rows updated.
    SQL> commit
      2  /
    Commit complete.
    SQL> select bytes
      2  from user_segments
      3  where segment_name = 'TBL'
      4  /
         BYTES
       7340032
    SQL> select compression from user_tables where table_name = 'TBL'
      2  /
    COMPRESS
    ENABLED
    SQL> alter table tbl move compress
      2  /
    Table altered.
    SQL> select bytes
      2  from user_segments
      3  where segment_name = 'TBL'
      4  /
         BYTES
       2097152
    SQL> SY.

  • How to add  inputfield dynamically

    Hi,
    How to add Textfield and inputfield dynamically when i select  Radio button in webdynpro-abap.
    Can any one give example code of this requirement.
    Thanks
    Neelima

    Hi Neelima,
                     You can write code in wddomodify to create input field dynamically. you can use the class cl_wd_input_field for that. Using methods in the class u can create new input field.
    you have to write the code to create input field inside a condition that check your radio button select.
        i didnt tried with inputfield yet, but i tried creating radio button like this.i think it will work.
    Regards
    Sarath

Maybe you are looking for