Steps to reproduce: 1. Enter in a cell =Today() 2. Show Format Cells dialog and set Custom format "d" Expected: The value is the day of the month. Actual: The date is formatted as short date but has to be day of the month.
For all characters which cannot be represented in XML as defined by the XML 1.0 specification, the characters are escaped using the Unicode numerical character representation escape character format _xHHHH_, where H
represents a hexadecimal character in the character's value. This is dedined in the OpenXML specification in 22.9.2.19 ST_Xstring (Escaped String).
Currently this causes the following issues:
- Documents conaining such characters are imported incorrectly, e.g. <si><t>_x001B_</t></si> is imported as the plain text _x001B_
- ArgumentException with clarification similar to "' ', hexadecimal value 0x1B, is an invalid character." is thrown when trying to export such documents. Example code to reproduce:
Workbook workbook = new Workbook();
Worksheet worksheet = workbook.Worksheets.Add();
CellSelection selection = worksheet.Cells[1, 1]; //B2 cell
selection.SetValue(string.Format("Error Value: {0} ", Encoding.ASCII.GetString(new byte[] { 27 })));
string fileName = @"D:\temp\SampleFile.xlsx";
IWorkbookFormatProvider formatProvider = new XlsxFormatProvider();
using (FileStream output = new FileStream(fileName, FileMode.Create))
{
formatProvider.Export(workbook, output);
}
When importing and exporting xlsx document with email address hyperlink the exported document shows invalid document message when opened in Excel: "We found a problem with some content in 'file.xlsx'. Do you want us to try to recover as much as we can? If you trust the source of thes workbook, click Yes.". The document can be only partially recovered and information is lost.
Generating document which consists of merged cells in a row and some values then inserting a row on the top and then exporting the document or setting it to the RadSpreadsheet causes wrong merged cells. If the generation is done on a workbook which is already set to the RadSpreadsheet everything is OK. Workaround: The document can be exported and then imported again before the row is inserted.
Add support for pivot tables.
XLSB is binary format that should theoretically allow fast reading and writing to the file.
When printing or exporting to PDF, the left border of A1 cell is not printed/rendered.
WorksheetPageSetup.ScaleFactor is limited in the range 0.5 - 4 due to limitations in the UI implementations, but this is not needed in RadSpreadProcessing alone.
Add support for array formulas (CellFormulaType "array"). These formulas can accept as parameters and return results containing whole arrays (one- or two- dimensional) of data. In MS Excel, such formulas are inserted with CTRL + SHIFT + Enter, and visualized enclosed with curly brackets ('{' and '}').
Add support for ROW function: https://support.office.com/en-us/article/ROW-function-3a63b74a-c4d0-4093-b49a-e76eb49a6d8d?ui=en-US&rs=en-US&ad=US Examples: =ROW() returns the row in which the formula appears =ROW(C10) returns the row of the reference - 10 Workaround: This could be implemented as a custom function: http://docs.telerik.com/devtools/document-processing/libraries/radspreadprocessing/features/formulas/custom-functions.html
Implement SMALL function (https://support.office.com/en-us/article/SMALL-function-17da8222-7c82-42b2-961b-14c45384df07 ), which returns k-th smallest value from a range: SMALL(array, k) Workaround: This could be implemented as a custom function: http://docs.telerik.com/devtools/document-processing/libraries/radspreadprocessing/features/formulas/custom-functions.html
IFERROR returns a value you specify if a formula evaluates to an error; otherwise, returns the result of the formula. A list of the supported functions is available at http://docs.telerik.com/devtools/document-processing/libraries/radspreadprocessing/features/formulas/functions This function can be implemented as a custom function. Check the following resources for more details on how to achieve that: - http://docs.telerik.com/devtools/document-processing/libraries/radspreadprocessing/features/formulas/custom-functions - https://github.com/telerik/xaml-sdk/tree/master/Spreadsheet/WPF/CustomFunctions
Implement support for cell references to columns and rows, e.g. $1:$2, A:D, etc. Currently, CellSelection.SetValue throws ParseException, and CellSelection.SetValueAsFormula throws InvalidOperationException.
At this point, the formatting can be applied only to the whole cell content.
Add APIs for creating and manipulating Chart objects.
Split allows you to split the window into different panes that each scroll separately. This feature is different than the horizontal/vertical split of freeze panes, which is supported.
Implement functionality to rotate the content of a cell.