Can we dynamically load BI reports ?

Hi,
I have 5 BI reports and I need to show just one of those report on the page depending on user's choice. Do I need to have bindings for all of them? Is there a way to dynamically pass "path" and other parameters into one single binding from a lookup during runtime ?
If that is possible, then we can just have one binding in the page def which can take parameters from the user and convert them into EL expressions. In this way we might save some memory space which would be unnecessarily wasted in loading all bindings during runtime.

hi
The way I had done this was calling the reports through webservice.
In this way on the user screen user just selects the report he was to display.
I just pass the report number to the webservice with certain defined parameters.
you can check this blog: http://raniadflearning.blogspot.com/2010/04/integrating-xml-bi-publisher-using.html

Similar Messages

  • Can we dynamically load BI reports at runtime?

    Hi,
    I have 5 BI reports and I need to show just one of those report on the page depending on user's choice. Do I need to have bindings for all of them? Is there a way to dynamically pass "path" and other parameters into one single binding from a lookup during runtime ?
    If that is possible, then we can just have one binding in the page def which can take parameters from the user and convert them into EL expressions. In this way we might save some memory space which would be unncessarily wasted in loading all bindings during runtime.

    you can create links of the individual reports on dashboard and then use can select what ever he want.
    so memory will be saved
    Cheers
    Nawneet

  • Can I dynamically load html from file, but do not stuck the UI

    I load my html from files.
    Use JEditorPane to setContentType("text/html"),
    use JEditorPane.read method to dynamically load html from file,
    the jeditorpane is add into a jdialog,
    when my application showing the dialog, the dialog was stuck,
    user can not click other UI component, I think it is not look dynamically
    So any other suggestion?
    You are appreciated.
    Thanks in advanced.

       yourDialog.setModal(false);

  • How Can I Dynamically Load And Run Another VI In Parallel To My Main VI?

    Hi,
    This question is supposed to be answered here. 
    http://digital.ni.com/public.nsf/allkb/CB109EC8325252A18625735B0049830B
    where it points to the example file 
    Example Program: Using VI Server to Call SubVIs that Run Parallel and Independently of the Calling V...
    However, this file is not there at the above link. Would appreciate if someone can share this program with me or any other advise.
    Thanks,
    Pulkit
    Solved!
    Go to Solution.

    I am attaching a VI that does this if you provide the path of the VI you want to launch dynamically (LV 8.5).
    HTH.
    PS: if the VI is already opened, it just brings it to the front (you may want that, if not, just remove that case and the corresponding test).
    Attachments:
    Run Vi.vi ‏23 KB

  • Can I call a dynamically loaded subvi from a subvi inside a library?

    I have an application that uses a .lvlib, this library has many subvi's.  From my executable, I can dynamically load subvi's within the library using the "open reference.vi" and passing in just the name as long as the subvi's being called are listed in the "always included" list of my build specification.  What I want to do now is load an external subvi (external to the library) using the same method.  But when I try to do this, LabVIEW cannot find the external subvi even when it is included as part of the executable.  It seems the Paths are getting messed up.  Here is what is happening:
    Lets say I have Mylibrary.lvlib as my library in the following path C:\MyProject\Mylibrary.lvlib,
    and internal.vi as my subvi within the library in the following path C:\MyProject\MySubVis\internal.vi,
    and external.vi as my subvi outside of my library in the following path C:\MyProject\external.vi
    This is all in the same project.
    I'm using the "Open VI Reference.vi" from internal.vi to call external.vi, and I'm including both internal.vi and external.vi in my executable (MyEXE.exe for illustration purposes).  When I run this part of my code I get an error and LabVIEW reports the path of my external subvi as: C:\MyProject\MyEXE.exe\MySubVis\external.vi which is really the path for my library subvi.  Why?
    Either way, when I hard code what is supposed to be the correct path to my external subvi:  C:\MyProject\MyEXE.exe\external.vi, LabVIEW can't seem to find the file, its' almost like an access scope problem because I'm trying to access something outside of the library.  Is there such thing?  If the file is part of my exe why can't LabVIEW find it???  How can I call my external.vi BY NAME from my internal.vi??
    Any help is appreciated.

    Your hardcoded path is incorrect. How do you have the build configured? Are you using the new executable structure or the pre-8.2 structure.
    Mike...
    Certified Professional Instructor
    Certified LabVIEW Architect
    LabVIEW Champion
    "... after all, He's not a tame lion..."
    Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

  • How can you display a dynamically loaded vi to the Web Server?

    I am working with LabView 6.1 and the Web Server. I can call a subvi and have it display on a remote machine using a browser with no problem. But what I would like to do is dynamically load and run a vi and have it display on the remote computer using only a browser. I have tried a small example of a front panel that invokes the run vi method (and fp.open prop) on another vi when a button is pressed, but the invoked vi is displayed only on the local computer. Is there any way of viewing dynamically loaded vi's on a remote machine without having a copy of LabView running on it?

    If i understand your question correctly, you want to monitor vi that are dynamically loaded on a remote machine without having LabVIEW installed on the machine from witch you want the monitor. I don't think it's possible how ever a good reference book would be Internet applications in LabVIEW. You can find it on BARNES&NOBLE.
    Hope i could help

  • Can I edit the rpt file & change the datasource before loading the report?

    We are an ISV and our application has a lot of reports.  Our reports use a SQL Server database as the data source and each SQL Server at our customer sites has a different name.
    In our testing we have determined that ReportDocument.Load tries to connect to the SQL Server that is saved in the RPT.  If it can't fine the SQL Server saved in the RPT the load take about 60 seconds while it is waiting for the SQL Server Connection to time out.
    We are using the Visual Studio 2008 version of Crystal Reports.  This did not seem to be a problem with VB6/CR8.5.
    We would like to edit the RPT and change the data source to the appropriate SQL Server before we call ReportDocument.Load.
    Is it possible to edit the rpt file and change the data source before loading the report?
    Or is there some way to tell Crystal not to try connecting to the DB
    during the report.load?
    In our case we will NEVER use the data source that is saved in the RPT, we will always change the data source using ApplyLogOnInfo.
    Thanks

    HI Todd,
    You Can Not edit the report document before ReportDocument.Load() because if you dont load the report then you dont have anything to Edit
    But as far as changing the datasource is concerned you can change that at runtime.
    For changing the datasource following code will help you if both databases have a same schema :
    Code for changing the database
    ConnectionInfo crConnectionInfo = new ConnectionInfo();
    crConnectionInfo.ServerName = "SERVER";
    crConnectionInfo.DatabaseName = "DATABASE";
    crConnectionInfo.UserID = "USERID";
    crConnectionInfo.Password = "PASSWORD";
    // Loop through the ReportObjects in a report and find all the subreports
    foreach(ReportObject crReportObject in crReportDocument.ReportDefinition.ReportObjects)
         // Check the kind of the ReportObject, if it is a subreport
         // proceed. If not skip.
         if(crReportObject.Kind == ReportObjectKind.SubreportObject)
              // Get the SubReport in the form of a ReportDocument
              string sSubreportName = ((SubreportObject)crReportObject).SubreportName;
              ReportDocument crSubReportDocument = crReportDocument.OpenSubreport(sSubreportName);
              // Use a loop to go through all the tables in the main report
              foreach(Table crTable in crSubReportDocument.Database.Tables)
    // Get the TableLogOnInfo from the Table and then set the new
    // ConnectionInfo values.
    TableLogOnInfo crLogOnInfo = crTable.LogOnInfo;
    crLogOnInfo.ConnectionInfo = crConnectionInfo;
    // Apply the TableLogOnInfo
    crTable.ApplyLogOnInfo(crLogOnInfo);
    // Set the location of the database. This value will vary from database to
    // database.
    crTable.Location = "DATABASE.OWNER.TABLENAME" or crTable.Locations;
    The sample for doing this is available on support site.
    Thanks,
    Prasad

  • Dynamically loading binary image of report source file

    Post Author: ChristopherZ1
    CA Forum: .NET
    I have stored all my .rpt files as varbinary images in a SQL 2005 DB.  I can retrieve the image write it to disk then load the report. i.e.
    Private m_RptDoc As New ReportDocument()
    m_RptDoc.Load(RptPathName). 
    My question is...is there a way to load the image directly into the ReportDocument without first writting it to disk and using the pathname?

    I would think that this crummy custom Image class hack would work, but surprise surprise -- the width/height in loaderInfo is flat out WRONG when the event fires. It seems to have a hard coded width/height no matter what the file size. Silly!
    <mx:Image xmlns:mx="http://www.adobe.com/2006/mxml" initialize="init()">
         <mx:Script>
              <![CDATA[
                   public function init():void {
                        this.addEventListener(Event.COMPLETE, loaded);
                   private function loaded(e:Event):void {
                        this.width = this.loaderInfo.width;
                        this.height = this.loaderInfo.height;
              ]]>
         </mx:Script>
    </mx:Image>
    Turns out, this version DOES work (but it's still a hack fix in my opinion):
    <mx:Image xmlns:mx="http://www.adobe.com/2006/mxml" initialize="init()">
         <mx:Script>
              <![CDATA[
                   public function init():void {
                        this.addEventListener(Event.COMPLETE, loaded);
                   private function loaded(e:Event):void {
                        this.width = this.contentWidth;
                        this.height = this.contentHeight;
              ]]>
         </mx:Script>
    </mx:Image>
    You guys at Adobe are so silly.    It would seem to me that Image's width and height should be set (rather than left at 0) once the content's width and height is known.  So now that I've fixed this bug (as far as I'm concerned) for ya Adobe, I take cash, cashier's check, or money orders--thanks!
    But really, if this doesn't work this way in Flex 4, I think it should.

  • Can't find my dynamically loaded VI path

    Hi Folks,
    I wrote a small VI to aid with file paths used for dynamically loaded VIs. It has worked well up until this point, when I tried to use it in a larger project. I can't seem to figure out what's wrong here - I was under the impression that as long as the (called) VI was included in the build, that it should be available from \built.exe\...
    In terms of directory structure, the caller VI is at:
    C:\Projects\LabVIEW\ABES v6.0.1\toplevel_602.vi
    The called VI is in:
    C:\Projects\LabVIEW\ABES v6.0.1\subvis\GUI\preferences\GUI_preferences.vi
    Caller:
    The 'AutoPath' VI:
    Info received when trying to call subvi from BUILT exe:
    Finally, project structure (auto-populating directories) and build spec's:
    What is it that I'm not getting here?
    Thanks for reading,
    Jamie
    v2009 devel. w/RT

    The first example assumes two things:
    There's a folder that has all the plugins.
    The actual plugin VI is included in the build (e.g. by putting it in the Always Included section, as shown below), so it's also placed inside the EXE.
    If this is done, then the "plugins folder" VI shown in my example and the actual plugin VIs keep their relative positions inside the EXE, which is the case the original poster had. In this case, as well as in my second example, you don't have to do anything - LV will automatically place the VI in the correct place INSIDE the EXE.
    I didn't look at your code, but if you're not including the plugin inside the EXE itself, this can become more complicated, because you have to manage all the paths and the dependencies. I suggest you try to avoid doing this unless you must have the ability to add plugins after building the EXE.
    If you do need, try searching around for info on plugin architectures. I believe there's some info in the LV wiki.
    Try to take over the world!

  • Slow Loading Crystal Reports

    Post Author: mel
    CA Forum: .NET
    I am using CR XI R2 SP2 and I am experiencing slowness when accessing a report within my application.  Though the report is always displayed faster the second time, the first time the report is displayed can take anywhere from 5 to 20 seconds.  Overall, the time it takes to display the report is inconsistent.  I was able to trace the source of the slowness to the ReportDocument.Load(ReportPath) call.  Can anyone please offer suggestions as to the cause of the slowness, and how to improve the speed?
    Thank you.

    Post Author: ole
    CA Forum: .NET
    Yes, I have same problem. When using CR in .NET-Application the first time, the initialisation is very slow. To work around I made a background threadafter starting the application with some CR operations like ReportDocument.Load(). When user will start CR really the initialization is done. Another fact: On users machine database connection has to be set dynamically by application at runtime. On Reportdocument.load the report looks for developper database (of course not reachable). Of course that is extremely slow. I made a workaround to load report once slowly, change database connection, and save report with new database connection for the next time. Next time loading is much faster.I don´t understand, why CR is looking for an useless database server when loading before I can set the real connection. Nevertheless: Performance of CR.NET should be improved. 

  • Hide the database connection window when load a report in a viewer control

    When I load a report in viewer and the datasource is empty always appears a window for connect to database. How I can hide ALWAYS that window. Is possible? I did see some ways for do it, at before versions of CR, but seems don´t works in last version of Crystal Reports for .NET.
    Anyway, is possible show a default text in viewer for information to user than don´t exists data?
    Many thanks for the help, and excuse me my poor english.

    The structure of XML is that: http://slexy.org/view/s20h0LVX1b
    The XSD showed is used for the design of report.
    In the empty datas the prompt dialog appears. The XML is different depend of context from application.
    When I have the XML then load it in a DataSet object, and call the SetDataSource method from ReportDocument. In that moment ReportDocument don´t have any information over his state? Exists some way for know if will need extra information from user through the prompt dialog? In that case I could load another report with "NO DATA" text, but I don´t have info.
    For example, is possible override the behavior from Crystal report viewer for show a different window? I did see events but nobody works for me.
    Many thanks for the help and excuse me for my poor english.

  • Applying a Template to a Dynamic PL/SQL Report

    I have an application in which there are several reports, all based on the wizard and using standard templates.
    One of my reports, however is a Dynamic PL/SQL Report, using htp.print statements to create the output.
    I'm not quite sure, how I can specify that I want to use the same template as the rest of my reports, so as to maintain the look and feel of the whole application.
    Can someone tell me how this is done, or where I can read about it?
    Thank you.

    Sergio,
    I have a table with two columns I want to display. The columns aren't wide but there are 15 or 20 rows. What I would like is that after 10 rows the report starts another set of colums beside the first ones. The standard report continues on down so you have to scroll down to see the bottom. I'm not sure if my explanation is clear so instead of:
    1 info1
    2 info2
    3 info3
    4 info4
    5 info5
    6 info6
    I want:
    1 info1 4 info4
    2 info2 5 info5
    3 info3 6 info6
    Not being too picky, it could also be:
    1 info1 2 info2
    3 info3 4 info4
    5 info5 6 info6
    I don't see a way of doing this with standard reporting so a PL/SQL report seems to be the way to go (which works fine except for the formatting). Sorry if I've just missed it in the options. I'd prefer to do it using standard HTMLDB
    Thanks.
    Paul

  • Anyway to have JDeveloper dynamically load BC4J components in memory?

    We are dealing with a large BC4J based application that contains large amount of application modules. So far, 300 application modules and total 4000 BC4J objects have been created. The size of the application still keeps growing daily... may up to twenty times than what we are having right now.
    While the application size growing, some unusual problem comes out. The biggest problem is that it makes JDeveloper very sluggish. It takes 15 minutes to just open JDeveloper and may need a few minutes to open the application module editor. (FYI: in our team, most developers have 1G memory and 1.8G CPU or up.) This is probably still OK for right now, but it will become a big problem later when the project size grows.
    When we analysis the project structure, we know that most of time, developer does not need to load all the application modules. For example, we have a core package that contains about 30 application modules. This core package needs to be shared and should be loaded. But, the other nine packages contain about 30 application modules each do not need to be loaded into memory at the same time in most cases. Since BC4J is XML based, we could not find a way to just partially load those application modules, especially when there’s cross references between them.
    When we check the project.jpr file, looks like all BC4J objects are referenced there. We have 40K lines in our project.jpr file now. When open JDeveloper, we believe JDeveloper will try to load all referenced BC4J XML content into memory. This consumes 500M memory and makes the overall performance very sluggish. The situation may become even worse when the project size keeps growing. For example, we cannot have 5000M (5G) memory in a development machine for 3000 application modules.
    We do know that by checking out the "ScanSource Paths to Determins Project Contents" in the Input Paths of Project Settings, we can short the JDeveloper’s open time, but this will not give BC4J relationship information and some other useful information… Not a practical solution.
    So, any idea to make JDeveloper dynamically loaded BC4J based on need?
    We’ve tried a few ways. One is to partition the application into different project and import the core one into the other projects. Only open the project in workspace when need. But this is not officially documented by Oracle and we are not sure whether it is possible/correct or not. Another thought is to remove the NOT-CURRENTLY-USED package from the project. But JDeveloper only support file level remove.
    Any help on this dilemma will be highly appreciated.
    Thanks,
    Charles

    The package is the unit of loading in the IDE for ADF business components.
    To edit components, they must belong to the project.
    To refer to components in a read-only way, they can be imported. This allows other editable or read-only components to refer to them without allowing the imported components to be edited.
    Both editable and imported components need to be loaded in memory to use them, so you can save memory at design time by creating projects that leave out as many packages as possible.
    Is there a way we can get your existing project in house to study its design time performance?

  • Dynamic load of images in to established Timeline effect

    Is it possible to dynamicly load images in to an already
    established timeline effect?
    Steps I've done.
    Stuffed a JPG in to the library by draging and dropping it in
    to the SWFs library.
    Dropped the JPG on to the main stage
    Right clicked the image then going down to Timeline effects
    and choosing an effect.
    Completing any changes in effects dialogue box and then
    clicking OK.
    Play the movie, and pat myself on the back that it worked.
    So then, how can I get Actionscript to load an image
    dynamically in to that same Timeline effect and have it do the
    effect to that instead of the one found in the library?
    I'm using Flash MX Professional 2004.

    hii
    Can u mention the error message getting while the status become RED??
    As what I understand, this may be the issue of invalid characteristics inPSA Data Records or also there may be records that does not support the lower case or upper case data.
    So just check the data in PSA Level
    Thanks
    Neha

  • Spry Tabbed panels + Progressive Enhancement and Dynamic Loading of Content With Spry

    Is there any way to combine tabbed panels together with "Progressive Enhancement and Dynamic Loading of Content With Spry"?
    Visit: http://labs.adobe.com/technologies/spry/articles/best_practices/progressive_enhancement.ht ml#updatecontent
    And click on the "Using Spry.Utils.updateContent()"
    The 3rd example shows how to use a fade transition whenever the content changes.
    I already have tabbed panels. My menu contains buttons (on tabs) and my Content div contains the panels.
    Tabs code;
    <ul class="TabbedPanelsTabGroup">
              <li class="TabbedPanelsTab">
                   <table class="Button"  >
                        <tr>
                        <td style="padding-right:0px" title ="Home">
                        <a href="javascript:TabbedPanels1.showPanel(1);" title="Home" style="background-image:url(/Buttons/Home.png);width:172px;height:75px;display:block;"><br/></a>
                        </td>
                        </tr>
                   </table>
              </li>
    etc
    etc
    etc
    and the panel code:
    <div class="TabbedPanelsContent" id="Home">
         CONTENT
    </div>
    I hoped i can use the example code from the link into my tabbed panels.
    I thought this code:
    onclick="FadeAndUpdateContent('event', 'data/AquoThonFrag.html'); return false;"
    could be added to the tab code like this:
    <a href="javascript:TabbedPanels1.showPanel(1);" onclick="FadeAndUpdateContent('event', 'data/AquoThonFrag.html'); return false;" title="Home" style="background-image:url(/Buttons/Home.png);width:172px;height:75px;display:block;"><br/></a>
    But the content doesnt fade...
    I know i need to change the header etc.
    The following is from the link:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xmlns:spry="http://ns.adobe.com/spry">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Aquo Events</title>
    <script src="../../../includes/SpryEffects.js" type="text/javascript"></script>
    <script src="../../../includes/SpryData.js" type="text/javascript"></script>
    <script type="text/javascript">
    <!--
    function FadeAndUpdateContent(ele, url)
    try {
         Spry.Effect.DoFade(ele,{ duration: 500, from: 100, to: 0, finish: function() {
              Spry.Utils.updateContent(ele, url, function() {
                        Spry.Effect.DoFade(ele,{ duration: 500, from: 0, to: 100 });
    }catch(e){ alert(e); }
    -->
    </script>
    <style type="text/css">
    /* IE HACK to prevent bad rendering when fading. */
    #event { background-color: white; }
    </style>
    </head>
    So i changed my header etc, put the SpryEffects.js and SpryData.js into position and nothing changed...
    Is there a way to keep my tabbed panel (or change as less as possible) and let
    A. The fade work
    B. The loading work.
    The problem now is that it loads all pages instead of only the home. Therefore i wanted this Progressive Enhancement.
    And the fading part is just because its nice...

    It doesnt show in the post but off course i changed this link;
    "data/AquoThonFrag.html"
    into;
    "javascript:TabbedPanels1.showPanel(1);"
    I must say i dont know if this even works...

Maybe you are looking for

  • Glitches in my sound!

    I'm hearing a click intermittently from my sound and it's audible when I listen to music or record my own music with a MIDI keyboard. I need to record my music, but I don't need the glitch as a part of it. Can anyone help me? Thanks gfclef

  • Error with DateField fields when locale is set to French

    Hi Guys, I have the locale/language switcher turned on in my app def. When I switch the language to French and use the calendar popup (DateField) the date returned is in an invalid format e.g. '19-oct.-2008' The problem with the format is that there'

  • Can I get my Macbook Retina 13's storage and cpu ungraded at an apple store?

    As the title says, Is it possible for a baselin model to be upgraded?

  • Reading Arguments by calling customRunActivity  - URGENT

    I am invoking interactive activity from external PAPI client. Arguments arg = Arguments.create(); arg.putArgument("assignedVal", "USER"); arg.putArgument("assignedTo", strAssignedVal); InstanceInfo[] infos = processServiceSession.getInstancesByView((

  • Help in print alv

    Hi i print report ( Z - program ) when i print the report i don't see any lines between the rows. ( the print is sap standard ) i use class CL_SALV_TABLE thanks have a nice day