FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour UNIX time /POSIX
Posts: 838
Joined: Wed Aug 22, 2007 10:09 AM
UNIX time /POSIX
Posted: Fri Nov 08, 2019 07:30 PM

Hello,

Is there a function for that?

Thank you

Saludos / Regards,



FWH 20.04, Harbour 3.2.0 dev (r1909261630) y BCC 7.40
Posts: 990
Joined: Wed Oct 19, 2005 02:17 PM
Re: UNIX time /POSIX
Posted: Sat Nov 09, 2019 06:42 PM
Hi Moises,

have a look this link

https://github.com/Petewg/harbour-core/wiki/Date-Time

Thanks.

Best regards,
Posts: 2
Joined: Wed Oct 26, 2022 09:19 PM
Re: UNIX time /POSIX
Posted: Sat Oct 29, 2022 06:58 PM
Estoy apenas entrando en el mundo Harbour y FiveWin, por motivos de modificar el software que la empresa tiene. Y en otras partes uso UNIXTIME por lo que me toco realizar este código ya que no conseguí en linea otra forma:
Code (fw): Select all Collapse
Function getUnix2(dDate,tTime)
  Local nYearI  := hb_ctot("1970/01/01 00:00:00.000","YYYYMMDDHHMMSSFFF")
  Local cDateT  := DTOC(dDate)+ " " +tTime
  Local nYear  := hb_ctot(cDateT)
  Local nSeconds:= (nYear-nYearI) * 86400
return nSeconds

Function getUnix()
  Local nYearI  := hb_ctot("1970/01/01 00:00:00.000","YYYYMMDDHHMMSSFFF")
  Local nYear  := HB_dateTime()
  Local nSeconds:= 0
  nSeconds  := (nYear-nYearI) * 86400
return nSeconds

Function getDateTime(nSeconds)
  Local nYearI  := hb_ctot("1970/01/01 00:00:00.000","YYYYMMDDHHMMSSFFF")
  Local nSec    := HB_dateTime()
  IF VALTYPE(nSeconds)!='N'
    ? "Function getDateAndTime requiere como parametro una variable Numerica"
    Return 0
  ENDIF
  nSec    :=  nYearI + (nSeconds / 86400)
Return nSec

Function getDate(nSeconds)
  Local nYearI  := hb_ctot("1970/01/01 00:00:00.000","YYYYMMDDHHMMSSFFF")
  Local nSec    := HB_dateTime()
  IF VALTYPE(nSeconds)!='N'
    ? "Function getDateAndTime requiere como parametro una variable Numerica"
    Return 0
  ENDIF
  nSec    :=  nYearI + (nSeconds / 86400)
  dTemp := hb_DateTime()
  dTemp := getDateTime(IIF(VALTYPE(nSeconds)=='C',VAL(nSeconds),nSeconds))
  dTemp := HB_TTOC(dTemp)
  cTime := SUBSTR(dTemp,12,8)
Return SUBSTR(dTemp,1,10)

Function getTime(nSeconds)
  Local nYearI  := hb_ctot("1970/01/01 00:00:00.000","YYYYMMDDHHMMSSFFF")
  Local nSec    := HB_dateTime()
  IF VALTYPE(nSeconds)!='N'
    ? "Function getDateAndTime requiere como parametro una variable Numerica"
    Return 0
  ENDIF
  nSec    :=  nYearI + (nSeconds / 86400)
  dTemp := hb_DateTime()
  dTemp := getDateTime(IIF(VALTYPE(nSeconds)=='C',VAL(nSeconds),nSeconds))
  dTemp := HB_TTOC(dTemp)
  cTime := SUBSTR(dTemp,12,8)
Return SUBSTR(dTemp,12,8)

Continue the discussion