×
The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.
On 21-Oct-2014 10:49 -0500, Gqcy wrote:
I have been looking for examples to convert the following string
into a valid timestamp:
"2014-07-25 08:28:04 AM"
I initially made a DS breaking apart date from time,
but I am now having trouble with the time string...
time_a = %char(%time(time_part:*usa):*ISO);
is not working...
Given the DS is as follows, plus both that the character data matches
that static alignment and all of the string values are valid timestamps
representations [despite being a composite of ISO and USA formats]:
Dcl-ds TS_ISO_USAish ;
Date_Part char(10) ;
*n char(01) ;
Time_Part char(08) ;
*n char(01) ;
AMPM_Part char(02) ;
End-ds ;
And if embedding SQL is acceptable, then the following expression
should suffice:
set :time_a = timestamp(:Date_Part , time(:Time_Part)
+ case AMPM_Part when 'PM' then 12 else 0 end HOURS ) ;
/* TIME() scalar is for clarity, but should be optional */
If any values might be suspect, or as generally safe coding practice
irrespective the confidence in the validity of the data, the RPG should
check the SQLSTATE and\or the SQLCODE after the SET statement to ensure
the expression was evaluated without error.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact
[javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.