Bug 455596 - Broken date format
Summary: Broken date format
Status: REPORTED
Alias: None
Product: kmymoney
Classification: Applications
Component: ux-ui (show other bugs)
Version: 5.1.2
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: KMyMoney Devel Mailing List
URL: https://mail.kde.org/pipermail/kmymon...
Keywords:
Depends on:
Blocks:
 
Reported: 2022-06-19 09:51 UTC by Ceaus
Modified: 2023-03-25 14:30 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ceaus 2022-06-19 09:51:07 UTC
SUMMARY
It is not possible to use YYYY  if your locale doesn't support it.

As discussed here (https://mail.kde.org/pipermail/kmymoney/2020-August/003527.html), KMyMoney should provide a default, unambiguous  date format. Currently the displayed date format is based on the QT environment settings.  There are a number of problems with this:
1. Your locale may set a format as MM-DD-YY. Which leads to the well know date ambiguity.
2. With a two digit year it's impossible to enter date earlier than 1990. 
3. If your locale displays DD-MM-YY, but you really want DD-MM-YYYY, than your only option is to change the LC_TIME environment variable to something which uses this short ISO-8601 YYYY format.  But this also changes the date picker. So now you can't read the days and months anymore, because they are in a language you don't speak.

Ideally, for financial applications there should not be a dependency on the locale of the system it is running on. There should be a short list of formats you can choose from (example: DD-MM-YY, DD-MM-YYYY, MM-DD-YY, MM-DD-YYYY) which are documented and consistent regardless of environment.
Comment 1 Thomas Baumgart 2023-03-25 14:30:33 UTC
Git commit 7e1fdb6b63c8b6c7a07d2732049842674b9e4134 by Thomas Baumgart.
Committed on 25/03/2023 at 14:29.
Pushed by tbaumgart into branch 'master'.

Use consistent date format throughout the application

The format still relies on the current locale, but a central location in
the code is now used which provides a consistent 4 digit year format for
dates.

M  +8    -7    kmymoney/dialogs/kcurrencycalculator.cpp
M  +2    -1    kmymoney/dialogs/kmymoneypricedlg.cpp
M  +1    -0    kmymoney/kmymoney.cpp
M  +5    -4    kmymoney/mymoney/mymoneyfile.cpp
M  +36   -8    kmymoney/mymoney/mymoneyutils.cpp
M  +5    -1    kmymoney/mymoney/mymoneyutils.h
M  +4    -4    kmymoney/mymoney/storage/onlinejobsmodel.cpp
M  +2    -1    kmymoney/mymoney/storage/pricemodel.cpp
M  +1    -1    kmymoney/plugins/checkprinting/checkprinting.cpp
M  +3    -3    kmymoney/plugins/views/forecast/kforecastview_p.h
M  +7    -7    kmymoney/plugins/views/onlinejoboutbox/konlinetransferform.cpp
M  +7    -6    kmymoney/plugins/views/reports/core/listtable.cpp
M  +6    -8    kmymoney/plugins/views/reports/core/reporttable.cpp
M  +14   -13   kmymoney/plugins/views/reports/core/tests/querytable-test.cpp
M  +2    -2    kmymoney/plugins/views/reports/kreportsview_p.h
M  +3    -2    kmymoney/views/keditscheduledlg.cpp
M  +2    -3    kmymoney/views/khomeview_p.h
M  +1    -1    kmymoney/views/kscheduledview_p.h
M  +7    -6    kmymoney/widgets/kmymoneybriefschedule.cpp
M  +7    -4    kmymoney/wizards/newaccountwizard/kaccountsummarypage.cpp
M  +6    -4    kmymoney/wizards/newloanwizard/effectivedatewizardpage.cpp
M  +11   -9    kmymoney/wizards/newloanwizard/keditloanwizard.cpp
M  +3    -1    kmymoney/wizards/newloanwizard/summaryeditwizardpage.cpp
M  +3    -2    kmymoney/wizards/newloanwizard/summarywizardpage.cpp

https://invent.kde.org/office/kmymoney/commit/7e1fdb6b63c8b6c7a07d2732049842674b9e4134