* (all files)
* stripped svn header
* minor cleanups
; use following command to find out the history of files:
git log
git log --follow
git blame
git annotate
577 lines
12 KiB
Plaintext
577 lines
12 KiB
Plaintext
/*
|
|
* The following parts are Copyright of the individual authors.
|
|
* www - http://harbour-project.org
|
|
*
|
|
* Copyright 2000 Luiz Rafael Culik <culik@sl.conex.net>
|
|
* Documentation for: CDoW(),CMonth(),Date(),CToD(),Day(),Days()
|
|
* DoW(),DToS(),DToC(),ElapTime(),Month(),Seconds(),Secs(),Time(),Year()
|
|
* See COPYING.txt for licensing terms.
|
|
*
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
CDoW()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Converts a date to the day of week
|
|
$SYNTAX$
|
|
CDoW(<dDate>) --> cDay
|
|
$ARGUMENTS$
|
|
<dDate> Any date expression.
|
|
$RETURNS$
|
|
<cDay> The current day of week.
|
|
$DESCRIPTION$
|
|
This function returns a character string of the day of the week,
|
|
from a date expression <dDate> passed to it.
|
|
If a NULL date is passed to the function, the value of the function
|
|
will be a NULL byte.
|
|
$EXAMPLES$
|
|
? CDoW( Date() )
|
|
IF CDoW( Date() + 10 ) == "Sunday"
|
|
? "This is a sunny day."
|
|
ENDIF
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
Day(),DoW(),Date(),CMonth()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
CMonth()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Return the name of the month.
|
|
$SYNTAX$
|
|
CMonth(<dDate>) --> cMonth
|
|
$ARGUMENTS$
|
|
<dDate> Any date expression.
|
|
$RETURNS$
|
|
<cMonth> The current month name
|
|
$DESCRIPTION$
|
|
This function returns the name of the month (January,February,etc.)
|
|
from a date expression <dDate> passed to it.
|
|
If a NULL date is passed to the function, the value of the function
|
|
will be a NULL byte.
|
|
$EXAMPLES$
|
|
? CMonth( Date() )
|
|
IF CMonth( Date() + 10 ) == "March"
|
|
? "Have you done your system BACKUP?"
|
|
ENDIF
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
CDoW(),Date(),Month(),Year(),DoW(),DToC()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
Date()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Return the Current OS Date
|
|
$SYNTAX$
|
|
Date() --> dCurDate
|
|
$ARGUMENTS$
|
|
None
|
|
$RETURNS$
|
|
<dCurDate> Current system date.
|
|
$DESCRIPTION$
|
|
This function returns the current system date.
|
|
$EXAMPLES$
|
|
? Date()
|
|
? "Today is ", Day( Date() ), " of ", CMonth( Date() ), " of ", Year( Date() )
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
CToD(),DToS(),DToC(),Day(),Month(),CMonth()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
CToD()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Converts a character string to a date expression
|
|
$SYNTAX$
|
|
CToD(<cDateString>) --> dDate
|
|
$ARGUMENTS$
|
|
<cDateString> A character date in format 'mm/dd/yy'
|
|
$RETURNS$
|
|
<dDate> A date expression
|
|
$DESCRIPTION$
|
|
This function converts a date that has been entered as a character
|
|
expression to a date expression. The character expression will be in
|
|
the form "MM/DD/YY" (based on the default value in SET DATE) or in
|
|
the appropriate format specified by the SET DATE TO command. If an
|
|
improper character string is passed to the function, an empty date
|
|
value will be returned.
|
|
$EXAMPLES$
|
|
Set( _SET_DATEFORMAT, "yyyy-mm-dd" )
|
|
? CToD( "2000-12-21" )
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
SET DATE,Date(),DToS()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
Day()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Return the numeric day of the month.
|
|
$SYNTAX$
|
|
Day(<cDate>) --> nMonth
|
|
$ARGUMENTS$
|
|
<cDate> Any valid date expression.
|
|
$RETURNS$
|
|
<nMonth> Numeric value of the day of month.
|
|
$DESCRIPTION$
|
|
This function returns the numeric value of the day of month from a
|
|
date.
|
|
$EXAMPLES$
|
|
? Day( Date() )
|
|
? Day( Date() + 6325 )
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
CToD(),DToS(),DToC(),Date(),Month(),CMonth()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
Days()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Convert elapsed seconds into days
|
|
$SYNTAX$
|
|
Days(<nSecs> ) --> nDay
|
|
$ARGUMENTS$
|
|
<nSecs> The number of seconds
|
|
$RETURNS$
|
|
<nDay> The number of days
|
|
$DESCRIPTION$
|
|
This function converts <nSecs> seconds to the equivalent number
|
|
of days; 86399 seconds represents one day, 0 seconds being midnight.
|
|
$EXAMPLES$
|
|
? Days( 2434234 )
|
|
? "Has been passed", Days( 63251 ), "since midnight"
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
Seconds(),Secs(),ElapTime()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
DoW()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Value for the day of week.
|
|
$SYNTAX$
|
|
DoW(<dDate>) --> nDay
|
|
$ARGUMENTS$
|
|
<dDate> Any valid date expression
|
|
$RETURNS$
|
|
<nDay> The current day number
|
|
$DESCRIPTION$
|
|
This function returns the number representing the day of the week
|
|
for the date expressed as <dDate>.
|
|
$EXAMPLES$
|
|
? DoW( Date() )
|
|
? DoW( Date() - 6584 )
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
DToC(),CDoW(),Date(),DToS(),Day()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
DToC()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Date to character conversion
|
|
$SYNTAX$
|
|
DToC(<dDateString>) --> cDate
|
|
$ARGUMENTS$
|
|
<dDateString> Any date
|
|
$RETURNS$
|
|
<dDate> Character represention of date
|
|
$DESCRIPTION$
|
|
This function converts any date expression (a field or variable)
|
|
expressed as <dDateString> to a character expression in the default
|
|
format "MM/DD/YY". The date format expressed by this function is
|
|
controled in part by the date format specified in the SET DATE
|
|
command
|
|
$EXAMPLES$
|
|
? DToC( Date() )
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
SET DATE,Date(),DToS()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
DToS()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Date to string conversion
|
|
$SYNTAX$
|
|
DToS(<dDateString>) --> cDate
|
|
$ARGUMENTS$
|
|
<dDateString> Any date
|
|
$RETURNS$
|
|
<dDate> String notation of the date
|
|
$DESCRIPTION$
|
|
This function returns the value of <dDateString> as a character
|
|
string in the format of YYYYMMDD. If the value of <dDateString> is
|
|
an empty date, this function will return eight blank spaces.
|
|
$EXAMPLES$
|
|
? DToS( Date() )
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
DToC(),Date(),DToS()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
ElapTime()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Calculates elapted time.
|
|
$SYNTAX$
|
|
ElapTime(<cStartTime>,<cEndTime>) --> cDiference
|
|
$ARGUMENTS$
|
|
<cStartTime> Start in time as a string format
|
|
<cEndTime> End time as a string format
|
|
$RETURNS$
|
|
<cDiference> Difference between the times
|
|
$DESCRIPTION$
|
|
This function returns a string that shows the difference between
|
|
the starting time represented as <cStartTime> and the ending time
|
|
as <cEndTime>. If the stating time is greater then the ending
|
|
time, the function will assume that the date changed once.
|
|
$EXAMPLES$
|
|
STATIC s_cStartTime
|
|
INIT PROCEDURE Startup()
|
|
s_cStartTime := Time()
|
|
RETURN
|
|
EXIT PROCEDURE StartExit()
|
|
? "You used this program by", ElapTime( s_cStartTime, Time() )
|
|
RETURN
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
Secs(),Seconds(),Time(),Day()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
Month()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Converts a date expression to a month value
|
|
$SYNTAX$
|
|
Month(<dDate>) --> nMonth
|
|
$ARGUMENTS$
|
|
<dDate> Any valid date expression
|
|
$RETURNS$
|
|
<nMonth> Corresponding number of the month in the year, ranging from
|
|
0 to 12
|
|
$DESCRIPTION$
|
|
This function returns a number that represents the month of a given
|
|
date expression <dDate>. If a NULL date (CToD('')) is passed to the
|
|
function, the value of the function will be 0.
|
|
$EXAMPLES$
|
|
? Month( Date() )
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
CDoW(),DoW(),Year(),CMonth()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
Seconds()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Returns the number of elapsed seconds past midnight.
|
|
$SYNTAX$
|
|
Seconds() --> nSeconds
|
|
$ARGUMENTS$
|
|
None
|
|
$RETURNS$
|
|
<nSeconds> Number of seconds since midnight
|
|
$DESCRIPTION$
|
|
This function returns a numeric value representing the number of
|
|
elapsed seconds based on the current system time.
|
|
The system time is considered to start at 0 (midnight); it continues
|
|
up to 86399 seconds. The value of the return expression is displayed
|
|
in both seconds and hundredths of seconds.
|
|
$EXAMPLES$
|
|
? Seconds()
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
Time()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
Secs()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Return the number of seconds from the system date.
|
|
$SYNTAX$
|
|
Secs( <cTime> ) --> nSeconds
|
|
$ARGUMENTS$
|
|
<cTime> Character expression in a time string format
|
|
$RETURNS$
|
|
<nSeconds> Number of seconds
|
|
$DESCRIPTION$
|
|
This function returns a numeric value that is a number of elapsed
|
|
seconds from midnight based on a time string given as <cTime>.
|
|
$EXAMPLES$
|
|
? Secs( Time() )
|
|
? Secs( Time() - 10 )
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
Seconds(),ElapTime(),Time()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
Time()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Returns the system time as a string
|
|
$SYNTAX$
|
|
Time() --> cTime
|
|
$ARGUMENTS$
|
|
None
|
|
$RETURNS$
|
|
<cTime> Character string representing time
|
|
$DESCRIPTION$
|
|
This function returns the system time represented as a character
|
|
expression in the format of HH:MM:SS
|
|
$EXAMPLES$
|
|
? Time()
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
Date(),Seconds()
|
|
$END$
|
|
*/
|
|
|
|
/* $DOC$
|
|
$TEMPLATE$
|
|
Function
|
|
$NAME$
|
|
Year()
|
|
$CATEGORY$
|
|
API
|
|
$SUBCATEGORY$
|
|
Date/Time
|
|
$ONELINER$
|
|
Converts the year portion of a date into a numeric value
|
|
$SYNTAX$
|
|
Year(<cDate>) --> nYear
|
|
$ARGUMENTS$
|
|
<dDate> Any valid date expression
|
|
$RETURNS$
|
|
<nYear> The year portion of the date.
|
|
$DESCRIPTION$
|
|
This function returns the numeric value for the year in <dDate>.
|
|
This value will always be a four-digit number and is not affected
|
|
by the setting of the SET CENTURY and SET DATE commands. Addition
|
|
ally, an empty date expression passed to this function will yield
|
|
a zero value.
|
|
$EXAMPLES$
|
|
? Year( Date() )
|
|
? Year( hb_SToD( "32510125" ) )
|
|
$STATUS$
|
|
R
|
|
$COMPLIANCE$
|
|
C
|
|
$PLATFORMS$
|
|
All
|
|
$FILES$
|
|
Library is core
|
|
$SEEALSO$
|
|
Day(),Month()
|
|
$END$
|
|
*/
|