FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour FECHA: dada una fecha decir el dia en letras.
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
FECHA: dada una fecha decir el dia en letras.
Posted: Thu Apr 26, 2012 03:45 PM
No consegui con las funcines que hay asi que mirando este link

http://eseprimo.blogspot.com.ar/2005/04/de-la-semana-fue.html

hice esto:

Code (fw): Select all Collapse
FUNCTION main()
   ? dia(Date())
   RETURN (NIL)

//------------------------------------------------------------------------------

FUNCTION dia(dDate)

   LOCAL anio:= Year(dDate)

   LOCAL aDias := {6, 2, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4}
   LOCAL cDias := {"Lunes", "Martes", "Miercoles", "jueves", "viernes", "sabado", "domingo"}
   LOCAL anio2 := Val(SubStr(Str(Year(dDate)), 4, 2))
   LOCAL b     := int(anio2 + (anio2/4))
   LOCAL c     := IF ( int(Year(dDate) / 4 ) * 4 == Year(dDate), IF (Month(dDate) IN {1,2}, -1, 0),0)
   LOCAL d     := aDias[Month(ddate)]
   LOCAL e     := Day(dDate)
   LOCAL a     := 0
   LOCAL f     := 0

   IF (anio >=1700 .and. anio <=1799)
      a:= 5
   ELSEIF (anio >= 1800 .and. anio <=1899)
      a:= 3
   ELSEIF (anio >=1900 .and. anio <=1999)
      a:= 1
   ELSEIF (anio >=2000 .and. anio <= 2099)
      a:= 0
   ELSEIF (anio >=2100 .and. anio <=2199)
      a:= -2
   ELSEIF (anio >= 2200 .and. anio <=2299)
      a:= -4
   ENDIF

   f:=  (a + b + c + d + e) % 7

   RETURN (cDias[f])


Si alguien sabe alguna forma mas facil mejor.
Es que ando necesitando saber el primer dia habil de un mes. gracias.
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 1088
Joined: Fri Oct 07, 2005 03:33 PM
Re: FECHA: dada una fecha decir el dia en letras.
Posted: Thu Apr 26, 2012 04:01 PM

Hola,

prueba:

CDoW( <dDate> ) --> cDayName

saludos

Marcelo

Posts: 514
Joined: Sun Oct 16, 2005 03:32 AM
Re: FECHA: dada una fecha decir el dia en letras.
Posted: Thu Apr 26, 2012 06:37 PM
Hola,
Code (fw): Select all Collapse
    aDias := {"Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado" }
   SET DATE FORMAT TO "dd-mm-yyyy"
   ? dow(Date())
   ? aDias[dow(Date())]               // Jueves
   ? aDias[dow(CTOD("24-12-2012"))]   // Lunes

Saludos,

Carlos Gallego

Saludos,



Carlos Gallego



*** FWH-25.12, xHarbour 1.3.1 Build 20241008, Borland C++7.70, PellesC, ADS 11.1***

Posts: 1710
Joined: Tue Oct 28, 2008 06:26 PM
Re: FECHA: dada una fecha decir el dia en letras.
Posted: Thu Apr 26, 2012 08:43 PM
y con cMonth(Date()) se obtiene el nombre del mes.

Para que te salga en Español hay que activar el código de pagina con:
Code (fw): Select all Collapse
#include "FiveWin.ch"REQUEST HB_LANG_ESWIN
REQUEST HB_CODEPAGE_ESMWIN  
Function Main()
     HB_LANGSELECT( 'ESWIN' )
    HB_SetCodePage("ESMWIN") //ó  "ES850"
   ?cDow(Date())   //Jueves
   ?cMonth(Date())  //Abril

Return


Saludos,

Adhemar
Saludos,



Adhemar C.
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: FECHA: dada una fecha decir el dia en letras.
Posted: Thu Apr 26, 2012 09:10 PM

de 10!
gracias a todos.

FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: FECHA: dada una fecha decir el dia en letras.
Posted: Thu Apr 26, 2012 09:12 PM
al poner esto:
Code (fw): Select all Collapse
REQUEST HB_LANG_ESWIN
REQUEST HB_CODEPAGE_ESMWIN


y compilar me da error

Error: Unresolved external '_HB_FUN_HB_CODEPAGE_ESMWIN'


que le erro?
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 8515
Joined: Tue Dec 20, 2005 07:36 PM
Re: FECHA: dada una fecha decir el dia en letras.
Posted: Fri Apr 27, 2012 11:50 AM

Te falta: CODEPAGE.LIB

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: FECHA: dada una fecha decir el dia en letras.
Posted: Fri Apr 27, 2012 11:39 PM

gracias

FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/

Continue the discussion