Archive

Posts Tagged ‘Crystal Reports’

How to Use the Send To & Email To Feature

October 26th, 2017 No comments

When a user runs a Crystal Report from the home page of Ripplestone, the report is displayed within the users web browser. They have the option to manually save the report by exporting the report output to a file or they can print the report. But if they would like the report saved to a file everytime the report is run they can take advantage of the Send To feature.

The Send To feature is used to either create and save a file of the report or to email a copy of the report via email. This action will be performed each time the report is run on demand fom the home page of Ripplestone.

This can be useful when you need a physical copy of the report or another system will be looking for a copy of the report. Perhaps in an Excel or CSV format.

SendTo

Export to a File

The Export to a file section allows you to select the file type to be saved. The available formats are:

  • pdf
  • Excel
  • Word
  • RTF
  • CSV
  • Text
  • Tab Separated
  • Crystal Report

The location for the file can be on the local Ripplestone server or on another server using a UNC style path. You also have the option of selecting a pre-defined location from the drop down. These can be setup in the Saved File Locations page. The file name can be any valid file name and can also use the following tokens to change the name at runtime.

  • [Date] – Formats the date in yyyy_MM_dd
  • [DateTime] – Formats the date in yyyy_MM_dd hhmmss
  • [Date:] – Allows you to enter the date and time in a custom format
  • [FileName] – Uses the document file name without the extension
  • [Title] – Uses the title of the document
  • [DocID] – Uses the internal ID for this document
  • [ParameterX] – Uses the value of the parameter that was entered when the report is run. Replace the X with a number.

There are two options for what to do if the file already exists. You can select to have the file replaced if there is a file with the same name already in the folder; or you have the option to append a number to the end of the file name.

Send to Email

The Send to Email section allows you to have a copy of the report emailed to one or more people. If using multiple email addresses separate them with a semi-colon.

The from address needs to be a valid email address for most SMTP servers.

Using External Parameters for a Scheduled Crystal Report

February 18th, 2016 No comments

When running a scheduled Crystal Report in Ripplestone that has at least one parameter, there are times when the list of parameters values is large or comes from a changing source of values.

With Ripplestone you can use this external list of parameter values to burst the report. The scheduled report will run the report once for each set of parameters and optionally use an email address to send the report via email.

Below is an example of how to use the external parameters bursting feature to send a yearly sales report using a parameter to filter the report by country and emailing each report to an email address.

To start you need to create a Database Connection to the data source. In Ripplestone, the database connection page is a centralized location to create the information needed to connect to a data source. It is used by reports, dynamic parameters and external parameters to open and read data.

Create a new database connection with the Connection Type of Dynamic Pick List. The example below is getting the parameter data from SQL Server from a database called ExternalParams. You will also need a valid User ID and Password to connect to the data source.

image

From a scheduled report, go to the External Parameters tab.

Start by enabling the feature with the checkbox at the top.

Select the database connection created above and add the SQL statement to select the fields that contain the data needed for the report’s parameters and the email address if sending the report via email.

In the example below, the report is getting data from a view called vwGetCountries. It needs the fields Country and Email; the Country field will be used for the first parameter in the report and the Email field will be used to send the report to the email address(es) contained in the field. If more than one email address is in the field separate them with a semi-colon.

The Test link can be used to ensure that the connection works and that the data retrieved is correct. In the example below, it returns three countries.

The mapping section is where you can assign the fields to the reports parameters and to the email address.

image

Note: If you are using an email address to send the report, you will also need to enable the Email feature and fill in the From, To and Subject lines. The To field will be replaced by the data from the external source.

image

After setting everything up, the report will run at the scheduled time and run once for each record found in the data source. The report will be saved into the report’s history and email the report, using the email address stored in the data source.

Force Larger Font when Exporting to PDF from Crystal Reports

February 11th, 2016 No comments

When exporting from the Crystal Reports Runtime Engine, some reports will have a smaller font size when exported to pdf. This can also happen when printing a report since browsers such as Chrome, Firefox and Edge will first export the report to pdf and then print the pdf file. Internet Explorer can either print using an ActiveX control or by also first exporting to a pdf file. When using the ActiveX control the fonts retain the correct size.

To force the engine to maintain the font size you will need to make a change to the Windows Registry. To make the change open the Registry Editor by typing RegEdit.exe in the Run dialog box.

image

Once the Registry Editor is open, find the Crystal Reports key using the following path:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Crystal Reports

Most likely you will need to add two new keys. First add a key called Export and then a new key called Pdf if they are not there. The final structure will look like this:

image

In the Pdf key add a new DWORD called ForceLargerFonts

image

In the new DWORD, change the value to a 1 and save the value.

image

Once complete, the new value should look like below:

image

