home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Shareware Supreme Volume 6 #1
/
swsii.zip
/
swsii
/
126
/
FDATE82A.ZIP
/
FDATEX.BAT
< prev
next >
Wrap
DOS Batch File
|
1993-08-15
|
27KB
|
782 lines
@ECHO off
BREAK ON
if not (%1)==() goto %1
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ FDATEX: Demonstration batch file for FDATE ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
echo.
echo.
echo This batch file uses ANSI.SYS to control the appearance and color
echo of some of the headings.
echo.
echo If you do not have ANSI.SYS installed, you may see garbage on the
echo screen next to some of the headings, such as the one at the top of
echo this screen, but the batch file will work correctly otherwise.
echo.
echo.
echo.
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ The first thing we will do is to test the HELP screen. ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
PAUSE
cls
FDATE
PAUSE
ECHO ON
@echo off
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (#1) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff /Occyy
FDATE /Ff /Occyymm
FDATE /Ff /Occyymmdd
FDATE /Ff /Oyymmdd
FDATE /Ff /Ommdd
@echo off
@PAUSE
@echo off
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (#1b) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff /At /Oddmn3yy
FDATE /Ff /Odd-mn3-yy
FDATE /Ff /Odd-mn3-yy /Lfr
FDATE /Ff /Odd-mn3-yy /Lsp
@echo off
@PAUSE
@echo off
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (#1c) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff /Oyy
FDATE /Ff /Omm
FDATE /Ff /Ozm
FDATE /Ff /Odd
FDATE /Ff /Ozd
@echo off
@PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (#2) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff /Omm-dd-ccyy
FDATE /Ff /Ozm-zd-ccyy
FDATE /Ff /Omm/dd/ccyy
FDATE /Ff /Ozm/zd/ccyy
@echo off
PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (BRITISH) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff /Odd.mm.ccyy
FDATE /Ff /Ozd.zm.ccyy
FDATE /Ff /Odd.mm.yy
FDATE /Ff /Ozd.zm.yy
@echo off
PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (GERMAN) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff /O"zd. mn ccyy" /Lgr
FDATE /Ff /O"zd. mn3 ccyy" /Lgr
@echo off
PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (#3) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff /At /Odow#
FDATE /Ff /At /Odow
FDATE /Ff /At /Odow3
FDATE /Ff /At /Odow /Lfr
FDATE /Ff /At /Odow3 /Lfr
FDATE /Ff /At /Odow3 /Lsp
FDATE /Ff /At /Odow3 /Lgr
@echo off
PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (#4) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff /At /O"mn3 dd ccyy"
FDATE /Ff /At /O"mn3 dd, ccyy"
FDATE /Ff /At /O"mn zd, ccyy" /Lfr
FDATE /Ff /At /O"mn zd, ccyy" /Lsp
FDATE /Ff /At /O"mn3 dd ccyy" /Lfr
FDATE /Ff /At /O"mn3 dd, ccyy" /Lfr
@echo off
PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (#5) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff /At /O"mn zd, ccyy"
FDATE /Ff /At /O"zd mn ccyy"
FDATE /Ff /At /O"zd mn, ccyy"
FDATE /Ff /At /O"zd mn ccyy" /Lfr
FDATE /Ff /At /O"zd mn, ccyy" /Lfr
@echo off
PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (#6) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
Fdate /Ff /Occyy-mm-dd
Fdate /Ff /Occyy/mm/dd
Fdate /Ff /Occyy.mm.dd
Fdate /Ff /Oyy-mm-dd
Fdate /Ff /Oyy/mm/dd
Fdate /Ff /Oyy.mm.dd
@echo off
PAUSE
:us
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST LANGUAGE OUTPUT: AMERICAN ENGLISH ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
ECHO NAMES OF MONTHS
for %%v in (1 2 3 4 5 6 7 8 9) do fdate /ff /Lus /oFULL /iccyymmdd /a19930%%v01
for %%v in (10 11 12 ) do fdate /ff /Lus /oFULL /iccyymmdd /a1993%%v01
ECHO NAMES OF DAYS OF WEEK
for %%v in (0 1 2 3 4 5 6 ) do fdate /fadd /N%%v /od1 /Lus
PAUSE
:french
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST LANGUAGE OUTPUT: FRENCH ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
ECHO NAMES OF MONTHS
for %%v in (1 2 3 4 5 6 7 8 9) do fdate /ff /Lfr /oFULL /iccyymmdd /a19930%%v01
for %%v in (10 11 12 ) do fdate /ff /Lfr /oFULL /iccyymmdd /a1993%%v01
ECHO NAMES OF DAYS OF WEEK
for %%v in (0 1 2 3 4 5 6 ) do fdate /fadd /N%%v /od1 /Lfr
PAUSE
:german
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST LANGUAGE OUTPUT: GERMAN ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
ECHO NAMES OF MONTHS
for %%v in (1 2 3 4 5 6 7 8 9) do fdate /ff /Lgr /oFULL /iccyymmdd /a19930%%v01
for %%v in (10 11 12 ) do fdate /ff /Lgr /oFULL /iccyymmdd /a1993%%v01
ECHO NAMES OF DAYS OF WEEK
for %%v in (0 1 2 3 4 5 6 ) do fdate /fadd /N%%v /od1 /Lgr
PAUSE
:spanish
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST LANGUAGE OUTPUT: SPANISH ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
ECHO NAMES OF MONTHS
for %%v in (1 2 3 4 5 6 7 8 9) do fdate /ff /Lsp /oFULL /iccyymmdd /a19930%%v01
for %%v in (10 11 12 ) do fdate /ff /Lsp /oFULL /iccyymmdd /a1993%%v01
ECHO NAMES OF DAYS OF WEEK
for %%v in (0 1 2 3 4 5 6 ) do fdate /fadd /N%%v /od1 /Lsp
PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (TIME) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff /At /Ot1
FDATE /Ff /At /Ohh:mm
FDATE /Ff /At /Ohh:mm:ss
@echo off
PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS (DATE ABBREVIATIONS) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff
FDATE /Ff /Ofull
FDATE /Ff /Lfr
FDATE /Ff /Ofull /Lfr
FDATE /Ff /Ofull /Lsp
FDATE /Ff /Oly /P"Leap-year flag is: " /S" [0=normal, 1=leapyear]"
@echo off
PAUSE
:julian
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST OUTPUT FORMATS ("JULIAN" OUTPUTS) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
FDATE /Ff /Oday# /P"Absolute date : "
FDATE /Ff /Ominute# /P"Julian minutes: "
FDATE /Ff /Osecond# /P"Julian seconds: "
@pause
@cls
FDATE /Ff /Occyyjjj /P"Julian date is: "
FDATE /Ff /Oyyjjj /P"Julian date is: "
FDATE /Ff /Ojjj /P"Julian date is: "
FDATE /Ff /Ozzj /P"Julian date is: "
FDATE /Ff /Ojulian /P"Julian date is: "
@echo off
PAUSE
:IN
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST INPUT FORMATS ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
echo.
@echo TEST PSEUDO-DATES /AT (/ATODAY)
@echo ─────────────────────────────────────────────────────────────────
@echo on
FDATE /Ff /Atoday
FDATE /Ff /At
@Pause
cls
@ECHO TEST PSEUDO-DATES /ICCYYMMDD
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /Atttt1126 /Iccyymmdd
FDATE /Ff /A1991tt26 /Iccyymmdd
FDATE /Ff /A199211tt /Iccyymmdd
FDATE /Ff /Atttttttt /Iccyymmdd
@Pause
cls
@ECHO TEST PSEUDO-DATES
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /A11-26-tttt
FDATE /Ff /A11-tt-1992
FDATE /Ff /Att-26-1992
FDATE /Ff /Att-tt-tttt
@Pause
cls
@ECHO TEST PSEUDO-DATES /IMM-DD-YY
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /A11-26-tt /Imm-dd-yy
FDATE /Ff /A11-tt-92 /Imm-dd-yy
FDATE /Ff /Att-26-92 /Imm-dd-yy
FDATE /Ff /Att-tt-tt /Imm-dd-yy
@PAUSE
CLS
@echo TEST INPUT FORMATS
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /Imm-dd-ccyy /A12-07-1991
FDATE /Ff /Imm-dd-yy /A12-07-91
FDATE /Ff /Iccyymmdd /A19911207
@PAUSE
CLS
@echo TEST INPUT FORMATS (British/European)
@echo ─────────────────────────────────────────────────────────────────
Fdate /Ff /Idd-mm-yy /A2/5/92
Fdate /Ff /Idd-mm-yy /A2/5/10
Fdate /Ff /Idd-mm-yy /A12/12/10
Fdate /Ff /Idd-mm-ccyy /A2/5/1992
Fdate /Ff /Idd-mm-ccyy /A12/5/1992
Fdate /Ff /Idd-mm-ccyy /A2/05/1992
Fdate /Ff /Idd-mm-ccyy /A12/05/1992
@PAUSE
CLS
@echo TEST INPUT FORMATS (/If ... GET INPUT DATE/TIME FROM A FILE)
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /If /Afdatex.bat /P"The date on file FDATEX.BAT is: "
FDATE /Ff /If /Afdatex.bat /P"The time on file FDATEX.BAT is: " /Ohh:mm:ss
FDATE /Ff /If /Afdatex.bat /P"FDATEX.BAT was last updated at " /Ofull
@PAUSE
:JJJ
CLS
@echo ON
@echo TEST JULIAN INPUT FORMATS
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /Iccyyjjj /A1992045
FDATE /Ff /Iccyyjjj /Atttt045
FDATE /Ff /Iyyjjj /A92045
FDATE /Ff /Iyyjjj /Att045
FDATE /Ff /Iyyjjj /A92366
FDATE /Ff /Iyyjjj /A93366
@PAUSE
CLS
@echo TEST JULIAN INPUT FORMATS
@echo ─────────────────────────────────────────────────────────────────
Fdate /Ff /Iyyjjj /Att-1
Fdate /Ff /Iyyjjj /Att0
Fdate /Ff /Iyyjjj /Att+1
Fdate /Ff /Iyyjjj /Att-999
Fdate /Ff /Iyyjjj /Att1000
@PAUSE
@echo OFF
CLS
@echo TEST INPUT FORMATS (only YY specified, CC assumed.)
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /Imm-dd-yy /A12-07-00
FDATE /Ff /Imm-dd-yy /A12-07-10
FDATE /Ff /Imm-dd-yy /A12-07-19
FDATE /Ff /Imm-dd-yy /A12-07-20
FDATE /Ff /Imm-dd-yy /A12-07-21
FDATE /Ff /Imm-dd-yy /A12-07-91
@PAUSE
CLS
@echo off
@echo TEST INPUT FORMATS HANDLING LEADING ZEROS
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /Imm-dd-yy /A06-06-66
FDATE /Ff /Imm-dd-yy /A6-06-66
FDATE /Ff /Imm-dd-yy /A06-6-66
FDATE /Ff /Imm-dd-yy /A6-6-66
FDATE /Ff /A06-06-0001
FDATE /Ff /A6-06-0001
FDATE /Ff /A06-6-0001
FDATE /Ff /A6-6-0001
@PAUSE
@echo on
CLS
@echo TEST /P (PREFIX) PARAMETER
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /At /O"mn zd, ccyy" /P"Today is "
FDATE /Ff /At /O"mn zd, ccyy" /P"Aujourdui est " /Lfr
FDATE /Ff /At /O"mn zd, ccyy" /P"Hoy es " /Lsp
@echo.
@set FDATE=
FDATE /Ff /At /O"mn zd, ccyy" /P"@SET FDATE=" >FDATJUNK.BAT
@Echo off
call FDATJUNK.BAT
del FDATJUNK.BAT
ECHO Value of FDATE environment variable is: %FDATE%
set FDATE=
PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST END-OF-MONTH DATES (BUG FIXED IN FDATE 3.0) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo off
fdate /Ff /A01-29-1992
fdate /Ff /A01-30-1992
fdate /Ff /A01-31-1992
fdate /Ff /A02-29-1992
fdate /Ff /A02-30-1992
fdate /Ff /A02-31-1992
@echo off
PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST DATE VALIDATION FUNCTION ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo ON
fdate /Fv /A02-29-1991
fdate /Fv /A02-29-1992
fdate /Fv /A02-29-1993
@echo off
PAUSE
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST MONTH ARITHMETIC FUNCTION ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
ECHO on
fdate /Fm /iccyymmdd /a19920331 /n-1
fdate /Fm /iccyymmdd /a19930331 /n-1
fdate /Fm /iccyymmdd /a19920131 /n1
fdate /Fm /iccyymmdd /a19930131 /n1
fdate /Fm /iccyymmdd /a19920229 /n-12
fdate /Fm /iccyymmdd /a19920229 /n+12
fdate /Fm /iccyymmdd /a19911231 /n2
@echo off
pause
cls
Echo Adding months to Jan 31, 1992
Echo -------------------------------------------------
for %%v in (1 2 3 4 5 6 7 8 9 10 11 12 13) do fdate /Fm /iccyymmdd /a19920131 /n%%v /s" (%%v months added)"
echo.
pause
cls
@echo on
fdate /Fm /iccyymmdd /a00020115 /n-12
fdate /Fm /iccyymmdd /a00020115 /n-13
fdate /Fm /iccyymmdd /a00011212 /n-11
fdate /Fm /iccyymmdd /a00011212 /n-12
fdate /Fm /iccyymmdd /a00010201 /n-1
fdate /Fm /iccyymmdd /a00010201 /n-2
@echo off
pause
:func
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST FUNCTIONS ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo on
@echo.
@echo TEST FUNCTION: F (FORMAT)
@echo ─────────────────────────────────────────────────────────────────
FDATE /Fformat /Atoday
FDATE /Ff /At
FDATE /Ff
@PAUSE
@echo off
CLS
@echo TEST FUNCTION: W (Nth WEEKDAY BEFORE/AFTER) WHERE /D NOT = DOW#
@echo ─────────────────────────────────────────────────────────────────
FDATE /Fw /A11-25-1992 /D5 /N-2 /P"2nd Thursday before 11-25-1992: "
FDATE /Fw /A11-25-1992 /D5 /N-1 /P"1st Thursday before 11-25-1992: "
FDATE /Ff /A11-25-1992 /D5 /N-1 /P"The actual day of.. 11-25-1992: "
FDATE /Fw /A11-25-1992 /D5 /N1 /P"1st Thursday after 11-25-1992: "
FDATE /Fw /A11-25-1992 /D5 /N2 /P"2nd Thursday after 11-25-1992: "
@PAUSE
@CLS
@echo TEST FUNCTION: W (Nth WEEKDAY BEFORE/AFTER) WHERE /D = DOW#
@echo ─────────────────────────────────────────────────────────────────
FDATE /Fw /A11-26-1992 /D5 /N-2 /P"2nd Thursday before 11-26-1992: "
FDATE /Fw /A11-26-1992 /D5 /N-1 /P"1st Thursday before 11-26-1992: "
FDATE /Ff /A11-26-1992 /D5 /N-1 /P"The actual day of.. 11-26-1992: "
FDATE /Fw /A11-26-1992 /D5 /N1 /P"1st Thursday after 11-26-1992: "
FDATE /Fw /A11-26-1992 /D5 /N2 /P"2nd Thursday after 11-26-1992: "
@PAUSE
@echo off
@CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST /FW-RELATED ERROR MESSAGES ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
FDATE /Fw /A11-26-1992 /D5 /N0 /P" 0th Thursday after 11-26-1992: "
FDATE /Fw /A11-26-1992 /D5 /N100 /P"99th Thursday after 11-26-1992: "
FDATE /Fw /A11-26-1992 /D5 /N-100 /P"99th Thursday before 11-26-1992: "
@PAUSE
:comp
CLS
@echo TEST COMP (DATE COMPARE) FUNCTION and default
@echo ─────────────────────────────────────────────────────────────────
@echo ON
Fdate /Fcomp /A06-06-1992 /B06-06-1991
Fdate /Fcomp /A06-06-1992 /B06-06-1992
Fdate /Fcomp /A06-06-1992 /B06-06-1993
Fdate /Fcomp
@PAUSE
CLS
@echo TEST TCOMP (TIME COMPARE) FUNCTION and default
@echo ─────────────────────────────────────────────────────────────────
@echo ON
Fdate /FTcomp
@ECHO XXXX>JUNKTEMP.BAT
Fdate /FTcomp /If /Ajunktemp.bat /Bfdatex.bat
Fdate /FTcomp /If /Bjunktemp.bat /Afdatex.bat
Fdate /FTcomp /If /Afdatex.bat /Bfdatex.bat
@del JUNKTEMP.BAT
@PAUSE
CLS
@echo TEST DIF (DATE DIFFERENCE, IN DAYS) FUNCTION
@echo ─────────────────────────────────────────────────────────────────
FDATE /Fdif /At /Bt
FDATE /Fdif
FDATE /Fdif /At /B01-01-1990
FDATE /Fdif /A01-01-1990 /Bt
FDATE /Fdif /A12-31-0008 /B01-01-0009
FDATE /Fdif /Iccyymmdd /A19801230 /B19801231
FDATE /Fdif /Iccyymmdd /A19801230 /B19801220
@PAUSE
CLS
@echo TEST DIF (DATE DIFFERENCE, IN DAYS) FUNCTION
@echo ─────────────────────────────────────────────────────────────────
FDATE /Fdif /Iccyymmdd /A19800101 /B19801231
FDATE /Fdif /Iccyymmdd /A19810101 /B19811231
FDATE /Fdif /Iccyymmdd /A20000101 /B20001231
FDATE /Fdif /Iccyymmdd /A19000101 /B19001231
FDATE /Fdif /Iccyymmdd /A16000101 /B16001231
@PAUSE
@echo off
CLS
echo TEST ADD (ADD A NUMBER TO A DATE, GET RESULTING DATE) FUNCTION
echo ───────────────────────────────────────────────────────────────────────────────
echo on
FDATE /Fadd /N1 /A12-31-0008 /Omm-dd-ccyy
FDATE /Fadd /N1 /At /Od1 /P"Tomorrow will be "
FDATE /Fadd /N90 /At /Od1 /P"90 days from today is "
@PAUSE
CLS
@echo TEST ADD ACROSS YEAR BOUNDARIES: LEAP YEAR BEGIN
@echo ─────────────────────────────────────────────────────────────────
FDATE /Fadd /N1 /A12-31-0003
FDATE /Fadd /N1 /A12-31-0099
FDATE /Fadd /N1 /A12-31-0399
FDATE /Fadd /N1 /A12-31-1899
FDATE /Fadd /N1 /A12-31-1999
@PAUSE
CLS
@echo TEST ADD ACROSS YEAR BOUNDARIES: LEAP YEAR END
@echo ─────────────────────────────────────────────────────────────────
FDATE /Fadd /N1 /A12-31-0004
FDATE /Fadd /N1 /A12-31-0100
FDATE /Fadd /N1 /A12-31-0400
FDATE /Fadd /N1 /A12-31-1900
FDATE /Fadd /N1 /A12-31-2000
@PAUSE
CLS
@echo TEST SUB
@echo ─────────────────────────────────────────────────────────────────
FDATE /Fsub /N1 /A12-31-0008
FDATE /Fsub /N1 /At /Od1 /P"Yesterday was "
FDATE /Fsub /N90 /At /Od1 /P"90 days ago, the date was "
@PAUSE
CLS
@echo TEST SUB ACROSS YEAR BOUNDARIES: 1 DAY BEFORE LEAP YEAR BEGIN
@echo ─────────────────────────────────────────────────────────────────
FDATE /Fsub /N1 /A12-31-0004
FDATE /Fsub /N1 /A12-31-0100
FDATE /Fsub /N1 /A12-31-0400
FDATE /Fsub /N1 /A12-31-1900
FDATE /Fsub /N1 /A12-31-2000
@PAUSE
CLS
@echo TEST SUB ACROSS YEAR BOUNDARIES: LEAP YEAR BEGIN
@echo ─────────────────────────────────────────────────────────────────
FDATE /Fsub /N1 /A01-01-0004
FDATE /Fsub /N1 /A01-01-0100
FDATE /Fsub /N1 /A01-01-0400
FDATE /Fsub /N1 /A01-01-1900
FDATE /Fsub /N1 /A01-01-2000
@PAUSE
CLS
@echo TEST SUB ACROSS YEAR BOUNDARIES: 1 DAY AFTER LEAP YEAR END
@echo ─────────────────────────────────────────────────────────────────
FDATE /Fsub /N1 /A01-01-0005
FDATE /Fsub /N1 /A01-01-0101
FDATE /Fsub /N1 /A01-01-0401
FDATE /Fsub /N1 /A01-01-1901
FDATE /Fsub /N1 /A01-01-2001
@PAUSE
:errmsg
CLS
@echo TEST ERROR MESSAGES
@echo ─────────────────────────────────────────────────────────────────
@echo on
FDATE /Ff /At /Ojunktest
FDATE /Ff /A18880101 /Ijunktest /Ominute#
@PAUSE
CLS
FDATE /Ff /Iccyymmdd /A18880101 /Ominute#
FDATE /Ff /Iccyymmdd /A21010101 /Osecond#
FDATE /Fsub /Iccyymmdd /A00010101 /n1 /od1
FDATE /Fadd /Iccyymmdd /A99991231 /n1 /od1
@PAUSE
CLS
FDATE /Ff /A01-01-xxxx
FDATE /Fadd /A01-01-1992 /N
@PAUSE
CLS
FDATE /Fdif /?01-01-1992 /B01-02-1992
FDATE /Fdif /A01-01-1992 /?01-02-1992
@PAUSE
CLS
FDATE /Ff /Imm-dd-yy /A01-01-1
FDATE /Ff /Imm-dd-yy /A01-01-199
FDATE /Ff /A01-01-199
FDATE /Ff /A01-01-19922
@PAUSE
:LY
CLS
@echo on
@echo TEST LEAPYR (#1)
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /A01-01-0001 /Oly
FDATE /Ff /A01-01-0004 /Oly
FDATE /Ff /A01-01-0005 /Oly
FDATE /Ff /A01-01-0100 /Oly
FDATE /Ff /A01-01-0400 /Oly
FDATE /Ff /A01-01-1600 /Oly
@PAUSE
CLS
@echo TEST LEAPYR (#2)
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /A01-01-1900 /Oly
FDATE /Ff /A01-01-1984 /Oly
FDATE /Ff /A01-01-1991 /Oly
FDATE /Ff /A01-01-1992 /Oly
FDATE /Ff /A01-01-2000 /Oly
@PAUSE
CLS
@echo TEST "JULIAN" OUTPUT FORMATS
@echo ─────────────────────────────────────────────────────────────────
FDATE /Ff /At /Ojulian
FDATE /Ff /At /Oday#
FDATE /Ff /At /Ominute#
FDATE /Ff /At /Osecond#
FDATE /Ff /A19950101 /Iccyymmdd /Ominute#
FDATE /Ff /A19950101 /Iccyymmdd /Osecond#
@PAUSE
@ECHO off
:ABSDATES
CLS
echo SHOW ABSOLUTE OR "TRUE JULIAN" DATES FOR SELECTED DATES
echo ─────────────────────────────────────────────────────────────────
ECHO.
FDATE /Ff /A01-01-0001 /P"First day of year 0001: " /Oday#
ECHO.
FDATE /Ff /A01-01-1900 /P"First day of year 1900: " /Oday#
ECHO.
FDATE /Ff /A01-01-1992 /P"First day of year 1992: " /Oday#
ECHO.
FDATE /Ff /At /P"Today's calendar date : "
FDATE /Ff /At /Oday# /P"Today's absolute date : "
ECHO.
FDATE /Ff /A12-31-2000 /P"Last day of year 2000: " /Oday#
ECHO.
FDATE /Ff /A12-31-9999 /P"Last day of year 9999: " /Oday#
PAUSE
:Numfuncs
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST NUMBER-MANIPULATION FUNCTIONS (ARITHMETIC FUNCTIONS) ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
echo on
fdate /f#add /a2 /b7
fdate /f#dif /a2 /b7
fdate /f#comp /a2 /b7
fdate /f#comp /a7 /b2
fdate /f#mult /a7 /b2
@pause
@cls
fdate /f#div /a7 /b2
fdate /f#Idiv /a7 /b2
fdate /f#mod /a7 /b2
@echo off
pause
:GET
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST FDATE WITH ENVIRONMENT MANIPULATION PROGRAM: GET ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ If you do not have GET installed, ║
echo
║ you will see messages saying "Bad command of file name". ║
echo
║ This is normal and nothing to worry about. ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo.
@echo on
@set date1=
@echo.
FDATE /Ff /At /Oyymmdd|GET ZE /Vdate1 >NUL
@echo DATE1 environment variable is %DATE1%
@set date1=
@echo.
FDATE /Ff /At /Occyymmdd|GET ZE /Vdate1 >NUL
@echo DATE1 environment variable is %DATE1%
@set date1=
@echo off
@PAUSE
:STRINGS
CLS
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ TEST FDATE WITH ENVIRONMENT MANIPULATION PROGRAM: STRINGS ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ If you do not have STRINGS installed, ║
echo
║ you will see messages saying "Bad command of file name". ║
echo
║ This is normal and nothing to worry about. ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
@echo.
@echo on
@set date1=
@echo.
FDATE /Ff /At /Oyymmdd | STRINGS date1= ASK >NUL
@echo DATE1 environment variable is %DATE1%
@set date1=
@echo.
FDATE /Ff /At /Occyymmdd | STRINGS date1= ASK >NUL
@echo DATE1 environment variable is %DATE1%
@set date1=
@echo.
@echo off
@PAUSE
cls
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ END OF FDATE TEST BATCH FILE ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
echo.
echo I hope that you have found this demo batch file helpful,
echo and that you will find FDATE useful.
echo.
echo -- Stephen Ferg
echo.
echo.
echo.
if not exist holidays.bat goto endit
echo
╔═════════════════════════════════════════════════════════════════════════════╗
echo
║ READY TO EXECUTE HOLIDAYS.BAT ... DEMO BATCH FILE ║
echo
╚═════════════════════════════════════════════════════════════════════════════╝
pause
HOLIDAYS.BAT
:ENDIT