On 18 Sep 2006 at 17:17, Dilwyn Jones wrote:

> A help request:


Hope this helps :


DEFine FuNction make_all_months$
rem this makes a string "JanFeb..." in the current language
rem this should be called during the initialisation part
rem eg. all_months$=make_all_months$
LOCal string$,lp%,a$,temp
  string$="":a$="":temp=0
  temp=60*60*24*31
  FOR lp%=0 TO 11
    a$=DATE$(lp%*temp)
    string$=string$&a$(6 TO 8)
  END FOR lp%
  RETurn string$
END DEFine make_all_months$
:
DEFine FuNction make_date$(dflag%,what_date)
rem returns date as "01.01.1991" (dflag%=1) or "1991.01.31" (dflag%=0)
rem if what_date<>0, then it is this date that will be returned
rem this presumes that a variable "all_month$" exists!
  LOCal a$,b$,res
  b$=""
  IF what_date
    a$=DATE$(what_date)         : rem make date passed as param into string
  ELSE
    a$=DATE$                    : rem current date into string
  END IF
  b$=a$(6 TO 8)                 : rem 3 letter month abbreviation
  res= b$ INSTR all_months$             : rem find it
  IF NOT res
       all_months$=make_all_months$     : rem not found?, make all_month$
       res= b$ INSTR all_months$        : rem and retry
  END IF
  res=(res+2)/3                 : rem this is the month in figures
  b$=res:IF res<10:b$="0"&b$            : rem add leading 0 if necessary
  IF dflag%:RETurn a$(10 TO 11)&"."&b$&"."&a$(1 TO 4)
  RETurn a$(1 TO 4)&"."&b$&"."&a$(10 TO 11)
END DEFine make_date$
:
Should be self eplanatory.

Wolfgang
-- 
W. H. Lenerz
www.scp-paulet-lenerz.com
-- 
_______________________________________________
QL-Users Mailing List
http://www.q-v-d.demon.co.uk/smsqe.htm

Reply via email to