Close the Registry Editor and test opening a report in Ripplestone and export it to a pdf file.

Printing Crystal Reports from the Scheduler

February 2nd, 2016 No comments

When trying to send a Crystal Report directly to a printer from the Ripplestone scheduler, you will need to change some settings to allow the scheduler service to have permissions to the printer.

Changing the Login for the Service

By default the Ripplestone scheduler runs as a local system account. This account usually doesn’t have permissions to print to network printers.

image

To allow the service to have permissions to print, change the Log On to a user that does have permissions. This will require a re-start of the service.

image

Install the Printer on the Ripplestone Server

To make sure that the server has the correct driver you will need to install the printer on the Ripplestone server.

By installing the printer, you should also get the printer to display in the drop down list of available printers. If the printer doesn’t display in the list you can type in into test box to the right of the dropdown.

image

Make the Printer the default printer

If the Crystal Report has the No Printer option selected on the Page Setup dialog box, then the printer on the Ripplestone server will need to be selected as the default printer.

image

If you cannot make the printer the default printer, then the No Printer option will need to be un-checked and the report will need to be re-published to Ripplestone. Once the report has been re-published it can be printed to any printer. This seems to be a limitation within the Crystal Reports Runtime Engine.

Updating the List of Values (LOV) in Crystal Reports

September 24th, 2015 No comments

Using Crystal Reports Designer

When using dynamic parameters within Crystal Reports you can easily have more parameter values than Crystal Reports can display.  The default number of values that can be displayed is 1,000 and if you are using cascading parameters the number of values is the sum of the values in all the parameters used in the cascade.

In the screen shot below, the values should go to the ZM, but the list stops at ME since the combination of the Customer Code parameter and the Date Range parameter is greater than 1,000.

LOV-Default

To fix this problem in the Crystal Reports designer you need to edit the Registry.  The location for Crystal Reports 2008 is below.  Normally the last key of LOV is not created and will need to be created in the Registry.  Once the LOV key is created you will need to create a string value called MaxRowsetRecords and assign a number to it.  The number can be any value greater than 1,000 if you know how big the list of parameter values is, or you can make the value -1 to have no limit.

HKEY_CURRENT_USER\SOFTWARE\Business Objects\Suite 12.0\Crystal Reports\DatabaseOptions\LOV

Registry

After the change has been made to the Registry, the parameters should display all the values.

LOV-Updated

Using Ripplestone

When you are using Ripplestone, the reports are run using the Crystal Reports Runtime Engine and this uses a different section of the Registry.  The location for the runtime engine is below:

HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Crystal Reports\DatabaseOptions\LOV

The LOV key will need to be added and then the string value of MaxRowsetRecords.

The big catch is that the value of -1 cannot be used, this must be a number greater than 1,000.  If you use the -1 value, the report will display only the first 1,000 values.

Registry for the Crystal Reports Runtime Engine

Once the MaxRowsetRecords is created and set to al value that is greater than the number of parameter values you will see all the values in the parameter page in Ripplestone.

How to Use RSExpress

February 12th, 2015 No comments

This feature, called RSExpress, allows a report to be run and viewed in the report viewer without first logging into Ripplestone. This allows users of Ripplestone to run reports that are published in Ripplestone from external applications without the users first logging into Ripplestone and running the report from the Ripplestone application.

This feature uses a query string that is appended to the URL to provide information that the viewer and report need to run. This information is normally provided by the Ripplestone application, but will now be provided using the query string

Below are instructions on how to use this feature

1. The query string can take up to 5 parameters. The first 2 are required and the others are optional. The name and description of each are listed below.

Parameter name Required Description
DocID X The ID of the published document.
Note: The report must already be published within Ripplestone.
User X The name of an existing user within Ripplestone. For example, AdministratorThis can also be the encrypted user name described below.
Params This is used to pass in values for report parameters. If the report has multiple parameters each parameter is separated by a comma.Range parameters can be passed in and are separated by a semi-colon (;).
For example if a report had two parameters, a Country parameter and a HireDate parameter and the Hire Date parameter is a range type, then the syntax would be Params=USA,4/1/1992;8/15/1992. This would pass “USA” into the Country parameter and would pass in the two dates as the start value and end value for the HireDate parameter.
Key A system generated key to make this unique. This helps make the query string more secure.
ExtFileName This is used to pass in a file name that will be used to save a copy of the report. This External File Name feature needs to be turned on in the Edit Document page to be used.

1.2. To create the URL you create a valid URL to the CRViewer.aspx page. For example, www.ripplestonedemo.net/CRViewer.aspx

or
//servername/ripplestone/CRViewer.aspx

3. Then to append the query string; add a question mark (?) followed by the parameters for the query string. These are the parameters listed above. The parameters are separated by a “&”

RS Express Tab

