On Thu, 2012-02-16 at 13:40 +0200, [email protected] wrote: > --- Alkuperäinen viesti --- > Aihe: LibreO-Base is lying about my age! > Päiväys: 15.2.2012 17:46 > Lähettäjä: Pertti Rönnberg [[email protected]] > Kopio: Pertti Rönnberg [[email protected]] > > Dear all of you, > First an opinion - correct me if wrong! > I've got the idea that this is kind of a help-desk where every LibreO > user can both ask for help and give info about problems related to > LibreO's components. Without any bad feelings afterwards! > Referring to the irrelevant "debates" recently and also my own > experiences some weeks ago I would say that a real expert has the > ability to concentrate on the question as-it-is and give a relevant > answer -- he has knowledge enough to understand that there are no silly > or wrong questions. > Every question has its reason - and every question is valuable because > it indicates that there may be something to repair or do better in LibreO. > There is a truth in quality systems (e.g. ISO 9000): "without > identifying the weaknesses there is no development". > > _And now to my contribution to make LibreO better:_ > I need to calculate in LO-Base the difference between an 'olddate' and > today expressed in whole years (no decimals) > The main procedure seems to be the same in LO-Base and OOo as in MSAccess. > The function I placed in the query field is (ref. also to guides in LO & > OOo): > datediff('year',"table1"."olddate",current_date) or > datediff('year',"olddate",current_date) > > When I inserted my birthdate (2.11.1939) in 'olddate' my computer states > that I am 73 - I'm NOT, I'm still only 72! > The correct result is 72,225 years; and the desired answer without > decimals 72. > > I got the same wrong result (73) both in LO-Base and in OOo-Base > > the wrong result is not logical - it can not be a rounding up, nor > is it a result of an 'int()'-function > > if I replaced 'year' with 'dd' or 'mm' or 'yy' the function works > -- but > when replaced 'year' with 'yyyy' the function stopped working (why - > 'year' and 'yyyy' ought to be equal!) > > the query field does not accept the expression "int(datediff(..etc))" > > the date-format is equal (finnish - see above) in every relevant field > > my OS is Windows7Professional/32Bit > > I also tried the formula /year(current_date - "olddate")/ but the query > did not accept it as a valid expression - can I put that formula > anywhere else? > > Anyone there who can tell me how I shall get the LO-Base to be honest? > Regards > Pertti Rönnberg The problems seems to be that DATEDIFF rounds the result to an integer rather than just ignore digits to the right of the decimal place.
--Dan -- For unsubscribe instructions e-mail to: [email protected] Problems? http://www.libreoffice.org/get-help/mailing-lists/how-to-unsubscribe/ Posting guidelines + more: http://wiki.documentfoundation.org/Netiquette List archive: http://listarchives.libreoffice.org/global/users/ All messages sent to this list will be publicly archived and cannot be deleted
