In ActiveReports 17, the
LaunchDataSourceWizard
flag was added. A customer used this flag to enable or disable the automatic launch of the data source dialog when creating a report.
In ActiveReports 18, the new Report Wizard has been implemented to combine the report creation dialog with the report data binding steps. The
LaunchDataSourceWizard
setting has become unnecessary and is now simply ignored.
The legacy RDL was removed, and RDL Multi-Section was renamed to RDLX. The RDL report type is no longer available for new reports in ActiveReports 18. RDL reports, created in the previous versions of ActiveReports, are automatically converted to the RDLX format when opened in the Designer.
The
GrapeCity.ActiveReports.Design.DesignerReportType.Rdl
enum is now Obsolete.
We recommend that you postpone upgrade and contact our
Support Team
in case backward compatibility with old AR versions is required.
The Calendar sample is undergoing a number of changes related to the public API of the sample controls.
If you are unable to assemble the sample, contact our
Support Team
.
System.Data.SqlClient is replaced with Microsoft.Data.SqlClient for .NET Core/.NET Standard assemblies versions
The dependency for .NET Standard assemblies versions of the AR.Core has been changed. Now Microsoft.Data.SqlClient is used for the MSSQL data provider by default. This change affects users, developing .NET Core applications with SQL connections, and does not require any special migration steps. For details, see
Troubleshooting
.
We have removed dependency on System.Drawing from our code for functionalities such as image handling, text measuring, printing, etc.
For example, API dependencies such as:
System.Drawing.Font
and
System.Drawing.Image
in Section report have been removed from
System.Drawing.Common
.
GDI references from
GrapeCity.ActiveReports.Document.SectionReport
,
GrapeCity.ActiveReports.Document.SectionDocument
, and
GrapeCity.ActiveReports.Document.PageDocument
classes have been removed.
See
System.Drawing.Common only supported on Windows
. This makes the Section reports engine run under Linux independent of libgdiplus library. You may need to make some changes in the code and scripts for the applications to work. All API changes are listed next.
Class
GrapeCity.SpreadBuilder.Printing.PageSetup
old property: public System.Drawing.Printing.PaperKind PaperSize
new property: public
GrapeCity.SpreadBuilder.Printing.PaperKind PaperSize
Class
GrapeCity.SpreadBuilder.DDSheet
Removed obsolete methods:
public void AddImage(System.Drawing.Image img, ImageInfo imageOptions,
System.Drawing.Color lineColor, System.Drawing.Color backColor,
short colL, short dxL, short rwT, short dyT,
short colR, short dxR, short rwB, short dyB,
string hyperlink)
public void AddImage(System.Drawing.Image img, ImageInfo imageOptions,
System.Drawing.Color lineColor, System.Drawing.Color backColor,
int columnLeft, short dxL, int rowTop, short dyT,
int columnRight, short dxR, int rowBottom, short dyB,
string hyperlink)
public void AddImage(byte[] imageData, bool isMetafile, SizeF sizeInInches, ImageInfo imageOptions,
System.Drawing.Color lineColor, System.Drawing.Color backColor,
int columnLeft, short dxL, int rowTop, short dyT,
int columnRight, short dxR, int rowBottom, short dyB,
string hyperlink)
public void
AddImage
(byte[] imageData, ImageInfo imageOptions,
System.Drawing.Color lineColor, System.Drawing.Color backColor,
int columnLeft, short dxL, int rowTop, short dyT,
int columnRight, short dxR, int rowBottom, short dyB,
string hyperlink)
Added new
constructor
:
/// <param name="measureString">Function to measure string in case of auto-height row behavior.
/// Parameters: string, font, fontsize, maxwidth.</param>
public Workbook(Func<string, StringMeasurementParams, SizeF> measureString = null)
old constructor: public BackdropItem(System.Drawing.Image picture, PicturePutStyle pictureAlignment)
new constructor: public BackdropItem(GrapeCity.ActiveReports.Chart.Drawing.Image picture, PicturePutStyle pictureAlignment)
old constructor: public BackdropItem(System.Drawing.Image picture, PicturePutStyle pictureAlignment, AntiAliasMode antiAliasMode)
new constructor: public BackdropItem(GrapeCity.ActiveReports.Chart.Drawing.Image picture, PicturePutStyle pictureAlignment, AntiAliasMode antiAliasMode)
old property: public System.Drawing.Image Picture
new property: public GrapeCity.ActiveReports.Chart.Drawing.Image Picture
old property: public System.Drawing.HatchStyle Pattern
new property: public GrapeCity.ActiveReports.Chart.Drawing.HatchStyle Pattern
old constructor: public Backdrop(System.Drawing.Image picture, PicturePutStyle pictureAlignment)
new constructor: public Backdrop(GrapeCity.ActiveReports.Chart.Drawing.Image picture, PicturePutStyle pictureAlignment, AntiAliasMode antiAliasMode)
Removed PageSettings.PaperSourceKind enumeration, new type is
GrapeCity.ActiveReports.Printing.PaperSourceKind
.
Removed PageSettings.PaperKind type enumeration, new type is
GrapeCity.ActiveReports.Printing.PaperKind
.
Removed PageSettings.Duplex type enumeration, new type is
GrapeCity.ActiveReports.Printing.Duplex
.
System.Drawing.Font, new type is
GrapeCity.ActiveReports.Document.Drawing.Font
.
System.Drawing.Image, new type is
GrapeCity.ActiveReports.Document.Drawing.Image
.
System.Drawing.FontStyle, new type is
GrapeCity.ActiveReports.Document.Drawing.FontStyle
.
System.Drawing.GraphicsUnit, new type is
GrapeCity.ActiveReports.Document.Drawing.GraphicsUnit
.
System.Drawing.StringAlignment, new type is
GrapeCity.ActiveReports.SectionReportModel.StringAlignment
.
System.Drawing.ContentAlignment, new type is
GrapeCity.ActiveReports.SectionReportModel.ContentAlignment
.
System.Drawing.HatchStyle type, new type is
GrapeCity.ActiveReports.SectionReportModel.HatchStyle
.
For using the
WebViewer
control in the
ASP.NET Designer
, you need to install an additional
GrapeCity.ActiveReports.Web.Design
(or
GrapeCity.ActiveReports.Web.Design.VS2022
) package that corresponds to the Visual Studio version you are using. Installing the
GrapeCity.ActiveReports.Web
package does not install the Web Design package, thus you may see some design time or compilation errors.
If you implemented a custom rendering extension, it needs to be updated with the implementation of the new Render Signature.
Use
IRenderingExtension
as follows:
void Render(IReport report, StreamProvider streams, NameValueCollection settings, CancellationToken token);
You may need to load WinForms dependencies manually by using code similar to the following.
var rpt = new SectionReport();
rpt.LoadLayout("MySectionReport.rpx");
rpt.AddAssembly(System.Reflection.Assembly.Load("System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"));
The sample of the script that worked earlier without above code is as shown:
public void detail_Format()
System.Windows.Forms.MessageBox.Show("Detail_Format");