On Wed, 3 Jun 2020, Francesco Sammarco wrote:

sorry I don't understand, you say that just remove the lines where I
specify the timezone ?!

No, remove the

start_e.dateTime   := LocalTimeToUniversal(start_e.dateTime);

I think it is not necessary if you set the timezone.

Michael.



Il mer 3 giu 2020, 14:51 Michael Van Canneyt <mich...@freepascal.org> ha
scritto:



On Wed, 3 Jun 2020, Francesco Sammarco via lazarus wrote:

Hi everyone, I have the following problem. I have a calendar (Italian) to
sync with Google Calendar. With the following code I can work quite well.
If today (2020-06-03) I set a new appointment it is saved on google
calendar on the right day and time, but if for example: always today if I
set an appointment for December 10, 2020 at 9 am, I find myself there
appointment set on the right day but at 8 am. (So an hour behind) I think
it's due to the change between sunlight and daylight. Can anyone explain
to
me how to solve the problem?

Thank you
XinYiMan



var
  start_e  : TEventDateTime;
  end_e    : TEventDateTime;
  Entry    : TEvent;
begin
           Entry := FCalendarAPI.EventsResource.Get(CalendarFindedId,
my_id_app);

                    start_e := TEventDateTime.Create();
                    end_e   := TEventDateTime.Create();

                    start_e.dateTime   := data_appuntamento;
                    start_e.dateTime   :=
LocalTimeToUniversal(start_e.dateTime);
                    start_e.timeZone   := 'Europe/Rome';

If you set the timzeone explicitly, I don't think you must do a
LocalTimeToUniversal,
I think the timezone is then automatically taken into account. As I
understand it you specify the timezone in dateTime or you set it in the
timezone.

Michael.


--
_______________________________________________
lazarus mailing list
lazarus@lists.lazarus-ide.org
https://lists.lazarus-ide.org/listinfo/lazarus

Reply via email to