If post_date is 2017-12-31 22:00 or 23:00, it means (sometimes?) the real date 
is 2018-01-01. At least in cases where I manually checked the invoices.
 
Setting all times to 10:59:00 will give wrong dates in the program.  
 
Now they are displayed correctly in the program somehow...
 

 
 
 

 
 
>  
> On Apr 30, 2020 at 20:59,  <John Ralls (mailto:jra...@ceridwen.us)>  wrote:
>  
>  
>  
>  I don't think that's necessary. To fix the wrong times just do an update 
> query, something like update transactions set post_date::TIME = 10:59:00 
> where post_date::TIME != 10:59:00; I don't know Postgresql's date-time 
> functions well enough to know if that syntax works, you might have to adjust 
> it a bit. You might create a table with a DATETIME column and put a couple of 
> rows in it to test against while you tweak. Make sure that GnuCash isn't 
> connected to the database when you run that. Regards, John Ralls  >  On Apr 
> 30, 2020, at 10:45 AM, Finfort  <finf...@gmail.com>  wrote:  >   >  How can I 
> help?  >   >  I can send you my gnucash file if it helps to find all the 
> bugs.  >   >  And how can I change now my wrong dates in transactions?  >   
> >>  On Apr 30, 2020 at 20:41,  <John Ralls>  wrote:  >>   >>  Yeah, it's 
> definitely a bug. I easily found the wrong code and I'll fix it for 3.903 and 
> 3.11.  >>   >>  The query actually accounts for only 543 of the 547 wrong 
> times, so there's anot
her error somewhere else.  >>   >>  Regards,  >>  John Ralls  >>   >>   >>   >  
On Apr 30, 2020, at 10:27 AM, Finfort  <finf...@gmail.com>  wrote:  >>   >   >> 
  >  Also I tried to unpost and post again. No changes.  >>   >   >>   >   >>   
>   >>   >>  On Apr 30, 2020 at 19:44,  <Finfort>  wrote:  >>   >>   >>   >>  
Hi John,  >>   >>   >>   >>  The result is:  >>   >>   >>   >>  22:00:00 253  
>>   >>   >>   >>  00:00:00 18  >>   >>   >>   >>  21:00:00 250  >>   >>   >>   
>>  23:00:00 22  >>   >>   >>   >>  So wrong dates are only when I use 
invoices.  >>   >>   >>   >>   >>   >>   >>   >>  On 29/04/2020 23:56, John 
Ralls wrote:  >>   >>   >  Please remember to copy the list on all replies.  >> 
  >>   >   >>   >>   >  I take it that that means that you do in fact use the 
business invoice features. Let's see if that's the source of the problem. Run 
this query:  >>   >>   >   >>   >>   >  select t.post_date::TIME 
count(t.post_date::TIME) from transactions as t inner join invoices as i o
n i.post_txn = t.guid group by t.post_date::TIME;  >>   >>   >   >>   >>   >  
Regards,  >>   >>   >  John Ralls  >>   >>   >   >>   >>   >   >>   >>   >>  On 
Apr 29, 2020, at 1:41 PM, Finfort  <finf...@gmail.com>  wrote:  >>   >>   >>   
>>   >>   >>  But the program use business features like entering invoices or 
bills.  >>   >>   >>  And we have this mess.  >>   >>   >>  How we can manage 
that?  >>   >>   >>   >>   >>   >>   >>   >>   >>   >>   >>   >>>  On Apr 29, 
2020 at 23:23,  <John Ralls>  wrote:  >>   >>   >>>   >>   >>   >>>  Dimon,  >> 
  >>   >>>   >>   >>   >>>  I'm in Silicon Valley, so 10 hours behind you.  >>  
 >>   >>>   >>   >>   >>>  By "simple invoices" do you mean that some of the 
