Though ExcelWriter 7.x and higher are for the most part backwards compatible with applications written for ExcelWriter Version 6, there are a number of changes which must be considered when upgrading from Version 6 to Version 7.
Table of Contents |
---|
Installation
To upgrade ExcelWriter 6 to ExcelWriter 7 or 8, you should first uninstall OfficeWriter 3 (which contains Excelwriter 6).
Unlike OfficeWriter v3, there are no .NET 1.0 DLLs available for OfficeWriter v4. Before running the OfficeWriter Version 4 installer, you must make sure that you have the .NET runtime 2.0 or higher installed on your server. However, OfficeWriter v4 no longer requires the J# redistributable, so you will not need to install or upgrade J# to install OfficeWriter v4.
To install OfficeWriter v4, follow the installation instructions found in the Installation documentation. Remember to use an OfficeWriter v4 or ExcelWriter v7 license key, as OfficeWriter license keys are version-specific and an OfficeWriter v3/ExcelWriter v6 license key will not register correctly with OfficeWriter v4/ExcelWriter v7.
Changes
A number of minor changes were made to ExcelWriter properties, methods, and enumerations in the shift from J# source code to pure C#.
Methods
The following is a list of methods that have been changed to properties in SoftArtisans ExcelWriter v7. If you use any of these methods in your application, you will need to replace them with the appropriate property call.
ExcelWriter v6 Method |
ExcelWriter v7 Property |
---|---|
ChartType.getCategory() |
|
ChartType.getName() |
|
ChartType.is3D() |
|
Worksheet.IsSelected() |
Enumerations
The following is a list of enumerations for which the getValue method has been replaced with a Value property in ExcelWriter v7. If you used the getValue method of any of these enumerations in your application, you will need to replace them with the appropriate property call.
ExcelWriter v6 Method |
ExcelWriter v7 Property |
---|---|
Axis.TickLabelPos.getValue() |
Axis.TickLabelPos.Value |
Axis.TickType.getValue() |
Axis.TickType.Value |
AxisLabel.LabelPosition.getValue() |
AxisLabel.LabelPosition.Value |
Axis.Type.getValue() |
Axis.Type.Value |
Border.LineStyle.getValue() |
Border.LineStyle.Value |
Border.Part.getValue() |
Border.Part.Value |
CategoryAxis.AxisDisplayType.getValue() |
CategoryAxis.AxisDisplayType.Value |
CategoryAxis.AxisTimeUnit.getValue() |
CategoryAxis.AxisTimeUnit.Value |
Cell.CellValueType.getValue() |
Cell.CellValueType.Value |
Chart.ChartLocation.getValue() |
Chart.ChartLocation.Value |
ChartLine.LineStyle.getValue() |
ChartLine.LineStyle.Value |
ChartLine.LineWeight.getValue() |
ChartLine.LineWeight.Value |
ChartPageSetup.PrintedChartSize.getValue() |
ChartPageSetup.PrintedChartSize.Value |
ChartRegion.HorizontalAlignment.getValue() |
ChartRegion.HorizontalAlignment.Value |
ChartRegion.VerticalAlignment.getValue() |
ChartRegion.VerticalAlignment.Value |
ChartType.ChartCategory.getValue() |
ChartType.ChartCategory.Value |
Condition.Comparison.getValue() |
Condition.Comparison.Value |
CopyPasteProperties.CopyPasteType.getValue() |
CopyPasteProperties.CopyPasteType.Value |
DataPointMarker.ShapeType.getValue() |
DataPointMarker.ShapeType.Value |
DataValidation.ComparisonType.getValue() |
DataValidation.ComparisonType.Value |
DataValidation |
DataValidation |
DataValidation.ValidationType.getValue() |
DataValidation.ValidationType.Value |
DocumentProperties.BuiltIn.getValue() |
DocumentProperties.BuiltIn.Value |
ErrorBar.BarDirection.getValue() |
ErrorBar.BarDirection.Value |
ErrorBar.ErrorValueType.getValue() |
ErrorBar.ErrorValueType.Value |
Font.UnderlineStyle.getValue() |
Font.UnderlineStyle.Value |
Font.VerticalPosition.getValue() |
Font.VerticalPosition.Value |
Legend.LegendLocation.getValue() |
Legend.LegendLocation.Value |
NamedObject.BuiltInName.getValue() |
NamedObject.BuiltInName.Value |
NamedObject.ReturnType.getValue() |
NamedObject.ReturnType.Value |
NamedObject.Scope.getValue() |
NamedObject.Scope.Value |
NumberFormat.Color.getValue() |
NumberFormat.Color.Value |
ObjectPositioning.getValue() |
ObjectPositioning.Value |
PageSetup.CellErrorsAs.getValue() |
PageSetup.CellErrorsAs.Value |
PageSetup.PageOrientation.getValue() |
PageSetup.PageOrientation.Value |
PageSetup.PagePaperSize.getValue() |
PageSetup.PagePaperSize.Value |
PageSetup.PagePrintOrder.getValue() |
PageSetup.PagePrintOrder.Value |
Pattern.getValue() |
Pattern.Value |
SettingsBarColumn.ShapeType.getValue() |
SettingsBarColumn.ShapeType.Value |
Style.ColumnInsertBehavior.getValue() |
Style.ColumnInsertBehavior.Value |
Style.HAlign.getValue() |
Style.HAlign.Value |
Style.RowInsertBehavior.getValue() |
Style.RowInsertBehavior.Value |
Style.TextDir.getValue() |
Style.TextDir.Value |
Style.VAlign.getValue() |
Style.VAlign.Value |
Trendline.Regression.getValue() |
Trendline.Regression.Value |
Worksheet.SheetViewState.getValue() |
Worksheet.SheetViewState.Value |
Worksheet.SheetVisibility.getValue() |
Worksheet.SheetVisibility.Value |
Worksheet.SummaryColumnsLocation.getValue() |
Worksheet.SummaryColumnsLocation.Value |
Worksheet.SummaryRowsLocation.getValue() |
Worksheet.SummaryRowsLocation.Value |
Properties
The following properties were renamed because of changes in the source code:
ExcelWriter v6 Property |
ExcelWriter v7 Equivalent Property |
---|---|
ChartType.Custom.Custom |
ChartType.Custom.Combo |
ChartType.Scatter.Scatter |
ChartType.Scatter.StandardScatter |
Unsupported Methods
Additionally, there are a small number of methods which are no longer supported in ExcelWriter v7 and have not been replaced with an alternative method or property:
ChartType.Area.getValue() |
ChartType.Bar.getValue() |
ChartType.Bubble.getValue() |
ChartType.Column.getValue() |
ChartType.Custom.getValue() |
ChartType.Doughnut.getValue() |
ChartType.Line.getValue() |
ChartType.Pie.getValue() |
ChartType.Radar.getValue() |
ChartType.Scatter.getValue() |
ChartType.Surface.getValue() |
SettingsPieDoughnut.BopPopSplit.getValue() |
New DataBinding Methods
The methods used to bind data to a template in ExcelWriter v6 using the ExcelTemplate object have been deprecated in ExcelWriter v7. Though the old SetDataSource methods are still supported for backwards compatibility reasons in ExcelWriter v7, they have been replaced by BindData methods.
The new BindData methods enable the use of the new DataBindingProperties object. Instead of passing a MaxRows or Transpose parameter to BindData as you would SetDataSource, you can set the MaxRows or Transpose properties of the DataBindingProperties object. Additionally, DataBindingProperties includes a WorksheetName property which, when set, will allow you to specify a worksheet if you wish for your data to only be bound to a single worksheet in the template. Multiple BindData calls could bind data to each worksheet in a template from a different data source. Additionally, the same DataBindingProperties object can be used for multiple BindData calls if the same settings are desired for multiple data sets.
This table lists the deprecated SetDataSource methods and their new BindData equivalents:
Deprecated SetDataSource method |
New BindData method |
---|---|