Commit Graph

114 Commits

Author SHA1 Message Date
wp_xxyyzz
d2351b5559 fpspreadsheet: Fix 3d cell references with a single other sheet (Sheet1!A1:C3), except for ODS. 3d references with several sheets prepared (not tested yet). Some more unit tests.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6408 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-13 10:15:13 +00:00
wp_xxyyzz
bc685aaeb8 fpspreadsheet: Write single-sheet 3d references (e.g., 'Sheet1!A1:B6') to BIFF8 (xls). Issues with reading.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6405 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-11 23:18:10 +00:00
wp_xxyyzz
4f4c913ac0 fpspreadsheet: Read and write xlsx files with formulas containing internal references to a range of cells within the same sheet (e.g., 'SUM(Sheet2!A1:B5)' ).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6403 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-10 17:58:05 +00:00
wp_xxyyzz
e98bda1717 fpspreadsheet: Add BIFF5 writer for 3d references. Add corresponding unit test. Some related bug fixes. Less hints.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6401 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-10 14:31:37 +00:00
wp_xxyyzz
74c64b7258 fpspreadsheet/formulas with 3d references: Implement BIFF5 reader for 3d references. Some DebugLn insertions for better debugging (triggered by define FPSpreadDebug).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6400 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-09 21:38:24 +00:00
wp_xxyyzz
bfb8cff66e fpspreadsheet/formulas with 3d references: sfExcel8 can read them now. Several bug fixes (e.g. '=Sheet1!A1' was not working). Add testcases.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6399 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-09 17:07:59 +00:00
wp_xxyyzz
e4f6f6e355 fpspreadsheet: Implement simplest 3D cell references (single cells on any sheet within the same workbook). No reading for xls so far, writing is ok. Reading/writing to xlsx and ods ok.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6398 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-08 22:32:09 +00:00
wp_xxyyzz
7416450bf4 fpspreadsheet: Avoid creating a blank cell if the row/col indexes passed to Worksheet.ReadAsText(row, col) are those of a non-existing cell (see https://forum.lazarus.freepascal.org/index.php/topic,41132.msg284876.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6377 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-04 07:43:48 +00:00
wp_xxyyzz
499efd7b8c fpspreadsheet: Fix compilation with fpc before 3.0
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6363 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-05-01 10:23:42 +00:00
wp_xxyyzz
b6e1a4c495 fpspreadsheet: Fix WorksheetGrid not being able to delete a cell block.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6323 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-04-19 20:30:43 +00:00
wp_xxyyzz
0e4645f9bf fpspreadsheet: Check (and fix) compilation of all demo projects (changed handling of include files in fpc 3.0.4)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6317 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-04-18 11:42:22 +00:00
wp_xxyyzz
56f7814556 fpspreadsheet: Fix xls format using incorrect font index in SST (see https://forum.lazarus.freepascal.org/index.php/topic,40784.0.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6292 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-04-05 10:42:01 +00:00
wp_xxyyzz
2dfd81b11b fpspreadsheet: Comment an unfinished border drawing routine which made it into the previous commit.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6286 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-04-01 13:43:02 +00:00
wp_xxyyzz
51c6c2940e fpspreadsheet: Avoid selecting a non-base cell of a merged block (patch by wofs, https://forum.lazarus.freepascal.org/index.php/topic,40726.msg281408.html#msg281408).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6285 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-04-01 13:38:57 +00:00
wp_xxyyzz
bcc69621fb fpspreadsheet: Change default csv encoding back to utf8 without bom, because importing csv into Excel and Calc is probably not the most important application of fpspreadsheet, and many other programs will not expect a bom in a text file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6258 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-03-18 23:03:57 +00:00
wp_xxyyzz
15a617af53 fpspreadsheet: Use UTF8 with BOM as default encoding for CSV reader/writer (better compatibility with Excel/LOCalc, see https://forum.lazarus.freepascal.org/index.php/topic,40527.msg280025.html#msg280025)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6257 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-03-18 22:51:08 +00:00
wp_xxyyzz
a70231ab75 fpspreadsheet: Make sure that the local variable commentcell_rct in TxCustomWorksheetGrid.InternalDrawRow is initialized (issue #33413, patch by Lagunov Aleksey).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6234 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-03-11 21:06:49 +00:00
wp_xxyyzz
24153116a4 fpspreadsheet: Fix reading/writing of milliseconds. Add corresponding test cases. (NOTE: ods cannot display tenths of a second).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6228 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-03-07 22:35:19 +00:00
wp_xxyyzz
72edcdf239 fpspreadsheet: Don't write leading '=' to ods formulas if in ignoreformulas mode.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6220 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-03-04 09:35:40 +00:00
wp_xxyyzz
f78d780b5f fpspreadsheet: Allow number formats with no leading digits. Add corresponding unit test cases.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6218 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-28 12:14:19 +00:00
wp_xxyyzz
022b837553 fpspreadsheet: Fix error in Round function. Add a second unit test for Round.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6217 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-27 22:21:49 +00:00
wp_xxyyzz
6aedb395f4 fpspreadsheet: Fix xls reader crashing if comment has record sequence OBJ-CONTINUE-TX0-CONTINUE instead of OBJ-TX0-CONTINUE.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6214 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-26 22:20:06 +00:00
wp_xxyyzz
659b19e80f fpspreadsheet: Activate boIgnoreFormulas also when reading an ods file.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6213 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-25 18:55:47 +00:00
wp_xxyyzz
0282943962 fpspreadsheet: Make ods reader skip the source table of an external reference
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6211 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-22 09:27:34 +00:00
wp_xxyyzz
ef46ccd90d fpspreadsheet: Add workbook option boIgnoreFormulas for writing unsupported formulas (See forum https://forum.lazarus.freepascal.org/index.php/topic,40146.0.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6209 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-20 23:02:45 +00:00
wp_xxyyzz
e47e969aec fpspreadsheet: Add WorkbookOption boAbortReadOnFormulaError. Off by default, i.e. Reader continues after finding an unknown formula.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6207 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-20 17:35:23 +00:00
wp_xxyyzz
6edaaa7b11 fpspreadsheet: Fix compilation with Laz 1.0/2.6.0
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6182 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-07 00:01:31 +00:00
wp_xxyyzz
1e3da067f2 fpspreadsheet: Less hints and warnings
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6168 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2018-02-02 14:43:37 +00:00
wp_xxyyzz
b3046a8f88 fpspreadsheet: Avoid confusion of fraction detection by dates
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6085 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-12-03 10:34:31 +00:00
wp_xxyyzz
189ae66d4d fpspreadsheet: Fix workbook.ReadFromStream not updating attached WorksheetGrid.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6076 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-24 16:57:26 +00:00
wp_xxyyzz
a8743226b7 fpspreadsheet: Add unit tests for HTML-to-RichText conversion (and vice versa).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6073 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-14 22:57:11 +00:00
wp_xxyyzz
f67d13f3b3 fpspreadsheet: Fix html-to-rich-text conversion if text ends with html tag
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6072 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-14 15:22:17 +00:00
wp_xxyyzz
bc83057bd8 fpspreadsheet: (Hopefully) fix missing last character of cell text copied to clipboard as CF_TEXT (see http://forum.lazarus.freepascal.org/index.php/topic,38925.0.html)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6069 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-13 17:29:24 +00:00
wp_xxyyzz
515e7437e5 fpspreadsheet: Fix number format test case. Now all tests are passed again.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6060 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-06 08:35:25 +00:00
wp_xxyyzz
9b8e818c3c fpspreadsheet: Fix max string length test.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6056 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-03 21:04:07 +00:00
wp_xxyyzz
f20779983f fpspreadsheet: Fix biff8 writer to use CONTINUE records if text in STRING record is too long.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6055 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-03 18:43:37 +00:00
wp_xxyyzz
0310e5587e fpspreadsheet: Write biff8 text cells to shared-string-table to overcome string truncation at 255 characters.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6054 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-11-03 13:39:12 +00:00
wp_xxyyzz
d62cd79a4c fpspreadsheet: Fix Excel8 reader crashing if file does not contain a FONT record (reported by Malcolm Buckingham on mailing list, Oct 30 2017)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6047 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-30 13:08:55 +00:00
wp_xxyyzz
b35f362f31 fpspreadsheet: Fix xlsx reader aborting if an error cell does not contain an error code (see http://forum.lazarus.freepascal.org/index.php/topic,38726.0.html).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6046 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-28 20:30:33 +00:00
wp_xxyyzz
cc891712d0 fpspreadsheet: Introduce fpspreadsheet exceptions.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6043 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-26 08:11:58 +00:00
wp_xxyyzz
7e7044bb6f fpspreadsheet: Fix parameter AOverwriteExisting in TsWorkbook.WriteToFile.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6042 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-26 07:54:09 +00:00
wp_xxyyzz
467329f610 fpspreadsheet: Remove debugging leftover code from previous commit
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6035 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-05 12:48:57 +00:00
wp_xxyyzz
f8bfbd673f fpspreadsheet: Fix ods writer crashing if number format has more than three sections.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6034 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-05 11:41:32 +00:00
wp_xxyyzz
ea26c9887d fpspreadsheet: Improved percent format detection (allow space between number mask and percent character).
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6033 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-05 05:30:02 +00:00
wp_xxyyzz
ea22d330d4 fpspreadsheet: Fix merged ranges sometimes being read incorrectly from ods files.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6032 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-04 17:19:53 +00:00
wp_xxyyzz
709be76b4f fpspreadsheet: Add support for xls one-parameter SUM formulas.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@6031 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-10-04 12:36:16 +00:00
wp_xxyyzz
96ffaaa4d2 fpspreadsheet: Fix crash of db_import_export demo in virtual mode.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5993 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-08-09 22:52:49 +00:00
wp_xxyyzz
e688582c1c fpspreadsheet: Fix xlsx reader getting dimension of an empty worksheet incorrectly.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5988 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-07-25 09:40:05 +00:00
wp_xxyyzz
05bdb8bb88 fpspreadsheet: Fix violated file formation limitations when reading some xls files (http://www.lazarusforum.de/viewtopic.php?f=18&t=10824&start=15)
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5987 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-07-24 15:18:13 +00:00
wp_xxyyzz
3aba9136ea fpspreadsheet: Add searching in comments. Add demo for searching.
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@5965 8e941d3f-bd1b-0410-a28a-d453659cc2b4
2017-06-27 09:18:34 +00:00