Kmymoney v 5.1 the date you have entered is invalid

Seems kmymoney only accepts one date format on 5.1 [kmymoney-master-3536-windows-cl-msvc2019-x86_64.exe] that was released on 26 sep 2024. so for example my standard windows 11 date format is dd-mmm-yyyy (e.g. 29 sep 24) when i open kmymoney with this date format i get error on the ledger when trying to fill in… the date box is actually red. but when i change date format of the system to mm/dd/year - there is no problem
i want to maintain my date format of dd-mmm-yyyy (e.g. 29 sep 24) - because most of my other applications including word and excel use this format

Please clarify some inconsistencies. Are you using 5.1 or master. You say 5.1 but the file you mention is master, although mentioning the red box around the date confirms master.

You say “date format is dd-mmm-yyyy (e.g. 29 sep 24)” but that example is “dd mmm yy” (not yyyy.) The red border around the date box is because either the required date is missing or something entered is not a valid date. In your last sentence you again repeat “date format of dd-mmm-yyyy (e.g. 29 sep 24)” but you again mix 2 and 4 digit years.

I would assume most if not all applications will use the system specified date format. That should be what KMyMoney is doing.

Finally, please state in more detail exactly what you are doing to get the red box around the date. I assume you are trying to enter a new transaction, but exact details will help us figure out exactly where the problem is.

