Date: prev next · Thread: first prev next last
2014 Archives by date, by thread · List index


Hi Winfried,

On Tuesday, 2014-04-29 10:26:03 +0200, Winfried Donkers wrote:

Calc function NETWORKDAYS is an add-in function and compatible with Excel's function NETWORKDAYS, 
but _not_ with Oasis ODFF 1.2 
(http://docs.oasis-open.org/office/v1.2/cos01/OpenDocument-v1.2-cos01-part2.html#__RefHeading__1018198_715980110)
 .

My first impression is that I could tweak the current code and make the function compatible with 
both.
For Excel the 3rd argument is a reference to a (range of) date, for ODFF it is a (reference to) 
matrix of 0 and 1. That means I can distinguish between the two. That distinction is important 
when exporting to Excel, too.

Do you think this is worth trying? Or would you prefer two internal functions, one regular in 
ScInterpreter (new, but using code from ScInterpreter::ScNetWorkdays_MS()) and one add-in 
(existing)? In that case I would need some hints where to make the switch from NETWORKDAYS in the 
cell (UI or file) and the two internal functions.

I'd avoid changing existing Add-In functions, it's a source of hassle ;-)
We also have better control over functionality and mappings in the
compiler when using internal interpreter functions.

Rather implement an ODFF compliant NETWORKDAYS function at the
interpreter that shares implementation with ScNetWorkdays_MS() (syntax
and semantics are equal, aren't they? I didn't look up now) and rename
the Add-In one to NETWORKDAYS_ADD, note that this will also need
adapting the entry in sc/source/core/tool/odffmap.cxx and the entries in
the mappings of sc/source/filter/excel/xlformula.cxx and
sc/source/filter/oox/formulabase.cxx, the latter may probably write
NETWORKDAYS.INTL for the ODFF NETWORKDAYS. I'll help you to figure out
details.

  Eike

-- 
LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
GPG key ID: 0x65632D3A - 2265 D7F3 A7B0 95CC 3918  630B 6A6C D5B7 6563 2D3A
Support the FSFE, care about Free Software! https://fsfe.org/support/?erack

Attachment: pgphCmKQFAAZN.pgp
Description: PGP signature


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.