transactions are created using business invoices?  >>   >>   >>>   >>   >>   
>>>  My book goes back to 1993 and entry_dates begin in 2001. We changed the 
transaction time from local midnight in early 2011 so `select distinct 
time(post_date) from transactions;` returns  >>   >>   >>>  10:59
:00  >>   >>   >>>  07:00:00  >>   >>   >>>   >>   >>   >>>  If I say instead 
`select distinct time(post_date) from transactions where post_date  >  
'2011-01-01';` I just get 10:59:00.  >>   >>   >>>   >>   >>   >>>  But I don't 
use the business features, so if that's the problem my book won't show it.  >>  
 >>   >>>   >>   >>   >>>  Regards,  >>   >>   >>>  John Ralls  >>   >>   >>>   
>>   >>   >>>>  On Apr 29, 2020, at 10:13 AM, Finfort  <finf...@gmail.com>  
wrote:  >>   >>   >>>>   >>   >>   >>>>  Hi John!  >>   >>   >>>>  You are here 
finally!  >>   >>   >>>>  Waiting for you all the day :)  >>   >>   >>>>   >>   
>>   >>>>  All my data I have entered inside Gnucash 3.7, Ubuntu. No imports! 
Scheduled are ok!  >>   >>   >>>>  Just simple invoices inside the program!  >> 
  >>   >>>>  The SQL type conversions inside Postgres give better results with 
22:00 but 21:00 show the same date again even in April - summer time where is 
for example 2018-06-04 21:00:00+03.  >>   >>   >>>>  22:00
+02 is 00:00 of the next day, 21:00+03 (summer time) is 00:00 of the next day 
but conversion does not work...  >>   >>   >>>>  So, maybe you could try this 
SQL to check your records and revise the procedure which posts the data to DB?  
>>   >>   >>>>   >>   >>   >>>>  Thank you,  >>   >>   >>>>  Dimon.  >>   >>   
>>>>   >>   >>   >>>>   >>   >>   >>>>   >>   >>   >>>>   >>   >>   >>>>   >>   
>>   >>>>>  On Apr 29, 2020 at 19:50,  <John Ralls>  wrote:  >>   >>   >>>>>   
>>   >>   >>>>>>  On Apr 29, 2020, at 2:18 AM, finf...@gmail.com wrote:  >>   
>>   >>>>>>   >>   >>   >>>>>>  Dear John,  >>   >>   >>>>>>   >>   >>   >>>>>> 
 Thank you for your response.  >>   >>   >>>>>>   >>   >>   >>>>>>   >>   >>   
>>>>>>  I have collected some statistics from my DB.  >>   >>   >>>>>>   >>   
>>   >>>>>>  My DB has 1724 records - transactions.  >>   >>   >>>>>>   >>   >> 
  >>>>>>  This is my SQL query, it is pretty simple and shows all the 
combinations of times in posted_date timestamps in transact
ions table, number of repetitions for that time value, min enter_date, max 
enter_date:  >>   >>   >>>>>>   >>   >>   >>>>>>  SELECT  >>   >>   >>>>>>  
t.post_date::TIME as "POST TIME",  >>   >>   >>>>>>  COUNT(t.post_date::TIME) 
as "REPS",  >>   >>   >>>>>>  min(t.enter_date) as "MIN ENTER DATE",  >>   >>   
>>>>>>  max(t.enter_date) as "MAX ENTER DATE"  >>   >>   >>>>>>  FROM 
transactions t  >>   >>   >>>>>>  GROUP BY t.post_date::TIME  >>   >>   >>>>>>  
ORDER BY t.post_date::TIME  >>   >>   >>>>>>   >>   >>   >>>>>>  Here are the 
results:  >>   >>   >>>>>>   >>   >>   >>>>>>  ----  >>   >>   >>>>>>   >>   >> 
  >>>>>>  POST TIME REPS MIN ENTER DATE MAX ENTER DATE  >>   >>   >>>>>>   >>   
>>   >>>>>>  "00:00:00" 18 "2020-01-26 18:07:14" "2020-01-28 19:11:07"  >>   >> 
  >>>>>>  "10:59:00" 1177 "2019-12-23 17:55:29" "2020-04-23 11:24:24"  >>   >>  
 >>>>>>  "21:00:00" 251 "2020-01-08 17:43:54" "2020-04-23 10:36:33"  >>   >>   