To help with creating the query string we have added a tab called RS Express to the Edit Document page. This tab allows you to turn on or off the RS Express feature for this document, create a unique key and view a template for the query string.

image

System Options for RS Express

The RS Express feature can be controlled at a system level on the System Setup and Configuration page.

RS Express – Active: This option allows you to turn the RS Express feature on or off. Turning the feature off will not allow any published reports to use RS Express, unless the report overrides this option at the report level.

Require Unique Key: This option will require that a unique system generated key be used in the query string. Using the key makes the query string more secure by eliminating the ability for a use to guess different DocID values.

Use Encrypted User Name: This option uses an encrypted user name instead of the plain test user name. This increases the security when the user name is used for Row Level Security and you do not want users entering other names into the query string

image

Encrypted User Name

To get the encrypted user name for the query string, go to the Edit User page and then the User Options tab. This will contain the user’s name in an encrypted format. This can then be used instead of the normal user name.

For example, the URL below is using the encrypted user name:

http://localhost:52663/CRViewer.aspx?DocID=53&User=cfRiKypX6cI=

image

What’s New in Ripplestone 3.4.3

January 14th, 2014 No comments

Overview

Below are the new features, updates and bug fixes for Ripplestone version 3.4.3.

Home Page

Use Parameter Name for Prompt Text (3.4.3.0)

If the report doesn’t have a value for the prompt text then use the parameter name for the prompt text

Scheduler Changes

The Ripplestone Scheduler Server Has Been Re-Written (3.4.3.0)

The scheduler server has been re-written to improve the performance and scalability.

Added New Yearly Option (3.4.3.0)

Added a new schedule interval of Yearly. This will run a job once per year using the Begin date for the month and day and the start time for the time of day to run.

New_Yearly_Option

Edit Folders Page

Added New Fields to Track Who Changed the Folder and When (3.4.3.1)

Added two new fields to track who changed the record and when it was changed.

New_ModifiedBy_Fields

Edit Document Page

New Unique Key for RSExpress (3.4.3.2)

There is a new option for RS Express that allows the Administrator to turn on or off the RS Express feature.

There is also a new option that will require a unique key to be added to the query string. This will make the feature more secure and make it harder for a user to guess at document ID’s

Both of these new options can be set on the System Setup and Configuration page on the first tab. These global options can be overridden for each report on the Edit Document page

Unique_Key_RSExpress

Global Options on the System Setup and Configuration Page

Unique_Key_RSExpress2

Individual Report options on the Edit Document Page

Added New Fields to Track Who Changed the Report and When (3.4.3.2)

Added two new fields to track who changed the record and when it was changed

New_ModifiedBy_Fields_Edit_Document

Remove Duplicate Entries from the Dynamic Parameters (3.4.3.0)

When using the Ripplestone Dynamic Parameter feature if the values for the parameter had any duplicates the list would stop loading at the first duplicate. This version will ignore any duplicates when loading the parameter pick list.

Fixed Bug when Editing a Report and Moving it to a New Folder (3.4.3.1)

When a user would click on a different folder in the Edit Document page the document would not get moved to the new location. This has been fixed and the document is now moved to the folder selected.

Users

New User Options (3.4.3.0)

Users can now override the global settings for the Use Minimal Home Page and Display Favorites.

With the Use Minimal Home Page, the user can use the global setting or turn on or off the feature. With the feature on, the home page will display the least amount of data. This is helpful for very large sites or if there is a slow connection.

With the Display Favorites as Home Page, the user can use the global setting or turn on or off the feature. With the feature on, the home page will display the favorites when they login and not the standard home page. This is for the user that has the reports that they use most often added to their favorite’s area. They can still access the home page by clicking on the Home link

Below is the Edit User page with the new User Options tab displayed with the two new options.

New_User_Options

System Setup and Configuration

Added New Option for the Home Page (3.4.3.0)

Added two new options for the home page. Both of these new options can be changed by each user.

Minimal Home Page – This option only displays the essentials needed for the home page. Extra information is not displayed. This is helpful when the connection is not fast or the users do not need the extra information.

Display Favorites As Home Page – This option allows the favorites to be displayed as the default home page. This option is for the users that want to quickly see all their favorite reports first.

New_HomePage_Options

Bug Fixes

Fixed a Issue with Users Marked as Inactive (3.4.3.0)

If a user has the Active flag un-checked they were still able to login to the system.

Active_User_1

Active_User_2

Updating the Page Size in the Parameters List

May 24th, 2013 No comments

With the new version of the Crystal Reports Runtime Engine there is page size limit that determines how many parameter values are in each page of values. The default is 200 values per page or batch.

Below is an example of a report that has 2100 parameters. The parameters are broken up into 11 pages of values. The first page has the first 200 parameter values and as you move through the pages you get the next 200 values.

