home        software products > DateCalc        downloads        services        iSeries links        contact us
only search DBiTools.com

DateCalc Tools




Do you have questions about our products?
We are happy to provide you with answers.



and also

DateCalc - Definitive Source for Date Tools on iSeries


DateCalc Product Overview

DateCalc is our software product that dramtically simplifies date handling on the AS400, iSeries and System i.

CL, RPG and SQL routines are included which recognize dates in most any format, allow date arithmetic and return the date in most any format. Click here for a list of all formats that can be specified.

Two database tables are also included: DATEFILE and DATEYYMM. These tables contain date facts for the fifty years between 1990 and 2039. These tables can be used in RPG (or any high level language), Query/400 and SQL to translate a date from nearly any format to any other format.



Two CL Date Comands Are Provided by DBiTools.com


1. Calculate Date (CalcDate) Command
CalcDate RTNDATE(&RtnDate) DATE(*YESTERDAY)
CalcDate RTNDATE(&RtnDate) DATE(*NEXT) unit(*day) DAY(*THU)
     Calculated date might be in this week or next because unit(*day) is default time unit.
CalcDate RTNDATE(&RtnDate) DATE(*NEXT) UNIT(*WEEK) DAY(*THU)
CalcDate RTNDATE(&RtnDate) DATE(*THIS) UNIT(*MONTH)
    DAY(*WRK) NBR(3) uom(*days)       Calculates 3rd working day (M-F) of this month
CalcDate RTNDATE(&RtnDate) DATE(*THIS) UNIT(*MONTH)
    DAY(*MON) NBR(3) UOM(*WEEKS)    Calculates 3rd Monday of this month
CalcDate RTNDATE(&RtnDate) DATE(*LAST) UNIT(*MONTH) DAY(15)
CalcDate RTNDATE(&RtnDate) DATE(*LAST) UNIT(*MONTH) DAY(*end)
CalcDate RTNDATE(&RtnDate) DATE(*LAST) UNIT(*MONTH) DAY(*end)
    RTNFMT(*JDE)     Calculates last month end and returns in JD Edwards format
CalcDate RTNDATE(&RtnDate) DATE(&SomeVar) FMT(*LOGPRO) NBR(1) UOM(*WEEKS)
    RTNFMT(*JDE)     Takes LogPro date, add 7 days and returns in JD Edwards format


2. Get Day Of (GetDayOf) Command
GetDayOf DATE(*today) RTNNAME(&RtnName)    Todays name of day (*SUN...*SAT)
GetDayOf DATE(&SomeVar) FMT(*yymd) RTNNAME(&RtnName)
     Takes some variable in yyyymmdd format and returns: (*SUN...*SAT)
GetDayOf DATE(&SomeVar) FMT(*jde) RTNNAME(&RtnName) RTNDOW(&dow)
     Takes variable in cyyddd format and returns: (*SUN...*SAT) and DayOfWeek(1-7)
GetDayOf DATE(&SomeVar) FMT(*mdy) RTNDOW(&dow) RTNDOY(&doy)
     Takes variable in *MDY format and returns: DayOfWeek(1-7) and DayOfYear(1-366)



Dozen+ RPGLE Date Procedures Are Provided by DBiTools.com


SRVPGM(DATESRVPGM) Exports
Procedure Op Extended Factor 2 Expression Notes
CharToDecCallPCharToDec('12,345.67-' :ReturnNbr) Evals to
-12345.670000000
IfCharToDec(InString :ReturnNbr) = '1' If InString contains invalid number
CharToDateCallPCharToDate(CharDate :D_ISO :RtnDate) Char ISO date translated to DATE
IfCharToDate(CharDate :D_MDY :RtnDate) = '1' If char *MDY0 date is invalid DATE value
DayNameEvalDay = DayName() Evals to "*SUN"...
EvalDay = DayName(ARdtmt :D_9) Evals to "Sunday"...
EvalDay = DayName(ARdtmt :D_3) Evals to "Sun"...
IfDayName() = '*SUN' If today is Sunday
DayNameCharEvalDay = DayNameChar(ODchgd :D_MDY :D_3) Evals to "Sun"...
EvalDay = DayNameChar(MLchgd :D_YMD :D_9) Evals to "Sunday"...
IfDayNameChar(CharDate :D_ISO) = '*SUN' If char ISO date is Sunday
DayNameDecEvalDay = DayNameDec(SHtrdj :D_JDE : D_4) Gets day name for JDE sales order date
DayOfWeekEvalDoW = DayOfWeek() Evals to 1-7
EvalDoW = DayOfWeek(NbrToDate(SHtrdj :D_JDE)) Gets day of week for JDE sales order date
IfDayOfWeek() = 1 If today is Sunday
DayOfWeekCharEvalDoW = DayOfWeekChar(ODcdat :D_MDY) Object created on: day of week
EvalDoW = DayOfWeekChar(MLchgd :D_YMD) Member last chg: day of week



Do you have some questions about DateCalc?
Please ask, we are more than happy to respond to your inquiries!


  © Copyright DBiTools.com 2008. All rights reserved.
Hosted on System i 
Privacy Policy