home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / clarion / tools.zip / JULDATE.FUN < prev    next >
Text File  |  1988-10-20  |  4KB  |  80 lines

  1. JULDATE    FUNCTION(DATEIN)
  2. !---------------------------------------------------------------------!
  3. !  THIS FUNCTION WILL RETURN A LONG CONTAINING THE JULIAN DATE OF     !
  4. !  THE DATE PASSED TO IT.                                             !
  5. !                                                                     !
  6. !  TO CALL THIS FUNCTION.                                             !
  7. !                                                                     !
  8. !     LONG = JULDATE(DATEIN)                                          !
  9. !                                                                     !
  10. !  WHERE:                                                             !
  11. !                                                                     !
  12. !        DATEIN = A LONG FIELD CONTAINING THE DATE IN THE FORM        !
  13. !                 RETURNED BY THE CLARION TODAY() FUNCTION.           !
  14. !---------------------------------------------------------------------!
  15. !     COMPILER: CLARION V2.0                                          !
  16. !       SYSTEM: N/A                                                   !
  17. !     FUNCTION: JULDATE                                               !
  18. !  ENVIRONMENT: CALLED HAS A FUNCTION                                 !
  19. !   REFERENCES: NONE                                                  !
  20. !---------------------------------------------------------------------!
  21. !  HISTORY:                                                           !
  22. !    WRITTEN   10/20/88 BY DOMINICK G. GALLUCCI                       !
  23. !    MODIFIED  00/00/00                                               !
  24. !---------------------------------------------------------------------!
  25.  
  26. DATEIN     LONG                     !DATE
  27. INMTH      LONG                     !MONTH
  28. INDAY      LONG                     !DAY
  29. INYY       LONG                     !YEAR
  30.  
  31. !---------------------------------------------------------------------!
  32. !        DAY TABLES                                                   !
  33. !---------------------------------------------------------------------!
  34. NOMYERTB GROUP
  35.          SHORT(0)                 !JAN
  36.          SHORT(31)                !FEB
  37.          SHORT(59)                !MAR
  38.          SHORT(90)                !APR
  39.          SHORT(120)               !MAY
  40.          SHORT(151)               !JUN
  41.          SHORT(181)               !JUL
  42.          SHORT(212)               !AUG
  43.          SHORT(243)               !SEP
  44.          SHORT(273)               !OCT
  45.          SHORT(304)               !NOV
  46.          SHORT(334)               !DEC
  47.          .
  48. NOMYEAR  SHORT,DIM(12),OVER(NOMYERTB)
  49. LEYERTB  GROUP
  50.          SHORT(0)                 !JAN
  51.          SHORT(31)                !FEB
  52.          SHORT(60)                !MAR
  53.          SHORT(91)                !APR
  54.          SHORT(121)               !MAY
  55.          SHORT(152)               !JUN
  56.          SHORT(182)               !JUL
  57.          SHORT(213)               !AUG
  58.          SHORT(244)               !SEP
  59.          SHORT(274)               !OCT
  60.          SHORT(305)               !NOV
  61.          SHORT(335)               !DEC
  62.          .
  63. LEYEAR   SHORT,DIM(12),OVER(LEYERTB)
  64.  
  65. !---------------------------------------------------------------------!
  66. !        FORMAT MMDDYY INTO YYDDD                                     !
  67. !---------------------------------------------------------------------!
  68.   CODE
  69.  
  70.     INMTH = MONTH(DATEIN)         !SAVE MONTH
  71.     INDAY = DAY(DATEIN)           !SAVE DAY
  72.     INYY  = YEAR(DATEIN) % 4      !FIND TYPE OF YEAR
  73.     IF INYY = 0 THEN
  74.       INDAY += LEYEAR[INMTH]
  75.     ELSE
  76.       INDAY += NOMYEAR[INMTH]
  77.     .                             !END IF
  78.     INDAY += SUB(FORMAT(DATEIN,@D11),1,2) * 1000
  79.     RETURN(INDAY)
  80.