image

This page size can be changed in Ripplestone by updating the web.config file located in C:\Sites\Ripplestone\web.config (this is an XML file that can be updated with a text editor).

Look for a section called and add or change the line highlighted below. In the example the value is set to 500, but this can be any value.

  
    
      
        "documentView" value="printlayout" />
        "EnableTextClipping" value="true" />
        "maxNumberListOfValues" value="500" />
      
    
  

After the config file has been changed to allow 500 values per page, there are only 5 pages of values.

image

What’s New in Ripplestone Version 3.3

May 16th, 2013 No comments

Ripplestone 3.3 – Summary

Home Page

Home Page Data Caching

Most of the data used by the home page is now being cached by the system. This increases the performance of the home page by reducing the number of calls to the Ripplestone database. This option can be controlled by the administrator in the web.config file.

Fixed a problem when updating the home node

When changing the root/home node on the home page there was a bug that would not allow the administrator to change the node name.

Scheduler Changes

New FTP Library

Ripplestone is now using a new and improved FTP library and provides more options

clip_image002

Fixed bug to display the Schedule time correctly

When a scheduled job was set to run between 1 – 9 minutes after the hour the display would not display the 0 (zero) before the minute. It would look like 4:5 PM; in the new version it is displayed as 4:05 PM.
clip_image003

New Output type

A new output type has been added to the scheduler. The Editable RTF Export type has been added to the Output Format dropdown.
clip_image004

Fixed bug for Jobs between midnight and 1:00 AM

There was a bug for any jobs scheduled between midnight and 1:00 AM. The job would not always get started at the correct time.

New icons on the list schedule page

The Scheduled Documents page now uses icons to save space on the page. The page also added a Run Now button (the Green Arrow) to run a scheduled job now and bypass the scheduler. This is good for testing or when you need to run a job outside of the scheduled time.

clip_image006

Fixed a problem when Emailing a scheduled job to multiple addresses

There is an option in the System Setup and Configuration page to turn on an option to email messages from the scheduler one at a time. If this is turned on then emails are sent to each recipient as a separate email. If the option is unselected then all the email addresses are added to the email and the email is sent once. All recipients can see who else the email was sent to. There was a bug in the system that stopped the email from being sent. This bug has been fixed and all email addresses will be added to a single email.

Below is the option from the System Setup and Configuration page.
clip_image007

Database Connections

Added new fields to allow new Server and database

The Database Connection page has been change to allow the administrator to change the database server and the database name that the report will use. This helps when the Crystal Report need to get the data from a new server or from a new database name without needing to change and republish all the Crystal Reports that use that database connection.

The example below shows the original database connection using the RipplestoneTestServer and then with the new option the reports will login and use the RipplestoneProduction server.

clip_image009

Alternate Database Login and Password

This new option is set on the Edit Document page and allows the Crystal Report to have a different database login and password that will override the login and password stored in the database connection for that report.

clip_image011

Security

Windows Integrated Security Users

If the Ripplestone application is configured to use Windows Integrated Security the users are required to have the checkbox checked for Integrated Security to work. If the user does not have the checked box checked then they will be redirected to the sign on page.

Ripplestone Performance Tips

October 16th, 2012 No comments

When publishing Crystal Reports to Ripplestone; there are a few simple options within the Crystal Reports designer that can be checked to increase the performance of the reports when they are run from within Ripplestone.

Page Setup

The first is to set the No Printer option on the Page Setup dialog box. This will stop the report from looking for the selected printer each time the report is run. It also has the added bonus of making the report look better within the web viewer. Open the Page Setup by clicking on Files and then Page Setup

SNAGHTML1d9286d6

Figure 1 – Page Setup Dialog Box

Report Options

The report option dialog box has several options that can help the report process quicker. Open the Report Option by clicking on File and then Report Options.

  • Perform Grouping On Server – This works with the “Use Indexes Or Server For Speed” option to allow the server to perform much of the processing for the report. This reduces the processing and memory used by the Ripplestone server.
  • Use Indexes Or Server For Speed – Using this option will allow the SQL query to use the database indexes and can increase the speed when selecting large amounts of data.
  • Verify on First Refresh –Unchecking this option will stop the report from first checking the database to refresh the schema. This will save a trip to the database.
  • Verify Stored Procedure on First Refresh – Unchecking this option will stop the report from first checking the stored procedure to refresh the schema. This will save a trip to the database.
  • Save Data With Report – Unchecking this option will keep the file size small and will allow the report to be loaded by the Crystal Report engine quicker.
  • Perform Query Asynchronously – Check this box to allow the report to execute the SQL statement without requiring Ripplestone to wait for the select statement to finish.

SNAGHTML1d9554de