Help needed to include a dynamic member range in report script

Hi,
I need to produce the report from Jan to Cur_Mth dynamically. I can include Cur_Mth by using a substitution variable.
But how to include the months in between Jan and Cur_Mth?
I tried with Jan:@Cur_Mth but its not working. Any clues will be of great help. Thanks
Dinish

onclipevent(load)                                           
total=_root.getbytestotal();                             
onclipevent(enterframe)
loaded=_root.getbytesloaded();
current=int(loaded/total*100);
p=""+current+"%";
if(loaded==total)
gotoandplay("Scene 2",1);
sorry for getting the code and coment mixed up.

Similar Messages

  • SWE3- Help needed to include a check FM

    Hi All,
       I am trying to include a check function module for the instance linkage of IDOCORDERS.INPUTFINISHED through SWE3 transaction.  I get the error that "Parameter SENDER not found". My FM just has a wait statement in it.Is there a standard for the interface?
    Error: Check FM Y_EDIIDOC_EVENT: Parameter SENDER not available Message no. WA683
    Diagnosis
    A parameter was expected for the specified function module, which does not exist in the interface.
    System Response
    The action was aborted.
    Procedure
    Chekc the function module's interface.

    Did you go through the help of that field? Did you define your function module similar to this template function module SWE_CD_TEMPLATE_CHECK_FB? I think that is the issue here. You have to define your function module interface exactly like this template.

  • Help needed with Include ZXRSRU01 in relation with currency conversions

    I'm implementing how to paper: Use variable time references in currency conversions (BW 3.3). When implementing variable exit RSR00001 & write include ZXRSRU01 an issue pops up.
    The relevant code is:
    <i> DATA: l_s_var_range TYPE rrs0_s_var_range.
    IF i_s_rkb1d-infocube EQ 'RHCURCON'.
        IF i_step = '3'.
          LOOP AT i_t_var_range INTO l_s_var_range WHERE vnam EQ 'ZCURDAT'.
            ZCL_IM_CURRCONV=>currdate = l_s_var_range-low.
          ENDLOOP.
        ENDIF.
    ENDIF.</i>
    When implementing the following message pops up:
    "l_s_var_range" has already been declared.
    In another statement ' l_s_var_range ' is already used.
    Any advice how to deal with this issue?
    thanks in advance
    tom

    Hi,
      somebody already declared that workarea (l_s_var_range), so you can directly use that without any declaration (data l_s_var_range type rsr0_.....). you can remove that statement and you can work.
       Otherwise if you want to use to declare your own workarea,
      data ls_range (or any name) type rsr0_....
    DATA: l_s_var_range TYPE rrs0_s_var_range. *** this statement you can remove since somebody declared the same.
    ****or use ur own work area name and use that work area within your code.
    data ls_var_range type rrs0_s_var_range.
    IF i_s_rkb1d-infocube EQ 'RHCURCON'.
    IF i_step = '3'.
    LOOP AT i_t_var_range INTO ls_var_range WHERE vnam EQ 'ZCURDAT'.
    ZCL_IM_CURRCONV=>currdate = ls_var_range-low.
    ENDLOOP.
    ENDIF.
    ENDIF.
    rgrds,
    v.sen.
    Message was edited by:
            Senthilkumar Viswanathan
    Message was edited by:
            Senthilkumar Viswanathan

  • Help needed in creating a dynamic poplist

    Hi,
    Can anybody please tell me how to create a dynamic poplist.
    Can we create a dynamic poplist without using any controller code.
    I have created a simple poplist for "Deptno".
    Now I want to create a dynamic poplist for "Empname" , Which should be based on the 'Deptno' poplist entry.
    When I select a department number from Deptno poplist, All the employees names under that perticular department should appear in my "Empname" poplist.
    So please suggest me how to create "Empname" dynamic poplist.
    Thanks,
    Swaroop

    see thread:
    How to create dynamic poplist
    --Mukul                                                                                                                                                                                       

  • Help needed on combo-box dynamic values??

    Hi ,
    i need to populate values in 2 combo-boxes where the values
    in the second combo is dependent on the first .. from db ...
    i.e if i select a value in 1 combo then the values in the second combo should be populated accordingly from the db..
    pls suggest on this.

    You can use onchange event of the first combo box, then you can submit a form sending the first combo box value, then response filling the second combo box.
    If you don't want to make a request, you should use ajax to get data from database.

  • Help Needed!!!! Running Forms 6i, Reports 6i and WebDB on the same NT box...

    Hi All!
    I am in need of some help.
    I'm trying to set up the sample code for the Healthy Living WebSite.
    I need to have WebDB 2.2x, Forms 6i and Reports 6i all running on the same box. Does anyone know how to set this up....?
    Thanks,
    Matt
    [email protected]
    null

    Hi Matt,
    You didn't mention but do you also wish to install the database(8i) on the same machine ?
    I am also trying to install all these products(+8i and designer 6i) on the same box but I am concerned more about the min. resources needed before I get started.(I put up a question about it on the 6i Forum, but nobody has answered yet !)
    The correct install order should be Forms/Reports 6i then Forms/Reports 6i Server and then WebDb 2.2.
    Forms /reports server needs a http listener and installs en configures the WebDb listener for the job.(you are prompted for this during tho have the install process).This is handy if you are intending to use WebDb anyway. When you install Webdb it detects the already installed WebDb listener and does not reinstall.
    You do have the SYS password on the database you will use to stored the WDK and WebDb schema.
    About installing the demo.....
    I dont' think there are any special issues.I have never done it.
    If you are intending to install an 8i database on the same box there are some important things to consider with respect to the install order and what products in which Oracle home must be installed.
    1.Forms/Reports first in the default_oracle
    home.
    2.Then Oracle 8i in a 2nd oracle home call
    it ora81 for example.
    3.Then WebDb in the non oracle 8i home !!
    This is just a quick summary.
    If you run into any problems let me know
    Good Luck.
    Dave.

  • Urgent : Help needed in Using Hyperion to create a custom reports

    Hi Gurus,
             I am new to Bw my requirement is to use Hyperion to create a custom reports based on the functional specification. this report should be Created based on the data in the BW. I mean the data should come from BW.
    Can any one give a detailed description about how to create these reports. If you have any documents on what is hyperion and the integration of hyperion to BW can you please forward them to [email protected]
    Thank You,
    Reddy.

    Not sure, But ultimately 'Flat file' may be the common interface for both the environments. So i think BW role may stop after crating the flat file in a specific format..
    regards,
    Hari

  • Creating a range with Substitution Variables for Report Script

    Is it possible to create a range with substituion varables for use in a report script. For example instead of listing "Jan" "Feb" "Mar" "Apr" in the report script can I use a sub varaible like Jan:Apr that will list them all out?

    while I have not had luck with ranges in report scripts, others have. You could have a substitution variable the is "Jun" "Jul " "Aug" or whatever you want the members to be. and it will replace jusr fine

  • Help Needed in Dynamic Sql or alternate to Dynamic Sql

    Hi Am working in sqlserver 2008 R2 and here is my Table structure and SPC
    ;create table SalaryReport(IdSalary int primary key identity(1,1),
    IDMainCompany int,IDSubCompany int,Salary money,Incentive int,NoofEmployees int, SalaryDate datetime, Creditscore int );
    insert into SalaryReport (IDMainCompany,IDSubCompany,Salary,Incentive,NoofEmployees,SalaryDate,Creditscore)
    ( Select 100 as IDMainCompany , 1000 as IDSubCompany ,200000 AS Salary, 20000 as Incentive, 500 as NoofEmployees,
    '2014-01-01' as SalaryDate, 60 as Creditscore union all
    Select 100 as IDMainCompany , 1001 as IDSubCompany ,300000 AS Salary, 40000 as Incentive, 600 as NoofEmployees,
    '2014-01-01' as SalaryDate , 70 as Creditscore union all
    Select 100 as IDMainCompany , 1002 as IDSubCompany ,400000 AS Salary, 40000 as Incentive, 1500 as NoofEmployees,
    '2014-01-01' as SalaryDate , 45 as Creditscore union all
    Select 101 as IDMainCompany , 1003 as IDSubCompany ,30000 AS Salary, 2000 as Incentive, 100 as NoofEmployees,
    '2014-01-01' as SalaryDate, 60 as Creditscore union all
    Select 102 as IDMainCompany , 1004 as IDSubCompany ,450000 AS Salary, 25000 as Incentive, 700 as NoofEmployees,
    '2014-01-01' as SalaryDate, 30 as Creditscore)
    Sample Test Script:
    DECLARE @IDMainCompany int = 100;
    DECLARE @Process_Date datetime = '2014-01-01';
    declare @Query nvarchar(max);
    SELECT
    CAST(SR.IDMainCompany AS VARCHAR(12)) AS IDMainCompany
    ,CAST(SR.IDSubCompany AS VARCHAR(12)) AS IDSubCompany
    ,CAST(SR.Salary AS VARCHAR(12)) AS Salary
    ,CAST(SR.Incentive AS VARCHAR(12)) AS Incentive
    ,CAST(SR.NoofEmployees AS VARCHAR(12)) AS NoofEmployees
    ,CAST(SR.SalaryDate AS VARCHAR(15)) AS SalaryDate
    ,CAST((SR.Creditscore) AS VARCHAR(15)) AS average
    FROM SalaryReport SR
    WHERE SR.IDMainCompany = @IDMainCompany
    AND DATEPART(MM, SR.SalaryDate) = DATEPART(MM, @Process_Date)
    UNION ALL
    SELECT
    '' AS IDMainCompany
    ,'' AS IDSubCompany
    ,'Total: ' + CAST(SUM(SR.Salary) AS VARCHAR(12)) AS Salary
    ,'Total: ' + CAST(SUM(SR.Incentive) AS VARCHAR(12)) AS Incentive
    ,'Total: ' + CAST(SUM(SR.NoofEmployees) AS VARCHAR(12)) AS NoofEmployees
    ,'' AS SalaryDate
    ,'Total: ' +CAST(avg(SR.Creditscore) AS VARCHAR(12)) AS Totalaverage
    FROM SalaryReport SR
    WHERE SR.IDMainCompany = @IDMainCompany
    AND DATEPART(MM, SR.SalaryDate) = DATEPART(MM, @Process_Date)
    group by IDMainCompany, DATEPART(MM, SalaryDate)
    the sample data i posted is having less columns. actually i have 20 columns in the select list. Also the parameters to the where condition i gave two i.e IDMainCompany, SalaryDate. I will also need to use IDSubCompany for some case. My skeleton will be 
    Create Procedure Test(@IDMainCompany int, @IDSubCompany int = null, @SalaryDate datetime)
    as
    BEGIN
    IF(@IDMainCompany is not null && @IDMainCompany > 0 && @SalaryDate is not null && @SalaryDate <> ' ' &&
    @IDSubCompany is null)
    BEGIN
    --The logic what discussed on previous posts will falls here with @IDMainCompany, @SalaryDate as parameter to the where condition
    END
    IF(@IDMainCompany is not null && @IDMainCompany > 0 && @SalaryDate is not null && @SalaryDate <> ' ' &&
    @IDSubCompany is null && @IDSubCompany > 0 )
    BEGIN
    --The logic what discussed on previous posts will falls here with @IDMainCompany, @SalaryDate,@IDSubCompany as parameter to the where condition
    END
    END
    As said i need to include 20 columns in the select list and as union all used on the previous sample there are 20 columns on the first query and 20 columns on the second query after the union all. The SPC will become big. If i repeat this for second if condition,
    it will be too big. How can i reduce this writing more lines.
    I am aware of the concept dynamic sql. Is there any other way to do this? or if dynamic sql is the only option, can anyone help me rewriting this select statements as dynamic sql
    Could anyone please assist me 
    loving dotnet

    >>
    thanks for your reply and yes, i am invoking this from my asp.net application using C# language.  Would you like to share something?
    <<
    Yes,
    You can use client side dynamic sql. I'm not talking about concatenating strings. I'm talking about using Runtime Text Tamplates (preprocesed templates in Visual Studio 2010).
    Add a new "Runtime Text Template" item to your VS project. Be "MyReportTemplate.tt" the file name of the runtime text template.  The content of this file should be something like the following:
    <#@ template language="C#" #>
    <#@ assembly name="System.Core" #>
    SELECT
    -- part of your query goes here
    -- the interesting part come next
    FROM
    SalaryReport SR
    WHERE
    SR.IDMainCompany = @IDMainCompany
    <# if (IDSubCompany.HasValue && IDSubCompany.Value > 0) { #>
    AND SR.IDSubCompany = @IDSubCompany
    <# } #>
    AND
    DATEPART(MM, SR.SalaryDate) = DATEPART(MM, @Process_Date)
    GROUP BY
    IDMainCompany, DATEPART(MM, SalaryDate)
    Add a new c# code file named MyReportTemplate.partial.cs closed to MyReportTemplate.tt with the following code:
    public partial class MyReportTemplate
    public int? IDSubCompany { get; set; }
    Then, to execute the query you can write a code similar to the following:
    public DataTable ExecuteReport(int mainCompanyId, int? subCompanyId, DateTime processDate )
    using (var cn = CreateConnection())
    using (var cmd = new SqlCommand())
    using (var adapter = new SqlDataAdapter(cmd))
    cmd.Connection = cn;
    var template = new MyReportTemplate
    IDSubCompany = subCompanyId
    cmd.CommandText = template.TransformText();
    cmd.Parameters.AddWithValue("@IDSubCompany", subCompanyId == null ? (object) DBNull.Value : subCompanyId.Value);
    cmd.Parameters.AddWithValue("@IDMainCompany", mainCompanyId);
    cmd.Parameters.AddWithValue("@Process_Date", processDate);
    var table = new DataTable();
    adapter.Fill(table);
    return table;
    EntityLite: A Lightweight, Database First, Micro ORM

  • InfoView needs login information when dynamic parameters are included

    Hi,
    we've got a Crystal Reports Server 2008 and everything worked fine in the past, but then we had to reinstall the server and now we've got the following problem:
    Although we saved the Login information of the report on the server, InfoView asks the user again when you he wants to open the report. But this only happens when the report has a dynamical parameter.
    We really tried alot of things but we didn't find a solution and i'm very sure every setting is the same like before the new installation.
    Do you have any idea how we can fix this problem?
    Database connection is ODBC, but the settings of the connection wasn't changed and the reports are still the same, too. I think it has to be a problem of the server. When we create a new report everything works fine and the login informations are saved but as soon as we include a dynamical parameter, infoview wants the login information again. Btw: We're using Tomcat.
    Thanks for you help!

    Hi,
    thanks for you answer!
    I'm sorry, but yes, parameter means prompt.
    When I try Infoview I'm using the same login information as in CR, but we also tried different.
    The User has definitely the right to open the report, because he can type in the information when he opens the report in InfoView, and the report and prompt works. The strange thing is, that the login information are already saved in the properties of the report and should'nt be asked again.
    Still no solution for this problem... any other ideas?
    Again, everything works fine before we made a new installation of the server and im very sure that every setting now is the same, but the port of the infoview has changed, is there a possibility that some ports need to be opened now or something like that?

  • I just bought a new iPhone and accidentally backed it up with my old iPhone backup, I do not want this. I lost everything on my new phone and I need it back. PLEASE HELP! This includes pictures and texts, etc.

    I just bought a new iPhone and accidentally backed it up with my old iPhone backup, I do not want this. I lost everything on my new phone and I need it back. PLEASE HELP! This includes pictures and texts, etc.

    So just to be clear, when you say "just bought" how long ago was that? Is it on this new iPhone that you had pictures, texts, etc that you want? Were you backing up to iCloud or onto iTunes?
    This may not help for everything but if you go to iCloud.com and log in, are you able to find your pictures there?

  • Help needed in enhancing a query to include excluded records...

    I am trying a create a report using SQL. I want the employees who were active (empl_sts = 'A') as off 3/6/2015.
    As I included empl_sts = 'A', records like employee id - 101258, were included in my result set which is correct. However, in this process, employees  who were currently terminated (i mean terminated after 3/6/2015) were not included in my result set.
    I need to include employees in my result set - the employees whose empl_sts = 'T' currently but if empl_sts = 'A' on or before the date 3/6/2015. The employee (id - 101258) is active on 3/6/2015 but terminated on 3/16. This record is excluded in my result
    set. But it shouldn't.
    (An employee record undergoes various changes over time, so this table empl_hist has multiple records for a single empl_id uniquely identified by empl_key).
    Any help is highly appreciated.... Thank you.

    INSERT INTO hr_dm.empl_hist (empl_key, empl_id, actn_row_in, actn_efctv_dt, empl_hist_efctv_strt_dt, empl_hist_efctv_end_dt, actn_dt, empl_sts, curr_flag) VALUES
    (475408, 174084,
    1, 5/7/2014,
    5/7/2014, 6/4/2014,
    5/7/2014, A,
    0)
    (475407, 174084,
    0, NULL,
    6/5/2014, 8/22/2014,
    NULL, A,
    0)
    (475409, 174084,
    1, 8/23/2014,
    8/23/2014, 12/12/2014,
    8/25/2014, A,
    0)
    (475410, 174084,
    1, 12/13/2014,
    12/13/2014, 1/9/2015,
    12/16/2014, A,
    0)
    (475411, 174084,
    1, 1/10/2015,
    1/10/2015, 3/16/2015,
    1/13/2015, A,
    0)
    (623396, 174084,
    1, 3/17/2015,
    3/17/2015, 3/17/2015,
    3/16/2015, T,
    0)
    (662944, 174084,
    0, NULL,
    3/18/2015, 12/31/2099,
    NULL, T,
    1)
    (3626, 101258,
    1, 3/13/2010,
    3/13/2010, 10/8/2010,
    3/23/2010, A,
    0)
    (3627, 101258,
    1, 10/9/2010,
    10/9/2010, 3/11/2011,
    10/11/2010, A,
    0)
    (3625, 101258,
    1, 3/12/2011,
    3/12/2011, 4/8/2011,
    3/23/2011, A,
    0)
    (3628, 101258,
    1, 3/12/2011,
    3/12/2011, 4/8/2011,
    3/29/2011, A,
    0)
    (3629, 101258,
    1, 4/9/2011,
    4/9/2011, 8/12/2011,
    4/11/2011, A,
    0)
    (3630, 101258,
    1, 8/13/2011,
    8/13/2011, 3/9/2012,
    8/25/2011, A,
    0)
    (3631, 101258,
    1, 3/10/2012,
    3/10/2012, 4/24/2012,
    3/20/2012, A,
    0)
    (3620, 101258,
    0, NULL,
    4/25/2012, 10/18/2012,
    NULL, A,
    0)
    (3621, 101258,
    0, NULL,
    10/19/2012, 10/19/2012,
    NULL, A,
    0)
    (3622, 101258,
    0, NULL,
    10/20/2012, 11/30/2012,
    NULL, A,
    0)
    (3632, 101258,
    1, 12/1/2012,
    12/1/2012, 1/11/2013,
    12/21/2012, A,
    0)
    (3633, 101258,
    1, 1/12/2013,
    1/12/2013, 3/8/2013,
    1/15/2013, A,
    0)
    (3634, 101258,
    1, 3/9/2013,
    3/9/2013, 5/7/2013,
    3/19/2013, A,
    0)
    (3623, 101258,
    0, NULL,
    5/8/2013, 12/12/2013,
    NULL, A,
    0)
    (3635, 101258,
    1, 12/13/2013,
    12/13/2013, 3/7/2014,
    12/15/2013, A,
    0)
    (3636, 101258,
    1, 3/8/2014,
    3/8/2014, 5/13/2014,
    3/18/2014, A,
    0)
    (3624, 101258,
    0, NULL,
    5/14/2014, 7/25/2014,
    NULL, A,
    0)
    (3637, 101258,
    1, 7/26/2014,
    7/26/2014, 3/6/2015,
    7/28/2014, A,
    0)
    (634077,101258, 1,
    3/7/2015, 3/7/2015,
    12/31/2099, 3/17/2015,
    A, 1)

  • Dynamic Reports Help Needed

    Could someone please point me in the direction of a tutorial
    or a book on how to create a hyperlink which will dynamically run
    an Access report and display in a web page? None of the reference
    books I own cover how to do this. I know this is pretty darn basic
    but I've never done this particular task before. can someone
    help??

    Could someone please point me in the direction of a tutorial
    or a book on how to create a hyperlink which will dynamically run
    an Access report and display in a web page? None of the reference
    books I own cover how to do this. I know this is pretty darn basic
    but I've never done this particular task before. can someone
    help??

  • Help Needed on report Urgent

    Hi Experts
    my requirement is to combine the standard selection screens of T-CODE IW39 & IW59 as a one selection screen.
    i tried  a lot but i'm unable to do it.
    in these selection screens some blocks are called by dynamically through ldb. if i copied standard prog of T-CODE IW39 as zprogram it dispalying the whole selection screen but at that time i'm unable to merge IW59 selection screen code with this caode.
    can any help me urgent .plz

    hi
    chk this out
    SELECTION-SCREEN: Special Variant for Logical Databases
    You may only use these variants in the INCLUDE program DBldbSEL of logical database ldb.
    Variants:
    1.SELECTION-SCREEN BEGIN OF VERSION vers TEXT-xxx.
    2. SELECTION-SCREEN END OF VERSION vers.
    3. SELECTION-SCREEN EXCLUDE ... .
    4.SELECTION-SCREEN DYNAMIC SELECTIONS FOR TABLE dbtab.
    5.SELECTION-SCREEN FIELD SELECTION FOR TABLE dbtab.
    6.SELECTION-SCREEN DYNAMIC SELECTIONS FOR NODE node.
    7.SELECTION-SCREEN FIELD SELECTION FOR NODE node.
    Variant 1
    SELECTION-SCREEN BEGIN OF VERSION vers TEXT-xxx.
    Variant 2
    SELECTION-SCREEN END OF VERSION vers.
    Variant 3
    SELECTION-SCREEN EXCLUDE ... .
    Effect
    Defines a selection screen version (three character name vers). Between BEGIN OF VERSION and END OF VERSION , you can exclude selection screen objects from version vers using SELECTION-SCREEN EXCLUDE. This allows you to reduce the database-specific part of the standard selection screen to those objects relevant to the report in question without having to sacrifice important selection criteria in other reports.
    You activate a selection screen version for a report by entering it in the report attributes. If the database access program SAPDBldb itself has a selection screen version in its attributes, this applies to all reports that use the logical database and for which you have not declared a particular selection screen variant.
    The function of the text symbol TEXT-xxx is to enable users to choose a selection screen variant using F4 help on the program attributes screen.
    Extras:
    (for SELECTION-SCREEN EXCLUDE) 1. ... PARAMETERS par 2. ... SELECT-OPTIONS sel
    3. ... RADIOBUTTON GROUPS radi
    4. ... BLOCKS block
    5. ... IDS id
    Effect
    Excludes selection screen objects between SELECTION-SCREEN BEGIN and END OF VERSION. You can also exclude individual parameters, select-options, and radiobutton groups, within SELECTION-SCREEN BEGIN/END OF BLOCK blocks, and other SELECTION-SCREEN objects such as comments and underlines using the ID id addition.
    Notes
    You can only exclude objects of the DS:ABEN.SELECTION_SCREEN>standard selection screen 1000, not any that belong to a screen defined using SELECTION-SCREEN BEGIN OF SCREEN ... AS SUBSCREEN. If the standard selection screen includes objects from other screens ( SELECTION-SCREEN INCLUDE ... ID ...), you can use SELECTOIN-SCREEN EXCLUDE IDS ... to exclude them from the screen.
    The database program SAPDBldb can use the function module RS_SELSCREEN_VERSION to use the active version of the selection screen for the current report.
    Example
    TABLES SPFLI.
    NODES CHARLY.                  " with structure SFLIGHT
    PARAMETERS PAR_1 LIKE SPFLI-CARRID FOR TABLE SPFLI.
    SELECT-OPTIONS SEL_1 FOR SPFLI-CONNID.
    SELECT-OPTIONS SEL_2 FOR CHARLY-FLDATE.
    SELECT-OPTIONS SEL_3 FOR SPFLI-CITYFROM.
    SELECTION-SCREEN COMMENT /10(20) TEXT-100 FOR TABLE SFLIGHT ID 001.
    SELECTION-SCREEN COMMENT /8(30) TEXT-200 FOR NODE CHARLY ID 002.
    SELECTION-SCREEN BEGIN OF SCREEN 100 AS SUBSCREEN NO INTERVALS.
      SELECTION-SCREEN BEGIN OF BLOCK B100 WITH FRAME TITLE TEXT_001.
        PARAMETERS P100_1 TYPE SFLIGHT-SEATSMAX FOR NODE CHARLY.
      SELECTION-SCREEN END OF BLOCK B100.
    SELECTION-SCREEN END OF SCREEN 100.
    PARAMETERS PAR_2 LIKE SY-SUBRC FOR TABLE SFLIGHT.
    PARAMETERS PAR_3 LIKE CHARLY-PLANETYPE FOR NODE CHARLY.
    SELECTION-SCREEN BEGIN OF VERSION ABC TEXT-008.
      SELECTION-SCREEN EXCLUDE PARAMETERS: PAR_1, PAR_3.
      SELECTION-SCREEN EXCLUDE SELECT-OPTIONS SEL_2.
      SELECTION-SCREEN EXCLUDE IDS 001.
    SELECTION-SCREEN END   OF VERSION ABC.
    SELECTION-SCREEN BEGIN OF VERSION XYZ TEXT-XYZ.
      SELECTION-SCREEN EXCLUDE IDS 100.
    SELECTION-SCREEN END OF VERSION XYZ.
    If the report attributes (or the attributes of database program SAPDBldb) contain the selection screen version ABC, the parameters PAR_1 and PAR_3, the select-option SEL_2 and the comment with text number 100 (ID 001) do not appear on the selection screen. Text symbol 008 of SAPDBldb is displayed if you choose F4 help for the 'Selection screen version' field.
    If the program attributes (or the attributes of the database program SAPDBldb) contain the selection screen version XYZ, the block B100 containing the parameter P100_1 does not appear on the standard selection screen 1000, but it does appear on the subscreen 100..
    Variant 4
    SELECTION-SCREEN DYNAMIC SELECTIONS FOR TABLE dbtab.
    Variant 6
    SELECTION-SCREEN DYNAMIC SELECTIONS FOR NODE
    node.
    Extras:
    ... ID id
    Effect
    This statement returns the tables or nodes of the logical database for which additional selections are supported. If one of these tables or nodes is active in the report (declared using TABLES or NODES, or in the path from the database hierarchy root to a table declared using TABLES or NODES), the 'Free selections' pushbutton appears on the selection screen. If the user chooses this function, the system branches to a dialog in which the user can enter selections for the relevant fields of the appropriate tables. There are two ways to set the fields for which users can make free selections:
    Using a selection view created for that purpose:
    You maintain selection views within logical database maintenance. They consist of a set of fields from tables in the logical database that are divided into groups. You can also preselect fields here. Customers may overlay the selection view (that is, the system searches first for a customer-specific selection view. Only if one does not exist will the system display the SAP selection view).
    If you have already made a preselection in the selection view, the user sees the selection screen for the preselected fields on which to enter his or her selections. If no fields have been preselected, the user must first select some.
    Using all fields of all tables
    In this case, the user must choose the table and then the fields for which he or she wants to define additional selections. Having selected these, he or she then passes to the selection screen for entering the free selections.
    The database access program SAPDBldb takes on the form of a complex data object DYN_SEL consisting of WHERE clauses generated by the user input for dynamic database access.
    Note
    You cannot use free selections for nodes with type C (complex data objects).
    Note
    The precise definition of the object DYN_SEL is stored in TYPE-POOL RSDS and reads:
    TYPES: BEGIN OF RSDS_WHERE,
             TABLENAME LIKE RSDSTABS-PRIM_TAB,
             WHERE_TAB LIKE RSDSWHERE OCCURS 5,
           END OF RSDS_WHERE.
    TYPES: BEGIN OF RSDS_TYPE,
             CLAUSES TYPE RSDS_WHERE OCCURS 5,
             TEXPR   TYPE RSDS_TEXPR,
             TRANGE  TYPE RSDS_TRANGE,
           END   OF RSDS_TYPE.
    DATA DYN_SEL TYPE RSDS_TYPE.
    The object DYN_SEL contains (amongst other elements) a component (CLAUSES), which is an internal table. Each line in the internal table contains a table name (TABLENAME) and a further internal table (WHERE_TAB), that contains the WHERE clauses for table (TABLENAME).
    The structure of the two other components is contained in type pool RSDS.
    TEXPR contains the selections in a storeable format that you can use for the 'freely callable' function modules used to enter free selections ( FREE_SELECTIONS_INIT, FREE_SELECTIONS_DIALOG). TRANGE contains the selections in the form of RANGES tables , that you can use with the IN operator in the SELECT, CHECK and IF statements.
    Note
    Neither the TYPE-POOL RSDS nor the declaration of DYN_SEL need to be written into the database program: both are automatically included by the system.
    In the database program SAPDBldb, an access to a table XXXX might look like this:
    FORM PUT_XXXX.
      DATA L_DS_CLAUSES TYPE RSDS_WHERE.
      MOVE 'XXXX' TO L_DS_CLAUSES-TABLENAME.
      READ TABLE DYN_SEL-CLAUSES WITH KEY L_DS_CLAUSES-TABLENAME
                                 INTO L_DS_CLAUSES.
      SELECT * FROM XXXX
               WHERE field1 IN ...
               AND   field2 ....
               AND (L_DS_CLAUSES-WHERE_TAB).
          PUT XXXX.
      ENDSELECT.
    ENDFORM.
    Note
    If the table L_DS_CLAUSES-WHERE_TAB is empty (in other words, there are no free selections for table XXXX), the system ignores the addition ... AND (L_DS_CLAUSES-WHERE_TAB) in the SELECT statement.
    Variant 5
    SELECTION-SCREEN FIELD SELECTION FOR TABLE dbtab.
    Variant 7
    SELECTION-SCREEN FIELD SELECTION FOR NODE node.
    Extras:
    ... ID id
    Effect
    This statement returns the tables and nodes of the logical database for which field selections are supported.
    If required by the report, not all fields of these tables and nodes are filled from the database, but only those that the report needs. You declare these fields in the report using GET dbtab FIELDS f1 ... fn or GET dbtab LATE FIELDS f1 ... fn (the field list is then completed by the system, using the key fields of table dbtab).
    You can improve performance considerably by restricting the fields used to those that are really necessary.
    The database access program SAPDBldb receives the fields for the dynamic field selection in the form of an internal table SELECT_FIELDS.
    Note
    You cannot use this addition for nodes with type C (complex data objects).
    Note
    The exact definition of the object SELECT_FIELDS is stored in TYPE-POOL RSFS and reads:
    TYPES: BEGIN OF RSFS_TAB_FIELDS,
             TABLENAME LIKE RSDSTABS-PRIM_TAB,
             FIELDS LIKE RSFS_STRUC OCCURS 10,
           END OF RSFS_TAB_FIELDS.
    TYPES: RSFS_FIELDS TYPE RSFS_TAB_FIELDS OCCURS 10.
    DATA SELECT_FIELDS TYPE RSFS_FIELDS.
    SELECT_FIELDS is an internal table. Each line of the internal table contains a table name (TABLENAME) and a further internal table (FIELDS) containing the fields of table (TABLENAME).
    Note
    You do not need to declare the TYPE-POOL RSFS or SELECT_FIELDS in the database program, since both are included automatically by the system. Unlike the objects linked using the DYNAMIC SELECTIONS addition, SELECT_FIELDS is also available in the report.
    In the database program SAPDBldb, an access to table XXXX might look like this:
    FORM PUT_XXXX.
      DATA L_TAB_FIELDS TYPE RSFS_TAB_FIELDS.
      MOVE 'XXXX' TO L_TAB_FIELDS-TABLENAME.
      READ TABLE SELECT_FIELDS WITH KEY L_TAB_FIELDS-TABLENAME
                               INTO L_TAB_FIELDS.
      SELECT (L_TAB_FIELDS-FIELDS)
                 INTO CORRESPONDING FIELDS OF XXXX
                 FROM XXXX
             WHERE field1 IN ...
             AND   field2 ....
          PUT XXXX.
      ENDSELECT.
    ENDFORM.
    Notes
    If table L_TAB_FIELDS is empty (in other words, the report for table XXXX does not require any field selection), SELECT (L_TAB_FIELDS) ... behaves like SELECT * ..., that is, all fields of table XXXX are filled.
    The internal table SELECT_FIELDS is filled when the INIT routine runs in the database program or when the INITIALIZATION runs in the report. The program can access it if the logical database requires extra fields.

  • File Adapter: need to include filename in content being written

    I want to use the file adapter to write a file, using the filename convention to generate part of the name dynamically.
    However, I need to include the filename used for the output file in the actual content too.
    Any ideas if this can be done?
    Thanks
    Toby

    At a customer we implemented the file adapter to create a file based on a specic name for appending:
    <assign name="AssignStaticFilename">
    <copy>
    <from expression="'Output.csv'"/>
    <to variable="gFileAdapterOutboundHeader" part="outboundHeader" query="/ns2:OutboundFileHeaderType/ns2:fileName"/>
    </copy>
    </assign>
    In de FileAdapter WSDL we set:
    <jca:operation
    LogicalDirectory="OutputDirectory"
    InteractionSpec="oracle.tip.adapter.file.outbound.FileInteractionSpec"
    FileNamingConvention="%SEQ%"
    NumberMessages="1"
    OpaqueSchema="false"
    Append="true" >
    </jca:operation>
    Does this help you, based on a given input to set the filename and this variable to put it into the file?

Maybe you are looking for