home *** CD-ROM | disk | FTP | other *** search
/ HomeWare 14 / HOMEWARE14.bin / prog / fdate80a.arj / FDATEX.BAT < prev    next >
DOS Batch File  |  1993-07-20  |  27KB  |  758 lines

  1. @ECHO off
  2. BREAK ON
  3. if not (%1)==() goto %1
  4. CLS
  5. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  6. echo ║         FDATEX: Demonstration batch file for FDATE                          ║
  7. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  8. echo.
  9. echo.
  10. echo This batch file uses ANSI.SYS to control the appearance and color
  11. echo of some of the headings.
  12.  
  13. echo.
  14. echo If you do not have ANSI.SYS installed, you may see garbage on the
  15. echo screen next to some of the headings, such as the one at the top of
  16. echo this screen, but the batch file will work correctly otherwise.
  17.  
  18. echo.
  19. echo.
  20. echo.
  21. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  22. echo ║        The first thing we will do is to test the HELP screen.               ║
  23. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  24. PAUSE
  25.  
  26. cls
  27. FDATE
  28. PAUSE
  29. ECHO ON
  30.  
  31. @echo off
  32. CLS
  33. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  34. echo ║                TEST   OUTPUT FORMATS (#1)                                   ║
  35. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  36. @echo on
  37. FDATE /Ff /Occyy
  38. FDATE /Ff /Occyymm
  39. FDATE /Ff /Occyymmdd
  40. FDATE /Ff /Oyymmdd
  41. FDATE /Ff /Ommdd
  42. @echo off
  43. @PAUSE
  44.  
  45. @echo off
  46. CLS
  47. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  48. echo ║                TEST   OUTPUT FORMATS (#1b)                                  ║
  49. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  50. @echo on
  51. FDATE /Ff /At /Oddmn3yy
  52. FDATE /Ff /Odd-mn3-yy
  53. FDATE /Ff /Odd-mn3-yy /Lfr
  54. FDATE /Ff /Odd-mn3-yy /Lsp
  55. @echo off
  56. @PAUSE
  57.  
  58. @echo off
  59. CLS
  60. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  61. echo ║                TEST   OUTPUT FORMATS (#1c)                                  ║
  62. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  63. @echo on
  64. FDATE /Ff /Oyy
  65. FDATE /Ff /Omm
  66. FDATE /Ff /Ozm
  67. FDATE /Ff /Odd
  68. FDATE /Ff /Ozd
  69. @echo off
  70. @PAUSE
  71.  
  72. CLS
  73. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  74. echo ║                TEST   OUTPUT FORMATS (#2)                                   ║
  75. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  76. @echo on
  77. FDATE /Ff /Omm-dd-ccyy
  78. FDATE /Ff /Ozm-zd-ccyy
  79. FDATE /Ff /Omm/dd/ccyy
  80. FDATE /Ff /Ozm/zd/ccyy
  81. @echo off
  82. PAUSE
  83.  
  84. CLS
  85. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  86. echo ║                TEST   OUTPUT FORMATS (BRITISH)                              ║
  87. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  88. @echo on
  89. FDATE /Ff /Odd.mm.ccyy
  90. FDATE /Ff /Ozd.zm.ccyy
  91. FDATE /Ff /Odd.mm.yy
  92. FDATE /Ff /Ozd.zm.yy
  93. @echo off
  94. PAUSE
  95.  
  96.  
  97. CLS
  98. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  99. echo ║                TEST   OUTPUT FORMATS (GERMAN)                               ║
  100. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  101. @echo on
  102. FDATE /Ff /O"zd. mn ccyy"   /Lgr
  103. FDATE /Ff /O"zd. mn3 ccyy"  /Lgr
  104. @echo off
  105. PAUSE
  106.  
  107. CLS
  108. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  109. echo ║                TEST   OUTPUT FORMATS (#3)                                   ║
  110. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  111. @echo on
  112. FDATE /Ff /At /Odow#
  113. FDATE /Ff /At /Odow
  114. FDATE /Ff /At /Odow3
  115. FDATE /Ff /At /Odow  /Lfr
  116. FDATE /Ff /At /Odow3 /Lfr
  117. FDATE /Ff /At /Odow3 /Lsp
  118. FDATE /Ff /At /Odow3 /Lgr
  119. @echo off
  120. PAUSE
  121.  
  122. CLS
  123. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  124. echo ║                TEST   OUTPUT FORMATS (#4)                                   ║
  125. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  126. @echo on
  127. FDATE /Ff /At /O"mn3 dd ccyy"
  128. FDATE /Ff /At /O"mn3 dd, ccyy"
  129. FDATE /Ff /At /O"mn zd, ccyy"  /Lfr
  130. FDATE /Ff /At /O"mn zd, ccyy"  /Lsp
  131. FDATE /Ff /At /O"mn3 dd ccyy"  /Lfr
  132. FDATE /Ff /At /O"mn3 dd, ccyy" /Lfr
  133. @echo off
  134. PAUSE
  135.  
  136. CLS
  137. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  138. echo ║                TEST   OUTPUT FORMATS (#5)                                   ║
  139. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  140. @echo on
  141. FDATE /Ff /At /O"mn zd, ccyy"
  142. FDATE /Ff /At /O"zd mn ccyy"
  143. FDATE /Ff /At /O"zd mn, ccyy"
  144. FDATE /Ff /At /O"zd mn ccyy"  /Lfr
  145. FDATE /Ff /At /O"zd mn, ccyy" /Lfr
  146. @echo off
  147. PAUSE
  148.  
  149. CLS
  150. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  151. echo ║                TEST   OUTPUT FORMATS (#6)                                   ║
  152. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  153. @echo on
  154. Fdate /Ff /Occyy-mm-dd
  155. Fdate /Ff /Occyy/mm/dd
  156. Fdate /Ff /Occyy.mm.dd
  157. Fdate /Ff /Oyy-mm-dd
  158. Fdate /Ff /Oyy/mm/dd
  159. Fdate /Ff /Oyy.mm.dd
  160. @echo off
  161. PAUSE
  162.  
  163. CLS
  164. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  165. echo ║                TEST LANGUAGE OUTPUT: AMERICAN ENGLISH                       ║
  166. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  167. ECHO NAMES OF MONTHS
  168. for %%v in (1 2 3 4 5 6 7 8 9) do fdate /ff /Lus /oFULL /iccyymmdd /a19930%%v01
  169. for %%v in (10 11 12         ) do fdate /ff /Lus /oFULL /iccyymmdd /a1993%%v01
  170. ECHO NAMES OF DAYS OF WEEK
  171. for %%v in (0 1 2 3 4 5 6 ) do fdate /fadd /N%%v /oFULL /Lus
  172. PAUSE
  173.  
  174. CLS
  175. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  176. echo ║                TEST LANGUAGE OUTPUT: FRENCH                                 ║
  177. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  178. ECHO NAMES OF MONTHS
  179. for %%v in (1 2 3 4 5 6 7 8 9) do fdate /ff /Lfr /oFULL /iccyymmdd /a19930%%v01
  180. for %%v in (10 11 12         ) do fdate /ff /Lfr /oFULL /iccyymmdd /a1993%%v01
  181. ECHO NAMES OF DAYS OF WEEK
  182. for %%v in (0 1 2 3 4 5 6 ) do fdate /fadd /N%%v /oFULL /Lfr
  183. PAUSE
  184.  
  185. CLS
  186. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  187. echo ║                TEST LANGUAGE OUTPUT: GERMAN                                 ║
  188. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  189. ECHO NAMES OF MONTHS
  190. for %%v in (1 2 3 4 5 6 7 8 9) do fdate /ff /Lgr /oFULL /iccyymmdd /a19930%%v01
  191. for %%v in (10 11 12         ) do fdate /ff /Lgr /oFULL /iccyymmdd /a1993%%v01
  192. ECHO NAMES OF DAYS OF WEEK
  193. for %%v in (0 1 2 3 4 5 6 ) do fdate /fadd /N%%v /oFULL /Lgr
  194. PAUSE
  195.  
  196. CLS
  197. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  198. echo ║                TEST LANGUAGE OUTPUT: SPANISH                                ║
  199. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  200. ECHO NAMES OF MONTHS
  201. for %%v in (1 2 3 4 5 6 7 8 9) do fdate /ff /Lsp /oFULL /iccyymmdd /a19930%%v01
  202. for %%v in (10 11 12         ) do fdate /ff /Lsp /oFULL /iccyymmdd /a1993%%v01
  203. ECHO NAMES OF DAYS OF WEEK
  204. for %%v in (0 1 2 3 4 5 6 ) do fdate /fadd /N%%v /oFULL /Lsp
  205. PAUSE
  206.  
  207. CLS
  208. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  209. echo ║                TEST   OUTPUT FORMATS (TIME)                                 ║
  210. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  211. @echo on
  212. FDATE /Ff /At /Ot1
  213. FDATE /Ff /At /Ohh:mm
  214. FDATE /Ff /At /Ohh:mm:ss
  215. @echo off
  216. PAUSE
  217.  
  218. CLS
  219. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  220. echo ║                TEST   OUTPUT FORMATS (DATE ABBREVIATIONS)                   ║
  221. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  222. @echo on
  223. FDATE /Ff
  224. FDATE /Ff /Ofull
  225. FDATE /Ff /Lfr
  226. FDATE /Ff /Ofull /Lfr
  227. FDATE /Ff /Ofull /Lsp
  228. FDATE /Ff /Oly /P"Leap-year flag is: " /S" [0=normal, 1=leapyear]"
  229. @echo off
  230. PAUSE
  231. :julian
  232. CLS
  233. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  234. echo ║                TEST   OUTPUT FORMATS ("JULIAN" OUTPUTS)                     ║
  235. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  236. @echo on
  237. FDATE /Ff /Oday#     /P"Absolute date : "
  238. FDATE /Ff /Ominute#  /P"Julian minutes: "
  239. FDATE /Ff /Osecond#  /P"Julian seconds: "
  240. @pause
  241.  
  242. @cls
  243. FDATE /Ff /Occyyjjj  /P"Julian date is: "
  244. FDATE /Ff /Oyyjjj    /P"Julian date is: "
  245. FDATE /Ff /Ojjj      /P"Julian date is: "
  246. FDATE /Ff /Ozzj      /P"Julian date is: "
  247. FDATE /Ff /Ojulian   /P"Julian date is: "
  248. @echo off
  249. PAUSE
  250.  
  251. :IN
  252. CLS
  253. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  254. echo ║                TEST   INPUT  FORMATS                                        ║
  255. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  256. echo.
  257. @echo TEST PSEUDO-DATES   /AT  (/ATODAY)
  258. @echo ─────────────────────────────────────────────────────────────────
  259. @echo on
  260. FDATE /Ff /Atoday
  261. FDATE /Ff /At
  262. @Pause
  263. cls
  264. @ECHO TEST PSEUDO-DATES     /ICCYYMMDD
  265. @echo ─────────────────────────────────────────────────────────────────
  266. FDATE /Ff /Atttt1126  /Iccyymmdd
  267. FDATE /Ff /A1991tt26  /Iccyymmdd
  268. FDATE /Ff /A199211tt  /Iccyymmdd
  269. FDATE /Ff /Atttttttt  /Iccyymmdd
  270. @Pause
  271. cls
  272. @ECHO TEST PSEUDO-DATES
  273. @echo ─────────────────────────────────────────────────────────────────
  274. FDATE /Ff /A11-26-tttt
  275. FDATE /Ff /A11-tt-1992
  276. FDATE /Ff /Att-26-1992
  277. FDATE /Ff /Att-tt-tttt
  278. @Pause
  279. cls
  280. @ECHO TEST PSEUDO-DATES     /IMM-DD-YY
  281. @echo ─────────────────────────────────────────────────────────────────
  282. FDATE /Ff /A11-26-tt /Imm-dd-yy
  283. FDATE /Ff /A11-tt-92 /Imm-dd-yy
  284. FDATE /Ff /Att-26-92 /Imm-dd-yy
  285. FDATE /Ff /Att-tt-tt /Imm-dd-yy
  286. @PAUSE
  287.  
  288. CLS
  289. @echo TEST INPUT FORMATS
  290. @echo ─────────────────────────────────────────────────────────────────
  291. FDATE /Ff /Imm-dd-ccyy /A12-07-1991
  292. FDATE /Ff /Imm-dd-yy   /A12-07-91
  293. FDATE /Ff /Iccyymmdd   /A19911207
  294. @PAUSE
  295.  
  296. CLS
  297. @echo TEST INPUT FORMATS (British/European)
  298. @echo ─────────────────────────────────────────────────────────────────
  299. Fdate /Ff /Idd-mm-yy   /A2/5/92
  300. Fdate /Ff /Idd-mm-yy   /A2/5/10
  301. Fdate /Ff /Idd-mm-yy   /A12/12/10
  302. Fdate /Ff /Idd-mm-ccyy /A2/5/1992
  303. Fdate /Ff /Idd-mm-ccyy /A12/5/1992
  304. Fdate /Ff /Idd-mm-ccyy /A2/05/1992
  305. Fdate /Ff /Idd-mm-ccyy /A12/05/1992
  306. @PAUSE
  307.  
  308. CLS
  309. @echo TEST INPUT FORMATS  (/If ... GET INPUT DATE/TIME FROM A FILE)
  310. @echo ─────────────────────────────────────────────────────────────────
  311. FDATE /Ff /If /Afdatex.bat /P"The date on file FDATEX.BAT is: "
  312. FDATE /Ff /If /Afdatex.bat /P"The time on file FDATEX.BAT is: " /Ohh:mm:ss
  313. FDATE /Ff /If /Afdatex.bat /P"FDATEX.BAT was last updated at " /Ofull
  314. @PAUSE
  315.  
  316. :JJJ
  317.  
  318. CLS
  319. @echo ON
  320. @echo TEST JULIAN INPUT FORMATS
  321. @echo ─────────────────────────────────────────────────────────────────
  322. FDATE /Ff /Iccyyjjj /A1992045
  323. FDATE /Ff /Iccyyjjj /Atttt045
  324. FDATE /Ff /Iyyjjj /A92045
  325. FDATE /Ff /Iyyjjj /Att045
  326. FDATE /Ff /Iyyjjj /A92366
  327. FDATE /Ff /Iyyjjj /A93366
  328. @PAUSE
  329.  
  330. CLS
  331. @echo TEST JULIAN INPUT FORMATS
  332. @echo ─────────────────────────────────────────────────────────────────
  333. Fdate /Ff /Iyyjjj /Att-1
  334. Fdate /Ff /Iyyjjj /Att0
  335. Fdate /Ff /Iyyjjj /Att+1
  336. Fdate /Ff /Iyyjjj /Att-999
  337. Fdate /Ff /Iyyjjj /Att1000
  338. @PAUSE
  339. @echo OFF
  340.  
  341. CLS
  342. @echo TEST INPUT FORMATS (only YY specified, CC assumed.)
  343. @echo ─────────────────────────────────────────────────────────────────
  344. FDATE /Ff /Imm-dd-yy /A12-07-00
  345. FDATE /Ff /Imm-dd-yy /A12-07-10
  346. FDATE /Ff /Imm-dd-yy /A12-07-19
  347. FDATE /Ff /Imm-dd-yy /A12-07-20
  348. FDATE /Ff /Imm-dd-yy /A12-07-21
  349. FDATE /Ff /Imm-dd-yy /A12-07-91
  350. @PAUSE
  351.  
  352. CLS
  353. @echo off
  354. @echo TEST INPUT FORMATS HANDLING LEADING ZEROS
  355. @echo ─────────────────────────────────────────────────────────────────
  356. FDATE /Ff /Imm-dd-yy /A06-06-66
  357. FDATE /Ff /Imm-dd-yy /A6-06-66
  358. FDATE /Ff /Imm-dd-yy /A06-6-66
  359. FDATE /Ff /Imm-dd-yy /A6-6-66
  360. FDATE /Ff /A06-06-0001
  361. FDATE /Ff /A6-06-0001
  362. FDATE /Ff /A06-6-0001
  363. FDATE /Ff /A6-6-0001
  364. @PAUSE
  365.  
  366. @echo on
  367.  
  368. CLS
  369. @echo TEST /P (PREFIX) PARAMETER
  370. @echo ─────────────────────────────────────────────────────────────────
  371. FDATE /Ff /At /O"mn zd, ccyy" /P"Today is "
  372. FDATE /Ff /At /O"mn zd, ccyy" /P"Aujourdui est " /Lfr
  373. FDATE /Ff /At /O"mn zd, ccyy" /P"Hoy es "        /Lsp
  374. @echo.
  375. @set  FDATE=
  376. FDATE /Ff /At /O"mn zd, ccyy" /P"@SET FDATE=" >FDATJUNK.BAT
  377. @Echo off
  378. call FDATJUNK.BAT
  379. del FDATJUNK.BAT
  380. ECHO Value of FDATE environment variable is: %FDATE%
  381. set  FDATE=
  382. PAUSE
  383.  
  384. CLS
  385. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  386. echo ║                TEST   END-OF-MONTH DATES (BUG FIXED IN FDATE 3.0)           ║
  387. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  388. @echo off
  389. fdate /Ff /A01-29-1992
  390. fdate /Ff /A01-30-1992
  391. fdate /Ff /A01-31-1992
  392. fdate /Ff /A02-29-1992
  393. fdate /Ff /A02-30-1992
  394. fdate /Ff /A02-31-1992
  395. @echo off
  396. PAUSE
  397.  
  398. CLS
  399. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  400. echo ║                TEST   DATE VALIDATION  FUNCTION                             ║
  401. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  402. @echo ON
  403. fdate /Fv /A02-29-1991
  404. fdate /Fv /A02-29-1992
  405. fdate /Fv /A02-29-1993
  406. @echo off
  407. PAUSE
  408.  
  409. CLS
  410. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  411. echo ║                TEST   MONTH ARITHMETIC FUNCTION                             ║
  412. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  413. ECHO on
  414. fdate /Fm /iccyymmdd /a19920331 /n-1
  415. fdate /Fm /iccyymmdd /a19930331 /n-1
  416. fdate /Fm /iccyymmdd /a19920131 /n1
  417. fdate /Fm /iccyymmdd /a19930131 /n1
  418. fdate /Fm /iccyymmdd /a19920229 /n-12
  419. fdate /Fm /iccyymmdd /a19920229 /n+12
  420. fdate /Fm /iccyymmdd /a19911231 /n2
  421. @echo off
  422. pause
  423.  
  424. cls
  425. Echo Adding months to Jan 31, 1992
  426. Echo -------------------------------------------------
  427. 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)"
  428. echo.
  429. pause
  430.  
  431. cls
  432. @echo on
  433. fdate /Fm /iccyymmdd /a00020115 /n-12
  434. fdate /Fm /iccyymmdd /a00020115 /n-13
  435. fdate /Fm /iccyymmdd /a00011212 /n-11
  436. fdate /Fm /iccyymmdd /a00011212 /n-12
  437. fdate /Fm /iccyymmdd /a00010201 /n-1
  438. fdate /Fm /iccyymmdd /a00010201 /n-2
  439. @echo off
  440. pause
  441.  
  442. :func
  443. CLS
  444. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  445. echo ║                TEST   FUNCTIONS                                             ║
  446. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  447. @echo on
  448. @echo.
  449. @echo TEST FUNCTION: F (FORMAT)
  450. @echo ─────────────────────────────────────────────────────────────────
  451. FDATE /Fformat /Atoday
  452. FDATE /Ff      /At
  453. FDATE /Ff
  454. @PAUSE
  455. @echo off
  456. CLS
  457. @echo TEST FUNCTION: W (Nth WEEKDAY BEFORE/AFTER) WHERE /D NOT = DOW#
  458. @echo ─────────────────────────────────────────────────────────────────
  459. FDATE /Fw /A11-25-1992 /D5 /N-2 /P"2nd Thursday before 11-25-1992: "
  460. FDATE /Fw /A11-25-1992 /D5 /N-1 /P"1st Thursday before 11-25-1992: "
  461. FDATE /Ff /A11-25-1992 /D5 /N-1 /P"The actual day of.. 11-25-1992: "
  462. FDATE /Fw /A11-25-1992 /D5 /N1  /P"1st Thursday after  11-25-1992: "
  463. FDATE /Fw /A11-25-1992 /D5 /N2  /P"2nd Thursday after  11-25-1992: "
  464. @PAUSE
  465. @CLS
  466. @echo TEST FUNCTION: W (Nth WEEKDAY BEFORE/AFTER) WHERE /D = DOW#
  467. @echo ─────────────────────────────────────────────────────────────────
  468. FDATE /Fw /A11-26-1992 /D5 /N-2 /P"2nd Thursday before 11-26-1992: "
  469. FDATE /Fw /A11-26-1992 /D5 /N-1 /P"1st Thursday before 11-26-1992: "
  470. FDATE /Ff /A11-26-1992 /D5 /N-1 /P"The actual day of.. 11-26-1992: "
  471. FDATE /Fw /A11-26-1992 /D5 /N1  /P"1st Thursday after  11-26-1992: "
  472. FDATE /Fw /A11-26-1992 /D5 /N2  /P"2nd Thursday after  11-26-1992: "
  473. @PAUSE
  474. @echo off
  475. @CLS
  476. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  477. echo ║                TEST   /FW-RELATED ERROR MESSAGES                            ║
  478. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  479. FDATE /Fw /A11-26-1992 /D5 /N0    /P" 0th Thursday after 11-26-1992: "
  480. FDATE /Fw /A11-26-1992 /D5 /N100  /P"99th Thursday after 11-26-1992: "
  481. FDATE /Fw /A11-26-1992 /D5 /N-100 /P"99th Thursday before 11-26-1992: "
  482. @PAUSE
  483.  
  484. :comp
  485.  
  486. CLS
  487. @echo TEST COMP (DATE COMPARE) FUNCTION and default
  488. @echo ─────────────────────────────────────────────────────────────────
  489. @echo ON
  490. Fdate /Fcomp /A06-06-1992 /B06-06-1991
  491. Fdate /Fcomp /A06-06-1992 /B06-06-1992
  492. Fdate /Fcomp /A06-06-1992 /B06-06-1993
  493. Fdate /Fcomp
  494. @PAUSE
  495.  
  496. CLS
  497. @echo TEST TCOMP (TIME COMPARE) FUNCTION and default
  498. @echo ─────────────────────────────────────────────────────────────────
  499. @echo ON
  500. Fdate /FTcomp
  501. @ECHO XXXX>JUNKTEMP.BAT
  502. Fdate /FTcomp  /If /Ajunktemp.bat /Bfdatex.bat
  503. Fdate /FTcomp  /If /Bjunktemp.bat /Afdatex.bat
  504. Fdate /FTcomp  /If /Afdatex.bat   /Bfdatex.bat
  505. @del       JUNKTEMP.BAT
  506. @PAUSE
  507.  
  508. CLS
  509. @echo TEST DIF (DATE DIFFERENCE, IN DAYS) FUNCTION
  510. @echo ─────────────────────────────────────────────────────────────────
  511. FDATE /Fdif /At /Bt
  512. FDATE /Fdif
  513. FDATE /Fdif /At /B01-01-1990
  514. FDATE /Fdif /A01-01-1990 /Bt
  515. FDATE /Fdif /A12-31-0008 /B01-01-0009
  516. FDATE /Fdif /Iccyymmdd /A19801230 /B19801231
  517. FDATE /Fdif /Iccyymmdd /A19801230 /B19801220
  518. @PAUSE
  519.  
  520. CLS
  521. @echo TEST DIF (DATE DIFFERENCE, IN DAYS) FUNCTION
  522. @echo ─────────────────────────────────────────────────────────────────
  523. FDATE /Fdif /Iccyymmdd /A19800101 /B19801231
  524. FDATE /Fdif /Iccyymmdd /A19810101 /B19811231
  525. FDATE /Fdif /Iccyymmdd /A20000101 /B20001231
  526. FDATE /Fdif /Iccyymmdd /A19000101 /B19001231
  527. FDATE /Fdif /Iccyymmdd /A16000101 /B16001231
  528. @PAUSE
  529.  
  530. @echo off
  531. CLS
  532. echo TEST ADD (ADD A NUMBER TO A DATE, GET RESULTING DATE) FUNCTION
  533. echo ───────────────────────────────────────────────────────────────────────────────
  534. echo on
  535. FDATE /Fadd /N1 /A12-31-0008 /Omm-dd-ccyy
  536. FDATE /Fadd /N1 /At  /Od1 /P"Tomorrow will be "
  537. FDATE /Fadd /N90 /At /Od1 /P"90 days from today is "
  538. @PAUSE
  539.  
  540. CLS
  541. @echo TEST ADD ACROSS YEAR BOUNDARIES: LEAP YEAR BEGIN
  542. @echo ─────────────────────────────────────────────────────────────────
  543. FDATE /Fadd /N1 /A12-31-0003
  544. FDATE /Fadd /N1 /A12-31-0099
  545. FDATE /Fadd /N1 /A12-31-0399
  546. FDATE /Fadd /N1 /A12-31-1899
  547. FDATE /Fadd /N1 /A12-31-1999
  548. @PAUSE
  549.  
  550. CLS
  551. @echo TEST ADD ACROSS YEAR BOUNDARIES: LEAP YEAR END
  552. @echo ─────────────────────────────────────────────────────────────────
  553. FDATE /Fadd /N1 /A12-31-0004
  554. FDATE /Fadd /N1 /A12-31-0100
  555. FDATE /Fadd /N1 /A12-31-0400
  556. FDATE /Fadd /N1 /A12-31-1900
  557. FDATE /Fadd /N1 /A12-31-2000
  558. @PAUSE
  559.  
  560. CLS
  561. @echo TEST SUB
  562. @echo ─────────────────────────────────────────────────────────────────
  563. FDATE /Fsub /N1 /A12-31-0008
  564. FDATE /Fsub /N1 /At  /Od1 /P"Yesterday was "
  565. FDATE /Fsub /N90 /At /Od1 /P"90 days ago, the date was "
  566. @PAUSE
  567.  
  568. CLS
  569. @echo TEST SUB ACROSS YEAR BOUNDARIES: 1 DAY BEFORE LEAP YEAR BEGIN
  570. @echo ─────────────────────────────────────────────────────────────────
  571. FDATE /Fsub /N1 /A12-31-0004
  572. FDATE /Fsub /N1 /A12-31-0100
  573. FDATE /Fsub /N1 /A12-31-0400
  574. FDATE /Fsub /N1 /A12-31-1900
  575. FDATE /Fsub /N1 /A12-31-2000
  576. @PAUSE
  577.  
  578. CLS
  579. @echo TEST SUB ACROSS YEAR BOUNDARIES: LEAP YEAR BEGIN
  580. @echo ─────────────────────────────────────────────────────────────────
  581. FDATE /Fsub /N1 /A01-01-0004
  582. FDATE /Fsub /N1 /A01-01-0100
  583. FDATE /Fsub /N1 /A01-01-0400
  584. FDATE /Fsub /N1 /A01-01-1900
  585. FDATE /Fsub /N1 /A01-01-2000
  586. @PAUSE
  587.  
  588. CLS
  589. @echo TEST SUB ACROSS YEAR BOUNDARIES: 1 DAY AFTER LEAP YEAR END
  590. @echo ─────────────────────────────────────────────────────────────────
  591. FDATE /Fsub /N1 /A01-01-0005
  592. FDATE /Fsub /N1 /A01-01-0101
  593. FDATE /Fsub /N1 /A01-01-0401
  594. FDATE /Fsub /N1 /A01-01-1901
  595. FDATE /Fsub /N1 /A01-01-2001
  596. @PAUSE
  597.  
  598. :errmsg
  599. CLS
  600. @echo TEST ERROR MESSAGES
  601. @echo ─────────────────────────────────────────────────────────────────
  602. @echo on
  603. FDATE /Ff /At /Ojunktest
  604. FDATE /Ff /A18880101 /Ijunktest /Ominute#
  605. @PAUSE
  606.  
  607. CLS
  608. FDATE /Ff   /Iccyymmdd  /A18880101 /Ominute#
  609. FDATE /Ff   /Iccyymmdd  /A21010101 /Osecond#
  610. FDATE /Fsub /Iccyymmdd  /A00010101 /n1 /od1
  611. FDATE /Fadd /Iccyymmdd  /A99991231 /n1 /od1
  612. @PAUSE
  613.  
  614. CLS
  615. FDATE /Ff   /A01-01-xxxx
  616. FDATE /Fadd /A01-01-1992 /N
  617. @PAUSE
  618.  
  619. CLS
  620. FDATE /Fdif /?01-01-1992 /B01-02-1992
  621. FDATE /Fdif /A01-01-1992 /?01-02-1992
  622. @PAUSE
  623.  
  624. CLS
  625. FDATE /Ff   /Imm-dd-yy   /A01-01-1
  626. FDATE /Ff   /Imm-dd-yy   /A01-01-199
  627. FDATE /Ff   /A01-01-199
  628. FDATE /Ff   /A01-01-19922
  629. @PAUSE
  630.  
  631. :LY
  632. CLS
  633. @echo on
  634. @echo TEST LEAPYR (#1)
  635. @echo ─────────────────────────────────────────────────────────────────
  636. FDATE /Ff /A01-01-0001 /Oly
  637. FDATE /Ff /A01-01-0004 /Oly
  638. FDATE /Ff /A01-01-0005 /Oly
  639. FDATE /Ff /A01-01-0100 /Oly
  640. FDATE /Ff /A01-01-0400 /Oly
  641. FDATE /Ff /A01-01-1600 /Oly
  642. @PAUSE
  643.  
  644. CLS
  645. @echo TEST LEAPYR (#2)
  646. @echo ─────────────────────────────────────────────────────────────────
  647. FDATE /Ff /A01-01-1900 /Oly
  648. FDATE /Ff /A01-01-1984 /Oly
  649. FDATE /Ff /A01-01-1991 /Oly
  650. FDATE /Ff /A01-01-1992 /Oly
  651. FDATE /Ff /A01-01-2000 /Oly
  652. @PAUSE
  653.  
  654. CLS
  655. @echo TEST "JULIAN" OUTPUT FORMATS
  656. @echo ─────────────────────────────────────────────────────────────────
  657. FDATE /Ff /At /Ojulian
  658. FDATE /Ff /At /Oday#
  659. FDATE /Ff /At /Ominute#
  660. FDATE /Ff /At /Osecond#
  661. FDATE /Ff /A19950101 /Iccyymmdd /Ominute#
  662. FDATE /Ff /A19950101 /Iccyymmdd /Osecond#
  663. @PAUSE
  664.  
  665. @ECHO off
  666. :ABSDATES
  667. CLS
  668. echo SHOW ABSOLUTE OR "TRUE JULIAN" DATES FOR SELECTED DATES
  669. echo ─────────────────────────────────────────────────────────────────
  670. ECHO.
  671. FDATE /Ff /A01-01-0001 /P"First day of year 0001: "  /Oday#
  672. ECHO.
  673. FDATE /Ff /A01-01-1900 /P"First day of year 1900: " /Oday#
  674. ECHO.
  675. FDATE /Ff /A01-01-1992 /P"First day of year 1992: " /Oday#
  676. ECHO.
  677. FDATE /Ff /At          /P"Today's calendar date : "
  678. FDATE /Ff /At /Oday#   /P"Today's absolute date : "
  679. ECHO.
  680. FDATE /Ff /A12-31-2000 /P"Last day of year 2000: " /Oday#
  681. ECHO.
  682. FDATE /Ff /A12-31-9999 /P"Last day of year 9999: " /Oday#
  683. PAUSE
  684.  
  685. :GET
  686. CLS
  687. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  688. echo ║       TEST FDATE WITH ENVIRONMENT MANIPULATION PROGRAM: GET                 ║
  689. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  690. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  691. echo ║   If you do not have GET installed,                                         ║
  692. echo ║   you will see messages saying "Bad command of file name".                  ║
  693. echo ║   This is normal and nothing to worry about.                                ║
  694. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  695. @echo.
  696.  
  697. @echo on
  698. @set date1=
  699. @echo.
  700. FDATE /Ff /At /Oyymmdd|GET ZE /Vdate1 >NUL
  701. @echo DATE1 environment variable is %DATE1%
  702. @set date1=
  703. @echo.
  704. FDATE /Ff /At /Occyymmdd|GET ZE /Vdate1 >NUL
  705. @echo DATE1 environment variable is %DATE1%
  706. @set date1=
  707. @echo off
  708. @PAUSE
  709.  
  710. :STRINGS
  711. CLS
  712. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  713. echo ║       TEST FDATE WITH ENVIRONMENT MANIPULATION PROGRAM: STRINGS             ║
  714. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  715. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  716. echo ║   If you do not have STRINGS installed,                                     ║
  717. echo ║   you will see messages saying "Bad command of file name".                  ║
  718. echo ║   This is normal and nothing to worry about.                                ║
  719. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  720. @echo.
  721.  
  722. @echo on
  723. @set date1=
  724. @echo.
  725. FDATE /Ff /At /Oyymmdd | STRINGS date1= ASK >NUL
  726. @echo DATE1 environment variable is %DATE1%
  727. @set date1=
  728. @echo.
  729. FDATE /Ff /At /Occyymmdd | STRINGS date1= ASK >NUL
  730. @echo DATE1 environment variable is %DATE1%
  731. @set date1=
  732. @echo.
  733. @echo off
  734. @PAUSE
  735.  
  736.  
  737. cls
  738. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  739. echo ║                     END OF FDATE TEST BATCH FILE                            ║
  740. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  741. echo.
  742. echo I hope that you have found this demo batch file helpful,
  743. echo and that you will find FDATE useful.
  744. echo.
  745. echo                         -- Stephen Ferg
  746. echo.
  747. echo.
  748. echo.
  749.  
  750.  
  751. if not exist holidays.bat goto endit
  752. echo ╔═════════════════════════════════════════════════════════════════════════════╗
  753. echo ║             READY TO EXECUTE HOLIDAYS.BAT ... DEMO BATCH FILE               ║
  754. echo ╚═════════════════════════════════════════════════════════════════════════════╝
  755. pause
  756. HOLIDAYS.BAT
  757. :ENDIT
  758.