[Openroad-users] WindowsAPI call to GetLocalTime
Fabian Anderson
fabian.anderson at Fintechnix.com
Tue Apr 22 12:49:19 EST 2008
Hi Darren,
Sorry I haven't used this API before, but you should be able
to get it working via the LongByteObject (which I believe is mapped to a
BSTR for 3GL calls)... if you are after a quick and dirty solution, I
would opt towards the original suggestion of providing two URLs and two
applications, each with a different time-zone environment applied...
it's not ideal, but probably involves less wasted time on a 3GL call and
is more portable.
A positive spin on this approach is that there is no
client-side configuration files that are needed and users can run either
version (if required).
Regards,
Fabian.
________________________________
From: openroad-users-bounces at peerlessit.com
[mailto:openroad-users-bounces at peerlessit.com] On Behalf Of Darren Mason
Sent: Tuesday, 22 April 2008 11:51 AM
To: 'International OpenROAD Users'; 'OpenRoad Users Group'
Subject: Re: [Openroad-users] WindowsAPI call to GetLocalTime
Hi Fabian, you are spot on.
This is a continuation of the thread from a fortnight or so ago. When
the eClient is installed across timezones we have adopted the approach
of defaulting the timezone to the same one on the server regardless of
location. This means the DATE('now') will return the date time as it
is exist on the server and not as it is on the client PC. Given we are
recording when employees start and finish work it is critical to get the
time from the local PC.
What appeared to be the simple answer was to do a windows API call
however we have not got it working yet - we are still getting spurious
results.
If anyone has this call working and can provide some sample code this
would be greatly appreciated! We try to avoid calling VB / .NET
routines unless absolutely necessary in an effort to keep our code
portable across all operating systems (although we are not there yet...)
however if this has been done and can be shared that would be great.
Regards
Darren Mason
MyWorkplace Solutions Pty Limited
Level 5, 11 Queens Road
Melbourne Victoria 3004
Ph. 1300 733 731
Mob. 0419 337 170
Fax. 03 9710 1112
Making Service our Priority
www.MyWorkplace.com.au
If you receive this email by mistake, please notify us and do not make
any use of the email. We do not waive any privilege, confidentiality or
copyright associated with it.
From: openroad-users-bounces at peerlessit.com
[mailto:openroad-users-bounces at peerlessit.com] On Behalf Of Fabian
Anderson
Sent: Tuesday, 22 April 2008 11:24 AM
To: International OpenROAD Users; OpenRoad Users Group
Subject: Re: [Openroad-users] WindowsAPI call to GetLocalTime
Hi Bill,
The main reason (for me) was so that the time-zone info
could come from the client environment and not the server.
I think the requirement called for a time with time-zone applied, but
the problem was that it needed to have the correct time-zone applied.
Regards,
Fabian.
________________________________
From: openroad-users-bounces at peerlessit.com
[mailto:openroad-users-bounces at peerlessit.com] On Behalf Of Bill Allan
Sent: Monday, 21 April 2008 7:10 PM
To: International OpenROAD Users; OpenRoad Users Group
Subject: Re: [Openroad-users] WindowsAPI call to GetLocalTime
Can I ask a stupid question?
Why do you need to use 'GetLocalTime'? Ingres DATE_GMT(DATE('now'))
will give you a GMT ( UTC) string that can be cut up and give you all
the information apart from the Milliseconds component.
In Ingres 2006 there is a new ANSI DATE data type which has a number of
good features. Here is part of the doco:
TIME WITH TIME ZONE hh:mm:ss.ffff... [+|-]th:tm 12:45:12.23456 -05:00
TIME or TIME WITHOUT TIME ZONE hh:mm:ss.ffff... 12:45:12.23456
other formats are:
ANSIDATE
TIME WITH LOCAL TIME ZONE
TIMESTAMP WITH TIME ZONE
TIMESTAMP or TIMESTAMP WITHOUT TIME ZONE
TIMESTAMP WITH LOCAL TIME ZONE
INTERVAL YEAR TO MONTH
INTERVAL DAY TO SECOND
Having the Timezone with ANSI DATE just tells you what the offset from
GMT isat that instant. It doesn't tell you the timezone name.
Bill Allan.
----- Original Message -----
From: jade clements <mailto:jade.clements at myworkplace.com.au>
To: OpenRoad Users Group
<mailto:openroad-users at sealion.peerlessit.com>
Sent: Monday, April 21, 2008 12:18 PM
Subject: [Openroad-users] WindowsAPI call to GetLocalTime
Hello,
I'm using a Window's API call, GetLocalTime, to obtain the
user's pc time however I'm getting some weird results.
procedure zGetTime ( ) =
declare
wYear = INTEGER NOT NULL;
wMonth = INTEGER NOT NULL;
wDayOfWeek = INTEGER NOT NULL;
wDay = INTEGER NOT NULL;
wHour = INTEGER NOT NULL;
wMinute = INTEGER NOT NULL;
wSecond = INTEGER NOT NULL;
wMilliseconds = INTEGER NOT NULL;
enddeclare
{
CALLPROC GetLocalTime(
byref(wYear),
byref(wMonth),
byref(wDayOfWeek),
byref(wDay),
byref(wHour),
byref(wMinute),
byref(wSecond),
byref(wMilliseconds));
CurProcedure.TRACE(
'Year: ' + VARCHAR(wYear) +
' Mth: ' + VARCHAR(wMonth) +
' Day: ' + VARCHAR(wDay) +
' Hr: ' + VARCHAR(wHour) +
' Min: ' + VARCHAR(wMinute) +
' Sec: ' + VARCHAR(wSecond) +
' DOW: ' + VARCHAR(wDayOfWeek));
}
Result:
Year: 264152 Mth: 1376257 Day: 45023240 Hr: 0 Min: 0 Sec: 0 DOW:
917516
The Day value changes everytime the procedure is run.
The API guide mentions that the GetSystemTime function returns
the system time expressed in Coordinated Universal Time (UTC). I guess
the same goes for GetLocalTime however, the return values just aren't
right.
Can anyone help?
Regards
Jade Clements
MyWorkplace Solutions Pty Limited
Level 5, 11 Queens Road
Melbourne Victoria 3004
Ph: 1300 733 731
Making Service our Priority
www.MyWorkplace.com.au
If you receive this email by mistake, please notify us and do
not make any use of the email. We do not waive any privilege,
confidentiality or copyright associated with it.
________________________________
________________________________________________________________
OpenROAD-Users mailing list
You can maintain your subscription here:
http://www.peerlessit.com/mailman/listinfo/openroad-users
To unsubscribe click on this link
mailto:openroad-users-unsubscribe at peerlessit.com&subject=unsubscribe
To subscribe click on this link
mailto:openroad-users-subscribe at peerlessit.com&subject=subscribe
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________
Specialist providers of back and front office systems for the financial
services industry.
Featuring: Fintechnix(r)
Disclaimer:
Notice: This message contains privileged and confidential information
intended only for the use of the addressee named above. If you are not
the intended recipient of this message you are hereby notified that you
must not disseminate, copy or take any action in reliance on it.
Any views expressed in this message are those of the individual
sender,except where the sender specifically states them to be the views
of Fintechnix Pty Ltd.
______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email
______________________________________________________________________
Specialist providers of back and front office systems for the financial services industry.
Featuring: Fintechnix(r)
Disclaimer:
Notice: This message contains privileged and confidential information intended only for the use of the addressee named above. If you are not the intended recipient of this message you are hereby notified that you must not disseminate, copy or take any action in reliance on it.
Any views expressed in this message are those of the individual sender,except where the sender specifically states them to be the views of Fintechnix Pty Ltd.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.peerlessit.com/pipermail/openroad-users/attachments/20080422/a789c76b/attachment-0003.html
More information about the Openroad-users
mailing list