Dynamic Report Generation C# Win Appl

Hi to all,
             My task is i have a DataSet object with some records. I want to bind all columns at run time.
Using C#.Net Windows application , C# 11 R2.
            I already did this type of work in Web application but some of th property is missing in Win Appl.
Experts please guide me to generte dynamic report.

Hello,
You shouldn't need to use the .Databind method at all - for either Windows or Web applications.  Some of the older Crystal Reports sample applications used it in the past, but that was long ago.  More often than not the .Databind method will cause more problems than it resolves.  We don't really recommend using it.
You can download some .NET samples to look at an ADO.NET Web sample and an ADO.NET Windows sample.  You'll see that neither sample uses the .Databind method.
[.NET Windows Samples|https://smpdl.sap-ag.de/~sapidp/012002523100006252822008E/net_win_smpl.exe]
[.NET Web Samples|https://smpdl.sap-ag.de/~sapidp/012002523100006252812008E/net_web_smpl.exe]
Extract the samples to their default location (C:\Crystal\CRNET) and look for the "vbnet_web_adonet" sample, and the "vbnet_win_adonet" sample.
What's happening in your Windows application without it?  Are you getting any errors?
If you're getting errors please post more of your Crystal related code.
Sincerely,
Dan Kelleher

Similar Messages

  • Dynamic  report generation

    We are migrating our client reports from crystal reports to business object reports and I need your help on how to achieve the below functionality in Business object reports.
    Requirements
    1. We need to generate and deliver around 30,000 statements to clients (mostly ftp and email) from 300 Webi report templates.
    2. This has to be a complete automated process with no user intervention.
    For example: Using Webi / Deski Report1, we need to run the report for each client account and then generate a statement and deliver it to client (only client specific data). Web1 reports are complex and some might take 30 to 60mins for generation.
    Questions
    1) Can it be done by just using BO tools with out coding ( using any .net sdk)?
    2) Can a single BO server handle the load, If not How to load balance reports generation and delivery across multiple servers?
    3) How to dynamically pass parameters to Webi report without coding?
    Thanks for reading my post. Any help/ suggestion is appreciated.

    In our current architecture, 
    1) We use crystal report templates and pass dynamic datasets at runtime to generate multiple client statements.
    2) For load balancing, we have 6 app servers with crystal runtime installed and we distribute load across the servers using custom code.
    My question is if use BO enterprise will there be any performance enhancements?

  • Dynamic report Generation INSERT REPORT/INSERT TEXTPOOL

    hi,
    I have problem while creating dynamic report I have a text file Containing all the lines of a Program If i download the text then the Pgm should be dynamically creted with text elements. i cant Copy text element alone in the text file So i used two lines of statements,
    1.one to insert lines of Program
    INSERT REPORT repname FROM code.
    2. To insert Text elements of that Particular Pgm
    INSERT TEXTPOOL repname FROM text2 LANGUAGE langu2.
    I want to know how to combine this both..
    or is there any other method to dynamically insert the report with textelements.
    Plz give me suggestions
    Hema

    It is soleved by declaring the text in file format

  • Browser based dynamic report generation

    Here is what i want to do.
    I want to allow our customers the ability, through an IE browser, authenticated to ColdFusion, to create their own reports through their own ColdFusion webpage.
    -We will list or enable certain databases, certain tables and certain columns with in a table that a customer will have access to
    -These columns will appear on a web page that our customers can access
    -The customer will be able to see the table headings and drag and drop them into a query
    -Once all of the columns are identify the customer can then create their own report
    -This should work exactly the way that excel 7 works where you can attach the spreadsheet to a ODBC driver and pull all of the data from a database. the only difference here is that the customer can only see certain fields and although they are working in a hosted environment they can create their own database queries through their browser.
    thank you.

    It can be done.  We do this where I work everyday.  We call them Ad Hoc Reports.  We have a table that holds all the tables and views they can report against (including columns).  We have a interface allowing the users to enter report titles, subtitles, widths of columns, etc...  We even have a parameters section where they can define items like [column] [equal to / like / less than / etc...] [value] with the columns being a drop down of valid columns.  Based on the parameters they defined we build the SQL.  We also show the SQL so that if they are fluent they can just enter in SQL and not bother with the parameters (which are basically just wizards for creating the SQL).
    Its very powerful and complex but can be done.  We use iText to generate our reports, cfdocument tag is way limiting.  Hope this helps.  Break it down to a wizard process for your first crack at it.
    1.  User selects table/view, enters report title, subtitle
    2.  Now that you have table, on the second page you can display columns they can select, give options to change label that appears on screen, so instead of seeing DOCNO they could enter in "Document Number" or something.  On this page we also let them define sorting and if certain columns are numbers should they be sum'ed/averaged, etc  at end of report
    3.  Define any additional paramerters or SQL editing
    4.  A detail screen showing everything, save it to database so the Ad Hoc can be ran by others "if marked public" and they don't have to keep entering in this stuff, especially if its a report they run often.

  • Dynamic crystal report generation - issues with column headings

    Hi All,<br>
    I'm trying to generate a crystal report dynamically based on a "result set" data(Query: select REPORT_ID, REPORT_NAME, REPORT_DESC, RPT_FILE_NAME, LOCATION from IRS_REPORT_DETAILS). I'm able to generate the report run time, But the report is without columns heads. I would like to include the column headings as well. <br><br>
    I searched the API(RAS) and found that there is a 'add(java.lang.String fieldName, java.lang.String headingText) " method present in "ReportObjectController" using which we can add the headings.<br><br>
    ReportDefController reportDefController = clientDoc.getReportDefController();
    ReportObjectController reportObjectController = reportDefController.getReportObjectController();
    reportObjectController.add( "{Table.Field}", "FieldName" );
    <br><br>
    I'm facing problems in using this code. When trying to use this function for my fields(Ex: reportObjectController.add( "{ IRS_REPORT_DETAILS.REPORT_ID}", "Report ID" );) it is giving me the following error:<br><br>"com.crystaldecisions.sdk.occa.report.lib.ReportSDKGroupException: The field was not found.---- Error code:-2147213310 Error code name:fieldNotFound"<br><br>
    <b>The following is my dynamic crystal report generation code:</b><br><br>
    public ReportClientDocument execute(String repName, String query) {
              ReportClientDocument boReportClientDocument = null;
              try {
                   boReportClientDocument = new ReportClientDocument();
                   boReportClientDocument.newDocument();
                      // Add a table based on the given Resultset to the report.
                   dbConnResultSet mySampleResultSet = new dbConnResultSet();
                   //mySampleResultSet.execute(query);
                   boReportClientDocument.getDatabaseController().addDataSource(
                             mySampleResultSet.execute(query));
                   IReportSource test = boReportClientDocument.getReportSource();
                   // Access all the database fields
                   DatabaseController databaseController = boReportClientDocument
                             .getDatabaseController();
                   IDatabase database = databaseController.getDatabase();
                   Tables tables = database.getTables();
                   ITable table = (Table) tables.getTable(0);
                   int NO_OF_FIELDS = table.getDataFields().size();
                   int LEFT_POSITION = 200;
                   // Add all the database fields to the report document
                   for (int i = 0; i < NO_OF_FIELDS; i++) {
                        IField field = table.getDataFields().getField(i);
                        FieldObject fieldObject = new FieldObject();
                        fieldObject.setFieldValueType(field.getType());
                        fieldObject.setDataSource(field.getFormulaForm());
                        IReportObject rep = (IReportObject) fieldObject;
                        IObjectFormat objformat = rep.getFormat();
                        objformat.setEnableCanGrow(true);
                        objformat.setHorizontalAlignment(Alignment.from_int(1));
                        rep.setFormat(objformat);
                        rep.setLeft(LEFT_POSITION);
                        rep.setWidth(1000);
                        LEFT_POSITION = LEFT_POSITION + 1000 + 50;
                        ISection section = boReportClientDocument
                                  .getReportDefController().getReportDefinition()
                                  .getDetailArea().getSections().getSection(0);
                                   //***************** Data being added to the report here, But headings are not added*****************
                        boReportClientDocument.getReportDefController()
                                  .getReportObjectController().add(rep, section, i);
                   boReportClientDocument.createReport();
                   /*Some report saving code is present down*/
              } catch (ReportSDKException ex) {
                   ex.printStackTrace();
              } catch (Exception ex) {
                   ex.printStackTrace();
              return boReportClientDocument;
    <br><br>
    appreciate your help.

    IField field = table.getDataFields().getField(i);
    Here you are getting the first field in the array.  This may not be the field you want to add since we aren't sure how the arrays are ordered when retrieving fields from the report.  It is better to retrieve the fields with the findObjectByName method, thus ensuring you are retrieving the field you want to add to your heading.

  • Report Generation: Dynamic VS. Static

    Hi there:
    I have following questions that I'm not sure how to get clarification. If you have some input, please let me know. You can also email me directly to my email address.
    I'm looking into a report generation part of this project. One of the requirements is that, the reports need to be generated periodically (ie. daily, monthly, seasonly ...) and automatically (ie. 1200am daily, 1200am on 30/month ... etc). Then the output(generated reports) will need to be stored in some well structured directories. This is what I ment by static report generation. Now, the question is that, do current Oracle reporting utilities provide "Scheduling" functionality as mentioned earlier. Also, functionality that allow the report auto-generation to output reports in a stmart way, such as save it in a specific directory. And the name of the report file will be according to a specific format (ie mmddyyy.html)
    Second questions is that, if I go with the dynamically route, would this method consume a lot of system utilities?? This means that, I can set up my report server into a web/portal like service. Users can always request reports from a www client and a server generate this report on-the-fly.
    Thank you for your inputs
    Mark

    The oracle reports server can schedule batch reports at specific periodic times. It can generate them to specific directories and file names to.
    This will consume less resources then running the report again and agian for each user. You might want to also check the tolerance parameter that you can pass to reports server for reports caching purposes

  • Word report generation toolkit error with Win 7 LabVIEW 2013, Word2010

    Hi All
    I'm seeing different Errors using the Report generation toolkit. Maybe you can help me with that.
    The errors are:
    -2147417846, application is busy in Word_Get_range.vi
    -2146824090 Exception in Microsoft word: Befehl misslungenHelp Path is wdmain11.chm and context ...
    -2147417846 application is busy in Word_Quit.
    the error messages are attached to the post.
    I'm testing 10 sensors with one application and want to run up to 5 applications on one computer. Since I'm seeing such errors as application is to busy I set all my report generation vi's as non-reentrant execution and additionally added some pause after each word modification.
    But I'm still seeing such errors when I run two applications on one computer.
    What is the best way to deal with these errors?
    thanks
    best regards
    Urs
    Attachments:
    exceptionerror.PNG ‏20 KB
    BusyActiveX2.PNG ‏20 KB
    BusyActiveX.PNG ‏22 KB

    Here my Vi's involved in creating the report.
    Is there a way to check wheter word is busy or already open?
    Attachments:
    save report as PDF.vi ‏26 KB
    create_report.vi ‏70 KB
    Word_Update_Table.vi ‏34 KB

  • Report Generation Toolkit failure with Win 7 and Labview 2013

    I recently had my computer updated to Windows 7 and am now seeing a problem with the Report Generation toolkit (version 2013) when working with Excel files.  If I try to run the New Report.vi with report type Excel selected I get  error -2146777998.  Doing the same thing with Word selected eventually opens Word, although this takes about ten seconds, but it does not generate an error.  Selecting Standard Report or HTML also run without errors.
    I've researched this error on line but I keep ending up .NET and C# forums where everything goes over my head. Has anybody got any suggestions?
    Solved!
    Go to Solution.

    I found the solution to this particular source of error code -2146777998. There are two template files that reside in C:\Program Files (x86)\National Instruments\LabVIEW 2013\templates\Report  by the name of MSOffice_RGT_Template.dot and MSOffice_RGT_Template.xlt.  The problem came down to that these templates got corrupted somehow during the fresh install. As soon as I replaced them with versions from another machine the problem disappeared.
    Just as a side note, I discovered the problem by kicking off the MS Office Report Express vi and out came a much clearer message that aimed me at the templates. Not quite sure why that message isn't echoed into the individual subvi's on the pallette, but life is a mystery.

  • Report Generation Toolkit and App Builder question..

    Hello,
    I am in process of modifying my test code for writing my data to Excel. When I first developed the tests I did not have the Report Toolkit of Excel so I built the ActiveX VIs I needed. Now since I have upgraded to 7.1.1 with the MSOffice Toolkit I am rewriting my test code to use the toolkit VIs as it seems to work much better and faster then what I had done.
    My question is this. Since I have my testcode distributed to multiple machines when I build my App, do I need to add every Dynamic VI within the toolkit to my App? if so is there and simple way to find exactly which dynamically called VIs are used within the toolkit VIs?
    Thanks
    Jeff
    Jeff D.
    OS: Win 7 Ultimate
    LabVIEW Version: 2011,2010,2009 installed
    Certified LabVIEW Architect

    Greetings jdebuhr ,
    I'm using LabView 7 and have the report generation toolkit, In the "Report Generation Toolkit User Guide.pdf" manual under the title Cearating stand alone applications you 'll find the names and the path of the required dynamic VIs to be included in your EXE file (using appliocation builder)
    Check this manual.
    Ayman Mohammad Metwally
    Automation Engineer
    Egypt - Cairo

  • Report generation toolkit and signal express user step : problem of closing reference in "Stop" event

    Hi all,
    I'm trying to make a package of Vis to easily make Excel reports with Signal Express. I'm working on LabVIEW 8.2.1.
    I'm using the report generation toolkit, so I build a .llb from my project which contains all the hierarchy of my steps, but also the hierarchy of dynamic VIs called.
    I have made some steps, like "Open Workbook", "Write Data", etc.
    My steps run well, excepts one step : "Close Workbook".
    If my "Close Workbook" step is firing on "Run" Signal Express event, I have no error, so my reference is properly closed.
    But if my "Close Workbook" step is firing on "Stop" Signal Express event, I have an error "1", from "Generate Report Objectrepository.vi".
    I feel that I'm trying to use a reference which has been killed in the "Stop" step...
    I would like to know what exactly do Signal Express on "Stop" event and why my close function does'nt run well.
    Thanks,
    Callahan

    Hi Callahan,
    SignalExpress (SE for short) does the following on the Stop event:
    1. Takes the list of parameters that SE found on your VI's connector pane, and sets the values that the user set from the "Run LabVIEW VI" configuration page, if any.
    2. Then tells the VI that SE is running the Stop event by setting the Enum found on your VI's front panel. This in turn should produce some boolean values telling your VI to execute the Stop case.
    3. The VI is then run, with those values and states.
    4. SE checks to see if any errors where returned.
    5. Since this is the Stop event, SE releases the reference to the VI which it possesses.
    Questions for you would be, is the reference to your Workbook linked to a control on your connector pane, or held in a uninitialized Shift Register. If it's held in a Shift Register, SE would not be aware of it, and would not be able to affect that reference.
    Hope that helps. Feel free to post your LLB if it doesn't.
    Phil

  • Report Generation for Excel does not work after using the Application Builder

    I have a VI that writes data to an Excel file using the Report Generation Toolkit. I recently compiled the VI into a single Application (EXE) using the Application Builder. My VI runs its tests properly, but no data is written to Excel. What could be the cause? I don't receive any error messages.

    Hi
    I usually build exe-files, which sometimes also have report functionality.
    Open the Application Builder and check the following things:
    1. Add the following vis: _Word Dynamic VIs.vi, _Excel Dynamic VIs.vi They should be located in the directory ..\LabVIEW X.X\vi.lib\addons\_office in the llbs _wordsub.llb and _exclsub.llb (report1.jpg)
    2. If you use an Installer, go to the Advanced Settings. There you can select some things to include in the Installer. Check if "NI Reports Support" is selected. (report2.jpg)
    These are the things I always do, if I need reports and I never had problems up to now. I made two screen-shots of these settings.
    Hope this helps.
    Thomas
    Using LV8.0
    Don't be afraid to rate a good answer...
    Attachments:
    report.zip ‏25 KB

  • Report generation toolkit VI error when running EXE

    A VI inside the Report Generation Toolkit (version 1.1.2), Excel Find Application Directory.vi, will not function correctly when running an EXE.  The "Current VI's path" block will return the path of the currently running EXE rather than the path of the Excel Find Application Directory VI.  (The same would be true for Word Find Application Directory.vi.)
    -Joel
    Solved!
    Go to Solution.

    Have you had a look at this knowledgebase article? The error is caused due to the exclusion of any dynamic VI.
    Ipshita C.
    National Instruments
    Applications Engineer

  • Error 7, report generation toolkits do not work after building.

    Hallo guys:
    one problem. help!
    I tried to build my programs with application builder, unluckly builded exe application does no work well as before, i checked some similar post from this forum, and added that NIReprot.llb in my project and rebuild, the problem still takes place, my program append some text, tables, and charts into a word template with that Report Generation Toolkits, but it always gives out error 7 and 'NI_Word.lvclass:new report subVI.vi -> NI_report.lvclass:New Report.vi -> Creat New Report.vi ->...'error information.
    is there anyone can give me some clues about this annoying problem.
    thanks a lot!!!
    Solved!
    Go to Solution.

    When you say "attached all this library to my project", it is not clear whether you answered the question about including the dynamic VIs in your build specifications. See attached image. You will need to select the files in your project and set them to Always Included. Have you done this?
    Attachments:
    alwaysincluded.JPG ‏46 KB

  • Error 7 report generation

    Good Day,
    I seem to be having a little trouble with the report generation tool.  I'm running Labview 7.1, have the MS Report Toolkit.  I have a construct that creates and formats an Excel Report.  It works fine when running it from the developement environment, but when I create an executable and run from the runtime environment, it errors right at the first stage of this sequence, at "New Report.vi".  To this VI I have an "Excel" constant tied to input "Report Type" with no other inputs.  The error that is caught is code 7 "Open VI Reference in New Report.vi->filename.vi" replacing filename with the name of my file (not to state the obvious).
    Is there a seperate runtime toolkit that needs to be installed?
    Any ideas?  Thanks a bunch.

    Hello,
    Please read the section in the User Guide for the Report Generation Toolkit on building an executable out of your VI.  There are many VIs that are called dynamically by the toolkit that must be handled in a special way (specifically, added as Dynamic VIs to your application) when you build your VI into an executable.
    -D
    Darren Nattinger, CLA
    LabVIEW Artisan and Nugget Penman

  • Error involving Report Generation Toolkit and Labview Run Time Engine

    Developed an application using LabVIEW 6.1 and LabVIEW Report Generation Toolkit for Microsoft Office 1.0.1. From there, tried to build a shared application for use with the LabVIEW Run Time Engine. The Run Time version functions properly until "New Report.vi" is called and then an error is generated, code 7, calling out "Open VI Reference in New Report.vi" could not be found. When building the application, I did include the "NI Reports Support" in the advanced installer options. The machine used for original development and application build is running Windows XP Pro and Office XP. Any suggestions??

    I am having the exact same problem but with LV 6.1 and M/S WORD 2000. It appears that the "New Report.vi" is trying to open "C:\APP.DIR\Word_Open.vi" and "C:\APP.Dir\Word_Open_Document.vi" by reference. The "OFFICE 2000.TXT" says that "_exclsub.llb and _wordsub.llb must be added as support files when building an application or a dynamic link library with the application builder." I added them as Support Files and I copied them to the "C:\TESTER\" where the TESTER.EXE is and I still get ERROR 7 in "NEW REPORT.VI" at VI OPEN REFERENCE.
    Do I need to make a "C:\TESTER\DATA\" sub-dir and put the support files there?
    I am building on MY COMPUTER on F: Drive on a network and transporting files to the real Tester.
    I displayed my App.Property of APP.DI
    R at start up and it is C:\TESTER\ ! How would my application know that "Word_Open.vi" and "Word_Open_Document.vi" are actually inside the _wordsub.llb?
    Any ideas ?
    Greg Klocek

Maybe you are looking for