Issue 97407 - IDL states long for property FormulaResultType
Summary: IDL states long for property FormulaResultType
Status: CONFIRMED
Alias: None
Product: Calc
Classification: Application
Component: programming (show other issues)
Version: OOo 3.0
Hardware: All All
: P3 Trivial with 2 votes (vote)
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-12-18 18:36 UTC by daniel.rentz
Modified: 2013-08-07 15:13 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description daniel.rentz 2008-12-18 18:36:58 UTC
IDL states long for property SheetCell::FormulaResultType, but Calc returns enum
CellContentType.
Comment 1 daniel.rentz 2009-02-04 09:22:36 UTC
DR->JSC: What is the correct solution for this problem?

IDL documentation of property com.sun.star.sheet.SheetCell.FormulaResultType
(http://api.openoffice.org/docs/common/ref/com/sun/star/sheet/SheetCell.html#FormulaResultType)
states "long" as property data type which should be a constant of
com.sun.star.sheet.FormulaResult
(http://api.openoffice.org/docs/common/ref/com/sun/star/sheet/FormulaResult.html),
but the implementation in OOo Calc returns a value of the enum
com.sun.star.table.CellContentType
(http://api.openoffice.org/docs/common/ref/com/sun/star/table/CellContentType.html),
either TEXT or VALUE.

The only place where FormulaResultType is correctly used, is the method
com.sun.star.sheet.XCellRangesQuery.queryFormulaCells
(http://api.openoffice.org/docs/common/ref/com/sun/star/sheet/XCellRangesQuery.html#queryFormulaCells).

There are already Basic macros out there that rely on the enum return type. The
disadvantage: it is not possible to detect that a formula returns an error result.
Comment 2 jsc 2009-05-14 09:23:18 UTC
mmh, difficult question.

I would suggest that you propose this API change for an incompatible API change
for OO.o4.0 and fix all places where it is used. Probably you have rethink the
whole stuff how you can solve the problem error result ... 

Once it is accepted as API change we need some docu explaining it and a
migration guide for API users. More details later
Comment 3 daniel.rentz 2009-05-14 09:49:04 UTC
To be clear here: Do you suggest to keep the current IDL and fix the wrong Calc
implementation, or do you suggest to change the IDL to the current behaviour of
Calc?
Comment 4 jsc 2009-05-14 10:16:33 UTC
i mean fix it in the way that make most sense. I would prefer a clean, clear and
intuitive API. But you are the expert and can decide it better. If you decide to
change API, please discuss it publicly and think about a dependencies (macros,
extensions, ...)  
Comment 5 daniel.rentz 2009-10-14 16:13:44 UTC
new target