>>>>>>  "22:00:00" 256 "2020-01-08 17:06:59" "2020-04-23 11:24
:08"  >>   >>   >>>>>>  "23:00:00" 22 "2020-01-27 19:16:04" "2020-01-28 
19:39:49"  >>   >>   >>>>>>   >>   >>   >>>>>>  ----  >>   >>   >>>>>>   >>   
>>   >>>>>>  I live in Cyprus, here is UTC +2 and summer time UTC +3, as I 
know.  >>   >>   >>>>>>   >>   >>   >>>>>>  I started to study Gnucash in 
December 2019 and have entered my data of 2016-2020.  >>   >>   >>>>>>   >>   
>>   >>>>>>  I never changed my place and time zone in the period of working 
with Gnucash.  >>   >>   >>>>>>   >>   >>   >>>>>>   >>   >>   >>>>>>  1. Most 
of the records have time in date_posted 10:59:00 for all the period of data 
entering.  >>   >>   >>>>>>   >>   >>   >>>>>>  2. Only 2 days of entering have 
the results of 00:00:00 - 18 records.  >>   >>   >>>>>>   >>   >>   >>>>>>  3. 
Only 2 days of entering have the results of 23:00:00 - 22 records.  >>   >>   
>>>>>>   >>   >>   >>>>>>  4. 21:00:00 and 22:00:00 - 500+ records - 30% of 
transactions for all the period of data entering.  >>   >>   >>>>>>   >>   >
>   >>>>>>   >>   >>   >>>>>>  Can you please explain that?  >>   >>   >>>>>>   
> >>   >>   >>>>>>  Why I have so many different time stamps? When and why the 
> system decides to write time different from 10:59:00?  >>   >>   >>>>>>   >>  
>  >>   >>>>>>  I understand that the system writes real ENTERING date and time 
> and it is reasonable to use the time zone somehow.  >>   >>   >>>>>>   >>   
> >>   >>>>>>  When I POST the document with exact date in it I suppose to see 
> this POST DATE the same wherever in Cyprus or UK or USA. But entering the 
> same date I can have 5 different results. How it works and what is the reason 
> - I have no idea...  >>   >>   >>>>>>   >>   >>   >>>>>>  Maybe you can give 
> some examples and the algorithm to convert these dates? Where else I have to 
> convert dates?  >>   >>   >>>>>   >>   >>   >>>>>  As those are all posted 
> dates you've found a bug or two as posted date should always have a 10:59:00 
> timestamp. The 21:00 and 22:00 times are clearly midnight local, and which
 one is used *should* be determined by whether DST is in effect for the posted 
date in your locale. It seems that 40 transactions somehow used UK time instead 
of Cypress time.  >>   >>   >>>>>   >>   >>   >>>>>  Did you enter all of the 
transactions from the GnuCash UI or did you import some of them? If you 
imported some is there any way to tell which were imported (and from where and 
by what method), perhaps by the accounts their splits are in or because you 
still have some of the import files?  >>   >>   >>>>>   >>   >>   >>>>>  Were 
any of them created by scheduled transactions?  >>   >>   >>>>>   >>   >>   
>>>>>  Regards,  >>   >>   >>>>>  John Ralls  >>   >>   >>>>>   >>   >>   >>>>> 
  >>   >>   >>>   >>   >>   >>   >>  
>
>  
 
 
     
_______________________________________________
gnucash-user mailing list
gnucash-user@gnucash.org
To update your subscription preferences or to unsubscribe:
https://lists.gnucash.org/mailman/listinfo/gnucash-user
If you are using Nabble or Gmane, please see 
https://wiki.gnucash.org/wiki/Mailing_Lists for more information.
-----
Please remember to CC this list on all your replies.
You can do this by using Reply-To-List or Reply-All.

Reply via email to