Many thanks for your reply

  1. i am using the ’ development version’ from the download page
  2. the stable version is ok. but i have used kmymoney development files for 3 years now and i have never had this particular problem. so it’s strange and new
  3. to summarize and clarify what i am having - the development version on that page, as of this date does not allow me to enter a date with the date format 30-sep-2024. when i try to enter a date on any transaction i get an error " the date you entered is invalid" - if however i change the date format on my windows 11 to be say 09/30/2024 or even 2024-09-30 i have no problem. It appears when the date format includes a word say sep, Aug or something like that it returns and error. which is strange because the previous version i have been using (which is the stable version on the same download does not have this problem. i can use 30-sep-2024 on the stable version for transactions no problem.

So your problem is not 2 vs 4 digit years, but numeric vs name for the month, correct? As far as I know, KMyMoney uses the date format as specified by the operating system. I don’t currently have a Windows installation handy to test, so I’ll ask more questions.

If set to use month name, and you go to the register and edit an existing transaction, what does the date look like? If you edit an existing transaction with a month name in the date, does the date show an error as soon as you edit the transaction? If so, then perhaps KMyMoney is not correctly interpreting the date format. If not, then does it show an error as soon as you try to edit the date?

Another test - if you create a new transaction, click the down arrow at the right of the date field, and pick a date by clicking on the calendar, how is it displayed then, and does it show any error?

Yes, i want the kmymoney to be able to accept 01-oct-24 date format. the master version right now does not. i have tried this on two separate windows computers so it’s definitely a kmymoney bug
When you change the date format of the windows 11 it changes the date format even for past transactions in kmymoney.
when you pick a date from the date picker box, it does pick a date, but it remains red - and you cant save the transaction - throws an error when you try to save - date as invalid
this is a bug in kmymoney

The issue of date formats is still a problem for the new master download as of 6th October 2024 ( kmymoney-master-3552-windows-cl-msvc2019-x86_64.exe)…

i like seeing when i spend money or receive income (day (numeric), day word and ofcourse the year - the format i prefer and use on my windows 11 is dd, ddd-mmm-yyyy (for example 06, Sun-Oct-2024) - i find it easier to track my expenses and incomes this way
if i change my date format of windows 11 to read “dd, ddd-mmm-yyyy” say “06, sun-Oct-2024” - the new version of kmymoney does not even open.

On the old Stable version of kmymoney (the stable version kmymoney-5.1-3218-windows-cl-msvc2019-x86_64.exe) i do not have this problem. it opens even with my preferred date format of dd, ddd-mmm-yyyy (for example 06, Sun-Oct-2024)

First of all: your finding is correct, alpha characters in date input are not supported by the current KMyMoney development version. No need to repeat and stress that: we got it.

Rationale: the date input widget has been replaced between the 5.1 stable branch version (based on QDateTimeEdit) and the master development version (based on KDateComboBox) mainly for two reasons:

  • reduce code complexity
  • add new features.

It showed, that KDateComboBox provides almost the same functionality we built ourselves in older versions of KMyMoney. Using a well maintained code base (i.e. KDE frameworks) is much better than re-inventing the wheel and having to maintain it on the project level. Unfortunately, some specific functionality got lost during that move which we were not aware of. The other benefit of using standardized components is that if new functionality becomes available we get them basically for free. Means: the best place to ask to support your date format is to ask the developers of the KDateComboBox to support it, because I doubt that the KMyMoney team will revert back to the old implementation.

Thanks for the reply. i shall keep using the old version and try see if i can raise this issue elsewhere

Just FYI, we have been able to replicate the issue on Linux, so it does not appear to be a Windows specific issue. We’ll post back here once there is any update.

I stand corrected, the root cause does not seem to be related to KDateComboBox. We’re investigating further.

Thanks @ostroffjh - just to clarify

  1. the stable version i am talking about is on this download page Index of /ci-builds/office/kmymoney/5.1/windows
    this stable version, i can enter new transactions when the windows 11 date format includes alpha characters - jan to dec, mon to sunday
  2. the master version which cannot accept date format in alpha characters is on this page Index of /ci-builds/office/kmymoney/master/windows
  3. i get problems only when trying to create a new transaction - so the date combo box of kmymoney does not accept letters - alpha characters

Hello there… i saw some good improvement on the latest master release of kmymoney… i can see now it can accept some alpha characters though not very complicated
it can now accept simple alpha dates such as 15, Oct-2024
but it still cannot accept, actually wont even open the data file if the date is in this format 15, Tue-Oct-2024 which is the format i use on the older kmymoney
Thank you for your efforts so far

This format will not be supported any time soon. The current logic takes three components: day, month and year. Your format uses four (+ the weekday). I don’t even understand how you get to the format including the weekday. The selections I have on Windows are

image

where the first three are supported and the last one still has a few problems.

@Fred_OP when starting KMyMoney from the command line, it dumps a few lines about date formats. Can you please report what this looks like for you?

Here’s the matching output for the selection shown in the previous post:

C:\Program Files\KMyMoney\bin>kmymoney.exe -n

C:\Program Files\KMyMoney\bin>Model for "ST" loaded with 4 items in 0 ms
Monetary values will be formatted based on locale "de_DE" Example:  "123,45 Ç"
Long date format "dddd, d. MMMM yyyy"
Short date format "dd. MMM. yyyy"
Narrow date format "dd. MMM. yyyy"

thanks @ipwizard for your response.
when i open the kmymoney using cmd i get this ‘thrown’
Long date format “d MMMM yyyy”
Short date format “dd MMM yyyy”
Narrow date format “dd MMM yyyy”

the one that wish to have is
Short format “dd, ddd-MMM-yyyy”
Long date “dd, dddd-MMMM-yyyy”

I wonder, how you set this up. Can you do it so that it shows up in the KMyMoney console output?

@ipwizard

  1. im sorry i am not very conversant with KDE technical terms - what is “kmymoney console output”
  2. how to set up the date format - i use windows 11 so to set up the “dd, ddd-MMM-yyyy” - control panel, change date, time or number formats under clock and region, on formats click on additional settings, then date tab, and input “dd, ddd-MMM-yyyy” in the short date, and “dddd, d MMMM yyyy” on the long date format, click apply, ok and then ok one last time
  3. please note … on the old kmymoney , the last stable release, it works no problem. if i try to use it on the is new master version, it wont open if i change the date format to “dd, ddd-MMM-yyyy” - i have to change it to d MMMM yyyy for it to pen and work fine
  4. if possible, i would like to carry my old date format to the new kmymoney… it helps me quickly know on which day and date i spent money. most of my entries are manual - i don’t import data into kmymoney
  1. how to set up the date format - i use windows 11 so to set up the “dd, ddd-MMM-yyyy” - control panel, change date, time or number formats under clock and region, on formats click on additional settings, then date tab, and input “dd, ddd-MMM-yyyy” in the short date, and “dddd, d MMMM yyyy” on the long date format, click apply, ok and then ok one last time

Start cmd.exe (press Windows-Key R and type cmd and hit Enter key) which starts a so called “console”, change directory to where kmymoney is installed (for me that’s C:\Program Files\KMyMoney\bin) in it and type “kmymoney -n” (the option -n will cause KMyMoney to start without opening a file). The messages that get printed to the screen are called “console output”.

BTW: I only have access to a Win10 machine, so no wonder I don’t see the options you have to set the dateformat.

this is what i get on the console

C:\Program Files\KMyMoney\bin>Model for “ST” loaded with 4 items in 0 ms
Monetary values will be formatted based on locale “en_KE” Example: “Ksh123.45”
Long date format “dd, ddd-MMMM-yyyy”
Short date format “dd, ddd-MMM-yyyy”
Narrow date format “dd, ddd-MMM-yyyy”
WebConnect: Try to connect to WebConnect server
WebConnect: Connect to server failed
WebConnect: Running in server mode
kf.config.core: “"StartDate" - conversion of "0,0,0,-1,-1,-1.001" to QDateTime failed”
kf.config.core: “"StartDate" - conversion of "0,0,0,-1,-1,-1.001" to QDateTime failed”
System icon theme as reported by QT: “”
App icon theme as configured in KMyMoney: “system”
Running under Windows, so will be forcing the icon theme to: “breeze”
Setting icon theme to: “breeze”