home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Media Share 9
/
MEDIASHARE_09.ISO
/
pascal
/
vdl020d.zip
/
VDATES.DOC
< prev
next >
Wrap
Text File
|
1993-04-14
|
77KB
|
3,291 lines
{
════════════════════════════════════════════════════════════════════════════
Visionix Date Functions Unit (VDATES)
Copyright 1991,92,93 Visionix
ALL RIGHTS RESERVED
────────────────────────────────────────────────────────────────────────────
Revision history in reverse chronological order:
Initials Date Comment
──────── ──────── ────────────────────────────────────────────────────────
lpg 03/21/92 Changed: TDateTime -> TDTime, DateTime -> TDateTime.
lpg 03/13/93 Added Source Documentation
mep 02/11/93 Cleaned up code for beta release
jrt 02/08/93 Sync with beta 0.12 release
lpg 1/13/93 Added: ValidDateTime
mep 12/18/92 Added: TimeToStrHM and DateToStrDay for VCopy use.
jrt 12/07/92 Sync with beta 0.11 release
lpg 11/24/92 Modified & corrected DT functions,
jrt 11/21/92 Sync with beta 0.08
lpg 10/23/92 Made more Functions & Tested
lpg 10/19/92 Created
════════════════════════════════════════════════════════════════════════════
MUST CLEAN OUT COMMENT CODE BEFORE DISTRIBUTION!!!
Caveats/Known Bugs
The following Functions are incomplete:
- All TDateTime Functions,
- All DT Functions
Data for these Functions was not available at the time of this
release to complete them.
════════════════════════════════════════════════════════════════════════════
}
UNIT VDates;
Uses
VTypes,
VGen,
DOS;
{──────────────────────────────────────────────────────────────────────────}
Const
cYearBase : WORD = 1992; { [1925-2078] - need to get this dn to 1890! }
cDateBase : WORD = 0; { 1850; }
{ [1850-2034] want yr=0 to handle all input }
c12Hours : WORD = 43200;
c24Hours : LONGINT = 86400;
cMaxDate : LONGINT = 0;
cDayStr : Array[0..6] of String[15] =
( 'Sunday', 'Monday', 'Tuesday', 'Wednesday',
'Thursday', 'Friday', 'Saturday' );
cMonthStr : Array[1..12] of String[12] =
( 'January', 'February', 'March', 'April',
'May', 'June', 'July', 'August',
'September', 'October', 'November', 'December' );
Type
TTime = LONGINT; {unit=secs, Limit=00:00:00-23:59:59}
TDate = LONGINT; {unit=days, Range=5,883,516.84yrs}
TDTime = LONGINT; {unit=secs, Range= 68.09yrs}
TDay = INTEGER; {0..6 = Sun..Sat}
{$IFNDEF TDateTime}
TDateTime = DateTime; { TPW redefines DATETIME as TDATETIME }
{$ENDIF}
TDayofWeek = ( Sun, Mon, Tue, Wed, Thu, Fri, Sat );
TMonth = ( January, February, March, April,
May, June, July, August,
September, October, November, December );
{────────────────────────────────────────────────────────────────────────────}
{----------------------}
{ Basic Time Functions }
{----------------------}
Function DayOfWeek( Date : TDate ) : INTEGER;
Function LeapYearDays( Year : WORD ) : INTEGER;
Function DaysInMonth( Month : WORD;
Year : WORD ) : INTEGER;
Function DayLightSavings( Date : TDate;
Hour : WORD;
NoSupport : BOOLEAN ) : INTEGER;
Function TimePM( Time : TTime ) : BOOLEAN;
Function ValidTime( Hrs : WORD;
Mins : WORD;
Secs : WORD ) : BOOLEAN;
Function ValidTimeMap( Hrs : WORD;
Mins : WORD;
Secs : WORD ) : BYTE;
Function ValidDate( Days : WORD;
Mons : WORD;
Yrs : WORD ) : BOOLEAN;
Function ValidDateMap( Days : WORD;
Mons : WORD;
Yrs : WORD ) : BYTE;
Function ValidDateTime( Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Year : WORD ) : BOOLEAN;
Function ValidDT( DT : DateTime ) : BOOLEAN;
Function ValidPDT( PDT : LONGINT ) : BOOLEAN;
{------------------------}
{ Current Time Functions }
{------------------------}
Function CurrTime : TTime;
Function CurrDate : TDate;
Function CurrDTime : TDTime;
Procedure CurrDT( Var DT : TDateTime );
Function CurrPDT : LONGINT;
Function CurrDay : TDay;
{---------------}
{ To/From Times }
{---------------}
{--------------------------}
{ One-Based Date Functions }
{ IE. 1/1/92 = 1Jan92 }
{--------------------------}
{--TTime--}
Function HMSToTime( Hrs : WORD;
Mins : WORD;
Secs : WORD ) : TTime;
Procedure TimeToHMS( Time : TTime;
VAR Hrs : INTEGER;
VAR Mins : INTEGER;
VAR Secs : INTEGER );
{--TDate--}
Function DMYToDate( Days : WORD;
Mons : WORD;
Yrs : WORD ) : TDate;
Procedure DateToDMY( Date : TDate;
VAR Days : INTEGER;
VAR Mons : INTEGER;
VAR Yrs : INTEGER );
{--TDateTime--}
Function ToDTime( Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : TDTime;
Procedure FromDTime( DT : TDTime;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Day : INTEGER;
VAR Month : INTEGER;
VAR Year : INTEGER );
{--DateTime Structure--}
Procedure ToDT( VAR DT : TDateTime;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD );
Function DTtoLinear( DT : TDateTime ) : LONGINT;
Procedure LinearToDT( L : LONGINT;
VAR DT : TDateTime );
{--Packed DateTime--}
Function ToPDT( Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : LONGINT;
Procedure FromPDT( PDT : LONGINT;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Days : INTEGER;
VAR Months : INTEGER;
VAR Years : INTEGER );
Function DTtoPDT( DT : TDateTime ) : LONGINT;
Procedure PDTtoDT( PDT : LONGINT;
VAR DT : DateTime );
{------------------------------}
{ Zero-Based Date Functions }
{ IE. 0/0/92 = 1Jan92 }
{ (For Use With DateDiff Func) }
{------------------------------}
Function DMYToDateZ( Days : WORD;
Mons : WORD;
Yrs : WORD ) : TDate;
Procedure DateZToDMY( Date : TDate;
VAR Days : INTEGER;
VAR Mons : INTEGER;
VAR Yrs : INTEGER );
Function ToDTimeZ( Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : TDTime;
Procedure FromDTimeZ( DT : TDTime;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Day : INTEGER;
VAR Month : INTEGER;
VAR Year : INTEGER );
Function DTZtoLinear( DT : TDateTime ) : LONGINT;
Procedure LinearToDTZ( L : LONGINT;
Var DT : TDateTime );
{-----------------------}
{ Time String Functions }
{-----------------------}
Function TimeToStr( Time : TTime ) : STRING;
Function TimeToStrPM( Time : TTime ) : STRING;
Function TimeToStrHM( Time : TTime ) : STRING;
Function DateToStr( Date : TDate ) : STRING;
Function DateToStrMDY( Date : TDate ) : STRING;
Function DateToStrDMY( Date : TDate ) : STRING;
Function DateToStrDay( Date : TDate ) : STRING;
Function DTimeToStr( DT : TDTime ) : STRING;
Function DTimeToStrMDY( DT : TDTime ) : STRING;
Function DTimeToStrDMY( DT : TDTime ) : STRING;
Function DTtoStr( DT : TDateTime ) : STRING;
Function DTtoStrMDY( DT : TDateTime ) : STRING;
Function DTtoStrDMY( DT : TDateTime ) : STRING;
Procedure StrToDT( S : STRING;
Var DT : TDateTime );
Function PDTtoStr( PDT : LONGINT ) : STRING;
Function PDTtoStrMDY( PDT : LONGINT ) : STRING;
Function PDTtoStrDMY( PDT : LONGINT ) : STRING;
{---------------------}
{ Time Math Functions }
{---------------------}
{--TTime--}
Function IncTime( Time : TTime ) : TTime;
Function DecTime( Time : TTime ) : TTime;
Function AddTime( Time : TTime;
Hrs : WORD;
Mins : WORD;
Secs : WORD ) : TTime;
Function SubTime( Time : TTime;
Hrs : WORD;
Mins : WORD;
Secs : WORD ) : TTime;
Procedure TimeDiff( Time1 : TTime;
Time2 : TTime;
VAR Hrs : INTEGER;
VAR Mins : INTEGER;
VAR Secs : INTEGER );
{--TDate--}
Function IncDate( Date : TDate ) : TDate;
Function DecDate( Date : TDate ) : TDate;
Function AddDate( Date : TDate;
Days : WORD;
Mons : WORD;
Yrs : WORD ) : TDate;
Function SubDate( Date : TDate;
Days : WORD;
Mons : WORD;
Yrs : WORD ) : TDate;
Procedure DateDiff( Date1 : TDate;
Date2 : TDate;
VAR Days : INTEGER;
VAR Mons : INTEGER;
VAR Yrs : INTEGER );
{--TDateTime--}
Function IncDTime( DT : TDTime ) : TDTime;
Function DecDTime( DT : TDTime ) : TDTime;
Function AddDTime( DT : TDTime;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : TDTime;
Function SubDTime( DT1 : TDTime;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : TDTime;
Procedure DTimeDiff( DT1 : TDTime;
DT2 : TDTime;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Days : INTEGER;
VAR Months : INTEGER;
VAR Years : INTEGER );
{--DateTime Structure--}
Procedure IncDT( Var DT : TDateTime );
Procedure DecDT( Var DT : TDateTime );
Procedure AddDT( Var DT : TDateTime;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD );
Procedure SubDT( Var DT : TDateTime;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD );
Procedure DTDiff( DT1 : TDateTime;
DT2 : TDateTime;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Days : INTEGER;
VAR Months : INTEGER;
VAR Years : INTEGER );
{--Packed DateTime Structure--}
Function IncPDT( PDT : LONGINT ) : LONGINT;
Function DecPDT( PDT : LONGINT ) : LONGINT;
Function AddPDT( PDT : LONGINT;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : LONGINT;
Function SubPDT( PDT : LONGINT;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : LONGINT;
Procedure PDTDiff( PDT1 : LONGINT;
PDT2 : LONGINT;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Days : INTEGER;
VAR Months : INTEGER;
VAR Years : INTEGER );
{-------------------------------}
{ Floating Point Time Functions }
{-------------------------------}
Function CurrSeconds : REAL;
Function MarkTime : REAL;
Procedure ClockOn;
Function ClockOff : REAL;
Function ClockOffStr : STRING;
Procedure DisplayStopWatch( TimeDelta : REAL );
{------------------------}
{ System Clock Functions }
{------------------------}
Function SetTicksSinceMidnt( Ticks : LONGINT ) : BOOLEAN;
Function GetTicksSinceMidnt( Var Days : BYTE ) : LONGINT;
Function SetSysTime( BcdHours : BYTE;
BcdMins : BYTE;
BcdSecs : BYTE;
DSTActive : BOOLEAN ) : BOOLEAN;
Function GetSysTime( Var BcdHours : BYTE;
Var BcdMins : BYTE;
Var BcdSecs : BYTE;
Var DSTActive : BOOLEAN ) : BOOLEAN;
Function SetSysDate( BcdDay : BYTE;
BcdMon : BYTE;
BcdYear : BYTE;
BcdCent : BYTE ) : BOOLEAN;
Function GetSysDate( Var BcdDay : BYTE;
Var BcdMon : BYTE;
Var BcdYear : BYTE;
Var BcdCent : BYTE ) : BOOLEAN;
Function SetSysAlarmOn( BcdHours : BYTE;
BcdMins : BYTE;
BcdSecs : BYTE ) : BOOLEAN;
Function SetSysAlarmOff : BOOLEAN;
{────────────────────────────────────────────────────────────────────────────}
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DayOfWeek( Date : TDate ) : INTEGER;
[PARAMETERS]
Date Source Date
[RETURNS]
Day Index (0=Sunday)
[DESCRIPTION]
Returns the Day of the Week Number of the given Date. The Days are
Base Zero. (ie. 0=Sunday).
This value can be used with the cDayStr Array as an index to the
Day Text Name (ie. cDayStr[0] = 'Sunday').
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function LeapYear( Year : WORD ) : BOOLEAN;
[PARAMETERS]
Year Source Year
[RETURNS]
Whether the source Year is a Leap Year.
[DESCRIPTION]
Determines and Reports whether the source Year is a Leap Year.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function LeapYearDays( Year : WORD ) : INTEGER;
[PARAMETERS]
Year Source Year
[RETURNS]
Number of Leap-Year Days in the Source Year
[DESCRIPTION]
Returns the Number of Days in this Year which are the result of Leap
Year. If this is Not a Leap Year the Value will be Zero. If it is a
Normal Leap Year the Normal Value will be 1, unless it also happens to
be a Leap Century in which case it will be 2.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DaysInMonth( Month : WORD;
Year : WORD ) : INTEGER;
[PARAMETERS]
Month Source Month
Year Source Year
[RETURNS]
Number of Days in the Source Month.
[DESCRIPTION]
Based upon the provided Month and Year, returns the number of days that
are in that month. This takes into account Leap Year Days for Feberuary.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DayLightSavings( Date : TDate;
Hour : WORD;
NoSupport : BOOLEAN ) : INTEGER;
[PARAMETERS]
Date Source Date
Hour Source Hour
NoSupport Does your Area Support DayLight Savings? (TRUE=Yes)
[RETURNS]
Number of DayLight Savings Hours in this Hour
[DESCRIPTION]
Per an Act of Congress of 1986, the Spring Change Day was set to be
the 1st Sunday in April with the Fall Change Day being the the last
Sunday in October. Prior to this the Spring Change Day was the last
Sunday in April.
Per this Act, individual states and areas were free to elect to use
DayLight Savings or not. Some of the areas which have Elected not to
are Arizona, Hawaii, Peurto Rico, the Virgin Islands, the American
Samoas, and part of the following States: Indiana, Kansas, Texas,
Florida, Michigan, and Alaska. In order to support these difficult to
compute areas, set the NoSupport Flag to FALSE, otherwise DLS will be
computed down to the overall state level.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function TimePM( Time : TTime ) : BOOLEAN;
[PARAMETERS]
Time Source Time
[RETURNS]
Whether the Source Time is Post Meridian [PM] (TRUE=Yes)
[DESCRIPTION]
Returns whether the source time is AM or PM. If it is PM the function
reports TRUE, else AM=FALSE.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ValidTime( Hrs : WORD;
Mins : WORD;
Secs : WORD ) : BOOLEAN;
[PARAMETERS]
Hrs Source Hours
Mins Source Minutes
Secs Source Seconds
[RETURNS]
Whether this Time is Valid (TRUE=Valid)
[DESCRIPTION]
Reports whether the Source Times represent a Valid Time.
(ie. all values are within proper range)
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ValidTimeMap( Hrs : WORD;
Mins : WORD;
Secs : WORD ) : BYTE;
[PARAMETERS]
Hrs Source Hours
Mins Source Minutes
Secs Source Seconds
[RETURNS]
BitMap of Invalid Time Field Elements
[DESCRIPTION]
Returns a Byte Bit-Map of any Invalid Fields in the given Time.
Any Bits set to 1 Represent an Invalid Element. Zero (0) represents
a Valid Field Element.
This allows the caller to immediately identify what about the Time
is invalid rather than just the whole thing.
The Bit-Map is as Follows: Bits
----
7-3 - Not Used
2 - Hours
1 - Minutes
0 - Seconds
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ValidDate( Days : WORD;
Mons : WORD;
Yrs : WORD ) : BOOLEAN;
[PARAMETERS]
Days Source Day
Mons Source Month
Yrs Source Year
[RETURNS]
Whether the given Date is Valid (TRUE=Valid)
[DESCRIPTION]
Reports whether the Source Date represents a Valid Date.
(ie. all values are within proper range)
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ValidDateTime( Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Year : WORD ) : BOOLEAN;
[PARAMETERS]
Hours Source Hour
Minutes Source Minute
Seconds Source Second
Days Source Day
Months Source Month
Years Source Year
[RETURNS]
Whether the given Date/Time is Valid (TRUE=Valid)
[DESCRIPTION]
Reports whether the Source Date/Time represents a Valid Date/Time.
(ie. all values are within proper range)
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ValidDateMap( Days : WORD;
Mons : WORD;
Yrs : WORD ) : BYTE;
[PARAMETERS]
[RETURNS]
BitMap of Invalid Time Field Elements
[DESCRIPTION]
Returns a Byte Bit-Map of any Invalid Fields in the given Date.
Any Bits set to 1 Represent an Invalid Element. Zero (0) represents
a Valid Field Element.
This allows the caller to immediately identify what about the Date
is invalid rather than just the whole thing.
The Bit-Map is as Follows: Bits
----
7-3 - Not Used
2 - Days
1 - Months
0 - Years
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ValidDT( DT : TDateTime ) : BOOLEAN;
[PARAMETERS]
DT Source Dos Date/Time Structure
[RETURNS]
Whether the given Date/Time is Valid (TRUE=Valid)
[DESCRIPTION]
Reports whether the Source Date/Time represents a Valid Date/Time.
(ie. all values are within proper range)
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ValidPDT( PDT : LONGINT ) : BOOLEAN;
[PARAMETERS]
PDT Source Packed Date/Time Value
[RETURNS]
Whether the given Date/Time is Valid (TRUE=Valid)
[DESCRIPTION]
Reports whether the Source Date/Time represents a Valid Date/Time.
(ie. all values are within proper range)
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function CurrTime : TTime;
[PARAMETERS]
(None)
[RETURNS]
The Current Time
[DESCRIPTION]
Gets the Current Time, Converts this to a TTime Value, and returns the
result.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function CurrDate : TDate;
[PARAMETERS]
(None)
[RETURNS]
The Current Date
[DESCRIPTION]
Gets the Current Date, Converts this to a TDate Value, and returns the
result.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function CurrDTime : TDTime;
[PARAMETERS]
(None)
[RETURNS]
The Current Date/Time
[DESCRIPTION]
Gets the Current Date & Time, Converts this to a TDateTime Value, and
returns the result.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure CurrDT( Var DT : DateTime );
[PARAMETERS]
DT VAR Returned Dos Date/Time Structure
[RETURNS]
Function : None
(VAR : [DT] Dos Date/Time Structure)
[DESCRIPTION]
Gets the Current Date & Time, Converts this to a Dos Date/Time Structure,
and returns the result.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function CurrPDT : LONGINT;
[PARAMETERS]
(None)
[RETURNS]
Packed Date/Time Value
[DESCRIPTION]
Gets the Current Date & Time, Converts this to a Packed Date/Time Value,
and returns the result.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function CurrDay : TDay;
[PARAMETERS]
(None)
[RETURNS]
Current Day of the Week (0=Sunday)
[DESCRIPTION]
Returns the Day of the Week Number of the given Date. The Days are
Base Zero. (ie. 0=Sunday).
This value can be used with the cDayStr Array as an index to the
Day Text Name (ie. cDayStr[0] = 'Sunday').
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function HMSToTime( Hrs : WORD;
Mins : WORD;
Secs : WORD ) : TTime;
[PARAMETERS]
Hrs Source Hour
Mins Source Minute
Secs Source Second
[RETURNS]
Time Value from H:M:S
[DESCRIPTION]
Converts Hours/Minutes/Seconds into a Time Value
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure TimeToHMS( Time : TTime;
VAR Hrs : INTEGER;
VAR Mins : INTEGER;
VAR Secs : INTEGER );
[PARAMETERS]
Time Source Time Value
Hrs VAR Returned Hours
Mins VAR Returned Minutes
Secs VAR Returned Seconds
[RETURNS]
Function : None
(VAR : [Hrs] Hours)
(VAR : [Mins] Minutes)
(VAR : [Secs] Seconds)
[DESCRIPTION]
Converts a Time Value into Hours/Minutes/Seconds.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DMYToDate( Days : WORD;
Mons : WORD;
Yrs : WORD ) : TDate;
[PARAMETERS]
Days Source Day
Mons Source Month
Yrs Source Year
[RETURNS]
Date Value from D/M/Y
[DESCRIPTION]
Converts Days/Months/Years into a Date Value.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure DateToDMY( Date : TDate;
VAR Days : INTEGER;
VAR Mons : INTEGER;
VAR Yrs : INTEGER );
[PARAMETERS]
Date Source Date Value
Days VAR Returned Day
Mons VAR Returned Month
Yrs VAR Returned Year
[RETURNS]
Function : None
(VAR : [Days] Day)
(VAR : [Mons] Month)
(VAR : [Yrs] Year)
[DESCRIPTION]
Converts a Date Value into Days/Months/Years.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ToDTime( Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : TDTime;
[PARAMETERS]
Hours Source Hour
Minutes Source Minute
Seconds Source Second
Days Source Day
Months Source Month
Years Source Year
[RETURNS]
Date/Time Value from H:M:S & D/M/Y.
[DESCRIPTION]
Converts Hours/Minutes/Seconds and Days/Months/Years to a Date/Time Value.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure FromDateTime( DT : TDateTime;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Day : INTEGER;
VAR Month : INTEGER;
VAR Year : INTEGER );
[PARAMETERS]
DT Source Date/Time Value
Hours VAR Returned Hour
Minutes VAR Returned Minute
Seconds VAR Returned Second
Day VAR Returned Day
Month VAR Returned Month
Year VAR Returned Year
[RETURNS]
Function : None
(VAR : [Hours] Hour)
(VAR : [Minutes] Minute)
(VAR : [Seconds] Second)
(VAR : [Day] Day)
(VAR : [Month] Month)
(VAR : [Year] Year)
[DESCRIPTION]
Converts a Date/Time Value to Hour/Minute/Second & Day/Month/Year.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure ToDT( Var DT : DateTime;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD );
[PARAMETERS]
DT VAR Returned Dos Date/Time Structure
Hours Source Hour
Minutes Source Minute
Seconds Source Second
Days Source Day
Months Source Month
Years Source Year
[RETURNS]
Function : None
(VAR : [DT] Dos Date/Time Structure)
[DESCRIPTION]
Converts Hours/Minutes/Seconds & Days/Months/Years to Dos Date/Time
Structure.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DTtoLinear( DT : DateTime ) : LONGINT;
[PARAMETERS]
DT Source Dos Date/Time Structure
[RETURNS]
A Linear Julian Date/Time Value in Seconds.
[DESCRIPTION]
Converts a Dos Date/Time Structure
Note: This Date base can be changed from the Default Year of 1992 by
modifying the Variable "YearBase" (Type : WORD)
A Linear Date/Time is the date & time in seconds from a given base
of cYearBase. Altering this Base allows the Date/Time Range to
be shifted to cover any years desired. The Standard range is 130 Yrs.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure LinearToDT( L : LONGINT;
Var DT : DateTime );
[PARAMETERS]
L Source Linear Date/Time Value
DT VAR Returned Dos Date/Time Structure
[RETURNS]
Function : None
(VAR : [DT] Dos Date/Time Structure)
[DESCRIPTION]
Converts a Linear Date/Time Value into a Dos Date/Time Structure.
A Linear Date/Time is the date & time in seconds from a given base
of cYearBase. Altering this Base allows the Date/Time Range to
be shifted to cover any years desired. The Standard range is 130 Yrs.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ToPDT( Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : LONGINT;
[PARAMETERS]
Hours Source Hour
Minutes Source Minute
Seconds Source Second
Days Source Day
months Source Month
Years Source Year
[RETURNS]
A Packed Date/Time Value.
[DESCRIPTION]
Converts H:M:S & D/M/Y to a Packed Date/Time Value.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure FromPDT( PDT : LONGINT;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Days : INTEGER;
VAR Months : INTEGER;
VAR Years : INTEGER );
[PARAMETERS]
PDT Source Packed Date/Time Value
Hours VAR Returned Hours
Minutes VAR Returned Minutes
Seconds VAR Returned Seconds
Days VAR Returned Days
Months VAR Returned Months
Years VAR Returned Years
[RETURNS]
Function : None
(VAR : [Hours] Hours)
(VAR : [Minutes] Minutes)
(VAR : [Seconds] Seconds)
(VAR : [Days] Days)
(VAR : [Months] Months)
(VAR : [Years] Years)
[DESCRIPTION]
Converts a Packed Date/Time Value to H:M:S & D/M/Y.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DTtoPDT( DT : DateTime ) : LONGINT;
[PARAMETERS]
DT Source Dos Date/Time Structure
[RETURNS]
Packed Date/Time Value
[DESCRIPTION]
Converts a Dos Date/Time Structure to a Packed Date/Time Value.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure PDTtoDT( PDT : LONGINT;
VAR DT : DateTime );
[PARAMETERS]
PDT Source Packed Date/Time Value
DT VAR Returned Dos Date/Time Structure
[RETURNS]
Function : None
(VAR : [DT] Dos Date/Time Structure)
[DESCRIPTION]
Converts a Packed Date/Time Value to a Dos Date/Time Structure.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DMYToDateZ( Days : WORD;
Mons : WORD;
Yrs : WORD ) : TDate;
[PARAMETERS]
Days Source Day
Mons Source Month
Yrs Source Year
[RETURNS]
A Zero-Based Date Value
[DESCRIPTION]
Converts D/M/Y to a Zero-Based Date Value.
NOTE : This is a Low-Level Routine used mainly for use in Date Diffenence
Routines.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure DateZToDMY( Date : TDate;
VAR Days : INTEGER;
VAR Mons : INTEGER;
VAR Yrs : INTEGER );
[PARAMETERS]
Date Source Date Value
Days VAR Returned Day
Mons VAR Returned Month
Yrs VAR Returned Year
[RETURNS]
Function : None
(VAR : [Days] Day)
(VAR : [Mons] Month)
(VAR : [Yrs] Year)
[DESCRIPTION]
Converts a Zero-Based Date Value to D/M/Y.
NOTE : This is a Low-Level Routine used mainly for use in Date Diffenence
Routines.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ToDTimeZ( Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : TDTime;
[PARAMETERS]
Hours Source Hour
Minutes Source Minute
Seconds Source Second
Days Source Day
Months Source Month
Years Source Year
[RETURNS]
A Zero-Based Date/Time Value
[DESCRIPTION]
Converts to Zero-Based Date/Time Value from H:M:S & D/M/Y.
Zero-Based Dates (IE 0/0/1992=1Jan1993)
Returns a Julian DateTime in seconds since midnight, 0/0/BaseYear (Default).
This Date can be changed by constant variable YearBase (Type: WORD)
NOTE : This is a Low-Level Routine used mainly for use in Date Diffenence
Routines.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure FromDateTimeZ( DT : TDateTime;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Day : INTEGER;
VAR Month : INTEGER;
VAR Year : INTEGER );
[PARAMETERS]
DT Source Zero-Based Date/Time Value
Hours VAR Returned Hour
Minutes VAR Returned Minute
Seconds VAR Returned Second
Day VAR Returned Day
Month VAR Returned Month
Year VAR Returned Year
[RETURNS]
Function : None
(VAR : [Hours] Hour)
(VAR : [Minutes] Minute)
(VAR : [Seconds] Second)
(VAR : [Day] Day)
(VAR : [Month] Month)
(VAR : [Year] Year)
[DESCRIPTION]
Converts a Zero-Based Date/Time Value to H:M:S & D/M/Y.
Zero-Based Dates (IE 0/0/1992=1Jan1993)
Returns a Julian DateTime in seconds since midnight, 0/0/BaseYear (Default).
This Date can be changed by constant variable YearBase (Type: WORD)
NOTE : This is a Low-Level Routine used mainly for use in Date Diffenence
Routines.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DTZtoLinear( DT : TDateTime ) : LONGINT;
[PARAMETERS]
DT Source Zero-Based Dos Date/Time Structure
[RETURNS]
Zero-Based Linear Date/Time Value
[DESCRIPTION]
Converts a Zero-Based Dos Date/Time Structure to a Linear Date/Time Value.
Zero-Based Dates (IE 0/0/1992=1Jan1993)
Returns a Julian DateTime in seconds since midnight, 0/0/BaseYear (Default).
This Date can be changed by constant variable YearBase (Type: WORD)
NOTE : This is a Low-Level Routine used mainly for use in Date Diffenence
Routines.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure LinearToDTZ( L : LONGINT;
Var DT : TDateTime );
[PARAMETERS]
L Source Linear Date/Time Value
DT VAR Returned Zero-Based Date/Time Structure
[RETURNS]
Function : None
(VAR : [DT] Zero-Based Date/Time Structure)
[DESCRIPTION]
Converts a Linear Date/Time Value to a Zero-Based Dos Date/Time Structure
Zero-Based Dates (IE 0/0/1992=1Jan1993)
Returns a Julian DateTime in seconds since midnight, 0/0/BaseYear (Default).
This Date can be changed by constant variable YearBase (Type: WORD)
NOTE : This is a Low-Level Routine used mainly for use in Date Difference
Routines.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function TimeToStr( Time : TTime ) : STRING;
[PARAMETERS]
Time Source Time Value
[RETURNS]
String Representaion of Time (24-hr Mode)
[DESCRIPTION]
String Formatted as follows : "HH:MM:SS".
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function TimeToStrPM( Time : TTime ) : STRING;
[PARAMETERS]
Time Source Time Value
[RETURNS]
String Representation of Time as AM or PM (12-Hr Mode)
[DESCRIPTION]
String Formatted as follows : "HH:MM:SSPM".
Time wraps around every 12 Hours as either AM or PM.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function TimeToStrHM( Time : TTime ) : STRING;
[PARAMETERS]
Time Source Time Value
[RETURNS]
String Representation of Time (24-Hr Mode)
[DESCRIPTION]
String Formatted as follows : "HH:MM"
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DateToStr( Date : TDate ) : STRING;
[PARAMETERS]
Date Source Date Value
[RETURNS]
String Representation of Date
[DESCRIPTION]
String Formatted as follow : "DDMMMYY". (ie. "24Jan92" )
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DateToStrMDY( Date : TDate ) : STRING;
[PARAMETERS]
Date Source Date Value
[RETURNS]
String Representation of Date
[DESCRIPTION]
String Formatted as follows : "MM/DD/YY".
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DateToStrDMY( Date : TDate ) : STRING;
[PARAMETERS]
Date Source Date Value
[RETURNS]
String Representation of Date
[DESCRIPTION]
String Formatted as follows : "DD/MM/YY".
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DateToStrDay( Date : TDate ) : STRING;
[PARAMETERS]
Date Source Date Value
[RETURNS]
String Representation of Date with Day of the Week
[DESCRIPTION]
String Formatted as follows : "DOW MON DAY, YEAR".
(ie. "Thu Mar 18, 1993" )
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DTimeToStr( DT : TDTime ) : STRING;
[PARAMETERS]
DT Source Date/Time Value
[RETURNS]
String Representation of Date/Time
[DESCRIPTION]
String Formatted as follows : "HH:MM:SSPM DDMMMYY".
(ie. " 2:32:45PM 18Mar93" ).
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DTimeToStrMDY( DT : TDTime ) : STRING;
[PARAMETERS]
DT Source Date/Time Value
[RETURNS]
String Representation of Date/Time
[DESCRIPTION]
String Formatted as follows : "HH:MM:SS MM/DD/YY"
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DTimeToStrDMY( DT : TDTime ) : STRING;
[PARAMETERS]
DT Source Date/Time Value
[RETURNS]
String Representation of Date/Time
[DESCRIPTION]
String Formatted as follows : "HH:MM:SS DD/MM/YY".
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DTtoStr( DT : TDateTime ) : STRING;
[PARAMETERS]
DT Source Date/Time Structure
[RETURNS]
String Representation of Date/Time
[DESCRIPTION]
String Formatted as follows : "HH:MM:SS DDMMMYY".
(ie. "14:32:45 18Mar93" )
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DTtoStrMDY( DT : TDateTime ) : STRING;
[PARAMETERS]
DT Source Date/Time Structure
[RETURNS]
String Representation of Date/Time
[DESCRIPTION]
String Formatted as follows : "MM/DD/YY HH:MM:SS".
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DTtoStrDMY( DT : TDateTime ) : STRING;
[PARAMETERS]
DT Source Date/Time Structure
[RETURNS]
String Representation of Date/Time
[DESCRIPTION]
String Formatted as follows : "MM/DD/YY HH:MM:SS".
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure StrToDT( S : STRING;
Var DT : TDateTime );
[PARAMETERS]
S Source Date/Time String as "MM/DD/YY HH:MM:SS" ONLY
DT VAR Returned Date/Time Structure
[RETURNS]
Function : None
(VAR : [DT] Date/Time Structure)
[DESCRIPTION]
Converts a Formatted Date/Time String into a Date/Time Structure.
Only Interprets string as "MM/DD/YY HH:MM:SS"
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function PDTtoStr( PDT : LONGINT ) : STRING;
[PARAMETERS]
PDT Source Packed Date/Time Structure
[RETURNS]
Formatted Date/Time String
[DESCRIPTION]
String Formatted as follows : "MM/DD/YY HH:MM:SS".
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function PDTtoStrMDY( PDT : LONGINT ) : STRING;
[PARAMETERS]
PDT Source Packed Date/Time Structure
[RETURNS]
Formatted Date/Time String
[DESCRIPTION]
String Formatted as follows : "MM/DD/YY HH:MM:SS".
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function PDTtoStrDMY( PDT : LONGINT ) : STRING;
[PARAMETERS]
PDT Source Packed Date/Time Structure
[RETURNS]
Formatted Date/Time String
[DESCRIPTION]
String formatted as follows : "MM/DD/YY HH:MM:SS".
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function IncTime( Time : TTime ) : TTime;
[PARAMETERS]
Time Source Time Value
[RETURNS]
Incremented Time Value
[DESCRIPTION]
Increments the Time by One (1) Second. The Time wraps every 24 Hours.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DecTime( Time : TTime ) : TTime;
[PARAMETERS]
Time Source Time Value
[RETURNS]
Decremented Time Value
[DESCRIPTION]
Decrements the Time by One (1) Second. The Time wraps every 24 Hours.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function AddTime( Time : TTime;
Hrs : WORD;
Mins : WORD;
Secs : WORD ) : TTime;
[PARAMETERS]
Time Source Time Value
Hrs Hours to Add
Mins Minutes to Add
Secs Seconds to Add
[RETURNS]
Time Value with H:M:S Times Added.
[DESCRIPTION]
Time Value with H:M:S Times Added.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function SubTime( Time : TTime;
Hrs : WORD;
Mins : WORD;
Secs : WORD ) : TTime;
[PARAMETERS]
Time Source Time Value
Hrs Hours to Subtract
Mins Minutes to Subtract
Secs Seconds to Subtract
[RETURNS]
Time Value with H:M:S Times Subtracted.
[DESCRIPTION]
Time Value with H:M:S Times Subtracted.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure TimeDiff( Time1 : TTime;
Time2 : TTime;
VAR Hrs : INTEGER;
VAR Mins : INTEGER;
VAR Secs : INTEGER );
[PARAMETERS]
Time1 1st Source Time Value
Time2 2nd Source Time Value
Hrs VAR Returned Hours Difference
Mins VAR Returned Minutes Difference
Secs VAR Returned Seconds Difference
[RETURNS]
Function : None
(VAR : [Hrs] Hours Difference)
(VAR : [Mins] Minutes Difference)
(VAR : [Secs] Seconds Difference)
[DESCRIPTION]
Determines the Time Difference between the 1st Time and the 2nd Time
in terms of Hours/Minutes/Seconds.
NOTE : Time Difference values are always returned Positive.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function IncDate( Date : TDate ) : TDate;
[PARAMETERS]
Date Source Date Value
[RETURNS]
Incremented Date Value
[DESCRIPTION]
Increments the Date by One (1) Day.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DecDate( Date : TDate ) : TDate;
[PARAMETERS]
Date Source Date Value
[RETURNS]
Decremented Date Value
[DESCRIPTION]
Decrements the Date by One (1) Day.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function AddDate( Date : TDate;
Days : WORD;
Mons : WORD;
Yrs : WORD ) : TDate;
[PARAMETERS]
Date Source Date Value
Days Days to Add
Mons Months to Add
Yrs Years to Add
[RETURNS]
Date Value with M/D/Y Times Added.
[DESCRIPTION]
Date Value with M/D/Y Times Added.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function SubDate( Date : TDate;
Days : WORD;
Mons : WORD;
Yrs : WORD ) : TDate;
[PARAMETERS]
Date Source Date Value
Days Days to Subtract
Mons Months to Subtract
Yrs Years to Subtract
[RETURNS]
Date Value with M/D/Y Times subtracted.
[DESCRIPTION]
Date Value with M/D/Y Times subtracted.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure DateDiff( Date1 : TDate;
Date2 : TDate;
VAR Days : INTEGER;
VAR Mons : INTEGER;
VAR Yrs : INTEGER );
[PARAMETERS]
Date1 1st Source Packed Date
Date2 2nd Source Packed Date
Days VAR Returned Days Difference
Mons VAR Returned Months Difference
Yrs VAR Returned Years Differnce
[RETURNS]
Function : None
(VAR : [Days] Days Difference)
(VAR : [Mons] Months Difference)
(VAR : [Yrs] Years Differnce)
[DESCRIPTION]
Determines the Date Difference between the 1st Date and the 2nd Date
in terms of Days/Months/Years.
NOTE: Date Difference values are always returned Positive.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function IncDTime( DT : TDTime ) : TDTime;
[PARAMETERS]
DT Source DateTime Value
[RETURNS]
Incremented DateTime Value
[DESCRIPTION]
Increments the DateTime Value by One (1) Second.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DecDTime( DT : TDTime ) : TDTime;
[PARAMETERS]
DT Source Date/Time Value
[RETURNS]
Decremented Date/Time Value
[DESCRIPTION]
Decrements the Date/Time Value by One (1) Second.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function AddDTime( DT : TDTime;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : TDTime;
[PARAMETERS]
DT1 Source Date/Time Value
Hours Hours to Add
Minutes Minutes to Add
Seconds Seconds to Add
Days Days to Add
Months Months to Add
Years Years to Add
[RETURNS]
DateTime value with Date/Time Added.
[DESCRIPTION]
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function SubDTime( DT1 : TDTime;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : TDTime;
[PARAMETERS]
DT1 Source Date/Time Value
Hours Hours to Subtract
Minutes Minutes to Subtract
Seconds Seconds to Subtract
Days Days to Subtract
Months Months to Subtract
Years Years to Subtract
[RETURNS]
DateTime Value with Date/Time Subtracted.
[DESCRIPTION]
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure DTimeDiff( DT1 : TDTime;
DT2 : TDTime;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Days : INTEGER;
VAR Months : INTEGER;
VAR Years : INTEGER );
[PARAMETERS]
DT1 1st Source Date/Time Value
DT2 2nd Source Date/Time Value
Hours VAR Returned Hours Diffence
Minutes VAR Returned Minutes Difference
Seconds VAR Returned Seconds Difference
Days VAR Returned Days Difference
Months VAR Returned Months Difference
Years VAR Returned Years Difference
[RETURNS]
Function : None
(VAR : [Hours] Hours Diffence)
(VAR : [Minutes] Minutes Difference)
(VAR : [Seconds] Seconds Difference)
(VAR : [Days] Days Difference)
(VAR : [Months] Months Difference)
(VAR : [Years] Years Difference)
[DESCRIPTION]
Time Difference Values are always returned Positive.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure IncDT( Var DT : TDateTime );
[PARAMETERS]
DT VAR Modified Dos Date/Time Structure
[RETURNS]
(None)
[DESCRIPTION]
Incremented Date/Time
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure DecDT( Var DT : TDateTime );
[PARAMETERS]
DT VAR Modified Source Dos Date/Time Structure
[RETURNS]
(None)
[DESCRIPTION]
Decremented Date/Time
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure AddDT( Var DT : TDateTime;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD );
[PARAMETERS]
DT1 VAR Modified Source Packed Date/Time
Hours Hours to Add
Minutes Minutes to Add
Seconds Seconds to Add
Days Days to Add
Months Months to Add
Years Years to Add
[RETURNS]
Function : None
(VAR : [DT1] Modified Source Packed Date/Time)
[DESCRIPTION]
Dos Date/Time with Provide Times Added
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure SubDT( Var DT : TDateTime;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD );
[PARAMETERS]
DT VAR Modified Source Dos Date/Time Structure
Hours Hours to Subtract
Minutes Minutes to Subtract
Seconds Seconds to Subtract
Days Days to Subtract
Months Months to Subtract
Years Years to Subtract
[RETURNS]
Function : None
(VAR : [DT] Modified Source Dos Date/Time Structure)
[DESCRIPTION]
Dos Date/Time with Provided Times Subtracted
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure DTDiff( DT1 : TDateTime;
DT2 : TDateTime;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Days : INTEGER;
VAR Months : INTEGER;
VAR Years : INTEGER );
[PARAMETERS]
DT1 1st Source Date/Time Structure
DT2 2nd Source Date/Time Structure
Hours VAR Returned Hours Diffence
Minutes VAR Returned Minutes Difference
Seconds VAR Returned Seconds Difference
Days VAR Returned Days Difference
Months VAR Returned Months Difference
Years VAR Returned Years Difference
[RETURNS]
Function : None
(VAR : [Hours] Hours Diffence)
(VAR : [Minutes] Minutes Difference)
(VAR : [Seconds] Seconds Difference)
(VAR : [Days] Days Difference)
(VAR : [Months] Months Difference)
(VAR : [Years] Years Difference)
[DESCRIPTION]
Time Difference Valued are always returned Positive.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function IncPDT( PDT : LONGINT ) : LONGINT;
[PARAMETERS]
PDT Source Packed DateTime
[RETURNS]
Incremented Packed DateTime
[DESCRIPTION]
Increments the Time by Two (2) Seconds.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DecPDT( PDT : LONGINT ) : LONGINT;
[PARAMETERS]
PDT Source Packed DateTime
[RETURNS]
Decremented Packed DateTime
[DESCRIPTION]
Decrements the Time by Two (2) Seconds.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function AddPDT( PDT : LONGINT;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : LONGINT;
[PARAMETERS]
PDT Source Packed DateTime Structure
Hours Hours to Add
Minutes Minutes to Add
Seconds Seconds to Add
Days Days to Add
Months Months to Add
Years Years to Add
[RETURNS]
Value with Date/Time Added
[DESCRIPTION]
Note: Minimum Granularity is 2 Seconds.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function SubPDT( PDT : LONGINT;
Hours : WORD;
Minutes : WORD;
Seconds : WORD;
Days : WORD;
Months : WORD;
Years : WORD ) : LONGINT;
[PARAMETERS]
PDT Source Packed DateTime Structure
Hours Hours to Subtract
Minutes Minutes to Subtract
Seconds Seconds to Subtract
Days Days to Subtract
Months Months to Subtract
Years Years to Subtract
[RETURNS]
Value with Date/Time Subtracted.
[DESCRIPTION]
NOTE: Minimum Granularity is 2 Seconds.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure PDTDiff( PDT1 : LONGINT;
PDT2 : LONGINT;
VAR Hours : INTEGER;
VAR Minutes : INTEGER;
VAR Seconds : INTEGER;
VAR Days : INTEGER;
VAR Months : INTEGER;
VAR Years : INTEGER );
[PARAMETERS]
PDT1 1st Source Packed DateTime Structure
PDT2 2nd Source Packed DateTime Structure
Hours VAR Returned Hours Difference
Minutes VAR Returned Minutes Difference
Seconds VAR Returned Seconds Difference
Days VAR Returned Days Difference
Months VAR Returned Months Difference
Years VAR Returned Years Difference
[RETURNS]
Function : None
(VAR : [Hours] Returned Hours Difference)
(VAR : [Hours] Hours Difference)
(VAR : [Minutes] Minutes Difference)
(VAR : [Seconds] Seconds Difference)
(VAR : [Days] Days Difference)
(VAR : [Months] Months Difference)
(VAR : [Years] Years Difference)
[DESCRIPTION]
Time Differend Values are always returned Positive
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function CurrSeconds : REAL;
[PARAMETERS]
(None)
[RETURNS]
Floating Point Number of Seconds
[DESCRIPTION]
Returns the Current Time in Terms of Seconds
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function MarkTime : REAL;
[PARAMETERS]
(None)
[RETURNS]
Timer Mark
[DESCRIPTION]
Returns the Current Time in Seconds when called.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure ClockOn;
[PARAMETERS]
(None)
[RETURNS]
(None)
[DESCRIPTION]
Starts a timer (variable is private to unit)
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ClockOff : REAL;
[PARAMETERS]
(None)
[RETURNS]
Number of Seconds since last ClockOn
[DESCRIPTION]
Returns the seconds of elapsed time from last ClockOn call.
Note: actual variable is private to unit.
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function ClockOffStr : STRING;
[PARAMETERS]
(None)
[RETURNS]
Text Representation of ClockOff Time
[DESCRIPTION]
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Procedure DisplayStopWatch( TimeDelta : REAL );
[PARAMETERS]
TimeDelta Time Difference
[RETURNS]
(None)
[DESCRIPTION]
Displays the elapsed time since the last ClockOn call. (Note actual
variable is private to unit).
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function GetTicksSinceMidnt( Var Days : BYTE ) : LONGINT;
[PARAMETERS]
Days VAR Returned ?
[RETURNS]
[DESCRIPTION]
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function SetTicksSinceMidnt( Ticks : LONGINT ) : BOOLEAN;
[PARAMETERS]
Ticks ?
[RETURNS]
[DESCRIPTION]
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function GetSysTime( Var BcdHours : BYTE;
Var BcdMins : BYTE;
Var BcdSecs : BYTE;
Var DSTActive : BOOLEAN ) : BOOLEAN;
[PARAMETERS]
BcdHours VAR Returned ?
BcdMins VAR Returned ?
BcdSecs VAR Returned ?
DSTActive VAR Returned ?
[RETURNS]
[DESCRIPTION]
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function SetSysTime( BcdHours : BYTE;
BcdMins : BYTE;
BcdSecs : BYTE;
DSTActive : BOOLEAN ) : BOOLEAN;
[PARAMETERS]
BcdHours ?
BcdMins ?
BcdSecs ?
DSTActive ?
[RETURNS]
[DESCRIPTION]
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function GetSysDate( Var BcdDay : BYTE;
Var BcdMon : BYTE;
Var BcdYear : BYTE;
Var BcdCent : BYTE ) : BOOLEAN;
[PARAMETERS]
BcdDay VAR Returned ?
BcdMon VAR Returned ?
BcdYear VAR Returned ?
BcdCent VAR Returned ?
[RETURNS]
[DESCRIPTION]
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function SetSysDate( BcdDay : BYTE;
BcdMon : BYTE;
BcdYear : BYTE;
BcdCent : BYTE ) : BOOLEAN;
[PARAMETERS]
BcdDay ?
BcdMon ?
BcdYear ?
BcdCent ?
[RETURNS]
[DESCRIPTION]
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function SetSysAlarmOn( BcdHours : BYTE;
BcdMins : BYTE;
BcdSecs : BYTE ) : BOOLEAN;
[PARAMETERS]
BcdHours Alarm Hours in BCD Format
BcdMins Alarm Minutes in BCD Format
BcdSecs Alarm Seconds in BCD Format
[RETURNS]
Whether the Alarm was set to the provided Time (TRUE=Alarm Set)
[DESCRIPTION]
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function SetSysAlarmOff : BOOLEAN;
[PARAMETERS]
(None)
[RETURNS]
Whether the System Alarm is Off (TRUE=Off)
[DESCRIPTION]
[SEE-ALSO]
[EXAMPLE]
──────────────────────────────────────────────────────────────────────────────
[FUNCTION]
Function DateFormat( Date : LONGINT;
Format : STRING ) : STRING;
[PARAMETERS]
Date Date in Longint Format
Format Date Formatting String
[RETURNS]
Formatted Date Text String
[DESCRIPTION]
Returns the Date as a Formatted String
Possible Format Strings are:
"DDMMMYY" = "08MAY92" "MMM D, YY" = "MAY 8, 92"
"DDMMMYYYY" = "08MAY1992" "MMM D, YYYY"= "MAY 8, 1992"
"MM/DD/YY" = "05/08/92" "MM/DD/YYYY" = "05/08/1992"
"YYMMMDD" = "92MAY08" "YY MMM DD" = "92 MAY 08"
"YYMMDD" = "9205508" "YYYY MM DD" = "1992 05 08"
[SEE-ALSO]
[EXAMPLE]